liu
6 天以前 e1636c33baf0de8c4aa36c7adeadf2e7c33434fa
src/api/hrm/employee/contract/index.ts
@@ -85,6 +85,16 @@
    terminateDate: string;
    terminateReason: string;
  }
  /** 合同导入结果 */
  export interface ImportResult {
    /** 新增成功的员工名数组 */
    createNames?: string[];
    /** 覆盖更新成功的员工名数组 */
    updateNames?: string[];
    /** 导入失败集合,key 为员工名,value 为失败原因 */
    failureNames?: Record<string, string>;
  }
}
/** 获取员工合同分页列表 */
@@ -128,3 +138,44 @@
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 },
  );
}
/** 生成并下载合同文档(docx)
 * @param templateType 1-劳动合同(简版) 2-劳动合同(标准) 3-劳务合同
 */
export function generateContractDocx(id: number, templateType: number) {
  return requestClient.download(
    `/hrm/employee-contract/generate-docx?id=${id}&templateType=${templateType}`,
  );
}
/** 生成合同并回存为合同附件,返回 blobId */
export function generateContractArchive(id: number, templateType: number) {
  return requestClient.post<number>(
    `/hrm/employee-contract/generate?id=${id}&templateType=${templateType}`,
  );
}
/** 下载合同空白模板
 * @param type 1-劳动合同(简版) 2-劳动合同(标准) 3-劳务合同 4-退休返聘合同
 */
export function downloadContractTemplate(type: number) {
  return requestClient.download(
    `/hrm/employee-contract/download-template?type=${type}`,
  );
}