zhangjie 1 rok temu
rodzic
commit
18af1eb120

+ 1 - 1
src/views/resource-guard/person-guard/person-files/add-person-file-dialog.vue

@@ -214,7 +214,7 @@ const { formData, isEdit } = useClearDialog(
     for (let key in formData) {
       formData[key] = props.curRow[key];
     }
-    formData.id = formData.userArchivesId;
+    formData.id = props.curRow.userArchivesId;
     formData.roleIds = props.curRow.roleInfoList.map((item) => item.roleId);
   }
 );

+ 4 - 4
src/views/system/config-manage/device-manage/index.vue

@@ -17,7 +17,7 @@
         <t-button
           variant="outline"
           :disabled="!selectedRowKeys.length"
-          @click="handleEable(selectedRowKeys, true)"
+          @click="handleEnable(selectedRowKeys, true)"
         >
           <template #icon><svg-icon name="delete" color="#262626" /></template>
           批量启用
@@ -25,7 +25,7 @@
         <t-button
           variant="outline"
           :disabled="!selectedRowKeys.length"
-          @click="handleEable(selectedRowKeys, false)"
+          @click="handleEnable(selectedRowKeys, false)"
         >
           <template #icon><svg-icon name="delete" color="#262626" /></template>
           批量禁用
@@ -101,7 +101,7 @@
             <t-link
               :theme="row.enable ? 'danger' : 'success'"
               hover="color"
-              @click="handleEable([row.id], !row.enable)"
+              @click="handleEnable([row.id], !row.enable)"
             >
               {{ row.enable ? '禁用' : '启用' }}
             </t-link>
@@ -321,7 +321,7 @@ const handleDestroy = () => {
     },
   });
 };
-const handleEable = (selectedIds, enable) => {
+const handleEnable = (selectedIds, enable) => {
   const name = enable ? '启用' : '禁用';
 
   if (!selectedIds.length) {

+ 69 - 54
src/views/user/auth-manage/user-manage/index.vue

@@ -26,16 +26,47 @@
         <template #roles="{ row }">
           {{ row.roles.map((item) => item.name).join('、') }}
         </template>
-        <template #enable="{ row }">
-          {{ row.enable ? '启用' : '禁用' }}
+        <template #enable="{ col, row }">
+          <status-tag :value="row[col.colKey]" type="enable"></status-tag>
+        </template>
+        <template #operate="{ row }">
+          <div class="table-operations">
+            <t-link
+              v-perm="'user_LINK_UpdatePwd'"
+              theme="primary"
+              hover="color"
+              @click="handleModifyPwd(row)"
+            >
+              修改密码
+            </t-link>
+
+            <t-link
+              v-perm="'user_LINK_Update'"
+              theme="primary"
+              hover="color"
+              @click="handleEdit(row)"
+            >
+              修改
+            </t-link>
+            <t-link
+              v-perm="'user_LINK_Enable'"
+              :theme="row.enable ? 'danger' : 'success'"
+              hover="color"
+              @click="handleEnable(row)"
+            >
+              {{ row.enable ? '禁用' : '启用' }}
+            </t-link>
+          </div>
         </template>
       </t-table>
     </div>
+
     <AddUserDialog
       v-model:visible="showAddUserDialog"
       :curRow="curRow"
       @success="addSuccess"
     ></AddUserDialog>
+
     <UpdateUserPwdDialog
       v-model:visible="showUpdateUserPwdDialog"
       :curRow="curRow"
@@ -52,69 +83,24 @@ import useFetchTable from '@/hooks/useFetchTable';
 import AddUserDialog from './add-user-dialog.vue';
 import UpdateUserPwdDialog from './update-user-pwd-dialog.vue';
 import { toggleUserStatus } from '@/api/user';
-import { MessagePlugin } from 'tdesign-vue-next';
+import { DialogPlugin, MessagePlugin } from 'tdesign-vue-next';
 const showAddUserDialog = ref(false);
 const showUpdateUserPwdDialog = ref(false);
 const curRow = ref(null);
-const toggleStatus = (row) => {
-  toggleUserStatus({ id: row.id, enable: !row.enable }).then(() => {
-    MessagePlugin.success('操作成功');
-    search();
-  });
-};
+
 const columns = [
   { colKey: 'id', title: '用户ID', width: 200 },
-  { colKey: 'realName', title: '姓名' },
+  { colKey: 'realName', title: '姓名', minWidth: 140 },
   { colKey: 'genderStr', title: '性别', width: 80 },
   { colKey: 'mobileNumber', title: '手机', width: 160 },
+  { colKey: 'orgName', title: '所属节点', width: 160 },
   { colKey: 'roles', title: '角色' },
   { colKey: 'enable', title: '状态', width: 100 },
   {
     title: '管理',
     colKey: 'operate',
     fixed: 'right',
-    width: 230,
-    cell: (h, { row }) => {
-      return (
-        <div class="table-operations">
-          <t-link
-            v-perm="user_LINK_UpdatePwd"
-            theme="primary"
-            hover="color"
-            onClick={(e) => {
-              e.stopPropagation();
-              curRow.value = row;
-              showUpdateUserPwdDialog.value = true;
-            }}
-          >
-            修改密码
-          </t-link>
-          <t-link
-            v-perm="user_LINK_Update"
-            theme="primary"
-            hover="color"
-            onClick={(e) => {
-              e.stopPropagation();
-              curRow.value = row;
-              showAddUserDialog.value = true;
-            }}
-          >
-            修改
-          </t-link>
-          <t-link
-            v-perm="user_LINK_Enable"
-            theme={row.enable ? 'danger' : 'success'}
-            hover="color"
-            onClick={(e) => {
-              e.stopPropagation();
-              toggleStatus(row);
-            }}
-          >
-            {row.enable ? '禁用' : '启用'}
-          </t-link>
-        </div>
-      );
-    },
+    width: 200,
   },
 ];
 
@@ -132,6 +118,37 @@ const handleAdd = () => {
   showAddUserDialog.value = true;
 };
 
+const handleEdit = (row) => {
+  curRow.value = row;
+  showAddUserDialog.value = true;
+};
+
+const handleEnable = (row) => {
+  const name = !row.enable ? '启用' : '禁用';
+
+  const confirmDia = DialogPlugin({
+    header: `${name}提示`,
+    body: `是否${name}该用户?`,
+    confirmBtn: '确定',
+    cancelBtn: '取消',
+    onConfirm: async () => {
+      confirmDia.hide();
+      const res = await toggleUserStatus({
+        id: row.id,
+        enable: !row.enable,
+      }).catch(() => {});
+      if (!res) return;
+      MessagePlugin.success('操作成功');
+      row.enable = !row.enable;
+    },
+  });
+};
+
+const handleModifyPwd = (row) => {
+  curRow.value = row;
+  showUpdateUserPwdDialog.value = true;
+};
+
 const addSuccess = () => {
   showAddUserDialog.value = false;
   MessagePlugin.success('操作成功');
@@ -142,5 +159,3 @@ const updatePwdSuccess = () => {
   MessagePlugin.success('操作成功');
 };
 </script>
-
-<style></style>