From 8cef2483dcfc4c40d861caaf58d618387f5ab80c Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期四, 13 十一月 2025 13:11:36 +0800
Subject: [PATCH] feat: 1.3.0.2
---
src/views/FlexJobManage/FlexJobManage.vue | 40 ++++++++++++++++++++++++++++++++++++++--
1 files changed, 38 insertions(+), 2 deletions(-)
diff --git a/src/views/FlexJobManage/FlexJobManage.vue b/src/views/FlexJobManage/FlexJobManage.vue
index b723cbc..0766984 100644
--- a/src/views/FlexJobManage/FlexJobManage.vue
+++ b/src/views/FlexJobManage/FlexJobManage.vue
@@ -217,7 +217,11 @@
const operationBtnMap: Record<string, OperationBtnType> = {
editBtn: {
emits: {
- onClick: (role) => openDialog(role),
+ onClick: (role) => openInternalDialog(role),
+ },
+ extraProps: {
+ hide: (row: API.GetEnterpriseEmployeesQueryResultItem) =>
+ row.source === EnumEnterpriseEmployeeSource.External,
},
},
detailBtn: {
@@ -657,10 +661,12 @@
const {
dialogProps: dialogAddInternalStaffProps,
handleAdd: handleInternalStaffAdd,
+ handleEdit: handleInternalStaffEdit,
editForm: internalStaffEditForm,
} = useFormDialog({
onConfirm: addEnterpriseEmployee,
defaultFormParams: {
+ id: '',
name: '',
identity: '',
contactPhoneNumber: '',
@@ -676,8 +682,32 @@
},
});
+async function openInternalDialog(row: API.GetEnterpriseEmployeesQueryResultItem) {
+ try {
+ let detail = await enterpriseEmployeeServices.getEnterpriseEmployee({ id: row.id });
+ handleInternalStaffEdit({
+ id: row.id,
+ name: row.name,
+ identity: row.identity,
+ contactPhoneNumber: row.contactPhoneNumber,
+ gender: detail.gender,
+ age: detail.age ?? null,
+ identityImg: convertApi2FormUrlOnlyOne(detail.identityImg),
+ identityBackImg: convertApi2FormUrlOnlyOne(detail.identityBackImg),
+ contractUrl: convertApi2FormUrlOnlyOne(detail.contractUrl, {
+ fileName: detail.contractUrl ? detail.contractUrl.split('/').pop() : '鍚堝悓',
+ }),
+ regiterTime: detail.applyTime ?? '',
+ userRealTime: row.userRealTime ?? '',
+ userSignContractTime: row.userSignContractTime ?? '',
+ contractTime: [row.contractBegin, row.contractEnd],
+ });
+ } catch (error) {}
+}
+
async function addEnterpriseEmployee() {
try {
+ const isEdit = !!internalStaffEditForm.id;
let params: API.AddEnterpriseEmployeeCommand = {
name: internalStaffEditForm.name,
identity: internalStaffEditForm.identity,
@@ -690,7 +720,13 @@
contractBegin: format(internalStaffEditForm.contractTime[0], 'YYYY-MM-DD 00:00:00'),
contractEnd: format(internalStaffEditForm.contractTime[1], 'YYYY-MM-DD 23:59:59'),
};
- let res = await enterpriseEmployeeServices.addEnterpriseEmployee(params);
+ let res;
+ if (isEdit) {
+ (params as API.EditEnterpriseEmployeeCommand).id = internalStaffEditForm.id;
+ res = await enterpriseEmployeeServices.editEnterpriseEmployee(params);
+ } else {
+ res = await enterpriseEmployeeServices.addEnterpriseEmployee(params);
+ }
if (res) {
Message.successMessage('鎿嶄綔鎴愬姛');
getList(paginationState.pageIndex);
--
Gitblit v1.9.1