import { requestClient } from '#/api/request';
|
|
export namespace HrmEmployeeScheduleApi {
|
/** 排班记录 */
|
export interface EmployeeSchedule {
|
id?: number;
|
employeeId?: number;
|
employeeName?: string;
|
employeeNo?: string;
|
/** 排班日期 yyyy-MM-dd */
|
date?: string;
|
shiftId?: number;
|
shiftName?: string;
|
shiftColor?: string;
|
remark?: string;
|
}
|
|
/** 保存项(整月全量提交,shiftId 为空表示休息/清除) */
|
export interface ScheduleItem {
|
employeeId: number;
|
/** 排班日期 yyyy-MM-dd */
|
date: string;
|
shiftId?: number | null;
|
remark?: string;
|
}
|
}
|
|
/** 查询某月排班列表 */
|
export function getEmployeeScheduleList(params: {
|
yearMonth: string;
|
deptId?: number;
|
employeeId?: number;
|
}) {
|
return requestClient.get<HrmEmployeeScheduleApi.EmployeeSchedule[]>(
|
'/hrm/employee-schedule/list',
|
{ params },
|
);
|
}
|
|
/** 批量保存排班(整月覆盖式:有班次 upsert,无班次删除) */
|
export function saveEmployeeSchedule(data: HrmEmployeeScheduleApi.ScheduleItem[]) {
|
return requestClient.post('/hrm/employee-schedule/save', data);
|
}
|