From a10c7076f59177b04861b3a27eb618ef9a9c4d06 Mon Sep 17 00:00:00 2001
From: zhouwenxuan <1175765986@qq.com>
Date: 星期四, 04 一月 2024 16:02:08 +0800
Subject: [PATCH] 修改密码

---
 src/views/system/user/index.vue |   37 ++++++++++++++++++++++---------------
 1 files changed, 22 insertions(+), 15 deletions(-)

diff --git a/src/views/system/user/index.vue b/src/views/system/user/index.vue
index 473f805..27bcc22 100644
--- a/src/views/system/user/index.vue
+++ b/src/views/system/user/index.vue
@@ -36,16 +36,12 @@
                     <span>{{ scope.row.roles.map(obj => obj.roleName).join('、') }}</span>
                   </template>
                 </el-table-column>
-                <el-table-column prop="idType" label="证件类型">
-                  <template #default="scope">
-                    <span>{{idTypeList.find(item=>item.id == scope.row.idType)?.name}}</span>
-                  </template>
-                </el-table-column>
                 <el-table-column prop="idSerial" label="证件号码"></el-table-column>
-                <el-table-column label="操作" width="100">
+                <el-table-column label="操作" width="150">
                     <template #default="scope">
                         <el-button :disabled="scope.row.userName === 'admin'" size="small" text type="primary" @click="onOpenUserDialog('修改', scope.row)">修改</el-button>
                         <el-button style="color: red" :disabled="scope.row.userName === 'admin'" size="small" text type="primary" @click="onRowDel(scope.row)">删除</el-button>
+                        <el-button  v-if="isAdmin" size="small" text type="primary" @click="updatePwd(scope.row)">重置密码</el-button>
                     </template>
                 </el-table-column>
             </el-table>
@@ -55,6 +51,7 @@
             <br />
         </el-card>
         <userDialog ref="userRef" @getUserList="initUserTableData"/>
+        <update-pwd ref="pwdRef"></update-pwd>
     </div>
 </template>
 
@@ -65,6 +62,8 @@
 import { userApi } from '/@/api/systemManage/user';
 import { departmentApi } from '/@/api/systemManage/department';
 import { useRoleApi } from '/@/api/systemManage/role';
+import updatePwd from '/@/components/updatePwd/index.vue'
+import Cookies from 'js-cookie';
 
 // 定义接口来定义对象的类型
 interface TableDataRow {
@@ -102,7 +101,6 @@
             }
         };
     };
-    idTypeList: Array<idType>
     depList: [];
     roleList: [];
     expList: [];
@@ -111,9 +109,11 @@
 
 export default defineComponent({
     name: 'systemUser',
-    components: { userDialog },
+    components: { userDialog, updatePwd },
     setup() {
         const userRef = ref();
+        const pwdRef = ref();
+        const isAdmin = ref(false);
         const state = reactive<TableDataState>({
             userTableData: {
                 data: [],
@@ -130,12 +130,6 @@
                   }
                 }
             },
-            idTypeList:[
-              {
-                id: 1,
-                name: '身份证'
-              }
-            ],
             depList: [],
             roleList: [],
             expList: [],
@@ -260,23 +254,36 @@
             state.userTableData.listQuery.pageIndex = val;
             initUserTableData();
         };
+        let roles = [];
         // 页面加载时
         onMounted(() => {
             initUserTableData();
             initRoleTableData();
             getRoleData();
-            getExpertsData();
+            // getExpertsData();
             getDepList()
+            roles = JSON.parse(Cookies.get('roles'))
+            roles.forEach((item:any) => {
+              if(item.roleId && item.roleName == '超级管理员'){
+                isAdmin.value = true
+              }
+            })
         });
+      const updatePwd = (val: any) => {
+        pwdRef.value.openDialog('',val.id);
+      }
         return {
             userRef,
             reset,
             onOpenUserDialog,
             onRowDel,
+            pwdRef,
             onHandleSizeChange,
             initUserTableData,
             searchByName,
+            updatePwd,
             onHandleCurrentChange,
+            isAdmin,
             ...toRefs(state)
         };
     }

--
Gitblit v1.9.2