From a589e8e0f15b368069164fffed0e36becab92cb6 Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期三, 03 十二月 2025 09:01:59 +0800
Subject: [PATCH] fix: 谢绝

---
 src/views/EmploymentManage/EmploymentSignList.vue |   50 +++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 39 insertions(+), 11 deletions(-)

diff --git a/src/views/EmploymentManage/EmploymentSignList.vue b/src/views/EmploymentManage/EmploymentSignList.vue
index b999a58..ce8b10e 100644
--- a/src/views/EmploymentManage/EmploymentSignList.vue
+++ b/src/views/EmploymentManage/EmploymentSignList.vue
@@ -28,6 +28,7 @@
       </ProTableV2>
     </AppContainer>
     <StaffInfoDialog v-bind="dialogStaffInfoProps" />
+    <RefuseDialog v-bind="dialogProps" />
   </LoadingLayout>
 </template>
 
@@ -47,9 +48,10 @@
 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';
+import RefuseDialog from './components/RefuseDialog.vue';
 
 defineOptions({
   name: 'EmploymentSignList',
@@ -63,7 +65,7 @@
   },
   recruitBtn: {
     emits: {
-      onClick: (role) => setTaskUserHire(role, EnumTaskUserHireStatus.Pass),
+      onClick: (role) => setTaskUserHire(role.id, EnumTaskUserHireStatus.Pass),
     },
     extraProps: {
       hide: (row: API.GetTaskUsersQueryResultItem) =>
@@ -72,7 +74,7 @@
   },
   refuseBtn: {
     emits: {
-      onClick: (role) => setTaskUserHire(role, EnumTaskUserHireStatus.Refuse),
+      onClick: (role) => openRefuseDialog(role),
     },
     extraProps: {
       hide: (row: API.GetTaskUsersQueryResultItem) =>
@@ -137,6 +139,11 @@
     columnsRenderProps: {
       gender: { type: 'enum', valueEnum: EnumUserGenderTextForPerson },
       hireStatus: { type: 'enum', valueEnum: EnumTaskUserHireStatusText },
+      identity: {
+        formatter: (row: API.GetTaskUsersQueryResultItem) => {
+          return hiddenIDNumberForEnd4(row.identity);
+        },
+      },
     },
   }
 );
@@ -188,17 +195,38 @@
   } catch (error) {}
 }
 
-async function setTaskUserHire(
-  row: API.GetTaskUsersQueryResultItem,
-  hireStatus: EnumTaskUserHireStatus
-) {
+const { dialogProps, handleAdd, editForm } = useFormDialog({
+  onConfirm: handleRefuse,
+  defaultFormParams: {
+    id: '',
+    remark: '',
+  },
+});
+
+async function openRefuseDialog(row: API.GetTaskUsersQueryResultItem) {
   try {
-    await Message.tipMessage(
-      `纭瑕�${hireStatus === EnumTaskUserHireStatus.Pass ? '褰曠敤' : '璋㈢粷'}鍚楋紵`
-    );
-    let params: API.SetTaskUserHireCommand = {
+    await Message.tipMessage(`纭瑕佽阿缁濆悧锛焋);
+    handleAdd({
       id: row.id,
+    });
+  } catch (error) {}
+}
+
+async function handleRefuse() {
+  setTaskUserHire(editForm.id, EnumTaskUserHireStatus.Refuse, editForm.remark);
+}
+
+async function setTaskUserHire(id: string, hireStatus: EnumTaskUserHireStatus, remark?: string) {
+  try {
+    if (hireStatus === EnumTaskUserHireStatus.Pass) {
+      await Message.tipMessage(
+        `纭瑕�${hireStatus === EnumTaskUserHireStatus.Pass ? '褰曠敤' : '璋㈢粷'}鍚楋紵`
+      );
+    }
+    let params: API.SetTaskUserHireCommand = {
+      id: id,
       hireStatus: hireStatus,
+      hireRemark: remark,
     };
     let res = await taskUserServices.setTaskUserHire(params);
     if (res) {

--
Gitblit v1.9.1