feat(attendance): 添加排班生成功能
- 在IWmsAttendanceScheduleService中新增generateSchedule方法 - 在WmsAttendanceScheduleController中添加生成排班API接口 - 实现WmsAttendanceScheduleServiceImpl中的排班生成逻辑,支持正常排班和倒班 - 扩展WmsAttendanceShiftRule实体类,添加倒班转换班次字段 - 更新WmsAttendanceShiftRule相关BO、VO类及数据库映射 - 创建GenerateScheduleBo请求对象用于接收排班生成参数 - 实现倒班规则查询和班次验证功能 - 添加排班重复性检查机制
This commit is contained in:
@@ -44,6 +44,14 @@ public class WmsAttendanceShiftRule extends BaseEntity {
|
||||
* 班次B(通常夜班ID)
|
||||
*/
|
||||
private Long shiftB;
|
||||
/**
|
||||
* 倒班日(白班转夜班)使用的班次ID
|
||||
*/
|
||||
private Long changeShiftBId;
|
||||
/**
|
||||
* 倒班日(夜班转白班)使用的班次ID
|
||||
*/
|
||||
private Long changeShiftAId;
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
package com.klp.domain.bo;
|
||||
|
||||
import lombok.Data;
|
||||
import javax.validation.constraints.*;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 生成排班请求对象
|
||||
*
|
||||
* @author klp
|
||||
* @date 2026-05-09
|
||||
*/
|
||||
@Data
|
||||
public class GenerateScheduleBo {
|
||||
|
||||
/**
|
||||
* 员工ID
|
||||
*/
|
||||
@NotNull(message = "员工ID不能为空")
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 班次ID
|
||||
*/
|
||||
@NotNull(message = "班次ID不能为空")
|
||||
private Long shiftId;
|
||||
|
||||
/**
|
||||
* 倒班规则ID(可为空,为空则不倒班)
|
||||
*/
|
||||
private Long ruleId;
|
||||
|
||||
/**
|
||||
* 开始时间
|
||||
*/
|
||||
@NotNull(message = "开始时间不能为空")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||
private Date startDate;
|
||||
|
||||
/**
|
||||
* 结束时间
|
||||
*/
|
||||
@NotNull(message = "结束时间不能为空")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||
private Date endDate;
|
||||
|
||||
}
|
||||
@@ -47,6 +47,16 @@ public class WmsAttendanceShiftRuleBo extends BaseEntity {
|
||||
*/
|
||||
private Long shiftB;
|
||||
|
||||
/**
|
||||
* 倒班日(白班转夜班)使用的班次ID
|
||||
*/
|
||||
private Long changeShiftBId;
|
||||
|
||||
/**
|
||||
* 倒班日(夜班转白班)使用的班次ID
|
||||
*/
|
||||
private Long changeShiftAId;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
|
||||
@@ -60,6 +60,18 @@ public class WmsAttendanceShiftRuleVo {
|
||||
@ExcelDictFormat(readConverterExp = "通=常夜班ID")
|
||||
private Long shiftB;
|
||||
|
||||
/**
|
||||
* 倒班日(白班转夜班)使用的班次ID
|
||||
*/
|
||||
@ExcelProperty(value = "倒班日白转夜班次ID")
|
||||
private Long changeShiftBId;
|
||||
|
||||
/**
|
||||
* 倒班日(夜班转白班)使用的班次ID
|
||||
*/
|
||||
@ExcelProperty(value = "倒班日夜转白班次ID")
|
||||
private Long changeShiftAId;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user