package cn.iocoder.yudao.module.hrm.controller.admin.attendance.vo;
|
|
import io.swagger.v3.oas.annotations.media.Schema;
|
import jakarta.validation.constraints.NotNull;
|
import lombok.Data;
|
|
import java.time.LocalDate;
|
|
/**
|
* 管理后台 - 员工排班按群体批量保存 Request VO
|
*
|
* 一次为「部门 + 岗位」筛选出的一类员工,按日期范围统一排班。
|
*/
|
@Schema(description = "管理后台 - 员工排班按群体批量保存 Request VO")
|
@Data
|
public class HrmEmployeeScheduleBatchSaveReqVO {
|
|
@Schema(description = "部门ID(含下级部门)", requiredMode = Schema.RequiredMode.REQUIRED, example = "119")
|
@NotNull(message = "部门不能为空")
|
private Long deptId;
|
|
@Schema(description = "岗位ID,为空表示不限岗位", example = "48")
|
private Long postId;
|
|
@Schema(description = "员工状态:1-在职,2-试用,3-离职;为空表示在职及试用", example = "1")
|
private Integer employeeStatus;
|
|
@Schema(description = "排班开始日期", requiredMode = Schema.RequiredMode.REQUIRED, example = "2026-10-01")
|
@NotNull(message = "排班开始日期不能为空")
|
private LocalDate startDate;
|
|
@Schema(description = "排班结束日期", requiredMode = Schema.RequiredMode.REQUIRED, example = "2026-10-31")
|
@NotNull(message = "排班结束日期不能为空")
|
private LocalDate endDate;
|
|
@Schema(description = "班次ID,为空表示休息(清除排班)", example = "1")
|
private Long shiftId;
|
|
@Schema(description = "休息模式:none-不休息,single-周日休息,double-周六日休息;为空按不休息处理",
|
example = "double")
|
private String restMode;
|
|
}
|