From b331f884097a2dc5086c8cf043c8c8f52e7640fe Mon Sep 17 00:00:00 2001 From: wupengfei <834520024@qq.com> Date: 星期五, 12 九月 2025 17:34:39 +0800 Subject: [PATCH] Merge branch 'master' into dev-v1.1 --- src/views/FlexJobManage/FlexJobManage.vue | 89 ++++++++++++++++++++++++++++++++------------ 1 files changed, 64 insertions(+), 25 deletions(-) diff --git a/src/views/FlexJobManage/FlexJobManage.vue b/src/views/FlexJobManage/FlexJobManage.vue index dca1aa8..ca81eac 100644 --- a/src/views/FlexJobManage/FlexJobManage.vue +++ b/src/views/FlexJobManage/FlexJobManage.vue @@ -99,6 +99,7 @@ </ProTableV2> </AppContainer> <StaffInfoDialog v-bind="dialogStaffInfoProps" /> + <StaffDetailInfoDialog v-bind="dialogStaffDetailProps" /> <BatchImportDialog v-bind="dialogBatchImportProps" @onDownloadTemplate="handleDownloadTemplate" @@ -133,6 +134,7 @@ import StaffInfoDialog from './components/StaffInfoDialog.vue'; import BatchImportDialog from './components/BatchImportDialog.vue'; import SendShotMessageDialog from './components/SendShotMessageDialog.vue'; +import StaffDetailInfoDialog from './components/StaffDetailInfoDialog.vue'; import SignDialog from './components/SignDialog.vue'; import * as enterpriseEmployeeServices from '@/services/api/enterpriseEmployee'; import { ModelValueType } from 'element-plus'; @@ -157,7 +159,8 @@ name: '璇︽儏', }, emits: { - onClick: (role) => openDialog(role, true), + onClick: (role: API.GetEnterpriseEmployeesQueryResultItem) => + handleStaffDetailEdit({ id: role.id, tabType: 'info' }), }, }, { @@ -187,8 +190,8 @@ extraProps: { hide: (row: API.GetEnterpriseEmployeesQueryResultItem) => !( - row.userSignContractStatus === EnumTaskUserSignContractStatus.Wait || - row.userSignContractStatus === EnumTaskUserSignContractStatus.Stop + row.userSignContractStatus !== EnumTaskUserSignContractStatus.Pass && + row.hireStatus === EnumTaskUserHireStatus.Pass ), }, }, @@ -208,16 +211,16 @@ ), }, }, - { - data: { - enCode: 'delBtn', - name: '鍒犻櫎', - }, - props: { type: 'danger' }, - emits: { - onClick: (role) => handleDelete(role), - }, - }, + // { + // data: { + // enCode: 'delBtn', + // name: '鍒犻櫎', + // }, + // props: { type: 'danger' }, + // emits: { + // onClick: (role) => handleDelete(role), + // }, + // }, ]); const router = useRouter(); @@ -430,6 +433,7 @@ ids: [] as string[], customerId: '', name: '', + contractTemplateId: '', }, }); @@ -452,6 +456,14 @@ async function sendMessageForSign() { try { + let params: API.SendInviteElectronSignSmsCommand = { + ids: editShotMessageForm.ids, + contractTemplateId: editShotMessageForm.contractTemplateId, + }; + let res = await enterpriseEmployeeServices.sendInviteElectronSignSms(params); + if (res) { + Message.successMessage('鐭俊宸插彂閫�'); + } } catch (error) {} } @@ -467,7 +479,7 @@ } = useFormDialog({ onConfirm: signContract, defaultFormParams: { - id: '', + ids: [] as string[], contractTemplateId: '', }, }); @@ -475,14 +487,13 @@ function handleInviteSign(row: API.GetEnterpriseEmployeesQueryResultItem) { if (row) { handleSignEdit({ - id: row.id, + ids: [row.id], contractTemplateId: '', }); } } function handleBatchSign() { const selectionRows = getSelectionRows(); - console.log('selectionRows: ', selectionRows); if (selectionRows) { const hasSigned = selectionRows?.some( (x) => @@ -494,14 +505,17 @@ Message.warnMessage('鍕鹃�変汉鍛樹腑鍖呭惈宸茬绾﹀畬鎴愭垨鏈綍鐢ㄤ汉鍛�'); return; } - handleSignAdd(); + handleSignAdd({ + ids: selectionRows.map((x) => x.id), + contractTemplateId: '', + }); } } async function signContract() { try { let params: API.InviteElectronSignCommand = { - id: signEditForm.id, + ids: signEditForm.ids, contractTemplateId: signEditForm.contractTemplateId, }; let res = await enterpriseEmployeeServices.inviteElectronSign(params); @@ -521,10 +535,30 @@ } catch (error) {} } -async function handleUnSign(row: API.GetEnterpriseEmployeesQueryResultItem) { +function handleUnSign(row: API.GetEnterpriseEmployeesQueryResultItem) { + stopElectronSign([row.id]); +} + +function handleBatchUnSign() { + try { + const selectionRows = getSelectionRows(); + if (selectionRows) { + const hasUnSigned = selectionRows?.some( + (x) => x.enterpriseSignContractStatus !== EnumTaskUserSignContractStatus.Pass + ); + if (hasUnSigned) { + Message.warnMessage('鍕鹃�夋暟鎹腑鍖呭惈浼佷笟鏈绾︽垨宸茶В绾︽暟鎹�'); + return; + } + stopElectronSign(selectionRows.map((x) => x.id)); + } + } catch (error) {} +} + +async function stopElectronSign(ids: string[]) { try { await Message.tipMessage('纭畾瑙g害鐢ㄦ埛锛�'); - let res = await enterpriseEmployeeServices.stopElectronSign({ id: row.id }); + let res = await enterpriseEmployeeServices.stopElectronSign({ ids: ids }); if (res) { Message.successMessage('鎿嶄綔鎴愬姛'); getList(paginationState.pageIndex); @@ -532,11 +566,16 @@ } catch (error) {} } -function handleBatchUnSign() { - try { - Message.warnMessage('鍔熻兘寮�鍙戜腑'); - } catch (error) {} -} +const { + dialogProps: dialogStaffDetailProps, + handleEdit: handleStaffDetailEdit, + editForm: staffDetailEditForm, +} = useFormDialog({ + defaultFormParams: { + id: '', + tabType: 'info', + }, +}); async function handleDelete(row: API.GetEnterpriseEmployeesQueryResultItem) { try { -- Gitblit v1.9.1