tangning před 1 měsícem
rodič
revize
686e0c6253

+ 1 - 1
package.json

@@ -4,7 +4,7 @@
   "version": "0.0.0",
   "type": "module",
   "scripts": {
-    "dev": "vite --mode=criminal",
+    "dev": "vite --mode=fire",
     "devxm": "vite --mode=xmfire",
     "devcjz": "vite --mode=cjzfire",
     "dev-offline": "vite --mode=offline",

+ 22 - 1
src/view/newFireCase/newFireDetails/components/scene.vue

@@ -102,6 +102,8 @@
         style="width: 100%"
         :row-class-name="rowClassName"
         @selection-change="onSelectionChange"
+        @select="ItemChange"
+        @select-all="listChange"
       >
         <el-table-column type="selection" width="48" :selectable="isRowSelectable" />
         <el-table-column label="标题" min-width="140">
@@ -347,7 +349,25 @@ const onTitleInput = () => {
     fetchTableData();
   }, 300);
 };
-
+const ItemChange = (selection, row) =>  {
+  let item = selection.find(ele => ele.num === row.num)
+  if(!item){//判断为取消
+    selectedRows.value = selectedRows.value.filter(ele => !(ele.isObj == row.isObj && ele.num == row.num))
+  }
+};
+const listChange = (selection) =>  {
+  let listnum = scenes.value.map(ele => ele.num)
+  let check = selection.every(ele => listnum.includes(ele.num))
+  if(check){//判断为取消
+    selectedRows.value = selectedRows.value.filter(ele => {
+      if(query.value.type == ele.isObj && !listnum.includes(ele.num)){
+        return false
+      }else{
+        return true
+      }
+    })
+  }
+};
 const onSelectionChange = (rows: Scene[]) => {
   console.log(rows, 'rows')
   // 保证“已导入”的行始终在选中集合中,并与跨页选中合并
@@ -365,6 +385,7 @@ const onSelectionChange = (rows: Scene[]) => {
     map.set(rowKey(r), r);
   });
   selectedRows.value = Array.from(map.values());
+  console.log(selectedRows.value, 'selectedRows', rows)
 };
 
 // 合并当前案件已有场景与新选择的场景,避免重复