From 98a170ad0dfeb5077998ac93baef5508a92aee7f Mon Sep 17 00:00:00 2001 From: liuxy Date: Fri, 9 Aug 2024 20:07:03 +0800 Subject: [PATCH] =?UTF-8?q?add=EF=BC=9A=E6=96=B0=E5=A2=9E=E6=98=AF?= =?UTF-8?q?=E5=90=A6=E5=BC=80=E7=9B=96=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wms/ext/acs/rest/AcsToWmsController.java | 7 +++ .../wms/ext/acs/service/AcsToWmsService.java | 9 +++ .../acs/service/impl/AcsToWmsServiceImpl.java | 56 +++++++++++++++++++ 3 files changed, 72 insertions(+) diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/rest/AcsToWmsController.java b/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/rest/AcsToWmsController.java index 93af39b5c..4c1d9670f 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/rest/AcsToWmsController.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/rest/AcsToWmsController.java @@ -218,6 +218,13 @@ public class AcsToWmsController { return new ResponseEntity<>(acsToWmsService.getBoxInfo(param), HttpStatus.OK); } + @PostMapping("/getIsUncap") + @Log(value = "二期是否开盖", isInterfaceLog = true, interfaceLogType = InterfaceLogType.ACS_TO_LMS) + @SaIgnore + public ResponseEntity getIsUncap(@RequestBody JSONObject param) { + return new ResponseEntity<>(acsToWmsService.getIsUncap(param), HttpStatus.OK); + } + @PostMapping("/acsCallShaftFromCache") @Log(value = "二期ACS请求出轴", isInterfaceLog = true, interfaceLogType = InterfaceLogType.ACS_TO_LMS) @SaIgnore diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/AcsToWmsService.java b/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/AcsToWmsService.java index 5ac42e520..3de2d8022 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/AcsToWmsService.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/AcsToWmsService.java @@ -216,4 +216,13 @@ public interface AcsToWmsService { * @return / */ JSONObject acsCallShaftFromCache(JSONObject param); + + /** + * 捆扎模版 + * @param param:{ + * + * } + * @return JSONObject + */ + JSONObject getIsUncap(JSONObject param); } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java index 4ef187855..59653abc1 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java @@ -2542,4 +2542,60 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { public JSONObject acsCallShaftFromCache(JSONObject param) { return slitterService.acsCallShaftFromCache(param); } + + @Override + public JSONObject getIsUncap(JSONObject param) { + String material_barcode = param.getString("material_barcode"); + String vehicle_code = param.getString("vehicle_code"); + //干燥剂模板 + String desiccantTemplate = "6"; + //是否开盖 + String isUncap = "1"; + JSONObject vehicle_info = WQLObject.getWQLObject("md_pb_storagevehicleext").query("storagevehicle_code = '" + material_barcode + "'").uniqueResult(0); + if (ObjectUtil.isEmpty(vehicle_info)) { + vehicle_info = WQLObject.getWQLObject("md_pb_storagevehicleext").query("storagevehicle_code = '" + vehicle_code + "'").uniqueResult(0); + if (ObjectUtil.isEmpty(vehicle_info)){ + throw new BadRequestException("未查询到载具号【" + vehicle_code + "】对应的载具信息!"); + } + } + material_barcode = vehicle_info.getString("pcsn"); + // 查询木箱信息 + BstIvtBoxinfo boxDao = iBstIvtBoxinfoService.getOne( + new QueryWrapper().lambda() + .eq(BstIvtBoxinfo::getBox_no, material_barcode) + ); + + //获取包装关系 + JSONObject sub_jo = WQLObject.getWQLObject("pdm_bi_subpackagerelation").query("package_box_sn = '" + material_barcode + "'").uniqueResult(0); + if (ObjectUtil.isNotEmpty(sub_jo)) { + String material_type = sub_jo.getString("material_type"); + if (material_type.equals("FG1")) { + desiccantTemplate = "6"; + } + if (material_type.equals("FG2")) { + desiccantTemplate = "4"; + } + } + //根据木箱高度,判断入库仓位的高度 + String height = ""; + String heightLevel1 = iSysParamService.findByCode("height_level_1").getValue(); + String heightLevel2 = iSysParamService.findByCode("height_level_2").getValue(); + String box_high = boxDao.getBox_high(); + if (Integer.parseInt(box_high) <= Integer.parseInt(heightLevel1)) { + height = "1"; + } else if (Integer.parseInt(box_high) > Integer.parseInt(heightLevel1) && Integer.parseInt(box_high) <= Integer.parseInt(heightLevel2)) { + height = "2"; + } else { + height = "3"; + } + JSONObject jsonObject = new JSONObject(); + jsonObject.put("boxLength", boxDao.getBox_length()); + jsonObject.put("boxWidth", boxDao.getBox_width()); + jsonObject.put("boxHigh", boxDao.getBox_high()); + jsonObject.put("desiccantTemplate", desiccantTemplate); + jsonObject.put("isUncap", isUncap); + jsonObject.put("heightLevel", height); + jsonObject.put("status", HttpStatus.OK.value()); + return jsonObject; + } }