From f97b2edcb536c534a2e2d85c3bd1d20c1d48b009 Mon Sep 17 00:00:00 2001 From: zhouz <> Date: Wed, 1 Apr 2026 14:15:41 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E5=8E=BB=E9=99=A4=E6=A1=81=E6=9E=B6?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E5=8D=A1=E6=8E=A7=E4=BA=86=E9=80=BB=E8=BE=91?= =?UTF-8?q?=E3=80=81=E6=96=B0=E5=A2=9E=E7=A9=BA=E6=9C=A8=E7=AE=B1=E5=87=BA?= =?UTF-8?q?=E5=BA=93=E6=94=B9=E4=B8=BA=E7=B3=BB=E7=BB=9F=E5=8F=82=E6=95=B0?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E5=8D=A1=E6=8E=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/VehicleTwoServiceImpl.java | 30 ++++++ .../auto/AutoIssueOutEmptyTask.java | 2 +- .../util/impl/InBoxManageServiceImpl.java | 102 ++++++++++++++---- .../wms/ext/acs/rest/AcsToWmsController.java | 7 ++ .../wms/ext/acs/service/AcsToWmsService.java | 7 ++ .../wms/ext/acs/service/WmsToAcsService.java | 4 + .../acs/service/impl/AcsToWmsServiceImpl.java | 25 +++++ .../acs/service/impl/WmsToAcsServiceImpl.java | 6 ++ .../wms/pda/mps/rest/RawFoilController.java | 8 ++ .../wms/pda/mps/service/RawFoilService.java | 2 + .../mps/service/impl/RawFoilServiceImpl.java | 22 ++++ 11 files changed, 195 insertions(+), 20 deletions(-) diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/pda/service/impl/VehicleTwoServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/pda/service/impl/VehicleTwoServiceImpl.java index 0e45fcc0d..a909395bf 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/pda/service/impl/VehicleTwoServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/pda/service/impl/VehicleTwoServiceImpl.java @@ -32,6 +32,7 @@ import org.nl.common.utils.SecurityUtils; import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.wql.core.bean.WQLObject; import org.nl.modules.wql.util.SpringContextHolder; +import org.nl.system.service.param.ISysParamService; import org.nl.system.service.param.dao.Param; import org.nl.system.service.param.impl.SysParamServiceImpl; import org.nl.wms.basedata.st.service.StructattrService; @@ -97,6 +98,9 @@ public class VehicleTwoServiceImpl implements VehicleTwoService { @Autowired private StructattrService structattrService; + @Autowired + private ISysParamService iSysParamService; + @Override @Transactional(rollbackFor = Exception.class) public JSONObject vehicleIn(JSONObject whereJson) { @@ -293,6 +297,19 @@ public class VehicleTwoServiceImpl implements VehicleTwoService { .eq(BstIvtBoxinfo::getBox_no, boxNo) ); if (boxDao != null) { + //校验长宽高是否符合 + String box_limit_width = iSysParamService.findByCode("box_limit_width").getValue(); + String box_limit_length = iSysParamService.findByCode("box_limit_length").getValue(); + String box_limit_height = iSysParamService.findByCode("box_limit_height").getValue(); + if (Integer.parseInt(box_limit_width) < Integer.parseInt(boxDao.getBox_width())) { + throw new BadRequestException("当前木箱宽度大于【"+box_limit_width+"】,不允许入库!"); + } + if (Integer.parseInt(box_limit_length) < Integer.parseInt(boxDao.getBox_length())) { + throw new BadRequestException("当前木箱长度大于【"+box_limit_width+"】,不允许入库!"); + } + if (Integer.parseInt(box_limit_height) < Integer.parseInt(boxDao.getBox_high())) { + throw new BadRequestException("当前木箱高度大于【"+box_limit_width+"】,不允许入库!"); + } whereJson.put("vehicleType", boxDao.getVehicle_type()); boxDao.setIs_packing("1"); iBstIvtBoxinfoService.updateById(boxDao); @@ -309,6 +326,19 @@ public class VehicleTwoServiceImpl implements VehicleTwoService { new QueryWrapper().lambda() .eq(BstIvtBoxinfo::getBox_no, boxNo) ); + //校验长宽高是否符合 + String box_limit_width = iSysParamService.findByCode("box_limit_width").getValue(); + String box_limit_length = iSysParamService.findByCode("box_limit_length").getValue(); + String box_limit_height = iSysParamService.findByCode("box_limit_height").getValue(); + if (Integer.parseInt(box_limit_width) < Integer.parseInt(boxDao1.getBox_width())) { + throw new BadRequestException("当前木箱宽度大于【"+box_limit_width+"】,不允许入库!"); + } + if (Integer.parseInt(box_limit_length) < Integer.parseInt(boxDao1.getBox_length())) { + throw new BadRequestException("当前木箱长度大于【"+box_limit_width+"】,不允许入库!"); + } + if (Integer.parseInt(box_limit_height) < Integer.parseInt(boxDao1.getBox_high())) { + throw new BadRequestException("当前木箱高度大于【"+box_limit_width+"】,不允许入库!"); + } boxDao1.setIs_packing("1"); iBstIvtBoxinfoService.updateById(boxDao1); whereJson.put("vehicleType", boxDao1.getVehicle_type()); diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoIssueOutEmptyTask.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoIssueOutEmptyTask.java index bb4093d2a..0af781507 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoIssueOutEmptyTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoIssueOutEmptyTask.java @@ -112,7 +112,7 @@ public class AutoIssueOutEmptyTask { sortedArr.addAll(taskList); for (int i = 0; i < sortedArr.size(); i++) { - if (num >= 2) { + if (num >= empty_num) { break; } ArrayList resultList = new ArrayList<>(); diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/util/impl/InBoxManageServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/util/impl/InBoxManageServiceImpl.java index 4eeb4e43a..ade605d37 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/util/impl/InBoxManageServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/util/impl/InBoxManageServiceImpl.java @@ -127,10 +127,10 @@ public class InBoxManageServiceImpl implements InBoxManageService { .eq("is_delete", "0") .orderByDesc("task_id") .last("limit 1")); - String vehicleCode2 = one.getVehicle_code2(); - if (one!=null){ - if (whereJson.getString("vehicle_code").equals(vehicleCode2)){ - throw new BadRequestException("当前托盘"+whereJson.getString("vehicle_code")+"已经存在木箱入库任务"+one.getTask_code()); + if (one != null) { + String vehicleCode2 = one.getVehicle_code2(); + if (whereJson.getString("vehicle_code").equals(vehicleCode2)) { + throw new BadRequestException("当前托盘" + whereJson.getString("vehicle_code") + "已经存在木箱入库任务" + one.getTask_code()); } } @@ -138,14 +138,14 @@ public class InBoxManageServiceImpl implements InBoxManageService { JSONObject vehicle_ext = WQLObject.getWQLObject("md_pb_storagevehicleext").query("storagevehicle_code = '" + whereJson.getString("vehicle_code") + "'").uniqueResult(0); if (ObjectUtil.isEmpty(vehicle_ext)) { throw new BadRequestException("未查询到托盘的扩展信息"); - }else { + } else { //判断托盘重量是否为空或小于等于0 String qty = vehicle_ext.getString("qty"); - if (StrUtil.isEmpty(qty) || Double.parseDouble(qty) <= 0){ - throw new BadRequestException("托盘【"+whereJson.getString("vehicle_code")+"】在系统的重量有误,请在载具维护页面中维护托盘实际重量!"); + if (StrUtil.isEmpty(qty) || Double.parseDouble(qty) <= 0) { + throw new BadRequestException("托盘【" + whereJson.getString("vehicle_code") + "】在系统的重量有误,请在载具维护页面中维护托盘实际重量!"); } String pcsn = vehicle_ext.getString("pcsn"); - if (ObjectUtil.isNotEmpty(pcsn)){ + if (ObjectUtil.isNotEmpty(pcsn)) { //更新子卷入库备注信息 JSONObject jsonTaskParam = new JSONObject(); //创建异常任务去异常入库口 @@ -154,7 +154,7 @@ public class InBoxManageServiceImpl implements InBoxManageService { //异常位 jsonTaskParam.put("point_code2", "RK1003"); jsonTaskParam.put("vehicle_code", boxNo); - jsonTaskParam.put("remark", "当前托盘【"+whereJson.getString("vehicle_code")+"】已经绑定木箱【"+pcsn+"】,无法重复绑定!"); + jsonTaskParam.put("remark", "当前托盘【" + whereJson.getString("vehicle_code") + "】已经绑定木箱【" + pcsn + "】,无法重复绑定!"); jsonTaskParam.put("vehicle_code2", whereJson.getString("vehicle_code")); JSONObject request_param = new JSONObject(); if (whereJson.getString("vehicle_code").startsWith("A")) { @@ -174,6 +174,38 @@ public class InBoxManageServiceImpl implements InBoxManageService { } } + //查询木箱重量 + BstIvtBoxinfo boxinfo = iBstIvtBoxinfoService.getOne( + new QueryWrapper().lambda() + .eq(BstIvtBoxinfo::getBox_no, boxNo)); + + if (ObjectUtil.isEmpty(boxinfo.getBox_weight()) || Double.parseDouble(boxinfo.getBox_weight()) == 0) { + //更新子卷入库备注信息 + JSONObject jsonTaskParam = new JSONObject(); + //创建异常任务去异常入库口 + //入库口 + jsonTaskParam.put("point_code1", whereJson.getString("device_code")); + //异常位 + jsonTaskParam.put("point_code2", "RK1003"); + jsonTaskParam.put("vehicle_code", boxNo); + jsonTaskParam.put("remark", "当前木箱重量为0,不能进行入库!"); + jsonTaskParam.put("vehicle_code2", whereJson.getString("vehicle_code")); + JSONObject request_param = new JSONObject(); + if (whereJson.getString("vehicle_code").startsWith("A")) { + request_param.put("containerType", "2"); + } else if (whereJson.getString("vehicle_code").startsWith("B")) { + request_param.put("containerType", "1"); + } else { + throw new BadRequestException("托盘号有误,无法找到对应的托盘类型!"); + } + + jsonTaskParam.put("request_param", request_param); + TwoExceptionInTask bean = SpringContextHolder.getBean(TwoExceptionInTask.class); + bean.createTask(jsonTaskParam); + bean.immediateNotifyAcs(null); + return; + } + //查询仓库是否存在相同木箱 JSONArray stIvtStructattr = WQLObject.getWQLObject("st_ivt_structattr").query("storagevehicle_code = '" + boxNo + "'").getResultJSONArray(0); if (stIvtStructattr != null && stIvtStructattr.size() > 0) { @@ -228,7 +260,7 @@ public class InBoxManageServiceImpl implements InBoxManageService { JSONObject param = new JSONObject(); param.put("containerType", boxDao.getVehicle_type()); jsonTaskParam.put("request_param", param.toString()); - TwoInBoxTask taskBean = new TwoInBoxTask(); + TwoInBoxTask taskBean = SpringContextHolder.getBean(TwoInBoxTask.class); taskBean.createTask(jsonTaskParam); taskBean.immediateNotifyAcs(null); // 锁定终点 @@ -294,9 +326,10 @@ public class InBoxManageServiceImpl implements InBoxManageService { BstIvtBoxinfo boxinfo = iBstIvtBoxinfoService.getOne( new QueryWrapper().lambda() .eq(BstIvtBoxinfo::getBox_no, boxNo)); - if (ObjectUtil.isEmpty(boxinfo.getBox_weight()) || Double.parseDouble(boxinfo.getBox_weight()) == 0) { + //2026.3.27木箱重量改为称重模块获取,在空木箱入库口进行校验 + /*if (ObjectUtil.isEmpty(boxinfo.getBox_weight()) || Double.parseDouble(boxinfo.getBox_weight()) == 0) { throw new BadRequestException("请先维护木箱重量后进行入库!"); - } + }*/ if (StrUtil.isEmpty(boxType)) { boxType = boxinfo.getMaterial_code(); } else { @@ -315,6 +348,21 @@ public class InBoxManageServiceImpl implements InBoxManageService { throw new BadRequestException("木箱不存在!"); } + //校验长宽高是否符合 + String box_limit_width = iSysParamService.findByCode("box_limit_width").getValue(); + String box_limit_length = iSysParamService.findByCode("box_limit_length").getValue(); + String box_limit_height = iSysParamService.findByCode("box_limit_height").getValue(); + if (Integer.parseInt(box_limit_width) < Integer.parseInt(boxDao.getBox_width())) { + throw new BadRequestException("当前木箱宽度大于【" + box_limit_width + "】,不允许入库!"); + } + if (Integer.parseInt(box_limit_length) < Integer.parseInt(boxDao.getBox_length())) { + throw new BadRequestException("当前木箱长度大于【" + box_limit_width + "】,不允许入库!"); + } + if (Integer.parseInt(box_limit_height) < Integer.parseInt(boxDao.getBox_high())) { + throw new BadRequestException("当前木箱高度大于【" + box_limit_width + "】,不允许入库!"); + } + + //查询当前入库拆叠盘位的托盘类型是否一致如果一致 String vehicle_type = boxDao.getVehicle_type(); @@ -426,7 +474,7 @@ public class InBoxManageServiceImpl implements InBoxManageService { param.put("height", boxDao.getBox_high()); param.put("containerType", boxDao.getVehicle_type()); - param.put("barcode", whereJson.getString("box_no") + "-9" ); + param.put("barcode", whereJson.getString("box_no") + "-9"); //根据木箱高度,判断入库仓位的高度 String height = ""; String heightLevel1 = iSysParamService.findByCode("height_level_1").getValue(); @@ -483,8 +531,8 @@ public class InBoxManageServiceImpl implements InBoxManageService { .ge(SchBaseTask::getCreate_time, queryDate) .le(SchBaseTask::getCreate_time, DateUtil.now()) ); - if (hasCount>0) { - throw new BadRequestException("当前木箱【"+whereJson.getString("box_no")+"】在1个小时之内生成过行架任务!"); + if (hasCount > 0) { + throw new BadRequestException("当前木箱【" + whereJson.getString("box_no") + "】在1个小时之内生成过行架任务!"); } // 根据木箱号查询是否有托盘绑定关系,如果有则解绑 @@ -533,6 +581,21 @@ public class InBoxManageServiceImpl implements InBoxManageService { if (boxDao == null) { throw new BadRequestException("木箱不存在!"); } + + //校验长宽高是否符合 + String box_limit_width = iSysParamService.findByCode("box_limit_width").getValue(); + String box_limit_length = iSysParamService.findByCode("box_limit_length").getValue(); + String box_limit_height = iSysParamService.findByCode("box_limit_height").getValue(); + if (Integer.parseInt(box_limit_width) < Integer.parseInt(boxDao.getBox_width())) { + throw new BadRequestException("当前木箱宽度大于【" + box_limit_width + "】,不允许入库!"); + } + if (Integer.parseInt(box_limit_length) < Integer.parseInt(boxDao.getBox_length())) { + throw new BadRequestException("当前木箱长度大于【" + box_limit_width + "】,不允许入库!"); + } + if (Integer.parseInt(box_limit_height) < Integer.parseInt(boxDao.getBox_high())) { + throw new BadRequestException("当前木箱高度大于【" + box_limit_width + "】,不允许入库!"); + } + boxDao.setIs_packing("1"); iBstIvtBoxinfoService.updateById(boxDao); @@ -796,7 +859,7 @@ public class InBoxManageServiceImpl implements InBoxManageService { // 如果是移库空并且仓位为空则报错 if (ObjectUtil.isNotEmpty(block_num) && ObjectUtil.isEmpty(jsonAttr)) { - throw new BadRequestException("转库任务巷道"+block_num+"仓位不足!"); + throw new BadRequestException("转库任务巷道" + block_num + "仓位不足!"); } // 为空则新找巷道 @@ -837,7 +900,7 @@ public class InBoxManageServiceImpl implements InBoxManageService { notInBlockList.clear(); } else { - throw new BadRequestException("存在正在分配的空木箱任务,请稍后再试!"); + throw new BadRequestException("存在正在分配的空木箱任务,请稍后再试!"); } } finally { if (lock.isLocked() && lock.isHeldByCurrentThread()) { @@ -849,6 +912,7 @@ public class InBoxManageServiceImpl implements InBoxManageService { /** * 同巷道移库查看库位 + * * @param jsonParam * @return */ @@ -860,7 +924,7 @@ public class InBoxManageServiceImpl implements InBoxManageService { * 判断条件:库区、仓库、是否启用、是否删除、未锁定、没有载具 */ String block_num = jsonParam.getString("move_block_num"); - if (StringUtils.isEmpty(block_num)){ + if (StringUtils.isEmpty(block_num)) { throw new BadRequestException("同巷道分配库位巷道参数不能为空"); } JSONArray structArray = attrTab.query("IFNULL(storagevehicle_code,'') = '' " + @@ -884,7 +948,7 @@ public class InBoxManageServiceImpl implements InBoxManageService { // 为空则新找巷道 if (ObjectUtil.isEmpty(jsonAttr)) { - throw new BadRequestException("当前巷道"+block_num+"没有可用库位"); + throw new BadRequestException("当前巷道" + block_num + "没有可用库位"); } notInRowList.clear(); 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 fdbcea9b4..580567525 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 @@ -244,4 +244,11 @@ public class AcsToWmsController { public ResponseEntity forceMove(@RequestBody JSONObject param) { return new ResponseEntity<>(acsToWmsService.forceMove(param), HttpStatus.OK); } + + @PostMapping("/feedBackBoxWeight") + @Log(value = "二期木箱桁架反馈木箱重量", isInterfaceLog = true, interfaceLogType = InterfaceLogType.ACS_TO_LMS) + @SaIgnore + public ResponseEntity feedBackBoxWeight(@RequestBody JSONObject param) { + return new ResponseEntity<>(acsToWmsService.feedBackBoxWeight(param), HttpStatus.OK); + } } 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 5756ceda4..22f148072 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 @@ -246,4 +246,11 @@ public interface AcsToWmsService { * @return */ JSONObject acsRequestPoint(JSONObject param); + + /** + * 二期木箱桁架反馈木箱重量 + * @param param + * @return + */ + JSONObject feedBackBoxWeight(JSONObject param); } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/WmsToAcsService.java b/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/WmsToAcsService.java index b5bc59da6..9f7b6a020 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/WmsToAcsService.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/WmsToAcsService.java @@ -76,6 +76,10 @@ public interface WmsToAcsService { */ JSONObject updateTask(JSONArray arr); + JSONObject changePointMove(JSONObject jo); + + + /** * 更新任务状态 * 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 648e0b99a..1fc5d929d 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 @@ -3,6 +3,7 @@ package org.nl.wms.ext.acs.service.impl; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.date.DateUtil; import org.nl.b_lms.sch.point.dao.mapper.BstIvtPackageinfoivtMapper; +import org.nl.b_lms.storage_manage.database.service.dao.mapper.BstIvtBoxinfoMapper; import org.nl.common.utils.IdUtil; import cn.hutool.core.util.NumberUtil; import cn.hutool.core.util.ObjectUtil; @@ -208,6 +209,9 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { @Autowired private RedisUtils redisUtils; + @Resource + private BstIvtBoxinfoMapper bstIvtBoxinfoMapper; + /** * task_id:任务标识 * task_code:任务编码 @@ -3298,4 +3302,25 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { } return stepTipLogs; } + + @Override + public JSONObject feedBackBoxWeight(JSONObject param) { + log.info("feedBackBoxWeight输入参数为--------------------------:" + param.toString()); + String barcode = param.getString("barcode"); + String task_code = param.getString("task_code"); + String weight = param.getString("weight"); + + BstIvtBoxinfo boxinfo = bstIvtBoxinfoMapper.selectOne(new LambdaQueryWrapper().eq(BstIvtBoxinfo::getBox_no, barcode)); + if (boxinfo == null) { + throw new BadRequestException("未查询到该木箱对应的木箱信息"); + } + boxinfo.setBox_weight(weight); + bstIvtBoxinfoMapper.updateById(boxinfo); + + JSONObject result = new JSONObject(); + result.put("status", HttpStatus.OK.value()); + result.put("message", "反馈成功!"); + log.info("feedBackBoxWeight输出参数为--------------------------:" + result.toString()); + return result; + } } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/WmsToAcsServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/WmsToAcsServiceImpl.java index 68184db57..11cc335bd 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/WmsToAcsServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/WmsToAcsServiceImpl.java @@ -76,6 +76,12 @@ public class WmsToAcsServiceImpl implements WmsToAcsService { return AcsUtil.notifyAcs(api, whereJson); } + @Override + public JSONObject changePointMove(JSONObject jo) { + String api = "/api/wms/setDeviceMove"; + return AcsUtil.notifyAcsObject(api, jo); + } + @Override public JSONObject action(JSONArray whereJson) { String api = "api/wms/action"; diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/rest/RawFoilController.java b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/rest/RawFoilController.java index 24674840d..6bd1bbb55 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/rest/RawFoilController.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/rest/RawFoilController.java @@ -100,4 +100,12 @@ public class RawFoilController { rawFoilService.finish(whereJson); return new ResponseEntity<>(HttpStatus.OK); } + + @PostMapping("/changePointMove") + @Log("ACS库存变更") + + public ResponseEntity changePointMove(@RequestBody JSONObject whereJson) { + rawFoilService.changePointMove(whereJson); + return new ResponseEntity<>(HttpStatus.OK); + } } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/RawFoilService.java b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/RawFoilService.java index d6076106e..aea17b0fa 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/RawFoilService.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/RawFoilService.java @@ -84,4 +84,6 @@ public interface RawFoilService { * @return JSONObject */ JSONObject finish(JSONObject whereJson); + + JSONObject changePointMove(JSONObject whereJson); } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/RawFoilServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/RawFoilServiceImpl.java index 23afcf24d..6c99ce1cf 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/RawFoilServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/RawFoilServiceImpl.java @@ -665,4 +665,26 @@ public class RawFoilServiceImpl implements RawFoilService { jo.put("message", "操作成功!"); return jo; } + + @Override + public JSONObject changePointMove(JSONObject whereJson) { + String point_code = whereJson.getString("point_code"); + try { + String product_area = point_code.substring(0,2); + whereJson.put("product_area",product_area); + }catch (Exception e){ + throw new BadRequestException("输入的点位有误请核对!"); + } + + //调用ACS接口 + WmsToAcsServiceImpl wmsToAcsService = SpringContextHolder.getBean(WmsToAcsServiceImpl.class); + JSONObject result = wmsToAcsService.changePointMove(whereJson); + + if (!StrUtil.equals(result.getString("status"), "200")) { + throw new BadRequestException("操作失败:" + result.getString("message ")); + } + JSONObject jo = new JSONObject(); + jo.put("message", "操作成功!"); + return jo; + } }