diff --git a/klp-wms/src/main/java/com/klp/domain/vo/WmsMaterialCoilDeliveryExportVo.java b/klp-wms/src/main/java/com/klp/domain/vo/WmsMaterialCoilDeliveryExportVo.java index 7dfb13e9..a6005cf8 100644 --- a/klp-wms/src/main/java/com/klp/domain/vo/WmsMaterialCoilDeliveryExportVo.java +++ b/klp-wms/src/main/java/com/klp/domain/vo/WmsMaterialCoilDeliveryExportVo.java @@ -23,6 +23,10 @@ public class WmsMaterialCoilDeliveryExportVo extends WmsMaterialCoilExportVo { */ private Long coilId; + // 发货人 + @ExcelProperty(value = "发货人") + private String exportBy; + // -------------------- 发货计划(plan) -------------------- private Long planId; diff --git a/klp-wms/src/main/java/com/klp/service/impl/WmsMaterialCoilServiceImpl.java b/klp-wms/src/main/java/com/klp/service/impl/WmsMaterialCoilServiceImpl.java index 2aee5870..ff5981b0 100644 --- a/klp-wms/src/main/java/com/klp/service/impl/WmsMaterialCoilServiceImpl.java +++ b/klp-wms/src/main/java/com/klp/service/impl/WmsMaterialCoilServiceImpl.java @@ -338,7 +338,7 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService { vo.setBindPlanId(bind.getPlanId()); vo.setBindPlanName(bind.getPlanName()); vo.setBindPlanDate(bind.getPlanDate()); - + // 补充设置更多的绑定信息字段 vo.setBindLicensePlate(bind.getLicensePlate()); vo.setBindConsigneeUnit(bind.getConsigneeUnit()); @@ -2389,7 +2389,35 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService { if (coilIds.isEmpty()) { return Collections.emptyList(); } - return baseMapper.selectDeliveryExportListByCoilIds(coilIds); + List wmsMaterialCoilDeliveryExportVos = baseMapper.selectDeliveryExportListByCoilIds(coilIds); + // 遍历数据,根据状态替换日期字段,并处理空值兜底 + wmsMaterialCoilDeliveryExportVos.stream().forEach(vo -> { + // 判断查询条件中的status是否为1(已发货) + if (bo.getStatus() != null && bo.getStatus() == 1) { + Date finalDate = null; + // 1. 优先使用发货时间 + if (vo.getExportTime() != null) { + finalDate = vo.getExportTime(); + } + // 2. 发货时间为空时,使用更新时间兜底 + else if (vo.getUpdateTime() != null) { + finalDate = vo.getUpdateTime(); + } + // 3. 若更新时间也为空,保留原有createTime(避免日期字段为空) + else { + finalDate = vo.getCreateTime(); + } + // 赋值最终的日期 + vo.setCreateTime(finalDate); + } + // 非1的情况,保持原有create_time不变 + + // 如果是dataType=0的历史数据,将实际库区设置为null + if (vo.getDataType() != null && vo.getDataType() == 0) { + vo.setActualWarehouseName(null); + } + }); + return wmsMaterialCoilDeliveryExportVos; } private List parseCsvLongs(String csv) { diff --git a/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml b/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml index 9ba5fb08..108c34ee 100644 --- a/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml +++ b/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml @@ -448,6 +448,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" SELECT -- 钢卷ID mc.coil_id AS coilId, + -- 发货人 + mc.export_by AS exportBy, -- 类型(中文显示) CASE WHEN mc.item_type = 'product' THEN '成品'