diff --git a/back/src/views/modules/ability/assignedScene/components/infrastructure-modal.vue b/back/src/views/modules/ability/assignedScene/components/infrastructure-modal.vue
index ae7be4fe..caf3a71c 100644
--- a/back/src/views/modules/ability/assignedScene/components/infrastructure-modal.vue
+++ b/back/src/views/modules/ability/assignedScene/components/infrastructure-modal.vue
@@ -44,6 +44,11 @@
重置
+
+ 清空已选择
+
+
@@ -115,6 +120,7 @@ export default {
showKey: 0,
showModal: false,
selectedArray: [], // 已选择的数据id
+ selectedArrayCopy: [],
displayList: [], // 用于展示的list
btnList: ['视频资源', '云资源', '感知资源'],
showText: {
@@ -210,6 +216,8 @@ export default {
this.displayList = JSON.parse(JSON.stringify(arr));
// 已选中
this.selectedArray = arr.map(v => v.idtCameraChannel);
+ this.selectedArrayCopy = JSON.parse(JSON.stringify(arr));
+
this.dataList = JSON.parse(JSON.stringify(arr));
this.pageData.total = arr.length;
// 默认选中复选框
@@ -303,24 +311,38 @@ export default {
this.searchData.parentId = parentId;
this.getData(parentId)
},
+ clearSelectArray() {
+ this.selectedArrayCopy = []
+ this.selectedArray = []
+ this.getData()
+ },
confirmSubmitHandle() {
- if (this.selectedArray.length > this.maxNum) {
+ // 新选择的
+ let idtCameraChannelArray = this.selectedArray.map(v => v.idtCameraChannel)
+ // 选过的
+ let newIdArray = this.selectedArrayCopy.map(v => v.idtCameraChannel)
+ let idArray = [...new Set(newIdArray.concat(idtCameraChannelArray))]
+ if (idArray.length > this.maxNum) {
return this.$message.error('最多选择十条数据!');
}
- this.showModal = false;
- this.displayList = []
- let idtCameraChannelArray = this.selectedArray.map(v => v.idtCameraChannel)
- this.dataList.map(v => {
- if (idtCameraChannelArray.includes(v.idtCameraChannel)) {
+
+ let listArray = [].concat(this.selectedArrayCopy, this.dataList);
+ this.displayList = [];
+ idArray.map(v => {
+ let obj = listArray.find(k => k.idtCameraChannel === v)
+ if (obj) {
this.displayList.push({
- channelName: v.channelName
+ channelName: obj.channelName
})
}
+
})
+
this.$emit('update', {
title: this.type,
- list: idtCameraChannelArray
+ list: idArray,
})
+ this.showModal = false;
},
close() {
this.showModal = false;