feat(wms): 新增发货计划、发货单主表及明细表功能模块
- 新增发货计划实体类、业务对象、控制器、服务接口及实现 - 新增发货单主表实体类、业务对象、控制器、服务接口及实现 - 新增发货单明细表实体类、业务对象、控制器、服务接口及实现 - 配置相关Mapper接口与XML映射文件 - 实现基础的增删改查及分页查询功能 - 支持Excel导出功能 - 添加基础数据校验与日志记录
This commit is contained in:
@@ -0,0 +1,50 @@
|
||||
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_delivery_plan
|
||||
*
|
||||
* @author klp
|
||||
* @date 2025-11-25
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
public class WmsDeliveryPlanVo {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 计划唯一ID
|
||||
*/
|
||||
@ExcelProperty(value = "计划唯一ID")
|
||||
private Long planId;
|
||||
|
||||
/**
|
||||
* 发货计划名称(格式:YYYY-MM-DD-序号,如2025-11-25-001)
|
||||
*/
|
||||
@ExcelProperty(value = "发货计划名称", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "格=式:YYYY-MM-DD-序号,如2025-11-25-001")
|
||||
private String planName;
|
||||
|
||||
/**
|
||||
* 计划日期
|
||||
*/
|
||||
@ExcelProperty(value = "计划日期")
|
||||
private Date planDate;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@ExcelProperty(value = "备注")
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,121 @@
|
||||
package com.klp.domain.vo;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
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_delivery_waybill_detail
|
||||
*
|
||||
* @author klp
|
||||
* @date 2025-11-25
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
public class WmsDeliveryWaybillDetailVo {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 明细唯一ID
|
||||
*/
|
||||
@ExcelProperty(value = "明细唯一ID")
|
||||
private Long detailId;
|
||||
|
||||
/**
|
||||
* 关联发货单主表ID
|
||||
*/
|
||||
@ExcelProperty(value = "关联发货单主表ID")
|
||||
private Long waybillId;
|
||||
|
||||
/**
|
||||
* 关联钢卷表ID(钢卷基础信息在钢卷表中)
|
||||
*/
|
||||
@ExcelProperty(value = "关联钢卷表ID", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "钢=卷基础信息在钢卷表中")
|
||||
private Long coilId;
|
||||
|
||||
/**
|
||||
* 品名(如:冷硬钢卷、冷轧钢卷)
|
||||
*/
|
||||
@ExcelProperty(value = "品名", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "如=:冷硬钢卷、冷轧钢卷")
|
||||
private String productName;
|
||||
|
||||
/**
|
||||
* 切边(净边/毛边)
|
||||
*/
|
||||
@ExcelProperty(value = "切边", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "净=边/毛边")
|
||||
private String edgeType;
|
||||
|
||||
/**
|
||||
* 包装(裸包/简包1/精包2等)
|
||||
*/
|
||||
@ExcelProperty(value = "包装", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "裸=包/简包1/精包2等")
|
||||
private String packaging;
|
||||
|
||||
/**
|
||||
* 结算方式(卷重/磅重)
|
||||
*/
|
||||
@ExcelProperty(value = "结算方式", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "卷=重/磅重")
|
||||
private String settlementType;
|
||||
|
||||
/**
|
||||
* 原料厂家
|
||||
*/
|
||||
@ExcelProperty(value = "原料厂家")
|
||||
private String rawMaterialFactory;
|
||||
|
||||
/**
|
||||
* 卷号
|
||||
*/
|
||||
@ExcelProperty(value = "卷号")
|
||||
private String coilNo;
|
||||
|
||||
/**
|
||||
* 规格
|
||||
*/
|
||||
@ExcelProperty(value = "规格")
|
||||
private String specification;
|
||||
|
||||
/**
|
||||
* 材质
|
||||
*/
|
||||
@ExcelProperty(value = "材质")
|
||||
private String material;
|
||||
|
||||
/**
|
||||
* 数量(件)
|
||||
*/
|
||||
@ExcelProperty(value = "数量", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "件=")
|
||||
private Long quantity;
|
||||
|
||||
/**
|
||||
* 重量(kg)
|
||||
*/
|
||||
@ExcelProperty(value = "重量", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "k=g")
|
||||
private BigDecimal weight;
|
||||
|
||||
/**
|
||||
* 单价
|
||||
*/
|
||||
@ExcelProperty(value = "单价")
|
||||
private BigDecimal unitPrice;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@ExcelProperty(value = "备注")
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,114 @@
|
||||
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_delivery_waybill
|
||||
*
|
||||
* @author klp
|
||||
* @date 2025-11-25
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
public class WmsDeliveryWaybillVo {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 发货单唯一ID
|
||||
*/
|
||||
@ExcelProperty(value = "发货单唯一ID")
|
||||
private Long waybillId;
|
||||
|
||||
/**
|
||||
* 发货单编号(格式:WB-YYYYMMDD-XXXX,如WB-20251125-0001)
|
||||
*/
|
||||
@ExcelProperty(value = "发货单编号", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "格=式:WB-YYYYMMDD-XXXX,如WB-20251125-0001")
|
||||
private String waybillNo;
|
||||
|
||||
/**
|
||||
* 发货单名称
|
||||
*/
|
||||
@ExcelProperty(value = "发货单名称")
|
||||
private String waybillName;
|
||||
|
||||
/**
|
||||
* 关联发货计划ID
|
||||
*/
|
||||
@ExcelProperty(value = "关联发货计划ID")
|
||||
private Long planId;
|
||||
|
||||
/**
|
||||
* 车牌(支持新能源车牌)
|
||||
*/
|
||||
@ExcelProperty(value = "车牌", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "支=持新能源车牌")
|
||||
private String licensePlate;
|
||||
|
||||
/**
|
||||
* 收货单位
|
||||
*/
|
||||
@ExcelProperty(value = "收货单位")
|
||||
private String consigneeUnit;
|
||||
|
||||
/**
|
||||
* 发货单位
|
||||
*/
|
||||
@ExcelProperty(value = "发货单位")
|
||||
private String senderUnit;
|
||||
|
||||
/**
|
||||
* 发货时间
|
||||
*/
|
||||
@ExcelProperty(value = "发货时间")
|
||||
private Date deliveryTime;
|
||||
|
||||
/**
|
||||
* 磅房
|
||||
*/
|
||||
@ExcelProperty(value = "磅房")
|
||||
private String weighbridge;
|
||||
|
||||
/**
|
||||
* 销售
|
||||
*/
|
||||
@ExcelProperty(value = "销售")
|
||||
private String salesPerson;
|
||||
|
||||
/**
|
||||
* 负责人(司机/跟单员)
|
||||
*/
|
||||
@ExcelProperty(value = "负责人", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "司=机/跟单员")
|
||||
private String principal;
|
||||
|
||||
/**
|
||||
* 负责人电话(手机号/固话)
|
||||
*/
|
||||
@ExcelProperty(value = "负责人电话", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "手=机号/固话")
|
||||
private String principalPhone;
|
||||
|
||||
/**
|
||||
* 完成状态(0=待发货,1=已发货,2=已完成,3=取消)
|
||||
*/
|
||||
@ExcelProperty(value = "完成状态", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "0==待发货,1=已发货,2=已完成,3=取消")
|
||||
private Long status;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@ExcelProperty(value = "备注")
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user