diff --git a/src/api/modules/biz/onboarding.ts b/src/api/modules/biz/onboarding.ts index 3c14d4b..3d26adf 100644 --- a/src/api/modules/biz/onboarding.ts +++ b/src/api/modules/biz/onboarding.ts @@ -66,6 +66,7 @@ export interface OnboardingTask { departmentName?: string; positionId: number; positionName?: string; + employmentType?: "full_time" | "part_time"; onboardingTemplateId?: number; onboardingTemplateName?: string; taskStatus: string; @@ -294,6 +295,12 @@ export interface OnboardingEmployee { departmentName?: string; positionId: number; positionName?: string; + employmentType?: "full_time" | "part_time"; + regularizationStatus?: "probation" | "regular" | "not_applicable"; + socialInsuranceStatus?: "unknown" | "not_purchased" | "purchased" | "stopped" | "not_applicable"; + regularizationDate?: string; + socialInsuranceCompany?: string; + contractNature?: string; phone: string; idCardNumber: string; entryDate?: string; @@ -813,6 +820,14 @@ export const onboardingTaskApi = { >("page", params); }, + employeeExport(params: Record) { + return moduleRequest("/biz/onboarding/employee/").download( + "export", + params, + { cancel: false } + ); + }, + employeeDetail(params: ReqId) { return moduleRequest("/biz/onboarding/employee/").get( "detail", @@ -820,6 +835,48 @@ export const onboardingTaskApi = { ); }, + updateEmployeeHrInfo(params: { + id: number; + employmentType: "full_time" | "part_time"; + contractNature?: string; + socialInsuranceStatus: "unknown" | "not_purchased" | "purchased" | "stopped" | "not_applicable"; + socialInsuranceCompany?: string; + }) { + return moduleRequest("/biz/onboarding/employee/").post( + "hr-info/update", + params + ); + }, + + uploadEmployeeAttachment(params: FormData) { + return moduleRequest("/biz/onboarding/employee/").post( + "attachment/upload", + params + ); + }, + + regularizeEmployee(params: { + id: number; + regularizationDate: string; + remark?: string; + fileIds: number[]; + }) { + return moduleRequest("/biz/onboarding/employee/").post( + "regularization/confirm", + params + ); + }, + + revokeEmployeeRegularization(params: { + id: number; + remark: string; + }) { + return moduleRequest("/biz/onboarding/employee/").post( + "regularization/revoke", + params + ); + }, + listFormFields() { return moduleRequest("/biz/onboarding/entry-config/").get< OnboardingFormField[] diff --git a/src/views/biz/onboarding/employee/index.vue b/src/views/biz/onboarding/employee/index.vue index 546a774..fc01c98 100644 --- a/src/views/biz/onboarding/employee/index.vue +++ b/src/views/biz/onboarding/employee/index.vue @@ -1,8 +1,37 @@