From 4cd83996517bedf7ed817ae4cadcd5b8ebc80086 Mon Sep 17 00:00:00 2001 From: zjj <3272660260@qq.com> Date: 星期一, 15 九月 2025 19:50:04 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java | 109 +++++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 95 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java index 3bd3470..6fcaf19 100644 --- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java @@ -141,6 +141,25 @@ } @Override + public R FinishedCall(Map<String, Object> map) { + String orgSite = map.get("orgSite").toString(); + String tarSite = map.get("tarSite").toString(); + if (Cools.isEmpty(orgSite) || Cools.isEmpty(tarSite)) { + return R.error("鏁版嵁涓虹┖"); + } + if (orgSite.charAt(0) != 'd'){ + throw new CoolException("绔欑偣寮傚父锛屽彧鍏佽d寮�澶寸珯鐐�"); + } +// 鍛煎彨agv + boolean success = sendAgvTask2(orgSite, tarSite,"GT6"); + if (!success){ + throw new CoolException("鍛煎彨agv澶辫触"); + } + + return R.ok(); + } + + @Override public R inLocCallAgv(String sta, String inSta) { BasDevp basDevp = basDevpMapper.selectById(inSta); @@ -208,6 +227,7 @@ if (!inSta.equals("1000") && !inSta.equals("1035")){ basDevp.setInQty(basDevp.getInQty() + 1); basDevpMapper.updateById(basDevp); + log.info("鍏ュ簱鍛煎彨锛�"+basDevp.getDevNo()+"+1"); } } else { @@ -287,12 +307,64 @@ return success ? R.ok("瑙g粦鎴愬姛") : R.parse(message); } - public boolean sendAgvTask(String org,String tar){ + public boolean sendAgvTask2(String org,String tar,String type){ ForwardAGVTaskParam forwardAGVTaskParam = new ForwardAGVTaskParam(); forwardAGVTaskParam.setReqCode(UUID.randomUUID().toString().replace("-", "")); forwardAGVTaskParam.setClientCode("IWMS"); - forwardAGVTaskParam.setTaskTyp("GT3"); + forwardAGVTaskParam.setTaskTyp(type); + forwardAGVTaskParam.setCtnrTyp("2"); + forwardAGVTaskParam.setPriority("1"); + List<ForwardAGVTaskParam.PositionCodePaths> positionCodePathsList = new ArrayList<>(); + positionCodePathsList.add(new ForwardAGVTaskParam.PositionCodePaths(org, "05")); + positionCodePathsList.add(new ForwardAGVTaskParam.PositionCodePaths(tar, "04")); + forwardAGVTaskParam.setPositionCodePath(positionCodePathsList); + + String body = JSON.toJSONString(forwardAGVTaskParam); + String response = ""; + String message = ""; + boolean success = false; + try { + response = new HttpHandler.Builder() + .setUri(ApiInterfaceConstant.AGV_IP) + .setPath(ApiInterfaceConstant.AGV_CALL_IN_PATH) + .setJson(body) + .build() + .doPost(); + JSONObject jsonObject = JSON.parseObject(response); + if (jsonObject.getInteger("code").equals(0)) { + success = true; + } else { + + log.error("鍛煎彨agv澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", ApiInterfaceConstant.AGV_IP + ApiInterfaceConstant.AGV_CALL_IN_PATH, body, response); + } + } catch (Exception e) { + log.error("鍏ュ簱鍛煎彨agv寮傚父", e); + } finally { + try { + // 淇濆瓨鎺ュ彛鏃ュ織 + apiLogService.save( + "鍏ュ簱鍛煎彨agv", + ApiInterfaceConstant.AGV_IP + ApiInterfaceConstant.AGV_CALL_IN_PATH, + null, + "127.0.0.1", + body, + response, + success + ); + } catch (Exception e) { + log.error("", e); + } + } + return success; + } + + public boolean sendAgvTask(String org,String tar,String type){ + + ForwardAGVTaskParam forwardAGVTaskParam = new ForwardAGVTaskParam(); + forwardAGVTaskParam.setReqCode(UUID.randomUUID().toString().replace("-", "")); + forwardAGVTaskParam.setClientCode("IWMS"); + forwardAGVTaskParam.setTaskTyp(type); forwardAGVTaskParam.setCtnrTyp("2"); forwardAGVTaskParam.setPriority("1"); List<ForwardAGVTaskParam.PositionCodePaths> positionCodePathsList = new ArrayList<>(); @@ -1369,28 +1441,37 @@ } AgvSite orgAgvSite = agvSiteService.selectOne(new EntityWrapper<AgvSite>().eq("name", orgSite)); - AgvSite tarAgvSite = agvSiteService.selectOne(new EntityWrapper<AgvSite>().eq("name", tarSite)); - if (Cools.isEmpty(orgAgvSite) || Cools.isEmpty(tarAgvSite)) { +// AgvSite tarAgvSite = agvSiteService.selectOne(new EntityWrapper<AgvSite>().eq("name", tarSite)); + if (Cools.isEmpty(orgAgvSite)) { return R.error("绔欑偣鏁版嵁閿欒"); } //鏇存柊tar绔欑偣鐘舵�� - tarAgvSite.setWorkNo(orgAgvSite.getWorkNo()); - tarAgvSite.setStatus(2); - if (!agvSiteService.updateById(tarAgvSite)){ - throw new CoolException("鍙枡绔欐洿鏂板け璐�"); +// tarAgvSite.setWorkNo(orgAgvSite.getWorkNo()); +// tarAgvSite.setStatus(2); +// if (!agvSiteService.updateById(tarAgvSite)){ +// throw new CoolException("鍙枡绔欐洿鏂板け璐�"); +// } + WrkMast wrkMast = wrkMastService.selectById(orgAgvSite.getWorkNo()); + if (!Cools.isEmpty(wrkMast)){ + wrkMast.setWrkSts(5L); + wrkMastService.updateById(wrkMast); } + //鏇存柊org绔欑偣鐘舵�� - orgAgvSite.setStatus(2); + orgAgvSite.setStatus(0); + orgAgvSite.setWorkNo(null); if (!agvSiteService.updateById(orgAgvSite)){ throw new CoolException("婧愮珯鏇存柊澶辫触"); } - //鍛煎彨agv -// boolean success = sendAgvTask(orgSite, tarSite); -// if (!success){ -// throw new CoolException("鍛煎彨agv澶辫触"); -// } + + +// 鍛煎彨agv + boolean success = sendAgvTask(orgSite, tarSite,"GT6"); + if (!success){ + throw new CoolException("鍛煎彨agv澶辫触"); + } return R.ok(); } -- Gitblit v1.9.1