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 3f0cb3d8..c8575ccd 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 @@ -56,6 +56,11 @@ public class WmsMaterialCoilBo extends BaseEntity { */ private Long warehouseId; + /** + * 所在库区IDs(逗号分隔) + */ + private String warehouseIds; + /** * 下一库区ID */ 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 dde057d3..6094e6fe 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 @@ -341,12 +341,31 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService { qw.like(StringUtils.isNotBlank(bo.getSupplierCoilNo()), "mc.supplier_coil_no", bo.getSupplierCoilNo()); qw.eq(bo.getDataType() != null, "mc.data_type", bo.getDataType()); qw.eq(bo.getMaterialType() != null, "mc.material_type", bo.getMaterialType()); - qw.eq(bo.getWarehouseId() != null, "mc.warehouse_id", bo.getWarehouseId()); qw.eq(bo.getHasMergeSplit() != null, "mc.has_merge_split", bo.getHasMergeSplit()); qw.eq(bo.getStatus() != null, "mc.status", bo.getStatus()); qw.eq(StringUtils.isNotBlank(bo.getItemType()), "mc.item_type", bo.getItemType()); qw.eq(StringUtils.isNotBlank(bo.getCreateBy()), "mc.create_by", bo.getCreateBy()); qw.eq(StringUtils.isNotBlank(bo.getUpdateBy()), "mc.update_by", bo.getUpdateBy()); + // 统一处理 warehouseId 与 warehouseIds: + List warehouseIdList = new ArrayList<>(); + if (bo.getWarehouseId() != null) { + warehouseIdList.add(bo.getWarehouseId()); + } + if (StringUtils.isNotBlank(bo.getWarehouseIds())) { + String[] warehouseIdArray = bo.getWarehouseIds().split(","); + for (String warehouseIdStr : warehouseIdArray) { + if (StringUtils.isNotBlank(warehouseIdStr)) { + try { + warehouseIdList.add(Long.parseLong(warehouseIdStr.trim())); + } catch (NumberFormatException ignore) { + } + } + } + } + if (!warehouseIdList.isEmpty()) { + qw.in("mc.warehouse_id", warehouseIdList.stream().distinct().collect(Collectors.toList())); + } + // 新增长度 qw.eq(bo.getLength() != null, "mc.length", bo.getLength()); // 如果actualWarehouseId不为空,则根据实际库区ID进行查询 如果为-1,则查询无库区的数据