feat(coil-abnormal): 新增钢卷异常信息模块

- 新增钢卷异常信息实体类、业务对象与视图对象,包含异常详细字段
- 创建钢卷异常信息Mapper接口及MyBatis XML,支持基本数据库操作
- 实现钢卷异常信息Service接口及其实现类,包含查询、新增、修改、删除和判级功能
- 添加钢卷异常信息控制器,支持列表查询、导出、详情、新增、修改、删除和判级接口
- 在钢卷物料卷查询中加入异常数量统计,关联钢卷异常信息表
- 支持Excel导出功能,异常相关字段具备字典转换显示功能
- 结构清晰,符合业务需求的标准化数据操作及接口设计
This commit is contained in:
2025-12-04 14:43:34 +08:00
parent 19d7d42342
commit d198ca347c
10 changed files with 594 additions and 1 deletions

View File

@@ -0,0 +1,71 @@
package com.klp.domain;
import com.baomidou.mybatisplus.annotation.*;
import com.klp.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
/**
* 钢卷异常信息对象 wms_coil_abnormal
*
* @author klp
* @date 2025-12-04
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("wms_coil_abnormal")
public class WmsCoilAbnormal extends BaseEntity {
private static final long serialVersionUID=1L;
/**
* 主键ID
*/
@TableId(value = "abnormal_id")
private Long abnormalId;
/**
* 钢卷ID
*/
private Long coilId;
/**
* 位置(上下,操作侧,中间,驱动侧)
*/
private String position;
/**
* 长度坐标
*/
private String lengthCoord;
/**
* 缺陷代码S=表面缺陷、E=边部问题、M=尺寸问题、G=收卷问题)
*/
private String defectCode;
/**
* 程度(轻微、重度、严重)
*/
private String degree;
/**
* 判级
*/
private String judgeLevel;
/**
* 判级人
*/
private String judgeBy;
/**
* 判级时间
*/
private Date judgeTime;
/**
* 备注
*/
private String remark;
/**
* 删除标志0=正常1=已删除)
*/
@TableLogic
private Integer delFlag;
}

View File

@@ -0,0 +1,73 @@
package com.klp.domain.bo;
import com.klp.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
/**
* 钢卷异常信息业务对象 wms_coil_abnormal
*
* @author klp
* @date 2025-12-04
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class WmsCoilAbnormalBo extends BaseEntity {
/**
* 主键ID
*/
private Long abnormalId;
/**
* 钢卷ID
*/
private Long coilId;
/**
* 位置(上下,操作侧,中间,驱动侧)
*/
private String position;
/**
* 长度坐标
*/
private String lengthCoord;
/**
* 缺陷代码S=表面缺陷、E=边部问题、M=尺寸问题、G=收卷问题)
*/
private String defectCode;
/**
* 程度(轻微、重度、严重)
*/
private String degree;
/**
* 判级
*/
private String judgeLevel;
/**
* 判级人
*/
private String judgeBy;
/**
* 判级时间
*/
private Date judgeTime;
/**
* 备注
*/
private String remark;
}

View File

@@ -0,0 +1,88 @@
package com.klp.domain.vo;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.klp.common.annotation.ExcelDictFormat;
import com.klp.common.convert.ExcelDictConvert;
import lombok.Data;
/**
* 钢卷异常信息视图对象 wms_coil_abnormal
*
* @author klp
* @date 2025-12-04
*/
@Data
@ExcelIgnoreUnannotated
public class WmsCoilAbnormalVo {
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@ExcelProperty(value = "主键ID")
private Long abnormalId;
/**
* 钢卷ID
*/
@ExcelProperty(value = "钢卷ID")
private Long coilId;
/**
* 位置(上下,操作侧,中间,驱动侧)
*/
@ExcelProperty(value = "位置", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "上=下,操作侧,中间,驱动侧")
private String position;
/**
* 长度坐标
*/
@ExcelProperty(value = "长度坐标")
private String lengthCoord;
/**
* 缺陷代码S=表面缺陷、E=边部问题、M=尺寸问题、G=收卷问题)
*/
@ExcelProperty(value = "缺陷代码", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "S==表面缺陷、E=边部问题、M=尺寸问题、G=收卷问题")
private String defectCode;
/**
* 程度(轻微、重度、严重)
*/
@ExcelProperty(value = "程度", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "轻=微、重度、严重")
private String degree;
/**
* 判级
*/
@ExcelProperty(value = "判级")
private String judgeLevel;
/**
* 判级人
*/
@ExcelProperty(value = "判级人")
private String judgeBy;
/**
* 判级时间
*/
@ExcelProperty(value = "判级时间")
private Date judgeTime;
/**
* 备注
*/
@ExcelProperty(value = "备注")
private String remark;
}

View File

@@ -301,5 +301,10 @@ public class WmsMaterialCoilVo extends BaseEntity {
private String zincLayer; // 锌层
private String manufacturer; // 厂家
/**
* 异常数量(钢卷异常信息表统计)
*/
private Integer abnormalCount;
}