From db95dd3a67823b8cb6e0ff61e4788f005511e8c8 Mon Sep 17 00:00:00 2001 From: Joshi <3040996759@qq.com> Date: Mon, 12 Jan 2026 10:01:59 +0800 Subject: [PATCH] =?UTF-8?q?feat(material):=20=E6=B7=BB=E5=8A=A0=E6=9D=90?= =?UTF-8?q?=E6=96=99=E5=8D=B7=E5=AF=BC=E5=87=BA=E5=8A=9F=E8=83=BD=E7=9A=84?= =?UTF-8?q?=E6=97=B6=E9=97=B4=E5=AD=97=E6=AE=B5=E5=85=9C=E5=BA=95=E5=A4=84?= =?UTF-8?q?=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在 WmsMaterialCoilExportVo 中新增 updateTime 字段用于时间兜底 - 在数据库查询映射中添加 update_time 字段的查询支持 - 实现发货时间为空时的时间字段处理逻辑,按优先级选择时间 - 优化导出列表的时间字段赋值策略,确保日期字段不为空 --- .../domain/vo/WmsMaterialCoilExportVo.java | 5 +++++ .../impl/WmsMaterialCoilServiceImpl.java | 19 ++++++++++++++++--- .../mapper/klp/WmsMaterialCoilMapper.xml | 2 ++ 3 files changed, 23 insertions(+), 3 deletions(-) diff --git a/klp-wms/src/main/java/com/klp/domain/vo/WmsMaterialCoilExportVo.java b/klp-wms/src/main/java/com/klp/domain/vo/WmsMaterialCoilExportVo.java index a655fd82..4a316468 100644 --- a/klp-wms/src/main/java/com/klp/domain/vo/WmsMaterialCoilExportVo.java +++ b/klp-wms/src/main/java/com/klp/domain/vo/WmsMaterialCoilExportVo.java @@ -161,4 +161,9 @@ public class WmsMaterialCoilExportVo { * 发货时间(仅临时存储,不导出) */ private Date exportTime; + + /** + * 更新时间(仅临时存储,不导出,用于发货时间为空时兜底) + */ + private Date updateTime; } 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 a678ea7e..e092ffbb 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 @@ -1862,12 +1862,25 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService { public List queryExportList(WmsMaterialCoilBo bo) { QueryWrapper lqw = buildQueryWrapper(bo); List wmsMaterialCoilExportVos = baseMapper.selectExportList(lqw); - // 遍历数据,根据状态替换日期字段 + // 遍历数据,根据状态替换日期字段,并处理空值兜底 wmsMaterialCoilExportVos.stream().forEach(vo -> { // 判断查询条件中的status是否为1(已发货) if (bo.getStatus() != null && bo.getStatus() == 1) { - // 已发货时,将展示的日期替换为export_time - vo.setCreateTime(vo.getExportTime()); + 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不变 }); diff --git a/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml b/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml index 643ba376..69c2f123 100644 --- a/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml +++ b/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml @@ -363,6 +363,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" mc.create_time AS createTime, -- 发货时间 mc.export_time AS exportTime, + -- 新增:更新时间(用于发货时间为空时兜底) + mc.update_time AS updateTime, -- 重量 mc.net_weight AS netWeight, -- 长度