| ¶Ô±ÈÐÂÎļþ |
| | |
| | | import type { PageParam, PageResult } from '#/packages/effects/request/src'; |
| | | |
| | | import { requestClient } from '#/api/request'; |
| | | |
| | | export namespace HrmEmployeeContractApi { |
| | | /** åå·¥åå */ |
| | | export interface EmployeeContract { |
| | | id?: number; |
| | | /** ç»ç¾ä¸ä¸ä»½ååID */ |
| | | parentId?: number; |
| | | /** ç»ç¾ä¸ä¸ä»½ååç¼å· */ |
| | | parentNo?: string; |
| | | /** æ¯å¦å½åçæåå */ |
| | | isCurrent?: boolean; |
| | | /** ååç¼å·ï¼å端èªå¨çæï¼ */ |
| | | contractNo?: string; |
| | | /** åå·¥ID */ |
| | | employeeId?: number; |
| | | /** åå·¥å§å */ |
| | | employeeName?: string; |
| | | /** åå·¥å·¥å· */ |
| | | employeeNo?: string; |
| | | /** é¨é¨åç§° */ |
| | | deptName?: string; |
| | | /** ååç±»åï¼1-å³å¨åå 2-å³å¡åå 3-å®ä¹ åè®® 4-å³å¡æ´¾é£ 5-å
¶ä» */ |
| | | contractType?: number; |
| | | /** ååæéç±»åï¼1-åºå®æé 2-æ åºå®æé 3-以宿ä¸å®å·¥ä½ä»»å¡ä¸ºæé */ |
| | | contractTermType?: number; |
| | | /** ç¾çº¦ä¸»ä½ */ |
| | | signCompany?: string; |
| | | /** ç¾è®¢æ¥æ */ |
| | | signDate?: string; |
| | | /** ååå¼å§æ¥æ */ |
| | | startDate?: string; |
| | | /** ååç»ææ¥æ */ |
| | | endDate?: string; |
| | | /** è¯ç¨æå¼å§æ¥æ */ |
| | | probationStartDate?: string; |
| | | /** è¯ç¨æç»ææ¥æ */ |
| | | probationEndDate?: string; |
| | | /** è¯ç¨æå·¥èµ */ |
| | | probationSalary?: number; |
| | | /** 转æ£å·¥èµ */ |
| | | regularSalary?: number; |
| | | /** è§£é¤ç»æ¢ç¶æï¼0-æ£å¸¸ 1-å·²è§£é¤ 2-å·²ç»æ¢ */ |
| | | terminateStatus?: number; |
| | | /** è§£é¤/ç»æ¢æ¥æ */ |
| | | terminateDate?: string; |
| | | /** è§£é¤/ç»æ¢åå */ |
| | | terminateReason?: string; |
| | | /** ååç¶æï¼å¨æè®¡ç®ï¼ï¼1-å¾
çæ 2-çæä¸ 3-å³å°å°æ 4-已尿 5-å·²è§£é¤ 6-å·²ç»æ¢ */ |
| | | status?: number; |
| | | /** éä»¶ */ |
| | | attachmentList?: AttachmentItem[]; |
| | | /** éä»¶ blobId å表 */ |
| | | blobIds?: number[]; |
| | | remark?: string; |
| | | createTime?: string; |
| | | } |
| | | |
| | | /** é件项 */ |
| | | export interface AttachmentItem { |
| | | id: number; |
| | | name?: string; |
| | | url?: string; |
| | | uid?: string; |
| | | } |
| | | |
| | | /** åå·¥ååæ¥è¯¢åæ° */ |
| | | export interface EmployeeContractPageParam extends PageParam { |
| | | contractNo?: string; |
| | | employeeId?: number; |
| | | contractType?: number; |
| | | contractTermType?: number; |
| | | terminateStatus?: number; |
| | | status?: number; |
| | | /** å°æç±»åï¼1-å³å°å°æ 2-已尿 */ |
| | | expiryType?: number; |
| | | } |
| | | |
| | | /** è§£é¤/ç»æ¢ååè¯·æ± */ |
| | | export interface TerminateReq { |
| | | id: number; |
| | | terminateStatus: number; |
| | | terminateDate: string; |
| | | terminateReason: string; |
| | | } |
| | | |
| | | /** åå导å
¥ç»æ */ |
| | | export interface ImportResult { |
| | | /** æ°å¢æåçåå·¥åæ°ç» */ |
| | | createNames?: string[]; |
| | | /** è¦çæ´æ°æåçåå·¥åæ°ç» */ |
| | | updateNames?: string[]; |
| | | /** 导å
¥å¤±è´¥éåï¼key 为åå·¥åï¼value 为失败åå */ |
| | | failureNames?: Record<string, string>; |
| | | } |
| | | } |
| | | |
| | | /** è·ååå·¥ååå页å表 */ |
| | | export function getEmployeeContractPage( |
| | | params: HrmEmployeeContractApi.EmployeeContractPageParam, |
| | | ) { |
| | | return requestClient.get<PageResult<HrmEmployeeContractApi.EmployeeContract>>( |
| | | '/hrm/employee-contract/page', |
| | | { params }, |
| | | ); |
| | | } |
| | | |
| | | /** è·ååå·¥åå详æ
*/ |
| | | export function getEmployeeContract(id: number) { |
| | | return requestClient.get<HrmEmployeeContractApi.EmployeeContract>( |
| | | `/hrm/employee-contract/get?id=${id}`, |
| | | ); |
| | | } |
| | | |
| | | /** å建åå·¥åå */ |
| | | export function createEmployeeContract(data: HrmEmployeeContractApi.EmployeeContract) { |
| | | return requestClient.post('/hrm/employee-contract/create', data); |
| | | } |
| | | |
| | | /** æ´æ°åå·¥åå */ |
| | | export function updateEmployeeContract(data: HrmEmployeeContractApi.EmployeeContract) { |
| | | return requestClient.put('/hrm/employee-contract/update', data); |
| | | } |
| | | |
| | | /** è§£é¤/ç»æ¢åå·¥åå */ |
| | | export function terminateEmployeeContract(data: HrmEmployeeContractApi.TerminateReq) { |
| | | return requestClient.put('/hrm/employee-contract/terminate', data); |
| | | } |
| | | |
| | | /** å é¤åå·¥åå */ |
| | | export function deleteEmployeeContract(id: number) { |
| | | return requestClient.delete(`/hrm/employee-contract/delete?id=${id}`); |
| | | } |
| | | |
| | | /** è·åå³å°å°æååæ°é */ |
| | | export function getExpiringContractCount() { |
| | | return requestClient.get<number>('/hrm/employee-contract/expiring-count'); |
| | | } |
| | | |
| | | /** ä¸è½½åå·¥åå导å
¥æ¨¡æ¿ */ |
| | | export function importEmployeeContractTemplate() { |
| | | return requestClient.download('/hrm/employee-contract/import-template'); |
| | | } |
| | | |
| | | /** 导å
¥åå·¥åå */ |
| | | export function importEmployeeContract( |
| | | file: File, |
| | | updateSupport: boolean, |
| | | ) { |
| | | return requestClient.upload<HrmEmployeeContractApi.ImportResult>( |
| | | '/hrm/employee-contract/import', |
| | | { file, updateSupport }, |
| | | ); |
| | | } |