package com.ruoyi.staff.dto; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.fasterxml.jackson.annotation.JsonFormat; import com.ruoyi.framework.aspectj.lang.annotation.Excel; import lombok.Data; import java.io.Serializable; import java.math.BigDecimal; import java.time.LocalDateTime; import java.util.Date; /** * @author buhuazhen * @date 2025/9/4 * @email 3038525872@qq.com */ @Data public class StaffSchedulingDto implements Serializable { @TableId(value = "id", type = IdType.AUTO) private Integer id; /** * 员工ID */ private Integer staffId; @Excel(name = "员工名称") private String staffName; @Excel(name = "员工编号") private String staffNo; /** * 部门 */ @Excel(name = "部门名称") private String department; /** * 排班类型 */ @Excel(name = "班次名称", readConverterExp = "1=早班,2=中班,3=晚班,4=夜班班") private String shiftType; /** * 工作日期 */ @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") @Excel(name = "工作日期", dateFormat = "yyyy-MM-dd", width = 20) private Date workDate; /** * 开始工作时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @Excel(name = "开始工作时间", dateFormat = "mm:ss", width = 20) private LocalDateTime workStartTime; /** * 结束工作时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @Excel(name = "结束工作时间", dateFormat = "mm:ss", width = 20) private LocalDateTime workEndTime; /** * 工作时长 */ @Excel(name = "工作时长", width = 20) private BigDecimal workHours; /** * 状态 */ @Excel(name = "状态", readConverterExp = "1=已安排,2=已确认,3=已完成,4=已取消") private String status; /** * 备注 */ @Excel(name = "备注") private String remark; }