From 336441bd3d811427f957654f12936c4cab9b4c1a Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期五, 28 十一月 2025 16:42:00 +0800
Subject: [PATCH] fix: bug

---
 src/views/EmploymentManage/EmploymentSignList.vue |   78 ++++++++++++++++++--------------------
 1 files changed, 37 insertions(+), 41 deletions(-)

diff --git a/src/views/EmploymentManage/EmploymentSignList.vue b/src/views/EmploymentManage/EmploymentSignList.vue
index 985ca43..23fc1f6 100644
--- a/src/views/EmploymentManage/EmploymentSignList.vue
+++ b/src/views/EmploymentManage/EmploymentSignList.vue
@@ -24,11 +24,7 @@
           </QueryFilterItem>
         </template>
       </ProTableQueryFilterBar>
-      <ProTableV2
-        v-bind="proTableProps"
-        :columns="EmploymentSignColumns"
-        :operationBtns="operationBtns"
-      >
+      <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns">
       </ProTableV2>
     </AppContainer>
     <StaffInfoDialog v-bind="dialogStaffInfoProps" />
@@ -45,15 +41,13 @@
   QueryFilterItem,
   useTable,
   FieldRadio,
-  defineOperationBtns,
   useFormDialog,
   UploadUserFile,
 } from '@bole-core/components';
-import { EmploymentSignColumns } from './constants/columns';
 import { Message } from '@bole-core/core';
 import { EnumUserGender, EnumTaskUserHireStatusText } from '@/constants';
 import StaffInfoDialog from '@/views/FlexJobManage/components/StaffInfoDialog.vue';
-import { convertApi2FormUrlOnlyOne } from '@/utils';
+import { convertApi2FormUrlOnlyOne, hiddenIDNumberForEnd4 } from '@/utils';
 import * as taskUserServices from '@/services/api/taskUser';
 import * as enterpriseEmployeeServices from '@/services/api/enterpriseEmployee';
 
@@ -61,49 +55,43 @@
   name: 'EmploymentSignList',
 });
 
-const operationBtns = defineOperationBtns([
-  {
-    data: {
-      enCode: 'detailBtn',
-      name: '璇︽儏',
-    },
+const operationBtnMap: Record<string, OperationBtnType> = {
+  detailBtn: {
     emits: {
       onClick: (role) => openDialog(role),
     },
   },
-  // {
-  //   data: {
-  //     enCode: 'recruitBtn',
-  //     name: '褰曠敤',
-  //   },
-  //   emits: {
-  //     onClick: (role) => setTaskUserHire(role, EnumTaskUserHireStatus.Pass),
-  //   },
-  //   extraProps: {
-  //     hide: (row: API.GetTaskUsersQueryResultItem) =>
-  //       row.hireStatus === EnumTaskUserHireStatus.Pass,
-  //   },
-  // },
-  // {
-  //   data: {
-  //     enCode: 'refuseBtn',
-  //     name: '璋㈢粷',
-  //   },
-  //   emits: {
-  //     onClick: (role) => setTaskUserHire(role, EnumTaskUserHireStatus.Refuse),
-  //   },
-  //   extraProps: {
-  //     hide: (row: API.GetTaskUsersQueryResultItem) =>
-  //       row.hireStatus !== EnumTaskUserHireStatus.Wait,
-  //   },
-  // },
-]);
+  recruitBtn: {
+    emits: {
+      onClick: (role) => setTaskUserHire(role, EnumTaskUserHireStatus.Pass),
+    },
+    extraProps: {
+      hide: (row: API.GetTaskUsersQueryResultItem) =>
+        row.hireStatus === EnumTaskUserHireStatus.Pass || !state.isInternal,
+    },
+  },
+  refuseBtn: {
+    emits: {
+      onClick: (role) => setTaskUserHire(role, EnumTaskUserHireStatus.Refuse),
+    },
+    extraProps: {
+      hide: (row: API.GetTaskUsersQueryResultItem) =>
+        row.hireStatus !== EnumTaskUserHireStatus.Wait || !state.isInternal,
+    },
+  },
+};
+
+const { checkSubModuleItemShow, column, operationBtns } = useAccess({
+  operationBtnMap,
+});
 
 const router = useRouter();
 const route = useRoute();
 const id = route.params.id as string;
 const BaseState = {
   loading: true,
+
+  isInternal: false,
 };
 
 const state = reactive({ ...BaseState });
@@ -136,6 +124,9 @@
       let res = await taskUserServices.getTaskUsers(params, {
         showLoading: !state.loading,
       });
+      if (res) {
+        state.isInternal = res.objectData?.isInternal;
+      }
       return res;
     } catch (error) {
       console.log('error: ', error);
@@ -151,6 +142,11 @@
     columnsRenderProps: {
       gender: { type: 'enum', valueEnum: EnumUserGenderTextForPerson },
       hireStatus: { type: 'enum', valueEnum: EnumTaskUserHireStatusText },
+      identity: {
+        formatter: (row: API.GetTaskUsersQueryResultItem) => {
+          return hiddenIDNumberForEnd4(row.identity);
+        },
+      },
     },
   }
 );

--
Gitblit v1.9.1