From 4d9a35462803c7392dedca8d95fe21ff3d949466 Mon Sep 17 00:00:00 2001
From: “dzb” <2632970487@qq.com>
Date: 星期一, 03 十月 2022 08:42:36 +0800
Subject: [PATCH] 用户、角色、部门,新增批量操作,案件池详情展示、以及调度

---
 src/views/systemSetting/baseSetting/role/updateUser/index.vue |   62 +++++++++++++++++++++---------
 1 files changed, 43 insertions(+), 19 deletions(-)

diff --git a/src/views/systemSetting/baseSetting/role/updateUser/index.vue b/src/views/systemSetting/baseSetting/role/updateUser/index.vue
index d0d18e1..5905a11 100644
--- a/src/views/systemSetting/baseSetting/role/updateUser/index.vue
+++ b/src/views/systemSetting/baseSetting/role/updateUser/index.vue
@@ -4,8 +4,9 @@
             <div class="mainContent">
                 <div class="my-tree">
                     <div class="my-tree__wrap">
-                        <el-tree :data="roleList" :props="defaultProps" @node-click="handleNodeClick" show-checkbox
-                            @check-change="handleCheckChange" default-expand-all node-key="id">
+                        <!-- @node-click="handleNodeClick" -->
+                        <el-tree ref="tree" :data="roleList" :props="defaultProps"  show-checkbox
+                            @check="handleCheck" :default-checked-keys="checkedIds" default-expand-all node-key="id">
                         </el-tree>
                     </div>
                     <div class="my-tree__bottom"></div>
@@ -41,6 +42,7 @@
     },
     created() {
         const that = this;
+        this.getRoleMenus(this.userInfo.id);
         this.getMenuList();
     },
     methods: {
@@ -72,7 +74,6 @@
             })
                 .then(res => {
                     this.roleList = res.data;
-                    console.log(res);
                 })
         },
         // 鐐瑰嚮鏍戣妭鐐�
@@ -83,31 +84,54 @@
             this.treeId = id;
 
         },
-        // 鏍戝舰鎺т欢閫変腑鏇存敼
-        handleCheckChange(data, checked, indeterminate) {
-            // console.log(data,checked,indeterminate);
-            if (checked) {
-                this.checkedIds.push(data.id);
-            } else {
-                let index = 0;
-                this.checkedIds.forEach((item, idx) => {
-                    if (item.id === data.id) {
-                        index = idx;
-                    }
-                })
-                this.checkedIds.splice(index, 1);
-            }
+        // 鏍戝舰鎺т欢澶嶉�夋鐐瑰嚮浜嬩欢
+        handleCheck(data, checked) {
+            console.log(checked.checkedKeys);
+            this.checkedIds = checked.checkedKeys;
             console.log(this.checkedIds);
         },
         // 淇濆瓨role
         saveRole() {
             this.resCheckedIds = [];
+            const {userInfo} = this;
             this.resCheckedIds = this.checkedIds;
-            this.$emit('changeDialog',{dialogUpdate:false});
+            this.$axios({
+                method:'post',
+                url:'sccg/role/allocMenu?roleId='+userInfo.id + '&menuIds=' + this.checkedIds,
+            })
+            .then(res=>{
+                if(res.code === 200){
+                    this.$message({
+                        type:'success',
+                        message:'淇敼瑙掕壊鏉冮檺鎴愬姛',
+                    })
+                    this.getRoleMenus(userInfo.id);
+                }else{
+                    this.$message({
+                        type:'warning',
+                        message:res.message
+                    })
+                }
+            })
+            // this.$emit('changeDialog',{dialogUpdate:false});
         },
         // 娑堥櫎role
         resetRole() {
-            this.resCheckedIds = []
+            this.resCheckedIds = [];
+            this.$emit('changeDialog',{dialogUpdate:false});
+        },
+        // 鑾峰彇瑙掕壊鑿滃崟
+        getRoleMenus(roleId){
+            this.$axios({
+                method:'get',
+                url:`sccg/role/listMenu/${roleId}`
+            })
+            .then(res=>{
+                this.checkedIds = [];
+                res.data.forEach(item=>{
+                    this.checkedIds.push(item.id);
+                })
+            })
         }
     },
     props: ['userInfo', 'updateFlag', 'getUserList', 'changeDialog']

--
Gitblit v1.8.0