更新wip-退火 缺少实际库区选择,重新占据库位能力

This commit is contained in:
2026-03-14 18:39:19 +08:00
parent 7740531fc5
commit 9a645100df
56 changed files with 3783 additions and 0 deletions

View File

@@ -0,0 +1,31 @@
package com.klp.domain.bo;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
/**
* 炉火实绩查询业务对象
*
* @author klp
* @date 2026-03-14
*/
@Data
public class WmsAnnealPerformanceBo {
@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 Long targetFurnaceId;
private String planNo;
private String enterCoilNo;
}

View File

@@ -0,0 +1,57 @@
package com.klp.domain.bo;
import com.klp.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/**
* 退火炉业务对象 wms_furnace
*
* @author klp
* @date 2026-03-14
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class WmsFurnaceBo extends BaseEntity {
/**
* 炉子ID
*/
private Long furnaceId;
/**
* 炉编号
*/
@NotBlank(message = "炉编号不能为空")
private String furnaceCode;
/**
* 名称
*/
@NotBlank(message = "名称不能为空")
private String furnaceName;
/**
* 是否忙碌0=否1=是)
*/
private Integer busyFlag;
/**
* 状态0=停用1=启用)
*/
private Integer status;
/**
* 备注
*/
private String remark;
/**
* 批量操作ID
*/
@NotNull(message = "主键不能为空", groups = {com.klp.common.core.validate.EditGroup.class})
private Long[] furnaceIds;
}

View File

@@ -0,0 +1,21 @@
package com.klp.domain.bo;
import lombok.Data;
import javax.validation.constraints.NotNull;
/**
* 退火炉忙碌状态更新业务对象
*
* @author klp
* @date 2026-03-14
*/
@Data
public class WmsFurnaceBusyBo {
@NotNull(message = "炉子ID不能为空")
private Long furnaceId;
@NotNull(message = "忙碌状态不能为空")
private Integer busyFlag;
}

View File

@@ -0,0 +1,70 @@
package com.klp.domain.bo;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.klp.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.Date;
/**
* 退火计划业务对象 wms_furnace_plan
*
* @author klp
* @date 2026-03-14
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class WmsFurnacePlanBo extends BaseEntity {
/**
* 计划ID
*/
private Long planId;
/**
* 计划号
*/
@NotBlank(message = "计划号不能为空")
private String planNo;
/**
* 计划开始时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date planStartTime;
/**
* 实际开始时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date actualStartTime;
/**
* 结束时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date endTime;
/**
* 目标炉子ID
*/
@NotNull(message = "目标炉子不能为空")
private Long targetFurnaceId;
/**
* 计划状态0草稿 1已下发 2执行中 3已完成 4已取消
*/
private Integer status;
/**
* 备注
*/
private String remark;
}

View File

@@ -0,0 +1,49 @@
package com.klp.domain.bo;
import com.klp.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.NotNull;
/**
* 退火计划钢卷关系业务对象 wms_furnace_plan_coil
*
* @author klp
* @date 2026-03-14
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class WmsFurnacePlanCoilBo extends BaseEntity {
/**
* 计划钢卷ID
*/
private Long planCoilId;
/**
* 计划ID
*/
@NotNull(message = "计划ID不能为空")
private Long planId;
/**
* 钢卷ID
*/
private Long coilId;
/**
* 钢卷ID列表逗号分隔
*/
private String coilIds;
/**
* 入场钢卷号(逗号分隔)
*/
private String enterCoilNos;
/**
* 当前钢卷号(逗号分隔)
*/
private String currentCoilNos;
}

View File

@@ -0,0 +1,18 @@
package com.klp.domain.bo;
import lombok.Data;
import javax.validation.constraints.NotNull;
/**
* 退火计划入炉业务对象
*
* @author klp
* @date 2026-03-14
*/
@Data
public class WmsFurnacePlanInFurnaceBo {
@NotNull(message = "计划ID不能为空")
private Long planId;
}

View File

@@ -0,0 +1,23 @@
package com.klp.domain.bo;
import lombok.Data;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.util.List;
/**
* 退火计划库位分配业务对象
*
* @author klp
* @date 2026-03-14
*/
@Data
public class WmsFurnacePlanLocationBo {
@NotNull(message = "计划ID不能为空")
private Long planId;
@NotEmpty(message = "库位分配不能为空")
private List<WmsFurnacePlanLocationItemBo> locations;
}

View File

@@ -0,0 +1,21 @@
package com.klp.domain.bo;
import lombok.Data;
import javax.validation.constraints.NotNull;
/**
* 退火计划钢卷库位分配项
*
* @author klp
* @date 2026-03-14
*/
@Data
public class WmsFurnacePlanLocationItemBo {
@NotNull(message = "钢卷ID不能为空")
private Long coilId;
@NotNull(message = "实际库位不能为空")
private Long actualWarehouseId;
}

View File

@@ -0,0 +1,21 @@
package com.klp.domain.bo;
import lombok.Data;
import javax.validation.constraints.NotNull;
/**
* 退火计划状态更新业务对象
*
* @author klp
* @date 2026-03-14
*/
@Data
public class WmsFurnacePlanStatusBo {
@NotNull(message = "计划ID不能为空")
private Long planId;
@NotNull(message = "状态不能为空")
private Integer status;
}

View File

@@ -0,0 +1,21 @@
package com.klp.domain.bo;
import lombok.Data;
import javax.validation.constraints.NotNull;
/**
* 退火炉启用状态更新业务对象
*
* @author klp
* @date 2026-03-14
*/
@Data
public class WmsFurnaceStatusBo {
@NotNull(message = "炉子ID不能为空")
private Long furnaceId;
@NotNull(message = "状态不能为空")
private Integer status;
}