Преглед на файлове

Merge branch 'master' of http://git.shengws.com/csx/Pad_New

XMLWAN преди 4 години
родител
ревизия
e046b79287

+ 24 - 4
src/pages/console/managementConsole/staff_role/editStaff/index.vue Целия файл

@@ -50,8 +50,11 @@
50 50
     <div class="staffBox">
51 51
       <van-field v-model="title" label="职位" placeholder="请填写"/>
52 52
     </div>
53
-    <div v-if="adminInfo.status == 1 && !adminInfo.admin.is_super_admin  &&  !adminInfo.is_sub_super_admin" class="stop" @click="onClick(2)">禁用该员工账号</div>
54
-    <div v-if="adminInfo.status != 1 && !adminInfo.admin.is_super_admin  &&  !adminInfo.is_sub_super_admin " class="stop1" @click="onClick(1)">恢复该员工账号</div>
53
+    <div v-if="isShow()" class="stop" @click="onClick(2)">禁用该员工账号</div>
54
+    <!--<div v-if="isShow()" class="stop" @click="onClick(2)">禁用该员工账号</div>-->
55
+
56
+    <div v-if="adminInfo.status == 1  &&  (!adminInfo.is_sub_super_admin || !this.is_sub_super_admin)" class="stop" @click="onClick(2)">禁用该员工账号</div>
57
+    <div v-if="adminInfo.status != 1  &&  (!adminInfo.is_sub_super_admin || !this.is_sub_super_admin)" class="stop1" @click="onClick(1)">恢复该员工账号</div>
55 58
 
56 59
     <van-popup v-model="show1" position="bottom" :style="{ height: '40%' }">
57 60
       <van-picker show-toolbar :columns="user_type_name" @cancel="onCancel" @confirm="onUserTypeConfirm"/>
@@ -83,6 +86,7 @@
83 86
           admin:{},
84 87
 
85 88
         },
89
+        is_sub_super_admin:false,
86 90
         show1: false,
87 91
         show2: false,
88 92
         type_name:"",
@@ -132,6 +136,12 @@
132 136
       };
133 137
     },
