package cn.iocoder.yudao.module.mes.dal.dataobject.cal.schedule; import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; import cn.iocoder.yudao.module.mes.dal.dataobject.cal.plan.MesCalPlanShiftDO; import cn.iocoder.yudao.module.mes.dal.dataobject.cal.team.MesCalTeamDO; import com.baomidou.mybatisplus.annotation.KeySequence; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.*; import java.time.LocalDateTime; /** * MES 员工级排班明细 DO * * 由班组排班(mes_cal_team_shift)+ 班组成员(mes_cal_team_member)展开到"员工×日×班次", * 作为工时统计与值守合规的基准。 * * @author 超级管理员 */ @TableName("mes_cal_schedule_detail") @KeySequence("mes_cal_schedule_detail_seq") @Data @EqualsAndHashCode(callSuper = true) @ToString(callSuper = true) @Builder @NoArgsConstructor @AllArgsConstructor public class MesCalScheduleDetailDO extends BaseDO { /** * 编号 */ @TableId private Long id; /** * 排班计划编号 */ private Long planId; /** * 班组编号 * * 关联 {@link MesCalTeamDO#getId()} */ private Long teamId; /** * 班组成员用户编号 * * 关联 system_users.id(mes_cal_team_member.userId) */ private Long userId; /** * 日期 */ private LocalDateTime day; /** * 班次编号 * * 关联 {@link MesCalPlanShiftDO#getId()} */ private Long shiftId; /** * 班次名称(冗余) */ private String shiftName; /** * 开始时间(HH:mm 格式,冗余) */ private String startTime; /** * 结束时间(HH:mm 格式,冗余) */ private String endTime; /** * 来源: 1-自动生成 2-人工调整 */ private Integer source; /** * 备注 */ private String remark; }