From 78ee1301e4d77ee666ab603eef5c46abc5cda930 Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期四, 13 十一月 2025 11:31:27 +0800
Subject: [PATCH] fix: bug

---
 src/views/Permission/RoleManage.vue |   62 +++++++++++++++++++++++--------
 1 files changed, 46 insertions(+), 16 deletions(-)

diff --git a/src/views/Permission/RoleManage.vue b/src/views/Permission/RoleManage.vue
index 4f57eb0..96b9da7 100644
--- a/src/views/Permission/RoleManage.vue
+++ b/src/views/Permission/RoleManage.vue
@@ -19,6 +19,14 @@
               @change="getList()"
             />
           </QueryFilterItem>
+          <QueryFilterItem v-if="extraParamState.userType === EnumUserType.Enterprise">
+            <FieldRadio
+              v-model="extraParamState.enterpriseType"
+              :value-enum="EnumEnterpriseTypeText"
+              buttonStyle
+              @change="getList()"
+            />
+          </QueryFilterItem>
           <QueryFilterItem>
             <SearchInput
               v-model="extraParamState.queryCondition"
@@ -65,7 +73,12 @@
 import { useAccess, useAllRoleList } from '@/hooks';
 import { Message } from '@bole-core/core';
 import AddOrEditRoleDialog from './components/AddOrEditRoleDialog.vue';
-import { EnumClientTypeText, EnumUserTypeText } from '@/constants';
+import {
+  EnumClientTypeText,
+  EnumUserTypeText,
+  EnumEnterpriseTypeText,
+  EnumUserType,
+} from '@/constants';
 import DialogAuthorizeV2 from './components/dialogAuthorizeV2.vue';
 import * as roleServices from '@/services/api/role';
 
@@ -80,14 +93,15 @@
   // member: { emits: { onClick: (role) => openMemberDialog(role) } },
   disabledBtn: {
     emits: { onClick: (role) => roleEnableOrForbid(role) },
+    props: { type: 'danger' },
     extraProps: {
-      hide: (row) => row.isLocked,
+      hide: (row) => row.isDisabled,
     },
   },
   enableBtn: {
     emits: { onClick: (role) => roleEnableOrForbid(role) },
     extraProps: {
-      hide: (row) => !row.isLocked,
+      hide: (row) => !row.isDisabled,
     },
   },
 };
@@ -124,7 +138,11 @@
         },
         userType: extraParamState.userType,
         clientType: extraParamState.clientType,
+        keywords: extraParamState.queryCondition,
       };
+      if (extraParamState.userType === EnumUserType.Enterprise) {
+        params.enterpriseType = extraParamState.enterpriseType;
+      }
       let res = await roleServices.getRoles(params, {
         showLoading: !state.loading,
       });
@@ -137,6 +155,7 @@
       orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }],
       userType: EnumUserType.Operation,
       clientType: EnumClientType.PcWeb,
+      enterpriseType: EnumEnterpriseType.Supplier,
     },
     queryKey: ['roleServices/getRoles'],
     columnsRenderProps: {
@@ -157,9 +176,14 @@
         clientType: row.clientType,
         dataRange: row.dataPower,
         detail: detail,
+        minLevel: row.minLevel,
+        enterpriseType: row.enterpriseType,
       });
     } else {
-      handleAdd();
+      handleAdd({
+        userType: extraParamState.userType,
+        clientType: extraParamState.clientType,
+      });
     }
   } catch (error) {}
 }
@@ -174,6 +198,8 @@
     clientType: EnumClientType.PcWeb,
     dataRange: EnumRoleWebApiDataPower.All,
     detail: null as API.GetRoleQueryResult,
+    minLevel: 1,
+    enterpriseType: '' as any as EnumEnterpriseType,
   },
 });
 
@@ -186,7 +212,11 @@
       dataPower: editForm.dataRange,
       userType: editForm.userType,
       clientType: editForm.clientType,
+      minLevel: editForm.minLevel,
     };
+    if (editForm.userType === EnumUserType.Enterprise) {
+      params.enterpriseType = editForm.enterpriseType;
+    }
     if (isEdit) {
       params = {
         ...editForm.detail,
@@ -217,17 +247,16 @@
 
 async function roleEnableOrForbid(row: API.GetRolesQueryResultItem) {
   try {
-    // await Message.tipMessage(`鏄惁${!row.isEnable ? '鍚敤' : '绂佺敤'}瑙掕壊`);
-    // let res = await userServices.roleEnableOrForbid({
-    //   id: row.id,
-    //   isEnable: !row.isEnable,
-    // });
-    // if (res) {
-    //   Message.successMessage('鎿嶄綔鎴愬姛');
-    //   getList(paginationState.pageIndex);
-    //   refetch({ type: 'inactive' });
-    //   return !!res;
-    // }
+    await Message.tipMessage(`鏄惁${row.isDisabled ? '鍚敤' : '绂佺敤'}瑙掕壊`);
+    let res = await roleServices.setRoleIsDisabled({
+      ids: [row.id],
+      isDisabled: !row.isDisabled,
+    });
+    if (res) {
+      Message.successMessage('鎿嶄綔鎴愬姛');
+      getList(paginationState.pageIndex);
+      return !!res;
+    }
   } catch (error) {}
 }
 
@@ -256,7 +285,8 @@
   } catch (error) {}
 }
 
-async function handleAuthorize(selectedMenuIds: string[], resourceIds: string[]) {
+async function handleAuthorize(selectedMenuIds: string[]) {
+  console.log('selectedMenuIds: ', selectedMenuIds);
   try {
     let params: API.SaveRoleCommand = {
       ...authorizeForm.detail,

--
Gitblit v1.9.1