134 138
     methods: {
139
+      isShow(){
140
+
141
+        // if(this.adminInfo.admin_user_id)
142
+
143
+
144
+      },
135 145
       onUserTypeConfirm(value, index){
136 146
         this.type_name = value
137 147
         this.show1 = false
@@ -171,12 +181,20 @@
171 181
 
172 182
       },
173 183
       save() {
184
+
174 185
         if (this.name.trim().length == 0) {
175 186
           this.$toast({
176 187
             message: "姓名不能为空!"
177 188
           });
178 189
           return;
179 190
         }
191
+        if(this.type_name.length == 0){
192
+          this.$toast({
193
+            message: "职称不能为空!"
194
+          });
195
+          return;
196
+        }
197
+
180 198
         if (this.role_ids.length <= 0) {
181 199
           this.$toast({
182 200
             message: "至少选择一种角色"
@@ -210,8 +228,8 @@
210 228
         GetAdminUserInfo(params).then(response => {
211 229
           if (response.data.state === 1) {
212 230
             this.adminInfo = response.data.data.user_info
213
-            console.log(this.adminInfo)
214
-            // this.name = this.adminInfo.
231
+            this.is_sub_super_admin = response.data.data.is_sub_super_admin
232
+
215 233
             this.name = this.adminInfo.user_name
216 234
             this.tel = this.adminInfo.admin.mobile
217 235
             this.title = this.adminInfo.user_title_name
@@ -235,6 +253,7 @@
235 253
               }
236 254
             }
237 255
 
256
+
238 257
             //如果当前用户是超级管理员,而且是在编辑自己的信息的时候,将子管理员角色去除
239 258
             for (let i = 0; i < this.roles.length; i++){
240 259
               if(this.adminInfo.admin.id == this.$store.getters.user.admin.id && this.$store.getters.user.admin.is_super_admin && this.roles[i].is_system == 1 && this.roles[i].name == "子管理员"){
@@ -244,6 +263,7 @@
244 263
             }
245 264
 
246 265
 
266
+
247 267
           } else {
248 268
             this.$toast({
249 269
               message: response.data.msg

+ 19 - 5
src/pages/console/managementConsole/staff_role/employeeList/index.vue Целия файл

@@ -41,6 +41,7 @@ export default {
41 41
   data() {
42 42
     return {
43 43
       allChecked: false,
44
+      isSubSuperAdmin:false,
44 45
       result: [],
45 46
       admin_user: []
46 47
     };
@@ -72,6 +73,8 @@ export default {
72 73
       GetAllStaff().then(response => {
73 74
         if (response.data.state === 1) {
74 75
           this.admin_user = response.data.data.admins;
76
+          this.isSubSuperAdmin = response.data.data.isSubSuperAdmin;
77
+
75 78
           console.log(this.admin_user);
76 79
           for (let i = 0; i < this.admin_user.length; i++) {
77 80
             if (this.admin_user[i].role_ids.length > 0) {
@@ -85,12 +88,23 @@ export default {
85 88
             }
86 89
           }
87 90
           for (let i = 0; i < this.admin_user.length; i++) {
88
-            if (
89
-              this.admin_user[i].user_id == this.$store.getters.user.org.creator
90
-            ) {
91
-              this.admin_user.splice(i, 1);
92
-              i = i - 1;
91
+
92
+            if(this.isSubSuperAdmin){
93
+              if (this.admin_user[i].user_id == this.$store.getters.user.org.creator) {
94
+                this.admin_user.splice(i, 1);
95
+                i = i - 1;
96
+              }else{
97
+                if(this.admin_user[i].is_sub_admin && this.admin_user[i].user_id != this.$store.getters.user.admin.id){
98
+                  this.admin_user.splice(i, 1);
99
+                  i = i - 1;
100
+                }
101
+              }
102
+            }else{
103
+
104
+
93 105
             }
106
+
107
+
94 108
           }
95 109
         } else {
96 110
           this.$toast({

+ 1 - 1
src/pages/console/managementConsole/staff_role/staffManagement/index.vue Целия файл

@@ -91,7 +91,7 @@ export default {
91 91
 
92 92
           for(let i = 0; i < response.data.data.admins.length; i++){
93 93
             if(response.data.data.admins[i].status == 1){
94
-              if(response.data.data.isSubSuperAdmin){ //当前用户为子管理员,不展示管理员信息
94
+              if(response.data.data.isSubSuperAdmin){ //当前用户为子管理员,不展示其他子管理员信息
95 95
                   if(response.data.data.admins[i].user_id != response.data.data.org_creator){
96 96
                     this.admin_user.push(response.data.data.admins[i])
97 97
                   }

+ 57 - 8
src/pages/console/managementConsole/staff_role/userManage/index.vue Целия файл

@@ -11,8 +11,8 @@
11 11
         class="staffOne"
12 12
         v-for="(item, index) in admin_user"
13 13
         :key="index"
14
-        
15
-        @click="goEditStaff(item.user_id,item.is_sub_admin)"
14
+
15
+        @click="goEditStaff(item.is_sub_admin,item.user_id)"
16 16
 
17 17
       >
18 18
         <img v-if="item.avatar.length > 0" :src="item.avatar" alt />
@@ -24,7 +24,7 @@
24 24
         <p >
25 25
           <span>{{ item.user_name }}</span>
26 26
           <i
27
-            v-if="org_creator != item.user_id"
27
+            v-if="isShow(item.is_sub_admin,item.user_id)"
28 28
             class="iconfont icon-bianji bianji"
29 29
           ></i>
30 30
         </p>
@@ -44,6 +44,7 @@
44 44
 // import "../libs/rem.js";
45 45
 import { setRem } from "@/libs/functionRem";
46 46
 import { GetAllStaff } from "@/api/admin_user";
47
+import {Toast} from "vant";
47 48
 
48 49
 export default {
49 50
   data() {
@@ -52,15 +53,39 @@ export default {
52 53
       active: 0,
53 54
       admin_user: [],
54 55
       org_creator: 0,
55
-      name:''
56
+      name:'',
57
+      isSubSuperAdmin:false,
56 58
     };
57 59
   },
58 60
   methods: {
61
+    isShow:function(is_sub_admin,user_id){
62
+      if (!this.isSubSuperAdmin){
63
+        return true
64
+      }else {
65
+        if (is_sub_admin) {
66
+          if (user_id == this.$store.getters.user.admin.id) {
67
+            return true
68
+          }else{
69
+            return false
70
+          }
71
+        } else {
72
+          if (user_id != this.$store.getters.user.org.creator) {
73
+            return true
74
+
75
+          } else {
76
+            return false
77
+
78
+          }
79
+        }
80
+      }
81
+    },
59 82
     GetAllStaff: function() {
60 83
       this.loading = true
61 84
       GetAllStaff().then(response => {
62 85
         if (response.data.state === 1) {
63 86
           this.admin_user = response.data.data.admins;
87
+          this.isSubSuperAdmin = response.data.data.isSubSuperAdmin;
88
+
64 89
           for (let i = 0; i < this.admin_user.length; i++) {
65 90
             if (this.admin_user[i].role_ids.length > 0) {
66 91
               let isExist = -1;
@@ -83,9 +108,33 @@ export default {
83 108
         }
84 109
       });
85 110
     },
86
-    goEditStaff: function(id,is_sub_admin) {
87
-      if (this.org_creator != id){
88
-        this.$router.push({ path: "/staff/editstaff?id=" + id });
111
+    goEditStaff: function(is_sub_admin, user_id) {
112
+      if (this.isShow(is_sub_admin,user_id)){
113
+        this.$router.push({ path: "/staff/editstaff?id=" + user_id });
114
+      }else{
115
+
116
+        if (!this.isSubSuperAdmin){
117
+
118
+        }else {
119
+          if (is_sub_admin) {
120
+            if (user_id == this.$store.getters.user.admin.id) {
121
+
122
+            }else{
123
+              Toast("无法修改其他子管理员或者管理员信息");
124
+
125
+            }
126
+          } else {
127
+            if (user_id != this.$store.getters.user.org.creator) {
128
+
129
+            } else {
130
+              Toast("无法修改其他子管理员或者管理员信息");
131
+
132
+
133
+            }
134
+          }
135
+        }
136
+
137
+
89 138
       }
90 139
     },
91 140
     goAddStaff: function() {
@@ -98,7 +147,7 @@ export default {
98 147
     //获取没被禁用的用户
99 148
 
100 149
     this.org_creator  = this.$store.getters.user.org.creator
101
-    console.log(this.org_creator)
150
+
102 151
     this.GetAllStaff();
103 152
   }
104 153
 };

+ 4 - 3
src/pages/homeIndex/index.vue Целия файл

@@ -289,7 +289,7 @@ export default {
289 289
       }
290 290
     },
291 291
     toCreateOrg() {
292
-      this.show = false;
292
+      this.show = false
293 293
       this.$router.push({ path: "/perfectOrg" });
294 294
     },
295 295
     toPatients() {
@@ -323,11 +323,12 @@ export default {
323 323
             this.value1 = this.$store.getters.user.org.id;
324 324
             this.show = false;
325 325
           } else {
326
-            console.log(1);
326
+            console.log(1)
327 327
             this.show = true;
328
-            console.log(2);
328
+            console.log(2)
329 329
             this.apps = response.data.data.apps;
330 330
             this.banners = response.data.data.banners;
331
+
331 332
           }
332 333
         } else {
333 334
           this.$toast({