From f4214b3e0764ab116fc6975dbbc5bb4fc80f9fcd Mon Sep 17 00:00:00 2001 From: zhangchao <zc857179121@qq.com> Date: 星期四, 21 十一月 2024 16:08:15 +0800 Subject: [PATCH] rcs超时 --- src/main/java/com/zy/asrs/entity/param/OrderProdSyncParam.java | 2 src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java | 15 ++-- src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java | 2 src/main/resources/application-loc.yml | 3 src/main/java/com/zy/asrs/controller/OpenController.java | 7 ++ src/main/java/com/zy/asrs/task/handler/AutoMoveTwoAndThreeGoOneHandler.java | 2 src/main/resources/application-dev.yml | 1 src/main/resources/application-prod.yml | 1 src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java | 6 ++ src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java | 90 ++++++++++++++++------------- 10 files changed, 79 insertions(+), 50 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java index 04cb1dc..cc71e35 100644 --- a/src/main/java/com/zy/asrs/controller/OpenController.java +++ b/src/main/java/com/zy/asrs/controller/OpenController.java @@ -156,6 +156,13 @@ case "鐢熶骇鏉愭枡鍑哄簱琛ユ枡": mappingPakOutOrderParam(param, false, "閾跺骇鐢熶骇鏉愭枡鍑哄簱琛ユ枡"); break; + + case "鍗婃垚鍝佸叆搴撳崟": + mappingPakOutOrderParam(param, true, "鍗婃垚鍝佸叆搴撳崟"); + break; + case "鎴愬搧鍏ュ簱鍗�": + mappingPakOutOrderParam(param, true, "鎴愬搧鍏ュ簱鍗�"); + break; default: log.info("鏈煡鐨勫崟鎹被鍨�:{}", param); mappingPakOutOrderParam(param, param.getPakin() == 1 ? true : false, param.get鎿嶄綔鍗曟嵁()); diff --git a/src/main/java/com/zy/asrs/entity/param/OrderProdSyncParam.java b/src/main/java/com/zy/asrs/entity/param/OrderProdSyncParam.java index b84f881..d1786a5 100644 --- a/src/main/java/com/zy/asrs/entity/param/OrderProdSyncParam.java +++ b/src/main/java/com/zy/asrs/entity/param/OrderProdSyncParam.java @@ -129,7 +129,7 @@ //鐗╂枡缂栫爜 //private String cInvCode; //鏁伴噺 - // private Double iQuantity; + //private Double iQuantity; //瑙勬牸锛堣嚜鐢遍」1锛� // private String bFree1; //鍗曟嵁琛屽彿 diff --git a/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java b/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java index 63faab5..d8d63ba 100644 --- a/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java +++ b/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java @@ -23,6 +23,7 @@ import java.io.IOException; import java.util.*; +import java.util.concurrent.TimeUnit; @Service @Slf4j @@ -65,17 +66,17 @@ public void updateWrkStsByWrkNo(int wrkNo, long wrkSts) { AgvWrkMast agvWrkMast = this.selectById(wrkNo); //鍒ゆ柇瑕佷慨鏀圭殑宸ヤ綔妗g姸鎬佹槸鍚﹀悎鐞嗭紝濡傛灉涓嶅悎鐞嗗垯鎶涘嚭寮傚父 - checkWrkSts(agvWrkMast,wrkSts); + checkWrkSts(agvWrkMast, wrkSts); agvWrkMast.setWrkSts(wrkSts); agvWrkMast.setModiTime(new Date()); this.updateById(agvWrkMast); } - public void updateWrkStsByWrkNo(int wrkNo, long wrkSts,String manuType,long userId) { + public void updateWrkStsByWrkNo(int wrkNo, long wrkSts, String manuType, long userId) { Date now = new Date(); AgvWrkMast agvWrkMast = this.selectById(wrkNo); //鍒ゆ柇瑕佷慨鏀圭殑宸ヤ綔妗g姸鎬佹槸鍚﹀悎鐞嗭紝濡傛灉涓嶅悎鐞嗗垯鎶涘嚭寮傚父 - checkWrkSts(agvWrkMast,wrkSts); + checkWrkSts(agvWrkMast, wrkSts); agvWrkMast.setWrkSts(wrkSts); agvWrkMast.setManuType(manuType); agvWrkMast.setModiTime(now); @@ -84,8 +85,7 @@ } // TODO 鍒ゆ柇瑙勫垯 - private boolean checkWrkSts(AgvWrkMast agvWrkMast,long wrkSts){ - + private boolean checkWrkSts(AgvWrkMast agvWrkMast, long wrkSts) { return true; @@ -96,9 +96,9 @@ AgvTaskCreateParam agvTaskCreateParam = new AgvTaskCreateParam(); //agvTaskCreateParam.setTaskType(taskType); - getRequestParam(agvTaskCreateParam,agvWrkMast); + getRequestParam(agvTaskCreateParam, agvWrkMast); - return doHttpRequest(agvTaskCreateParam,"鎼繍浠诲姟涓嬪彂",url, taskCreatePath,null,"127.0.0.1"); + return doHttpRequest(agvTaskCreateParam, "鎼繍浠诲姟涓嬪彂", url, taskCreatePath, null, "127.0.0.1"); //return containerMoveParam; } @@ -106,7 +106,7 @@ public int startAllcationIn(AgvWrkMast agvWrkMast) throws IOException { AgvBasDevp basDevp = agvBasDevpService.selectByDevNo(agvWrkMast.getSourceLocNo()); //妫�绱㈠簱浣嶏紝閫夋嫨鍚堥�傜殑搴撲綅 - AgvLocMast locMast = agvCommonService.getLocNo(basDevp.getLocType1(),basDevp.getFloor(),false,true); + AgvLocMast locMast = agvCommonService.getLocNo(basDevp.getLocType1(), basDevp.getFloor(), false, true); agvWrkMast.setLocNo(locMast.getLocNo()); agvWrkMast.setWrkSts(201L); agvWrkMast.setLogErrMemo("startAllcationIn"); @@ -122,30 +122,30 @@ //璐ф灦鍏ュ満 public int containerMoveIn(List<AgvWrkMast> agvWrkMastList) throws IOException { //璋冪敤璐ф灦鍏ュ満鏃舵墍闇�瑕佸弬鏁� - Map<String,List<Map<String,String>>> containerMoveParam = new HashMap<>(); - List<Map<String,String>> positionCodeMapList = new ArrayList<>(); - containerMoveParam.put("containerMoveIns",positionCodeMapList); + Map<String, List<Map<String, String>>> containerMoveParam = new HashMap<>(); + List<Map<String, String>> positionCodeMapList = new ArrayList<>(); + containerMoveParam.put("containerMoveIns", positionCodeMapList); - getContainerMoveParam(agvWrkMastList,positionCodeMapList); + getContainerMoveParam(agvWrkMastList, positionCodeMapList); - if(Cools.isEmpty(positionCodeMapList)){ + if (Cools.isEmpty(positionCodeMapList)) { return 0; } - return doHttpRequest(containerMoveParam,"璐ф灦鍏ュ満浠诲姟涓嬪彂",url, containerMoveInPath,null,"127.0.0.1"); + return doHttpRequest(containerMoveParam, "璐ф灦鍏ュ満浠诲姟涓嬪彂", url, containerMoveInPath, null, "127.0.0.1"); } //璐ф灦绂诲満 - public int containerMoveOut(List<AgvWrkMast> agvWrkMastList){ - Map<String,List<Map<String,String>>> containerMoveParam = new HashMap<>(); - List<Map<String,String>> positionCodeMapList = new ArrayList<>(); - containerMoveParam.put("containerMoveOuts",positionCodeMapList); - for(AgvWrkMast agvWrkMast : agvWrkMastList){ - Map<String,String> positionCodeMap = new HashMap<>(); - positionCodeMap.put("positionCode",agvWrkMast.getLocNo()); + public int containerMoveOut(List<AgvWrkMast> agvWrkMastList) { + Map<String, List<Map<String, String>>> containerMoveParam = new HashMap<>(); + List<Map<String, String>> positionCodeMapList = new ArrayList<>(); + containerMoveParam.put("containerMoveOuts", positionCodeMapList); + for (AgvWrkMast agvWrkMast : agvWrkMastList) { + Map<String, String> positionCodeMap = new HashMap<>(); + positionCodeMap.put("positionCode", agvWrkMast.getLocNo()); positionCodeMapList.add(positionCodeMap); } - return doHttpRequest(containerMoveParam,"璐ф灦绂诲満浠诲姟涓嬪彂",url, containerMoveOutPath,null,"127.0.0.1"); + return doHttpRequest(containerMoveParam, "璐ф灦绂诲満浠诲姟涓嬪彂", url, containerMoveOutPath, null, "127.0.0.1"); } public boolean insertByIncrease(AgvWrkMast agvWrkMast) { @@ -162,25 +162,25 @@ //璐ф灦鍒拌揪閫氱煡 public int containerArrived(AgvWrkMast agvWrkMast) { - Map<String,String> containerArrivedParam = new HashMap<>(); - containerArrivedParam.put("slotCode",agvWrkMast.getSourceLocNo()); - containerArrivedParam.put("containerCode",agvWrkMast.getBarcode()); + Map<String, String> containerArrivedParam = new HashMap<>(); + containerArrivedParam.put("slotCode", agvWrkMast.getSourceLocNo()); + containerArrivedParam.put("containerCode", agvWrkMast.getBarcode()); - return doHttpRequest(containerArrivedParam,"璐ф灦杈惧埌閫氱煡",url, containerArrivedPath,null,"127.0.0.1"); + return doHttpRequest(containerArrivedParam, "璐ф灦杈惧埌閫氱煡", url, containerArrivedPath, null, "127.0.0.1"); } @Override public List<AgvWrkMast> selectReadyAgvWrkMast() { List<String> stationCodes = agvBasDevpService.selectAllStationCode(); Wrapper<AgvWrkMast> wrapper = new EntityWrapper<AgvWrkMast>().eq("wrk_sts", 21L).like(false, "loc_no", "@"); - wrapper.in("loc_no",stationCodes); + wrapper.in("loc_no", stationCodes); return this.selectList(wrapper); //return this.baseMapper.selectReadyAgvWrkMast(); } @Override public AgvWrkMast selectByContainerCode(String containerCode) { - return this.selectOne(new EntityWrapper<AgvWrkMast>().eq("barcode",containerCode)); + return this.selectOne(new EntityWrapper<AgvWrkMast>().eq("barcode", containerCode)); } @Override @@ -189,25 +189,25 @@ AgvTaskCreateParam agvTaskCreateParam = new AgvTaskCreateParam(); agvTaskCreateParam.setTaskCode(wrkNo + ""); - return doHttpRequest(agvTaskCreateParam,"鍙栨秷浠诲姟涓嬪彂",url, taskCancelPath,null,"127.0.0.1"); + return doHttpRequest(agvTaskCreateParam, "鍙栨秷浠诲姟涓嬪彂", url, taskCancelPath, null, "127.0.0.1"); } - private void getContainerMoveParam(List<AgvWrkMast> agvWrkMastList,List<Map<String,String>> positionCodeMapList){ + private void getContainerMoveParam(List<AgvWrkMast> agvWrkMastList, List<Map<String, String>> positionCodeMapList) { //寰�璐ф灦鍏ュ満鍙傛暟涓斁鍏ユ簮绔欑偣浣嶇疆 - for(AgvWrkMast agvWrkMast : agvWrkMastList){ + for (AgvWrkMast agvWrkMast : agvWrkMastList) { //鍒ゆ柇鏄惁涓鸿緭閫佺嚎鍏ュ簱锛屾槸鍒欎笉闇�瑕佽揣鏋惰繘鍦鸿姹� - if("Y".equals(agvWrkMast.getMk())){ + if ("Y".equals(agvWrkMast.getMk())) { continue; } - Map<String,String> positionCodeMap = new HashMap<>(); - positionCodeMap.put("positionCode",agvWrkMast.getSourceLocNo()); + Map<String, String> positionCodeMap = new HashMap<>(); + positionCodeMap.put("positionCode", agvWrkMast.getSourceLocNo()); positionCodeMapList.add(positionCodeMap); } } - private void getRequestParam(AgvTaskCreateParam agvTaskCreateParam,AgvWrkMast agvWrkMast){ + private void getRequestParam(AgvTaskCreateParam agvTaskCreateParam, AgvWrkMast agvWrkMast) { List<AgvTaskParam> agvTaskParamList = Arrays.asList( //璧峰浣� @@ -220,7 +220,7 @@ // //鐩爣浣� // agvTaskParamList.add(new AgvTaskParam(agvWrkMast.getLocNo())); - if(agvWrkMast.getIoType() == 53 || agvWrkMast.getIoType() == 57 ){ + if (agvWrkMast.getIoType() == 53 || agvWrkMast.getIoType() == 57) { agvWrkMast.setWrkNo(-agvWrkMast.getWrkNo()); } agvTaskCreateParam.setTaskCode(agvWrkMast.getWrkNo().toString()); @@ -270,32 +270,40 @@ } - private int doHttpRequest(Object requestParam, String namespace, String url, String path, String appkey, String ip){ + private int doHttpRequest(Object requestParam, String namespace, String url, String path, String appkey, String ip) { String response = ""; boolean success = false; try { response = new HttpHandler.Builder() .setUri(url) .setPath(path) + .setTimeout(30, TimeUnit.SECONDS) .setJson(JSONObject.toJSONString(requestParam)) .build() .doPost(); JSONObject jsonObject = JSON.parseObject(response); int code = Integer.parseInt(jsonObject.get("code").toString()); - if(code != 0){ - //TODO 寮犺秴 + if (code != 0) { + if (code == 6) { + log.info("AGV浠诲姟鍗曞彿宸蹭笂鎶�:{}", response); + String message = jsonObject.getString("message"); + if (!Cools.isEmpty(message) && message.contains("宸插瓨鍦ㄤ换鍔″崟澶翠负")) { + success = true; + return 0; + } + } throw new CoolException("璋冪敤AGV鍝嶅簲閿欒"); //return code; } success = true; return code; - }catch (Exception e){ + } catch (Exception e) { log.error(e.getMessage()); //TODO 寮犺秴 throw new CoolException("璋冪敤AGV鍝嶅簲閿欒"); //return 1; - }finally { + } finally { apiLogService.save( namespace, url + path, diff --git a/src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java index c8be4e2..2f2b286 100644 --- a/src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java @@ -30,6 +30,7 @@ import java.util.ArrayList; import java.util.Date; import java.util.List; +import java.util.concurrent.TimeUnit; @Slf4j @Service("orderService") @@ -290,6 +291,7 @@ response = new HttpHandler.Builder() .setUri(url) .setPath(path) + .setTimeout(30, TimeUnit.SECONDS) .setJson(JSONObject.toJSONString(requestParam)) .build() .doPost(); diff --git a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java index 84951b7..42f7ef1 100644 --- a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java +++ b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java @@ -26,6 +26,7 @@ import java.io.IOException; import java.util.*; +import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; @Slf4j @@ -704,12 +705,12 @@ reportMesPakinOrder(agvWrkMast, agvWrkDetls); } } -// if (OUT_TYPE_List.contains(agvWrkMast.getIoType())) { -// reportMesPakoutOrder(agvWrkMast, agvWrkDetls); -// } -// if (MOVE_TYPE_List.contains(agvWrkMast.getIoType())) { -// generateMesParam(agvWrkMast, agvWrkDetls); -// } + if (OUT_TYPE_List.contains(agvWrkMast.getIoType())) { + reportMesPakoutOrder(agvWrkMast, agvWrkDetls); + } + if (MOVE_TYPE_List.contains(agvWrkMast.getIoType())) { + generateMesParam(agvWrkMast, agvWrkDetls); + } } private void reportMesPakinOrder(AgvWrkMast agvWrkMast, List<AgvWrkDetl> agvWrkDetls) { @@ -868,7 +869,7 @@ boolean success = false; try { - response = new HttpHandler.Builder().setUri(url).setPath(path).setHeaders(headParam).setJson(JSONObject.toJSONString(requestParam)).setHttps(true).build().doPost(); + response = new HttpHandler.Builder().setUri(url).setPath(path).setTimeout(30, TimeUnit.SECONDS).setHeaders(headParam).setJson(JSONObject.toJSONString(requestParam)).setHttps(true).build().doPost(); JSONObject jsonObject = JSON.parseObject(response); if (Cools.isEmpty(jsonObject.get("code")) || Integer.parseInt(jsonObject.get("code").toString()) != 200) { diff --git a/src/main/java/com/zy/asrs/task/handler/AutoMoveTwoAndThreeGoOneHandler.java b/src/main/java/com/zy/asrs/task/handler/AutoMoveTwoAndThreeGoOneHandler.java index bf93cb5..4dff4fc 100644 --- a/src/main/java/com/zy/asrs/task/handler/AutoMoveTwoAndThreeGoOneHandler.java +++ b/src/main/java/com/zy/asrs/task/handler/AutoMoveTwoAndThreeGoOneHandler.java @@ -21,6 +21,7 @@ import java.util.Arrays; import java.util.Date; import java.util.List; +import java.util.concurrent.TimeUnit; @Slf4j @Service @@ -123,6 +124,7 @@ response = new HttpHandler.Builder() .setUri(url) .setPath(path) + .setTimeout(30, TimeUnit.SECONDS) .setJson(JSONObject.toJSONString(requestParam)) .build() .doPost(); diff --git a/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java b/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java index 1e47661..e9992ab 100644 --- a/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java +++ b/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java @@ -49,6 +49,9 @@ @Value("${spring.profiles.active}") private String active; + @Value("${u8.report}") + private Boolean report; + @Value("${u8.url}") private String url; @@ -84,6 +87,9 @@ @Transactional public void timelyStart(Order order) { + if (!report){ + return; + } List<String> docNames = new ArrayList<>(Arrays.asList("閾跺骇閲囪喘鍏ュ簱鍗�", "閾跺骇濮斿鏉愭枡鍑哄簱鍗�", "閾跺骇鐢熶骇鏉愭枡鍑哄簱鍗�")); diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml index d6d0e26..b544fef 100644 --- a/src/main/resources/application-dev.yml +++ b/src/main/resources/application-dev.yml @@ -85,6 +85,7 @@ containerArrivedPath: /conveyor/containerArrived u8: + report: false url: http://192.168.9.3:8877 orderReportPath: /DBMS/U8/CM/add #ERP: diff --git a/src/main/resources/application-loc.yml b/src/main/resources/application-loc.yml index dfe8d08..a2e5a20 100644 --- a/src/main/resources/application-loc.yml +++ b/src/main/resources/application-loc.yml @@ -85,13 +85,14 @@ containerArrivedPath: /conveyor/containerArrived u8: + report: false url: http://192.168.9.3:8877 orderReportPath: /DBMS/U8/CM/add #ERP: # url: http://39.184.149.30:8877 # orderReportPath: /DBMS/U8/CM/add mes: - report: false + report: true url: https://v3-ali.blacklake.cn/api/openapi/domain/web/v1/route orderReportPath: /inventory/open/v2/transfer_order/ordinary/_execute pakinReportPath: /inventory/open/v2/inbound_order/execute/_inbound diff --git a/src/main/resources/application-prod.yml b/src/main/resources/application-prod.yml index bfbed22..084d433 100644 --- a/src/main/resources/application-prod.yml +++ b/src/main/resources/application-prod.yml @@ -85,6 +85,7 @@ containerArrivedPath: /conveyor/containerArrived u8: + report: true url: http://192.168.9.3:8877 orderReportPath: /DBMS/U8/CM/add #ERP: -- Gitblit v1.9.1