diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvServiceImpl.java index 8a92a0780..15f0ad341 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvServiceImpl.java @@ -1005,7 +1005,7 @@ public class StIvtIostorinvServiceImpl extends ServiceImpl pcsnList = Arrays.asList(material_barcode.split(",")); + // 查询子卷包装关系 + List subList = WQLObject.getWQLObject("pdm_bi_subpackagerelation").query("container_name in ('" + String.join("','", pcsnList) + "') and status in ('0','1','99')") + .getResultJSONArray(0).toJavaList(JSONObject.class); + if (ObjectUtil.isEmpty(subList)) { + throw new BadRequestException("未查询到子卷包装信息!"); + } List errorMsg = new ArrayList<>(); + whereJson.put("sub_box",subList.get(0).getString("package_box_sn")); JSONObject jsonObject = ComPareUtil.CompareWhight(whereJson); Boolean inbound = jsonObject.getBoolean("inbound"); Boolean compaerResult = jsonObject.getBoolean("compaer_result"); @@ -2115,12 +2128,18 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { } } String is_normal_rk = SpringContextHolder.getBean(SysParamServiceImpl.class).findByCode("is_normal_rk").getValue(); - if (!inbound && is_normal_rk.equals("0")){ + if (!inbound && is_normal_rk.equals("0")) { errorMsg.add("手动至异常口"); } if (count > 0) { errorMsg.add(whereJson.getString("vehicle_code") + "存在任务"); } + if (StringUtils.isBlank(subList.get(0).getString("package_box_sn"))) { + throw new BadRequestException("包装关系的木箱号不能为空!"); + } + if (!subList.get(0).getString("package_box_sn").equals(jsonExt.getString("pcsn"))) { + errorMsg.add("托盘绑定的木箱号与当前的不一致!"); + } //"material_barcode":"C1101,","device_code":"RK1018","weight":500.95,"vehicle_code":"B01401","type":"1" if (CollectionUtils.isEmpty(errorMsg)) { whereJson.put("bill_type", IOSEnum.IN_TYPE.code("生产入库")); @@ -2152,7 +2171,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { JSONObject param = new JSONObject(); param.put("status", IOSEnum.IS_NOTANDYES.code("否")); WQLObject.getWQLObject("pdm_bi_subpackagerelation") - .update(param, "package_box_sn = '" + jsonObject.getString("box_no") + "'"); + .update(param, "package_box_sn = '" + subList.get(0).getString("package_box_sn") + "'"); jsonTaskParam.put("request_param", request_param); TwoExceptionInTask bean = SpringContextHolder.getBean(TwoExceptionInTask.class); diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/ComPareUtil.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/ComPareUtil.java index 725afc1eb..0f5516224 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/ComPareUtil.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/ComPareUtil.java @@ -27,8 +27,6 @@ public class ComPareUtil { public static JSONObject CompareWhight(JSONObject jsonObject) { - WQLObject subTab = WQLObject.getWQLObject("pdm_bi_subpackagerelation"); - String vehicle_code = jsonObject.getString("vehicle_code"); // 处理子卷号 @@ -37,26 +35,14 @@ public class ComPareUtil { throw new BadRequestException("子卷号不能为空!"); } - List pcsnList = Arrays.asList(material_barcode.split(",")); - // 查询子卷包装关系 - List subList = subTab.query("container_name in ('" + String.join("','", pcsnList) + "') and status in ('0','1','99')") - .getResultJSONArray(0).toJavaList(JSONObject.class); - if (ObjectUtil.isEmpty(subList)) { - throw new BadRequestException("未查询到子卷包装信息!"); - } - if (StringUtils.isBlank(subList.get(0).getString("package_box_sn"))) { - throw new BadRequestException("木箱号不能为空!"); - } //查询托盘重量 JSONObject vehicle_ext = WQLObject.getWQLObject("md_pb_storagevehicleext").query("storagevehicle_code = '" + vehicle_code + "'").uniqueResult(0); if (ObjectUtil.isEmpty(vehicle_ext)) { throw new BadRequestException("未查询到托盘的扩展信息"); } - if (!subList.get(0).getString("package_box_sn").equals(vehicle_ext.getString("pcsn"))) { - throw new BadRequestException("托盘绑定的木箱号与当前的不一致!"); - } + IpdmBiSubpackagerelationService ipdmBiSubpackagerelationService = SpringContextHolder.getBean(IpdmBiSubpackagerelationService.class); - List list = ipdmBiSubpackagerelationService.list(new LambdaQueryWrapper().eq(PdmBiSubpackagerelation::getPackage_box_sn, vehicle_ext.getString("pcsn"))); + List list = ipdmBiSubpackagerelationService.list(new LambdaQueryWrapper().eq(PdmBiSubpackagerelation::getPackage_box_sn, jsonObject.getString("sub_box"))); if (ObjectUtil.isEmpty(list)) { throw new BadRequestException("未查询到对应的木箱包装关系!"); }