fix:规则bug修复
This commit is contained in:
parent
9d5cdbf3a6
commit
5550130397
@ -13,6 +13,7 @@
|
||||
<el-input style="display: inline-block; width: 150px" type="text" size="small" placeholder="关键词过滤" v-model="filterText" />
|
||||
<el-button type="primary" @click="selectAll(true)" size="mini">全选</el-button>
|
||||
<el-button type="primary" @click="selectAll(false)" size="mini">全不选</el-button>
|
||||
<el-button type="primary" @click="refresh" size="mini">刷新</el-button>
|
||||
</div>
|
||||
<div v-for="(item, index) in filterFileList" :key="index">
|
||||
<span class="folder" v-if="item.isFolder" @click="fileClick(item)">{{ item.name }}</span>
|
||||
@ -34,7 +35,6 @@ export default {
|
||||
return {
|
||||
isWindows: false,
|
||||
fileList: [], //路径下的文件节点
|
||||
chosedFileList: [], //选中的文件节点
|
||||
pathList: [], //选择的路径
|
||||
loading: false, //加载
|
||||
filterText: "", //关键字过滤
|
||||
@ -50,7 +50,11 @@ export default {
|
||||
this.isWindows = await HttpUtil.get("/file/isWindows");
|
||||
await this.breadcrumbClick(-1);
|
||||
},
|
||||
|
||||
methods: {
|
||||
async refresh() {
|
||||
await this.breadcrumbClick(this.pathList.length - 1);
|
||||
},
|
||||
//点击面包蟹
|
||||
async breadcrumbClick(index) {
|
||||
this.loading = true;
|
||||
@ -98,6 +102,7 @@ export default {
|
||||
return;
|
||||
}
|
||||
this.$emit("addData", chosedFiles);
|
||||
this.fileList.forEach((item) => (item.checked = false));
|
||||
},
|
||||
},
|
||||
};
|
||||
|
@ -14,22 +14,29 @@
|
||||
<el-button type="danger" size="mini" @click="deleteCheckedFiles">删除</el-button>
|
||||
</div>
|
||||
<div class="fileBlock">
|
||||
<div class="oneLine" v-for="(item, index) in fileList" :key="index">
|
||||
<!-- 左侧原始文件名 -->
|
||||
<el-checkbox v-model="item.checked" class="left">
|
||||
<div class="oneFileName">
|
||||
{{ item.name }}
|
||||
<!-- 左侧原始文件名 -->
|
||||
<div style="flex: 4">
|
||||
<div v-for="(item, index) in fileList" :key="index" class="oneLine">
|
||||
<el-checkbox v-model="item.checked" style="height: 1.2em">{{ item.name }}</el-checkbox>
|
||||
<div style="display: flex; align-items: center; padding-right: 4em">
|
||||
<ArrowDownBold
|
||||
style="width: 20px; padding-left: 10px"
|
||||
style="width: 20px; padding-left: 10px; cursor: pointer"
|
||||
v-if="index < fileList.length - 1"
|
||||
@click.stop.prevent="moveIndex(index + 1, index)"
|
||||
/>
|
||||
<ArrowUpBold style="width: 20px; padding-left: 10px" v-if="index > 0" @click.stop.prevent="moveIndex(index - 1, index)" />
|
||||
<ArrowUpBold
|
||||
style="width: 20px; padding-left: 10px; cursor: pointer"
|
||||
v-if="index > 0"
|
||||
@click.stop.prevent="moveIndex(index - 1, index)"
|
||||
/>
|
||||
</div>
|
||||
</el-checkbox>
|
||||
<!-- 修改后的文件名 -->
|
||||
<div class="right">
|
||||
{{ changedFileList.length > index ? changedFileList[index].name : "" }}
|
||||
</div>
|
||||
</div>
|
||||
<!-- 右边的预览文件名 -->
|
||||
<div style="flex: 4">
|
||||
<div v-for="(item, index) in changedFileList" :key="index" class="oneLine">
|
||||
<div style="flex: 4">{{ item.name }}</div>
|
||||
<div style="color: red; flex: 1">{{ item.errorMessage }}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -61,8 +68,8 @@ export default {
|
||||
loading: false, //遮罩
|
||||
dialogVisible: false, //新增文件弹窗
|
||||
ruleList: [], //当前生效的规则
|
||||
fileList: [],
|
||||
changedFileList: [],
|
||||
fileList: [], //选择的文件
|
||||
changedFileList: [], //执行修改后的文件
|
||||
needPreview: false, //需要点击预览
|
||||
applicationRule: null, //当前应用的应用规则模板
|
||||
};
|
||||
@ -160,17 +167,16 @@ export default {
|
||||
|
||||
.fileBlock {
|
||||
margin-top: 20px;
|
||||
display: flex;
|
||||
.oneLine {
|
||||
display: flex;
|
||||
border-top: 1px solid rgb(228, 224, 224);
|
||||
.left {
|
||||
flex: 1;
|
||||
}
|
||||
.right {
|
||||
flex: 1;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
border-top: 1px solid rgb(214, 212, 212);
|
||||
height: 1.5em;
|
||||
padding-top: 0.1em;
|
||||
padding-bottom: 0.1em;
|
||||
padding-right: 0.2em;
|
||||
}
|
||||
|
||||
.oneFileName {
|
||||
|
@ -22,7 +22,7 @@
|
||||
</div>
|
||||
<!-- 弹窗 -->
|
||||
<el-dialog title="新增规则" v-model="addRuleDialogShow" width="70%">
|
||||
<rule :editRule="editRule" @ruleAdd="ruleAdd" />
|
||||
<rule :editRule="editRule" @ruleAdd="ruleAdd" v-if="addRuleDialogShow" />
|
||||
</el-dialog>
|
||||
<el-dialog title="选择规则模板" v-model="ruleTemplateShow" width="70%">
|
||||
<application-rule-list v-if="ruleTemplateShow" v-model="chosedTemplate" @close="ruleTemplateShow = false" />
|
||||
@ -115,8 +115,6 @@ export default {
|
||||
},
|
||||
//新增规则
|
||||
async ruleAdd(data) {
|
||||
data.checked = false;
|
||||
data.blocked = false;
|
||||
if (this.editRule != null) {
|
||||
let index = this.ruleList.indexOf(this.editRule);
|
||||
this.ruleList.splice(index, 1, data);
|
||||
@ -124,12 +122,18 @@ export default {
|
||||
} else {
|
||||
this.ruleList.push(data);
|
||||
}
|
||||
data.checked = false;
|
||||
this.ruleUpdate();
|
||||
this.addRuleDialogShow = false;
|
||||
},
|
||||
//禁用/启用
|
||||
async block() {
|
||||
this.ruleList.filter((item) => item.checked).forEach((item) => (item.blocked = !item.blocked));
|
||||
this.ruleList
|
||||
.filter((item) => item.checked)
|
||||
.forEach((item) => {
|
||||
item.blocked = !item.blocked;
|
||||
item.checked = false;
|
||||
});
|
||||
this.ruleUpdate();
|
||||
},
|
||||
//删除规则
|
||||
@ -140,7 +144,7 @@ export default {
|
||||
//编辑规则
|
||||
editClick() {
|
||||
this.editRule = this.checkedRules[0];
|
||||
this.ruleDialogShow = true;
|
||||
this.addRuleDialogShow = true;
|
||||
},
|
||||
},
|
||||
};
|
||||
|
Loading…
x
Reference in New Issue
Block a user