|
@@ -96,7 +96,7 @@
|
|
</el-button-group>
|
|
</el-button-group>
|
|
|
|
|
|
<div>
|
|
<div>
|
|
- <el-popover placement="bottom" popper-class="popper-open" trigger="hover" content="命名撤回一次">
|
|
|
|
|
|
+ <el-popover v-if="['1','2'].indexOf(menuIndex) > -1" placement="bottom" popper-class="popper-open" trigger="hover" content="命名撤回一次">
|
|
<i slot="reference" class="el-icon-refresh-left icon-back icon-back-grey" v-if="backFileList.length == 0" ></i>
|
|
<i slot="reference" class="el-icon-refresh-left icon-back icon-back-grey" v-if="backFileList.length == 0" ></i>
|
|
<i slot="reference" class="el-icon-refresh-left icon-back" v-else @click="back()"></i>
|
|
<i slot="reference" class="el-icon-refresh-left icon-back" v-else @click="back()"></i>
|
|
</el-popover>
|
|
</el-popover>
|
|
@@ -314,10 +314,63 @@
|
|
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
+
|
|
|
|
+ <!-- 设置区域 -->
|
|
<div class="content-right">
|
|
<div class="content-right">
|
|
|
|
|
|
- <!--5、时间属性 -->
|
|
|
|
- <template v-if="menuIndex == '3' || menuIndex == '4'">
|
|
|
|
|
|
+ <!--提取设置 -->
|
|
|
|
+ <template v-if="['5', '6'].indexOf(menuIndex) > -1">
|
|
|
|
+ <el-divider content-position="left">
|
|
|
|
+ <i class="el-icon-s-goods" style="margin-right: 3px;"></i>提取内容
|
|
|
|
+ <el-popover placement="bottom" popper-class="popper-open" trigger="hover" content="勾选内容将与文件名一起提取">
|
|
|
|
+ <i class="el-icon-question" style="color: #888;" slot="reference"></i>
|
|
|
|
+ </el-popover>
|
|
|
|
+ </el-divider>
|
|
|
|
+ <div class="handle-item" v-if="menuIndex == '5'">
|
|
|
|
+ <el-checkbox v-model="extractData.includeSuffix">包含扩展名</el-checkbox>
|
|
|
|
+ </div>
|
|
|
|
+ <div class="handle-item">
|
|
|
|
+ <el-checkbox v-model="extractData.includePath">提取文件路径</el-checkbox>
|
|
|
|
+ </div>
|
|
|
|
+ <div class="handle-item">
|
|
|
|
+ <el-checkbox v-model="extractData.includeBtime">提取文件创建时间</el-checkbox>
|
|
|
|
+ </div>
|
|
|
|
+ <div class="handle-item">
|
|
|
|
+ <el-checkbox v-model="extractData.includeMtime">提取文件修改时间</el-checkbox>
|
|
|
|
+ </div>
|
|
|
|
+
|
|
|
|
+ <el-divider content-position="left"><i class="el-icon-s-tools" style="margin-right: 3px;"></i>导出设置</el-divider>
|
|
|
|
+ <el-popover placement="left" popper-class="popper-open" width="200" trigger="manual" v-model="visible4" content='文件名不能包含下列任何字符: \ / : * ? " < > |'>
|
|
|
|
+ <i slot="reference"></i>
|
|
|
|
+ </el-popover>
|
|
|
|
+
|
|
|
|
+ <div class="handle-item" >
|
|
|
|
+ <label class="handle-label">导出名称:</label>
|
|
|
|
+ <el-input v-if="menuIndex == '5'" v-model="extractData.fileName" placeholder="请输入名称" style="width:150px;" size="small" @input="extractChange('fileName')"></el-input>
|
|
|
|
+ <el-input v-if="menuIndex == '6'" v-model="extractData.dirName" placeholder="请输入名称" style="width:150px;" size="small" @input="extractChange('dirName')"></el-input>
|
|
|
|
+ </div>
|
|
|
|
+ <div class="handle-item" >
|
|
|
|
+ <label class="handle-label">导出格式:</label>
|
|
|
|
+ <el-select v-model="extractData.exportSuffix" style="width:150px;" size="small">
|
|
|
|
+ <el-option value="xlsx" label="xlsx"></el-option>
|
|
|
|
+ <el-option value="docx" label="docx"></el-option>
|
|
|
|
+ <el-option value="txt" label="txt"></el-option>
|
|
|
|
+ </el-select>
|
|
|
|
+ </div>
|
|
|
|
+ <div class="handle-item" >
|
|
|
|
+ <label class="handle-label">导出目录:</label>
|
|
|
|
+ <el-input :title="extractData.newPath" ref="upload-input" @focus="pickPath" placeholder="请选择输出目录" size="small" v-model="extractData.newPath" readonly style="width:150px; font-size: 12px;" prefix-icon="el-icon-folder"></el-input>
|
|
|
|
+ <el-popover placement="bottom" popper-class="popper-open" trigger="hover" content="打开保存目录">
|
|
|
|
+ <i class="el-icon-folder-opened" slot="reference" style="width: 18px;cursor: pointer; font-size: 22px; vertical-align: middle;" @click="openFolder()"></i>
|
|
|
|
+ </el-popover>
|
|
|
|
+ </div>
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ </template>
|
|
|
|
+
|
|
|
|
+ <!--时间属性 -->
|
|
|
|
+ <template v-if="['3', '4'].indexOf(menuIndex) > -1">
|
|
<el-divider content-position="left"><i class="el-icon-s-flag" style="margin-right: 3px;"></i>时间属性</el-divider>
|
|
<el-divider content-position="left"><i class="el-icon-s-flag" style="margin-right: 3px;"></i>时间属性</el-divider>
|
|
<div class="handle-item">
|
|
<div class="handle-item">
|
|
<label class="handle-label">创建时间:</label>
|
|
<label class="handle-label">创建时间:</label>
|
|
@@ -329,7 +382,8 @@
|
|
</div>
|
|
</div>
|
|
</template>
|
|
</template>
|
|
|
|
|
|
- <template v-else>
|
|
|
|
|
|
+ <!-- 重命名设置 -->
|
|
|
|
+ <template v-if="['1', '2'].indexOf(menuIndex) > -1">
|
|
<div class="handle-item">
|
|
<div class="handle-item">
|
|
<label class="handle-label">命名方式:</label>
|
|
<label class="handle-label">命名方式:</label>
|
|
<el-select v-model="handleData.fileMethod" style="width:150px;" size="small" @change="setChange">
|
|
<el-select v-model="handleData.fileMethod" style="width:150px;" size="small" @change="setChange">
|
|
@@ -584,6 +638,7 @@ export default {
|
|
visible: false,
|
|
visible: false,
|
|
visible2: false,
|
|
visible2: false,
|
|
visible3: false,
|
|
visible3: false,
|
|
|
|
+ visible4: false,
|
|
tipsModal: true,
|
|
tipsModal: true,
|
|
tipsDesc: '非会员不支持修改时间属性,如需完整功能请开通会员',
|
|
tipsDesc: '非会员不支持修改时间属性,如需完整功能请开通会员',
|
|
imgUrl: this.$api.imgUrl,
|
|
imgUrl: this.$api.imgUrl,
|
|
@@ -596,7 +651,6 @@ export default {
|
|
dirTimeList: [], //文件夹时间列表
|
|
dirTimeList: [], //文件夹时间列表
|
|
|
|
|
|
downloadDir: '', // 默认下载目录
|
|
downloadDir: '', // 默认下载目录
|
|
- softdownloadDir: '', // 软件下载目录
|
|
|
|
handleData: {
|
|
handleData: {
|
|
fileMethod: "1", //命名方式
|
|
fileMethod: "1", //命名方式
|
|
fileName: "", // 新文件名
|
|
fileName: "", // 新文件名
|
|
@@ -629,6 +683,18 @@ export default {
|
|
digit: 1 // 位数
|
|
digit: 1 // 位数
|
|
},
|
|
},
|
|
|
|
|
|
|
|
+ extractData: { // 导出格式设置
|
|
|
|
+ includeSuffix: true,
|
|
|
|
+ includeMtime: true,
|
|
|
|
+ includeBtime: true,
|
|
|
|
+ includePath: true,
|
|
|
|
+ timeStyle: 'yyyy/mm/dd hh:mm:ss',
|
|
|
|
+ newPath: '',
|
|
|
|
+ fileName: '文件名提取',
|
|
|
|
+ dirName: '文件夹名提取',
|
|
|
|
+ exportSuffix: "xlsx",
|
|
|
|
+ },
|
|
|
|
+
|
|
dowloadModel: false,
|
|
dowloadModel: false,
|
|
finishModel: false,
|
|
finishModel: false,
|
|
loading: false,
|
|
loading: false,
|
|
@@ -645,6 +711,16 @@ export default {
|
|
},
|
|
},
|
|
mounted() {
|
|
mounted() {
|
|
this.$refs.updateRef.updateSoft(true);
|
|
this.$refs.updateRef.updateSoft(true);
|
|
|
|
+
|
|
|
|
+ let __dirname = os.userInfo().homedir;
|
|
|
|
+ this.softdownloadDir = __dirname + separator + "Downloads";
|
|
|
|
+ if(fs.existsSync(__dirname + separator + "Desktop")){
|
|
|
|
+ this.downloadDir = __dirname + separator + "Desktop"
|
|
|
|
+ } else{
|
|
|
|
+ this.downloadDir = __dirname + separator + "Downloads"
|
|
|
|
+ }
|
|
|
|
+ this.extractData.newPath = this.downloadDir;
|
|
|
|
+
|
|
// 打开浏览器
|
|
// 打开浏览器
|
|
const { shell } = require('electron');
|
|
const { shell } = require('electron');
|
|
const links = document.querySelectorAll('a[href]');
|
|
const links = document.querySelectorAll('a[href]');
|
|
@@ -657,6 +733,27 @@ export default {
|
|
});
|
|
});
|
|
},
|
|
},
|
|
methods: {
|
|
methods: {
|
|
|
|
+ // 选择目录
|
|
|
|
+ pickPath() {
|
|
|
|
+ this.$refs['upload-input'].blur();
|
|
|
|
+ electronApi.call('pickDir', []).then((path) => {
|
|
|
|
+ if (path) {
|
|
|
|
+ this.extractData.newPath = path;
|
|
|
|
+ this.downloadDir = path;
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ },
|
|
|
|
+ // 打开自定义下载目录
|
|
|
|
+ openFolder(){
|
|
|
|
+ let path = this.downloadDir;
|
|
|
|
+ if(fs.existsSync(this.downloadDir + separator + pjson.softInfo.softName)){
|
|
|
|
+ path = this.downloadDir + separator + pjson.softInfo.softName;
|
|
|
|
+ } else {
|
|
|
|
+ fs.mkdirSync(this.downloadDir + separator + pjson.softInfo.softName);
|
|
|
|
+ path = this.downloadDir + separator + pjson.softInfo.softName;
|
|
|
|
+ }
|
|
|
|
+ electronApi.call('showItemInfolder',[path+'\\tty.tty'])
|
|
|
|
+ },
|
|
handleDrop(e){
|
|
handleDrop(e){
|
|
//阻止默认行为
|
|
//阻止默认行为
|
|
e.preventDefault();
|
|
e.preventDefault();
|
|
@@ -1231,6 +1328,18 @@ export default {
|
|
|
|
|
|
});
|
|
});
|
|
},
|
|
},
|
|
|
|
+ extractChange(str){
|
|
|
|
+ if(this.containsAnyChar(this.extractData[str], ['\\', '/', ':', '*', '?', '"', '<', '>', '|'])){ // 判断是否含有特殊字符
|
|
|
|
+ this.extractData[str] = this.extractData[str].replace(/[\\|/|:|*|?|"|<|>||]/g,"");
|
|
|
|
+
|
|
|
|
+ if(!this.visible4){
|
|
|
|
+ this.visible4 = true;
|
|
|
|
+ setTimeout(() => {
|
|
|
|
+ this.visible4 = false;
|
|
|
|
+ }, 1500)
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ },
|
|
modifyChange(row, rowIndex){
|
|
modifyChange(row, rowIndex){
|
|
if(this.containsAnyChar(row.modifyName, ['\\', '/', ':', '*', '?', '"', '<', '>', '|'])){ // 判断是否含有特殊字符
|
|
if(this.containsAnyChar(row.modifyName, ['\\', '/', ':', '*', '?', '"', '<', '>', '|'])){ // 判断是否含有特殊字符
|
|
row.modifyName = row.modifyName.replace(/[\\|/|:|*|?|"|<|>||]/g, "");
|
|
row.modifyName = row.modifyName.replace(/[\\|/|:|*|?|"|<|>||]/g, "");
|