package com.klp.domain.bo; import com.fasterxml.jackson.annotation.JsonFormat; import com.klp.common.core.validate.AddGroup; import com.klp.common.core.validate.EditGroup; import lombok.Data; import lombok.EqualsAndHashCode; import javax.validation.constraints.*; import java.util.Date; import com.klp.common.core.domain.BaseEntity; import org.springframework.format.annotation.DateTimeFormat; /** * 钢卷待操作业务对象 wms_coil_pending_action * * @author Joshi * @date 2025-11-03 */ @Data @EqualsAndHashCode(callSuper = true) public class WmsCoilPendingActionBo extends BaseEntity { /** * 主键ID */ @NotNull(message = "主键ID不能为空", groups = { EditGroup.class }) private Long actionId; /** * 关联的钢卷ID */ // 对于入库操作,这个时候还不存在钢卷,因此无法关联钢卷ID,因此先关联为0,如果id为0则跟未关联是相同的 @NotNull(message = "关联的钢卷ID不能为空", groups = { AddGroup.class, EditGroup.class }) private Long coilId; /** * 当前钢卷号 */ @NotBlank(message = "当前钢卷号不能为空", groups = { AddGroup.class, EditGroup.class }) private String currentCoilNo; /** * 操作类型(1=分卷,2=合卷,3=更新) */ @NotNull(message = "操作类型不能为空", groups = { AddGroup.class, EditGroup.class }) private Integer actionType; /** * 操作状态(0=待处理,1=处理中,2=已完成,3=已取消) */ private Integer actionStatus; /** * 扫码时间 */ @JsonFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSX", timezone = "GMT+8") private Date scanTime; /** * 扫码设备(移动端设备信息) */ private String scanDevice; /** * 优先级(0=普通,1=重要,2=紧急) */ private Integer priority; /** * 来源类型(scan=扫码,manual=手动创建) */ private String sourceType; /** * 所在库区ID */ private Long warehouseId; /** * 操作人ID */ private Long operatorId; /** * 操作人姓名 */ private String operatorName; /** * 处理时间 */ @JsonFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSX", timezone = "GMT+8") private Date processTime; /** * 完成时间 */ @JsonFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSX", timezone = "GMT+8") private Date completeTime; //开始时间和结束时间 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date startTime; @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date endTime; //备注 private String remark; }