From 8779375b26e23113ebfa5940e4e5dbe696980f53 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期二, 07 一月 2025 18:46:29 +0800
Subject: [PATCH] 流程设计-任务配置-人员类型组件重构:todo角色组件分页回显问题

---
 src/components/flow/Role/MyRole.vue |   81 ++++++++++------------------------------
 1 files changed, 20 insertions(+), 61 deletions(-)

diff --git a/src/components/flow/Role/MyRole.vue b/src/components/flow/Role/MyRole.vue
index f2027a0..dfa4e74 100644
--- a/src/components/flow/Role/MyRole.vue
+++ b/src/components/flow/Role/MyRole.vue
@@ -24,13 +24,13 @@
         </el-form-item>
       </el-form>
 
-      <el-table ref="dataTable"  v-loading="loading" :data="roleList" @selection-change="handleMultipleRoleSelect">
+      <el-table ref="dataTable"  v-loading="loading"  :data="roleList" @selection-change="handleMultipleRoleSelect">
         <el-table-column type="selection" width="50" align="center" />
-        <el-table-column label="瑙掕壊缂栧彿" prop="roleId" width="120" />
-        <el-table-column label="瑙掕壊鍚嶇О" prop="roleName" :show-overflow-tooltip="true" width="150" />
-        <el-table-column label="鏉冮檺瀛楃" prop="roleKey" :show-overflow-tooltip="true" width="150" />
-        <el-table-column label="鏄剧ず椤哄簭" prop="roleSort" width="100" />
-        <el-table-column label="鍒涘缓鏃堕棿" align="center" prop="createTime" width="180">
+        <el-table-column label="瑙掕壊缂栧彿" prop="roleId"/>
+        <el-table-column label="瑙掕壊鍚嶇О" prop="roleName" :show-overflow-tooltip="true"/>
+        <el-table-column label="鏉冮檺瀛楃" prop="roleKey" :show-overflow-tooltip="true"/>
+        <el-table-column label="鏄剧ず椤哄簭" prop="roleSort"/>
+        <el-table-column label="鍒涘缓鏃堕棿" align="center" prop="createTime">
           <template slot-scope="scope">
             <span>{{ parseTime(scope.row.createTime) }}</span>
           </template>
@@ -110,65 +110,24 @@
     };
   },
   watch: {
-    selectValues: {
-      deep: true,
-      handler(newVal) {
-        if (newVal && newVal.length > 0) {
-          this.$nextTick(() => {
-            this.$refs.dataTable.clearSelection();
-            this.selectRoleList = []
-            newVal.forEach(item => {
-              this.roleList.forEach(role => {
-                if (item.roleId === role.roleId) {
-                  this.selectRoleList.push(role)
-                  this.$refs.dataTable.toggleRowSelection(role)
-                }
-              })
-            });
-          })
-        } else {
-          this.selectRoleList = []
-        }
-      }
-    },
-    roleList: {
-      deep: true,
-      handler(newVal) {
-        if (newVal && newVal.length > 0) {
-          this.$nextTick(() => {
-            this.$refs.dataTable.clearSelection();
-            this.selectValues.forEach(item => {
-              newVal.forEach(role => {
-                if (item.roleId === role.roleId) {
-                  this.$refs.dataTable.toggleRowSelection(role)
-                }
-              })
-            });
-          })
-        }
-      }
-    }
   },
   mounted() {
+    console.log("鎴戝鍦ㄤ簡")
     this.getList();
   },
   methods: {
+    // 淇濆瓨閫変腑鐨勬暟鎹甶d,row-key灏辨槸瑕佹寚瀹氫竴涓猭ey鏍囪瘑杩欎竴琛岀殑鏁版嵁
+    getRowKey (row) {
+      return row.roleId
+    },
     setChecked(val) {
-      if (val && val.length > 0) {
-        this.$nextTick(() => {
-          this.$refs.dataTable.clearSelection();
-          this.selectRoleList = val
-          val.forEach(check => {
-            this.roleList.forEach(item => {
-              if (check.roleId === item.roleId) {
-                this.$refs.dataTable.toggleRowSelection(item)
-              }
-            })
-          })
-        });
-      } else {
-        this.selectRoleList = []
-      }
+      console.log("鎺ユ敹鍒扮殑鏁版嵁", val)
+      this.selectRoleList = val
+      this.$nextTick(() => {
+        val.forEach(check => {
+          this.$refs.dataTable.toggleRowSelection(check, true)
+        })
+      });
     },
     close() {
       this.$emit("close")
@@ -187,8 +146,8 @@
       );
     },
     // 澶氶�夋閫変腑鏁版嵁
-    handleMultipleRoleSelect(selection) {
-      this.selectRoleList = selection
+    handleMultipleRoleSelect(rows) {
+      this.selectRoleList = rows
     },
     /** 鎼滅储鎸夐挳鎿嶄綔 */
     handleQuery() {

--
Gitblit v1.8.0