From 35a949829185f9f204cd83c84e8fbc298af3016a Mon Sep 17 00:00:00 2001 From: zjj <3272660260@qq.com> Date: 星期日, 24 十二月 2023 21:56:10 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 128 +++++++++++++++++++++++++++--------------- 1 files changed, 82 insertions(+), 46 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java index 52d3764..176130d 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -210,6 +210,12 @@ // MessageQueue.offer(SlaveType.Led, inSta.getLed(), new Task(3, errorMsg)); // } log.error(barcode + "鎵樼洏璇嗗埆寮傚父锛岃鍏堣繘琛岀粍鎵橈紒"); + // led 寮傚父鏄剧ず + ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, inSta.getLed()); + if (ledThread != null) { + String errorMsg = barcode + "鎵樼洏璇嗗埆寮傚父锛岃鍏堣繘琛岀粍鎵橈紒"; + MessageQueue.offer(SlaveType.Led, inSta.getLed(), new Task(3, errorMsg)); + } } else { log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", wmsUrl + "/rpc/pakin/loc/v1", JSON.toJSONString(param), response); } @@ -841,7 +847,7 @@ log.error("{}浠诲姟鍑哄簱澶辫触锛屾祬搴撲綅鍫靛锛佹祬搴撲綅鍙�:{}", wrkMast.getWrkNo(), shallowLocNo); continue; } else if (shallowLoc.getLocSts().equals("Q") || shallowLoc.getLocSts().equals("S")) { - WrkMast waitWrkMast = wrkMastMapper.selectByLocNo(shallowLocNo); + WrkMast waitWrkMast = wrkMastMapper.selectByLocNo1(shallowLocNo); if (null != waitWrkMast && (waitWrkMast.getWrkSts() == 4 || waitWrkMast.getWrkSts() == 5)) { continue; } @@ -2227,40 +2233,61 @@ // 绔欑偣鏉′欢鍒ゆ柇 if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.isInEnable() - && staProtocol.isEmptyMk() && (staProtocol.getWorkNo() >= 9990 - && staProtocol.getWorkNo() <= 9999)) { - try { - LocTypeDto locTypeDto = new LocTypeDto(staProtocol); + && staProtocol.isEmptyInPalletRequire() && staProtocol.getWorkNo() == 0) { + List<StaDesc> staDescs = staDescService.selectList(new EntityWrapper<StaDesc>().eq("type_no", 10).eq("stn_no", sta.getStaNo())); + for (StaDesc staDesc:staDescs){ - SearchLocParam param = new SearchLocParam(); - param.setIoType(10); - param.setSourceStaNo(sta.getStaNo()); - param.setLocType1(locTypeDto.getLocType1()); - String response = new HttpHandler.Builder() - .setUri(wmsUrl) - .setPath("/rpc/pakin/loc/v1") - .setJson(JSON.toJSONString(param)) - .build() - .doPost(); - JSONObject jsonObject = JSON.parseObject(response); - if (jsonObject.getInteger("code").equals(200)) { - StartupDto dto = jsonObject.getObject("data", StartupDto.class); + BasDevp basDevp = basDevpService.selectOne(new EntityWrapper<BasDevp>().eq("dev_no", staDesc.getCrnStn())); - // 鏇存柊绔欑偣淇℃伅 涓� 涓嬪彂plc鍛戒护 - staProtocol.setWorkNo(dto.getWorkNo().shortValue()); - staProtocol.setStaNo(dto.getStaNo().shortValue()); + if (basDevp.getAutoing().equals("Y") && basDevp.getLoading().equals("N") + && basDevp.getWrkNo() == 0 && basDevp.getCanining().equals("Y")){ +// 鏇存柊绔欑偣淇℃伅 涓� 涓嬪彂plc鍛戒护 + staProtocol.setWorkNo((short) 9997); +// staProtocol.setStaNo(basDevp.getDevNo().shortValue()); + staProtocol.setStaNo((short) 1013); devpThread.setPakMk(staProtocol.getSiteId(), false); boolean result = MessageQueue.offer(SlaveType.Devp, devpThread.getSlave().getId(), new Task(2, staProtocol)); if (!result) { throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触"); } - } else { - log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", wmsUrl + "/rpc/pakin/loc/v1", JSON.toJSONString(param), response); + return; } - } catch (Exception e) { - e.printStackTrace(); - TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + } + + +// try { +// LocTypeDto locTypeDto = new LocTypeDto(staProtocol); +// +// SearchLocParam param = new SearchLocParam(); +// param.setIoType(10); +// param.setSourceStaNo(sta.getStaNo()); +// param.setLocType1(locTypeDto.getLocType1()); +// String response = new HttpHandler.Builder() +// .setUri(wmsUrl) +// .setPath("/rpc/pakin/loc/v1") +// .setJson(JSON.toJSONString(param)) +// .build() +// .doPost(); +// JSONObject jsonObject = JSON.parseObject(response); +// if (jsonObject.getInteger("code").equals(200)) { +// StartupDto dto = jsonObject.getObject("data", StartupDto.class); +// +// // 鏇存柊绔欑偣淇℃伅 涓� 涓嬪彂plc鍛戒护 +// staProtocol.setWorkNo(dto.getWorkNo().shortValue()); +// staProtocol.setStaNo(dto.getStaNo().shortValue()); +// devpThread.setPakMk(staProtocol.getSiteId(), false); +// boolean result = MessageQueue.offer(SlaveType.Devp, devpThread.getSlave().getId(), new Task(2, staProtocol)); +// if (!result) { +// throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触"); +// } +// } else { +// log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", wmsUrl + "/rpc/pakin/loc/v1", JSON.toJSONString(param), response); +// } +// } catch (Exception e) { +// e.printStackTrace(); +// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); +// } } } } @@ -2282,34 +2309,43 @@ if (staProtocol.isAutoing() //鑷姩 && !staProtocol.isLoading() //鏃犵墿 - && staProtocol.isOutEnable() //绌烘墭鐩橀渶姹備俊鍙� - && staProtocol.isEmptyMk() + && staProtocol.isEmptyOutPalletRequire() //绌烘墭鐩橀渶姹備俊鍙� +// && staProtocol.isEmptyMk() && staProtocol.getWorkNo() == 0 ) { WrkMast pakoutEmpty = wrkMastMapper.selectPakoutEmpty(sta.getStaNo()); if (null != pakoutEmpty) { return; } - try { - HashMap<String, Object> map = new HashMap<>(); - map.put("staNo", sta.getStaNo());//鐩爣绔� - String response = new HttpHandler.Builder() - .setUri(wmsUrl) - .setParams(map) - .setPath("/rpc/auto/emptyOut/v1") - .build() - .doPost(); - JSONObject jsonObject = JSON.parseObject(response); - if (jsonObject.getInteger("code").equals(200)) { - JSONObject data = (JSONObject) jsonObject.get("data"); - log.info((String) data.get("msg")); - } else { - log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", wmsUrl + "/rpc/auto/emptyOut/v1","", response); + List<StaDesc> staDescs = staDescService.selectList(new EntityWrapper<StaDesc>().eq("stn_no", sta.getStaNo())); + for (StaDesc staDesc: staDescs){ + BasCrnp basCrnp = basCrnpService.selectOne(new EntityWrapper<BasCrnp>().eq("crn_no", staDesc.getCrnNo())); + if (!basCrnp.getCrnSts().equals(3) || basCrnp.getCrnErr() != 0){ + continue; } - } catch (Exception e) { - e.printStackTrace(); - TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + try { + HashMap<String, Object> map = new HashMap<>(); + map.put("crnNo", staDesc.getCrnNo());//鐩爣绔� + String response = new HttpHandler.Builder() + .setUri(wmsUrl) + .setParams(map) + .setPath("/rpc/auto/emptyOut/v1") + .build() + .doPost(); + JSONObject jsonObject = JSON.parseObject(response); + if (jsonObject.getInteger("code").equals(200)) { + JSONObject data = (JSONObject) jsonObject.get("data"); + log.info((String) data.get("msg")); + return; + } else { + log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", wmsUrl + "/rpc/auto/emptyOut/v1","", response); + } + } catch (Exception e) { + e.printStackTrace(); + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + } } + } } -- Gitblit v1.9.1