diff --git a/klp-wms/src/main/java/com/klp/domain/WmsMaterialCoil.java b/klp-wms/src/main/java/com/klp/domain/WmsMaterialCoil.java index e285d281..99f7c908 100644 --- a/klp-wms/src/main/java/com/klp/domain/WmsMaterialCoil.java +++ b/klp-wms/src/main/java/com/klp/domain/WmsMaterialCoil.java @@ -149,5 +149,9 @@ public class WmsMaterialCoil extends BaseEntity { * 独占状态(0=未独占,1=特殊分卷中) */ private Integer exclusiveStatus; + + + // 父钢卷id + private String parentCoilId; } diff --git a/klp-wms/src/main/java/com/klp/domain/bo/WmsMaterialCoilBo.java b/klp-wms/src/main/java/com/klp/domain/bo/WmsMaterialCoilBo.java index ef26f94a..70265b48 100644 --- a/klp-wms/src/main/java/com/klp/domain/bo/WmsMaterialCoilBo.java +++ b/klp-wms/src/main/java/com/klp/domain/bo/WmsMaterialCoilBo.java @@ -241,5 +241,8 @@ public class WmsMaterialCoilBo extends BaseEntity { // 接收前端传来是否排序的字段 OrderBy @TableField(exist = false) private Boolean orderBy; + + // 父钢卷id + private String parentCoilId; } diff --git a/klp-wms/src/main/java/com/klp/domain/vo/WmsMaterialCoilVo.java b/klp-wms/src/main/java/com/klp/domain/vo/WmsMaterialCoilVo.java index c0000795..4043e2dc 100644 --- a/klp-wms/src/main/java/com/klp/domain/vo/WmsMaterialCoilVo.java +++ b/klp-wms/src/main/java/com/klp/domain/vo/WmsMaterialCoilVo.java @@ -352,5 +352,9 @@ public class WmsMaterialCoilVo extends BaseEntity { @JsonFormat(pattern = "yyyy-MM-dd") private Date bindPlanDate; + + + // 父钢卷id + private String parentCoilId; } 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 f4014e5d..26a4860d 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 @@ -1138,6 +1138,8 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService { validEntityBeforeSave(newCoil); + // 把老记录的coilId赋值给新纪录的parentCoilId + newCoil.setParentCoilId(String.valueOf(oldCoil.getCoilId())); // 插入新记录 boolean flag = baseMapper.insert(newCoil) > 0; @@ -1419,6 +1421,8 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService { newCoil.setQrcodeRecordId(newQrcodeId); validEntityBeforeSave(newCoil); + // 把老记录的coilId赋值给新纪录的parentCoilId + newCoil.setParentCoilId(String.valueOf(oldCoil.getCoilId())); baseMapper.insert(newCoil); newCoils.add(newCoil); @@ -1517,6 +1521,18 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService { newCoil.setQrcodeRecordId(mergedQrcodeId); validEntityBeforeSave(newCoil); + // 收集所有参与合卷的原始钢卷ID并用逗号分隔 + List parentCoilIds = new ArrayList<>(); + for (WmsMaterialCoilBo originalCoilBo : bo.getNewCoils()) { + if (originalCoilBo.getCoilId() != null) { + parentCoilIds.add(originalCoilBo.getCoilId()); + } + } + String parentCoilIdsStr = parentCoilIds.stream() + .map(String::valueOf) + .collect(Collectors.joining(",")); + newCoil.setParentCoilId(parentCoilIdsStr); + baseMapper.insert(newCoil); newCoils.add(newCoil); @@ -2350,6 +2366,36 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService { return wmsMaterialCoilExportVos; } + /** + * 发货报表导出:按 coilIds 查询钢卷 + 发货单明细/主表/计划联查数据 + */ + @Override + public List queryDeliveryExportList(WmsMaterialCoilBo bo) { + List coilIds = parseCsvLongs(bo == null ? null : bo.getCoilIds()); + if (coilIds.isEmpty()) { + return Collections.emptyList(); + } + return baseMapper.selectDeliveryExportListByCoilIds(coilIds); + } + + private List parseCsvLongs(String csv) { + if (StringUtils.isBlank(csv)) { + return Collections.emptyList(); + } + String[] arr = csv.split(","); + List list = new ArrayList<>(); + for (String s : arr) { + if (StringUtils.isBlank(s)) { + continue; + } + try { + list.add(Long.parseLong(s.trim())); + } catch (NumberFormatException ignore) { + } + } + return list.stream().distinct().collect(Collectors.toList()); + } + /** * 钢卷发货 * @param coilId diff --git a/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml b/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml index 45bc206a..9ba5fb08 100644 --- a/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml +++ b/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml @@ -6,6 +6,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + @@ -67,6 +68,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + +