- 在WmsMaterialCoil实体类中新增actualLength和actualWidth字段 - 在WmsMaterialCoilBo业务对象中添加实测长度宽度属性 - 在WmsMaterialCoilVo视图对象中增加Excel导出注解配置 - 更新MyBatis映射文件添加实测尺寸数据库字段映射 - 实现根据实测长度宽度的查询过滤功能 - 优化库位排序逻辑,增加全局交错排序辅助字段 - 添加库位层级排序键和库位ID键用于精确排序控制
446 lines
8.9 KiB
Java
446 lines
8.9 KiB
Java
package com.klp.domain.vo;
|
||
|
||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||
import com.alibaba.excel.annotation.ExcelProperty;
|
||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||
import com.klp.common.annotation.ExcelDictFormat;
|
||
import com.klp.common.convert.ExcelDictConvert;
|
||
import com.klp.common.core.domain.BaseEntity;
|
||
import lombok.Data;
|
||
import java.math.BigDecimal;
|
||
import java.util.Date;
|
||
import java.util.List;
|
||
|
||
|
||
/**
|
||
* 钢卷物料表视图对象 wms_material_coil
|
||
*
|
||
* @author Joshi
|
||
* @date 2025-07-18
|
||
*/
|
||
@Data
|
||
@ExcelIgnoreUnannotated
|
||
public class WmsMaterialCoilVo extends BaseEntity {
|
||
|
||
private static final long serialVersionUID = 1L;
|
||
|
||
/**
|
||
* 主键ID
|
||
*/
|
||
private Long coilId;
|
||
|
||
/**
|
||
* 入场钢卷号
|
||
*/
|
||
@ExcelProperty(value = "入场钢卷号")
|
||
private String enterCoilNo;
|
||
|
||
/**
|
||
* 当前钢卷号
|
||
*/
|
||
@ExcelProperty(value = "当前钢卷号")
|
||
private String currentCoilNo;
|
||
|
||
/**
|
||
* 厂家原料卷号
|
||
*/
|
||
@ExcelProperty(value = "厂家原料卷号")
|
||
private String supplierCoilNo;
|
||
|
||
/**
|
||
* 数据类型(0=历史,1=现存)
|
||
*/
|
||
@ExcelProperty(value = "数据类型", converter = ExcelDictConvert.class)
|
||
@ExcelDictFormat(readConverterExp = "0=历史,1=现存")
|
||
private Integer dataType;
|
||
|
||
/**
|
||
所在库区ID 联查当前库区和物品id 复卷好去掉 dataType数据类型是1当前 0就是历史 物品类型row_me 原材料 product产品
|
||
*/
|
||
@ExcelProperty(value = "所在库区ID")
|
||
private Long warehouseId;
|
||
|
||
/**
|
||
* 下一库区ID
|
||
*/
|
||
private Long nextWarehouseId;
|
||
|
||
/**
|
||
* 关联二维码ID
|
||
*/
|
||
private Long qrcodeRecordId;
|
||
|
||
/**
|
||
* 班组
|
||
*/
|
||
@ExcelProperty(value = "班组")
|
||
private String team;
|
||
|
||
/**
|
||
* 是否合卷/分卷
|
||
*/
|
||
@ExcelProperty(value = "是否合卷/分卷", converter = ExcelDictConvert.class)
|
||
@ExcelDictFormat(readConverterExp = "0=否,1=分卷,2=合卷")
|
||
private Integer hasMergeSplit;
|
||
|
||
/**
|
||
* 父卷号
|
||
*/
|
||
private String parentCoilNos;
|
||
|
||
/**
|
||
* 物品类型
|
||
*/
|
||
@ExcelProperty(value = "物品类型")
|
||
private String itemType;
|
||
|
||
/**
|
||
* 物品ID
|
||
*/
|
||
private Long itemId;
|
||
|
||
/**
|
||
* 毛重(kg)
|
||
*/
|
||
@ExcelProperty(value = "毛重(kg)")
|
||
private BigDecimal grossWeight;
|
||
|
||
/**
|
||
* 净重(kg)
|
||
*/
|
||
@ExcelProperty(value = "净重(kg)")
|
||
private BigDecimal netWeight;
|
||
|
||
/**
|
||
* 状态
|
||
*/
|
||
@ExcelProperty(value = "状态", converter = ExcelDictConvert.class)
|
||
@ExcelDictFormat(readConverterExp = "0=在库,1=在途,2=已出库")
|
||
private Integer status;
|
||
|
||
/**
|
||
* 备注
|
||
*/
|
||
@ExcelProperty(value = "备注")
|
||
private String remark;
|
||
|
||
// ========== 关联对象属性 ==========
|
||
|
||
/**
|
||
* 所在库区信息
|
||
*/
|
||
private WmsWarehouseVo warehouse;
|
||
|
||
/**
|
||
* 下一库区信息
|
||
*/
|
||
private WmsWarehouseVo nextWarehouse;
|
||
|
||
/**
|
||
* 二维码信息
|
||
*/
|
||
private WmsGenerateRecordVo qrcodeRecord;
|
||
|
||
/**
|
||
* 原材料信息(当itemType为raw_material时)
|
||
*/
|
||
private WmsRawMaterialVo rawMaterial;
|
||
|
||
/**
|
||
* 产品信息(当itemType为product时)
|
||
*/
|
||
private WmsProductVo product;
|
||
|
||
/**
|
||
* BOM列表(原材料对应的BOM项目信息)
|
||
*/
|
||
private List<WmsBomItemVo> bomItemList;
|
||
|
||
// ========== 统计相关属性 ==========
|
||
|
||
/**
|
||
* 库区名称(用于统计查询)
|
||
*/
|
||
@ExcelProperty(value = "库区名称")
|
||
private String warehouseName;
|
||
|
||
/**
|
||
* 下一库区名称
|
||
*/
|
||
private String nextWarehouseName;
|
||
|
||
/**
|
||
* 钢卷数量(用于统计查询)
|
||
*/
|
||
private Long coilCount;
|
||
|
||
/**
|
||
* 总毛重(用于统计查询)
|
||
*/
|
||
private BigDecimal totalGrossWeight;
|
||
|
||
/**
|
||
* 总净重(用于统计查询)
|
||
*/
|
||
private BigDecimal totalNetWeight;
|
||
|
||
@ExcelProperty(value = "物品名称")
|
||
private String itemName;
|
||
@ExcelProperty(value = "物品编号")
|
||
private String itemCode;
|
||
|
||
private Long actualWarehouseId;
|
||
private String actualWarehouseName;
|
||
|
||
|
||
//材料类型
|
||
private String materialType;
|
||
|
||
|
||
|
||
/**
|
||
* 质量状态(0=正常,1=待检,2=不合格)
|
||
*/
|
||
private String qualityStatus;
|
||
|
||
/**
|
||
* 切边要求
|
||
*/
|
||
private String trimmingRequirement;
|
||
|
||
/**
|
||
* 打包状态(0=未打包,1=已打包)
|
||
*/
|
||
private String packingStatus;
|
||
|
||
/**
|
||
* 包装要求
|
||
*/
|
||
private String packagingRequirement;
|
||
|
||
// ========== 联查临时字段(用于优化查询性能,避免单独查询) ==========
|
||
|
||
/**
|
||
* 原材料ID(联查字段)
|
||
*/
|
||
private Long rawMaterialId;
|
||
|
||
/**
|
||
* 原材料编号(联查字段)
|
||
*/
|
||
private String rawMaterialCode;
|
||
|
||
/**
|
||
* 原材料名称(联查字段)
|
||
*/
|
||
private String rawMaterialName;
|
||
|
||
/**
|
||
* 原材料规格(联查字段)
|
||
*/
|
||
private String rawMaterialSpecification;
|
||
|
||
/**
|
||
* 原材料钢种(联查字段)
|
||
*/
|
||
private String rawMaterialSteelGrade;
|
||
|
||
/**
|
||
* 原材料厚度(联查字段)
|
||
*/
|
||
private BigDecimal rawMaterialThickness;
|
||
|
||
/**
|
||
* 原材料宽度(联查字段)
|
||
*/
|
||
private BigDecimal rawMaterialWidth;
|
||
|
||
/**
|
||
* 原材料BOM ID(联查字段)
|
||
*/
|
||
private Long rawMaterialBomId;
|
||
|
||
/**
|
||
* 产品ID(联查字段)
|
||
*/
|
||
private Long productId;
|
||
|
||
/**
|
||
* 产品编号(联查字段)
|
||
*/
|
||
private String productCode;
|
||
|
||
/**
|
||
* 产品名称(联查字段)
|
||
*/
|
||
private String productName;
|
||
|
||
/**
|
||
* 产品规格(联查字段)
|
||
*/
|
||
private String productSpecification;
|
||
|
||
/**
|
||
* 产品厚度(联查字段)
|
||
*/
|
||
private BigDecimal productThickness;
|
||
|
||
/**
|
||
* 产品宽度(联查字段)
|
||
*/
|
||
private BigDecimal productWidth;
|
||
|
||
|
||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||
@ExcelProperty(value = "发货时间")
|
||
private Date exportTime;
|
||
|
||
/**
|
||
* 产品BOM ID(联查字段)
|
||
*/
|
||
private Long productBomId;
|
||
|
||
private String specification; // 规格
|
||
private String material; // 材质
|
||
private String surfaceTreatmentDesc; // 表面处理
|
||
private String zincLayer; // 锌层
|
||
private String manufacturer; // 厂家
|
||
|
||
/**
|
||
* 异常数量(钢卷异常信息表统计)
|
||
*/
|
||
private Integer abnormalCount;
|
||
|
||
|
||
private String createByName;
|
||
private String updateByName;
|
||
|
||
//销售id
|
||
private Long saleId;
|
||
// 销售昵称
|
||
private String saleName;
|
||
|
||
//新增长度字段
|
||
private BigDecimal length;
|
||
|
||
//发货人
|
||
private String exportBy;
|
||
//发货人昵称
|
||
private String exportByName;
|
||
|
||
|
||
// 调制度
|
||
private String temperGrade;
|
||
|
||
// 业务用途(如:生产领用、销售发货、样品送检、内部调拨等)
|
||
private String businessPurpose;
|
||
|
||
// 是否与订单相关(0=否,1=是)
|
||
private Integer isRelatedToOrder;
|
||
|
||
// 镀层种类
|
||
private String coatingType;
|
||
|
||
/**
|
||
* 独占状态(0=未独占,1=特殊分卷中)
|
||
*/
|
||
private Integer exclusiveStatus;
|
||
|
||
// ========== 发货绑定信息(由发货单明细占用) ==========
|
||
|
||
/**
|
||
* 是否已被发货单明细绑定(true=不可再次绑定)
|
||
*/
|
||
private Boolean bound;
|
||
|
||
private Long bindDetailId;
|
||
|
||
private Long bindWaybillId;
|
||
private String bindWaybillNo;
|
||
private String bindWaybillName;
|
||
|
||
private Long bindPlanId;
|
||
private String bindPlanName;
|
||
|
||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||
private Date bindPlanDate;
|
||
|
||
// 父钢卷id
|
||
private String parentCoilId;
|
||
|
||
// ========== 补充的发货绑定信息字段 ==========
|
||
/**
|
||
* 车牌号
|
||
*/
|
||
private String bindLicensePlate;
|
||
|
||
/**
|
||
* 收货单位
|
||
*/
|
||
private String bindConsigneeUnit;
|
||
|
||
/**
|
||
* 发货单位
|
||
*/
|
||
private String bindSenderUnit;
|
||
|
||
/**
|
||
* 发货时间
|
||
*/
|
||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||
private Date bindDeliveryTime;
|
||
|
||
/**
|
||
* 地磅
|
||
*/
|
||
private String bindWeighbridge;
|
||
|
||
/**
|
||
* 销售人员
|
||
*/
|
||
private String bindSalesPerson;
|
||
|
||
/**
|
||
* 负责人
|
||
*/
|
||
private String bindPrincipal;
|
||
|
||
/**
|
||
* 负责人电话
|
||
*/
|
||
private String bindPrincipalPhone;
|
||
|
||
/**
|
||
* 运单状态
|
||
*/
|
||
private Long bindWaybillStatus;
|
||
|
||
/**
|
||
* 运单备注
|
||
*/
|
||
private String bindWaybillRemark;
|
||
|
||
/**
|
||
* 明细结算类型
|
||
*/
|
||
private String bindDetailSettlementType;
|
||
|
||
/**
|
||
* 明细单价
|
||
*/
|
||
private BigDecimal bindDetailUnitPrice;
|
||
|
||
/**
|
||
* 实测长度
|
||
*/
|
||
@ExcelProperty(value = "实测长度")
|
||
private BigDecimal actualLength;
|
||
|
||
/**
|
||
* 实测宽度
|
||
*/
|
||
@ExcelProperty(value = "实测宽度")
|
||
private BigDecimal actualWidth;
|
||
}
|
||
|