From ffc3b1151655f258fb1db0b24c3434bd294b0598 Mon Sep 17 00:00:00 2001 From: dubin <bindu_bean@163.com> Date: 星期日, 05 十月 2025 10:35:32 +0800 Subject: [PATCH] 联调 --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 462 ++++++++++++++++++++++++++++----------------------------- 1 files changed, 225 insertions(+), 237 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 6e13098..e2aa0be 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -164,9 +164,6 @@ errMsg = "鎵爜澶辫触"; back = true; } -// if(staProtocol.getWeight() <= 0 ){ -// continue; -// } // if (!back && staProtocol.getWeight() == 0.0) { // errMsg = "閲嶉噺鑾峰彇澶辫触"; // back = true; @@ -197,12 +194,7 @@ } // 鍒ゆ柇鏄惁婊¤冻鍏ュ簱鏉′欢 - if (staProtocol.isAutoing() - && staProtocol.isLoading() - && staProtocol.isInEnable() - && !staProtocol.isEmptyMk() - && staProtocol.isPakMk() - && staProtocol.getWorkNo() == 9999) { + if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.isInEnable() && !staProtocol.isEmptyMk() && staProtocol.isPakMk() && staProtocol.getWorkNo() == 9999) { if (Cools.isEmpty(barcode) || "NG".endsWith(barcode) || "NoRead".equals(barcode) || "00000000".equals(barcode)) { News.info("{}鍙锋潯鐮佹壂鎻忓櫒妫�娴嬫潯鐮佷俊鎭細{}", inSta.getBarcode(), barcode); @@ -254,9 +246,7 @@ // } } - WrkMast checkPick = wrkMastService.selectOne(new EntityWrapper<WrkMast>() - .eq("barcode", barcode) - .in("io_type", 107, 103, 57)); + WrkMast checkPick = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("barcode", barcode).in("io_type", 107, 103, 57)); if (!Cools.isEmpty(checkPick)) { continue; } @@ -270,13 +260,7 @@ param.setSourceStaNo(inSta.getStaNo()); param.setLocType1(locTypeDto.getLocType1()); param.setWeight(staProtocol.getWeight()); - String response = new HttpHandler.Builder() - .setTimeout(30, TimeUnit.SECONDS) - .setUri(wmsUrl) - .setPath("/rpc/pakin/loc/v1") - .setJson(JSON.toJSONString(param)) - .build() - .doPost(); + String response = new HttpHandler.Builder().setTimeout(30, TimeUnit.SECONDS).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); @@ -379,9 +363,7 @@ if (!staProtocol.isLoading()) { continue; } - if (staProtocol.isAutoing() && staProtocol.isInEnable() - && !staProtocol.isEmptyMk() && (staProtocol.getWorkNo() == 0 || staProtocol.getWorkNo() == 9999) - && staProtocol.isPakMk()) { + if (staProtocol.isAutoing() && staProtocol.isInEnable() && !staProtocol.isEmptyMk() && (staProtocol.getWorkNo() == 0 || staProtocol.getWorkNo() == 9999) && staProtocol.isPakMk()) { News.warnNoLog("" + mark + " - 0" + " - 寮�濮嬫墽琛�"); // 鍒ゆ柇閲嶅宸ヤ綔妗� WrkMast wrkMast = wrkMastMapper.selectPakInStep11(inSta.getStaNo()); @@ -409,9 +391,7 @@ } } else { - News.errorNoLog("" + mark + " - 6" + " - 绔欑偣淇℃伅涓嶇鍚堝叆搴撴潯浠讹紒锛侊紒" + " 鑷姩淇″彿锛�" + staProtocol.isLoading() + "銆佸彲鍏ヤ俊鍙凤細" + staProtocol.isInEnable() - + "銆佺┖鏉夸俊鍙凤細" + staProtocol.isEmptyMk() + "銆佸伐浣滃彿锛�" + staProtocol.getWorkNo() - + "銆侀攣瀹氭爣璁�" + staProtocol.isPakMk() + "銆佸叆搴撳嵃璁帮細" + staProtocol.getStamp()); + News.errorNoLog("" + mark + " - 6" + " - 绔欑偣淇℃伅涓嶇鍚堝叆搴撴潯浠讹紒锛侊紒" + " 鑷姩淇″彿锛�" + staProtocol.isLoading() + "銆佸彲鍏ヤ俊鍙凤細" + staProtocol.isInEnable() + "銆佺┖鏉夸俊鍙凤細" + staProtocol.isEmptyMk() + "銆佸伐浣滃彿锛�" + staProtocol.getWorkNo() + "銆侀攣瀹氭爣璁�" + staProtocol.isPakMk() + "銆佸叆搴撳嵃璁帮細" + staProtocol.getStamp()); } } } @@ -546,8 +526,7 @@ // 鏃犳嫞鏂欐暟鎹� continue; } - if ((wrkMast.getIoType() != 103 && wrkMast.getIoType() != 104 && wrkMast.getIoType() != 107) - || Cools.isEmpty(wrkMast.getStaNo()) || Cools.isEmpty(wrkMast.getSourceStaNo())) { + if ((wrkMast.getIoType() != 103 && wrkMast.getIoType() != 104 && wrkMast.getIoType() != 107) || Cools.isEmpty(wrkMast.getStaNo()) || Cools.isEmpty(wrkMast.getSourceStaNo())) { continue; } @@ -561,9 +540,7 @@ // log.error("{}鍙蜂换鍔℃暟鎹紓甯革紒", wrkMast.getWrkNo()); // } // 鑾峰彇鐩爣绔� - Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>() - .eq("type_no", wrkMast.getIoType() - 50) - .eq("stn_no", pickSta.getStaNo()) // 浣滀笟绔欑偣 = 鎷f枡鍑哄簱鐨勭洰鏍囩珯 + Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>().eq("type_no", wrkMast.getIoType() - 50).eq("stn_no", pickSta.getStaNo()) // 浣滀笟绔欑偣 = 鎷f枡鍑哄簱鐨勭洰鏍囩珯 .eq("crn_no", wrkMast.getCrnNo()); // 鍫嗗灈鏈哄彿 StaDesc staDesc = staDescService.selectOne(wrapper); if (Cools.isEmpty(staDesc)) { @@ -636,8 +613,7 @@ } } else { - News.errorNoLog("" + mark + " - 6" + " - 绔欑偣淇℃伅涓嶇鍚堝叆搴撴潯浠讹紒锛侊紒" + " 鑷姩淇″彿锛�" + staProtocol.isLoading() + "銆佸彲鍏ヤ俊鍙凤細" + staProtocol.isInEnable() - + "銆佺┖鏉夸俊鍙凤細" + staProtocol.isEmptyMk()); + News.errorNoLog("" + mark + " - 6" + " - 绔欑偣淇℃伅涓嶇鍚堝叆搴撴潯浠讹紒锛侊紒" + " 鑷姩淇″彿锛�" + staProtocol.isLoading() + "銆佸彲鍏ヤ俊鍙凤細" + staProtocol.isInEnable() + "銆佺┖鏉夸俊鍙凤細" + staProtocol.isEmptyMk()); } } @@ -660,10 +636,7 @@ } else { staProtocol = staProtocol.clone(); } - if (staProtocol.isAutoing() - && staProtocol.isLoading() - && staProtocol.isInEnable() - && !staProtocol.isEmptyMk() + if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.isInEnable() && !staProtocol.isEmptyMk() // && staProtocol.getWorkNo() > 0 && staProtocol.isPakMk()) { @@ -736,13 +709,9 @@ String response = ""; log.info("鍏ュ簱浣滀笟绔�" + pickSta.getStaNo() + "鐩樼偣鍐嶅叆搴撲换鍔¤姹俉MS===>>鍙傛暟锛�" + param); try { - response = new HttpHandler.Builder() - .setUri(wmsUrl) - .setPath("/rpc/pakin2/loc/v1") - .setJson(JSON.toJSONString(param)) + response = new HttpHandler.Builder().setUri(wmsUrl).setPath("/rpc/pakin2/loc/v1").setJson(JSON.toJSONString(param)) // .setTimeout(15, TimeUnit.SECONDS) - .build() - .doPost(); + .build().doPost(); } catch (Exception e) { log.error("鍏ュ簱浣滀笟绔�" + pickSta.getStaNo() + "鐩樼偣鍐嶅叆搴撲换鍔¤姹俉MS===>>鍙傛暟锛�" + param); log.error("stnToCrnStnPick2===>>鐩樼偣鏌ュ簱浣嶅叆搴撴帴鍙eけ璐�", e); @@ -844,9 +813,7 @@ continue; } // 鍒ゆ柇鍫嗗灈鏈虹姸鎬佺瓑寰呯‘璁� - if (crnProtocol.modeType == CrnModeType.AUTO && crnProtocol.getTaskNo().equals(wrkMast.getWrkNo().shortValue()) - && crnProtocol.statusType == CrnStatusType.WAITING - && crnProtocol.forkPosType == CrnForkPosType.HOME) { + if (crnProtocol.modeType == CrnModeType.AUTO && crnProtocol.getTaskNo().equals(wrkMast.getWrkNo().shortValue()) && crnProtocol.statusType == CrnStatusType.WAITING && crnProtocol.forkPosType == CrnForkPosType.HOME) { log.info("鍫嗗灈鏈哄嚭搴撳畬鎴� - 寮�濮嬫墽琛�"); // 鍛戒护涓嬪彂鍖� -------------------------------------------------------------------------- @@ -860,6 +827,38 @@ } else { log.info(staProtocol.getWorkNo() + "," + staProtocol.getStaNo() + "杈撻�佺嚎鍑哄簱鍛戒护涓嬪彂鎴愬姛"); } + Integer pltType = wrkMast.getPltType(); + // 鏇存柊宸ヤ綔妗g姸鎬佷负14澶辫触 + wrkMast.setWrkSts(14L); + wrkMast.setCrnEndTime(new Date()); + wrkMast.setPltType(0); + if (wrkMastMapper.updateById(wrkMast) != 0) { + // 澶嶄綅鍫嗗灈鏈� + log.error("鍑哄簱浠诲姟瀹屾垚涓嬪彂鍫嗗灈鏈哄浣�,{},{}", wrkMast.getWrkNo(), wrkMast.getPltType()); + if (pltType == 1) { + crnThread.setResetFlag(true); + } else if (pltType == 2) { + crnThread.setResetFlagTwo(true); + } + } else { + News.error("" + mark + " - 1" + " - 鏇存柊宸ヤ綔妗g殑宸ヤ綔鐘舵�佷负14澶辫触锛侊紒锛� [宸ヤ綔鍙�:{}]", wrkMast.getWrkNo()); + } + + } else if (crnProtocol.modeType == CrnModeType.AUTO && crnProtocol.getTaskNoTwo().equals(wrkMast.getWrkNo().shortValue()) && crnProtocol.statusTypeTwo == CrnStatusType.WAITING && crnProtocol.forkPosTypeTwo == CrnForkPosType.HOME) { + log.info("鍫嗗灈鏈哄嚭搴撳畬鎴� - 寮�濮嬫墽琛�"); + + // 鍛戒护涓嬪彂鍖� -------------------------------------------------------------------------- + + // 涓嬪彂绔欑偣淇℃伅 + staProtocol.setWorkNo(wrkMast.getWrkNo()); + staProtocol.setStaNo(RouteUtils.CrnStaEnd(wrkMast.getStaNo(), wrkMast.getSourceStaNo())); + if (!MessageQueue.offer(SlaveType.Devp, crnStn.getDevpPlcId(), new Task(2, staProtocol))) { + log.info(staProtocol.getWorkNo() + "," + staProtocol.getStaNo() + "杈撻�佺嚎鍑哄簱鍛戒护涓嬪彂澶辫触"); + continue; + } else { + log.info(staProtocol.getWorkNo() + "," + staProtocol.getStaNo() + "杈撻�佺嚎鍑哄簱鍛戒护涓嬪彂鎴愬姛"); + } + Integer pltType = wrkMast.getPltType(); // 鏇存柊宸ヤ綔妗g姸鎬佷负14澶辫触 wrkMast.setWrkSts(14L); @@ -868,9 +867,9 @@ if (wrkMastMapper.updateById(wrkMast) != 0) { // 澶嶄綅鍫嗗灈鏈� log.error("鍑哄簱浠诲姟瀹屾垚涓嬪彂鍫嗗灈鏈哄浣�,{},{}", wrkMast.getWrkNo(), wrkMast.getPltType()); - if (wrkMast.getPltType() == 1) { + if (pltType == 1) { crnThread.setResetFlag(true); - } else if (wrkMast.getPltType() == 2) { + } else if (pltType == 2) { crnThread.setResetFlagTwo(true); } } else { @@ -878,11 +877,7 @@ } } else { - News.errorNoLog("" + mark + " - 6" + " - 鍫嗗灈鏈轰俊鎭笉绗﹀悎鍏ュ簱鏉′欢锛侊紒锛�" - + " 鍫嗗灈鏈虹姸鎬侊細" + crnProtocol.modeType + "==鑷姩AUTO锛�" + CrnModeType.AUTO - + "銆佸爢鍨涙満浠诲姟鍙凤細" + crnProtocol.getTaskNo() + "==宸ヤ綔妗d换鍔″彿锛�" + wrkMast.getWrkNo().shortValue() - + "銆佺姸鎬佹灇涓撅細" + crnProtocol.statusType + "==WAITING锛�90 //浠诲姟瀹屾垚绛夊緟WCS纭)锛�" + CrnStatusType.WAITING - + "銆佽揣鍙変綅缃細" + crnProtocol.forkPosType + "==HOME锛�0 // 璐у弶鍘熶綅锛�" + CrnForkPosType.HOME); + News.errorNoLog("" + mark + " - 6" + " - 鍫嗗灈鏈轰俊鎭笉绗﹀悎鍏ュ簱鏉′欢锛侊紒锛�" + " 鍫嗗灈鏈虹姸鎬侊細" + crnProtocol.modeType + "==鑷姩AUTO锛�" + CrnModeType.AUTO + "銆佸爢鍨涙満浠诲姟鍙凤細" + crnProtocol.getTaskNo() + "==宸ヤ綔妗d换鍔″彿锛�" + wrkMast.getWrkNo().shortValue() + "銆佺姸鎬佹灇涓撅細" + crnProtocol.statusType + "==WAITING锛�90 //浠诲姟瀹屾垚绛夊緟WCS纭)锛�" + CrnStatusType.WAITING + "銆佽揣鍙変綅缃細" + crnProtocol.forkPosType + "==HOME锛�0 // 璐у弶鍘熶綅锛�" + CrnForkPosType.HOME); } } @@ -937,8 +932,7 @@ // } // 鍙湁褰撳爢鍨涙満绌洪棽 骞朵笖 鏃犱换鍔℃椂鎵嶇户缁墽琛� - if (crnProtocol.getStatusType() == CrnStatusType.IDLE && crnProtocol.getModeType() == CrnModeType.AUTO - && crnProtocol.getForkPos() == 0 && crnProtocol.getTaskNo() == 0 && crnProtocol.getTaskNoTwo() == 0) { + if (crnProtocol.getStatusType() == CrnStatusType.IDLE && crnProtocol.getModeType() == CrnModeType.AUTO && crnProtocol.getForkPos() == 0 && crnProtocol.getTaskNo() == 0 && crnProtocol.getTaskNoTwo() == 0) { News.warnNoLog("" + mark + " - 0" + " - 寮�濮嬫墽琛屽爢鍨涙満鍏ュ嚭搴撲綔涓氫笅鍙�"); if (crnProtocol.getLoaded() == 0 && crnProtocol.getLoadedTwo() == 0) { //鍫嗗灈鏈烘病鏈夌墿鏂� @@ -946,21 +940,21 @@ if (crnProtocol.getLastIo().equals("I")) { if (basCrnp.getInEnable().equals("Y")) { //mark - 1 - .... - this.inTake(crn, crnProtocol, mark); // 鍏ュ簱 + this.inTake(crn, crnProtocol, 0, mark); // 鍏ュ簱 crnProtocol.setLastIo("O"); } else if (basCrnp.getOutEnable().equals("Y")) { //mark - 2 - .... - this.outTake(crn, crnProtocol, mark); // 鍑哄簱 + this.outTake(crn, crnProtocol, 0, mark); // 鍑哄簱 crnProtocol.setLastIo("I"); } } // 濡傛灉鏈�杩戜竴娆℃槸鍑哄簱妯″紡 else if (crnProtocol.getLastIo().equals("O")) { if (basCrnp.getOutEnable().equals("Y")) { - this.outTake(crn, crnProtocol, mark); // 鍑哄簱 + this.outTake(crn, crnProtocol, 0, mark); // 鍑哄簱 crnProtocol.setLastIo("I"); } else if (basCrnp.getInEnable().equals("Y")) { - this.inTake(crn, crnProtocol, mark); // 鍏ュ簱 + this.inTake(crn, crnProtocol, 0, mark); // 鍏ュ簱 crnProtocol.setLastIo("O"); } } @@ -986,14 +980,14 @@ if (wrkMast.getIoType() >= 100) { WrkMast wrkMast1 = wrkMastMapper.selectPakOutStep1(crn.getId(), wrkMast.getSourceStaNo()); if (wrkMast1 != null) { - this.outTake(crn, crnProtocol, mark); + this.outTake(crn, crnProtocol, 2, mark); } else { this.outPut(crn, crnProtocol, mark); } } else { WrkMast wrkMast1 = wrkMastMapper.selectPakInStep1All(wrkMast.getSourceStaNo(), crn.getId()); if (wrkMast1 != null) { - this.inTake(crn, crnProtocol, mark); + this.inTake(crn, crnProtocol, 2, mark); } else { this.inPut(crn, crnProtocol, mark); } @@ -1010,14 +1004,14 @@ if (wrkMast.getIoType() >= 100) { WrkMast wrkMast1 = wrkMastMapper.selectPakOutStep1(crn.getId(), wrkMast.getSourceStaNo()); if (wrkMast1 != null) { - this.outTake(crn, crnProtocol, mark); + this.outTake(crn, crnProtocol, 1, mark); } else { this.outPut(crn, crnProtocol, mark); } } else { WrkMast wrkMast1 = wrkMastMapper.selectPakInStep1All(wrkMast.getSourceStaNo(), crn.getId()); if (wrkMast1 != null) { - this.inTake(crn, crnProtocol, mark); + this.inTake(crn, crnProtocol, 1, mark); } else { this.inPut(crn, crnProtocol, mark); } @@ -1043,11 +1037,11 @@ * @return */ private Integer getCrnStation(String locNo) { - String bay = locNo.substring(2, 6); + String bay = locNo.substring(2, 5); if (Integer.parseInt(bay) == 1) { - return 2; - } else if (Integer.parseInt(bay) == 29) { return 1; + } else if (Integer.parseInt(bay) == 29) { + return 2; } if (Integer.parseInt(locNo.substring(0, 2)) >= 14) { return 1; @@ -1060,7 +1054,7 @@ /** * 鍏ュ簱鍙栬揣 */ - public synchronized void inTake(CrnSlave slave, CrnProtocol crnProtocol, Integer mark) { + public synchronized void inTake(CrnSlave slave, CrnProtocol crnProtocol, Integer crnStation, Integer mark) { News.warnNoLog("" + mark + " - 1" + " - 0" + " - 鍫嗗灈鏈哄叆鍑哄簱浣滀笟涓嬪彂锛氭墽琛屽叆搴�"); for (CrnSlave.CrnStn crnStn : slave.getCrnInStn()) { boolean flag = false; @@ -1080,15 +1074,11 @@ continue; } - if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.getWorkNo() > 0 && staProtocol.isInEnable() - && staDetl.getCanining() != null && staDetl.getCanining().equals("Y")) { + if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.getWorkNo() > 0 && staProtocol.isInEnable() && staDetl.getCanining() != null && staDetl.getCanining().equals("Y")) { flag = true; } if (!flag) { - News.errorNoLog("" + mark + " - 1" + " - 3" + " - 鍫嗗灈鏈哄叆搴撶珯淇℃伅(浠ヤ笅闇�瑕佸叏true):" - + "鑷姩淇″彿" + staProtocol.isAutoing() + "鏈夌墿淇″彿" + staProtocol.isLoading() - + "宸ヤ綔鍙�>0" + staProtocol.getWorkNo() + "鍙叆淇″彿" + staProtocol.isInEnable() - + "鑳藉叆淇″彿锛坵ms璁剧疆锛�.equals(\"Y\")" + staDetl.getCanining()); + News.errorNoLog("" + mark + " - 1" + " - 3" + " - 鍫嗗灈鏈哄叆搴撶珯淇℃伅(浠ヤ笅闇�瑕佸叏true):" + "鑷姩淇″彿" + staProtocol.isAutoing() + "鏈夌墿淇″彿" + staProtocol.isLoading() + "宸ヤ綔鍙�>0" + staProtocol.getWorkNo() + "鍙叆淇″彿" + staProtocol.isInEnable() + "鑳藉叆淇″彿锛坵ms璁剧疆锛�.equals(\"Y\")" + staDetl.getCanining()); continue; } // 鑾峰彇宸ヤ綔鐘舵�佷负2锛堣澶囦笂璧帮級鐨勫叆搴撳伐浣滄。 @@ -1119,10 +1109,12 @@ if (wrkMast103 != null) { News.error("" + mark + " - 1" + " - 8" + " - 鍫嗗灈鏈烘鍦ㄦ墽琛屽叾浠栦换鍔�,璇风◢鍚庡啀璇�"); } - - Integer crnStation = getCrnStation(wrkMast.getLocNo()); + if (crnStation == 0) { + crnStation = getCrnStation(wrkMast.getLocNo()); + } if (wrkMastMapper.selectByPltType(slave.getId(), crnStation) != null) { News.error("" + mark + " - 1" + " - 9" + " - 鍫嗗灈鏈烘敼宸ヤ綅瀛樺湪宸ヤ綔妗�,宸ヤ綅={}", crnStation); + break; } // 宸茬粡瀛樺湪鍚婅溅鎵ц浠诲姟鏃讹紝鍒欒繃婊� @@ -1130,9 +1122,7 @@ continue; } - News.warnNoLog("" + mark + " - 1" + " - 15" + " - 鍛戒护涓嬪彂 : 宸ヤ綔鍙�={},婧愭帓={},婧愬垪={},婧愬眰={},鐩爣鎺�={},鐩爣鍒�={},鐩爣灞�={}", wrkMast.getWrkNo().shortValue() - , crnStn.getRow().shortValue(), crnStn.getBay().shortValue(), crnStn.getLev().shortValue() - , locMast.getRow1().shortValue(), locMast.getBay1().shortValue(), locMast.getLev1().shortValue()); + News.warnNoLog("" + mark + " - 1" + " - 15" + " - 鍛戒护涓嬪彂 : 宸ヤ綔鍙�={},婧愭帓={},婧愬垪={},婧愬眰={},鐩爣鎺�={},鐩爣鍒�={},鐩爣灞�={}", wrkMast.getWrkNo().shortValue(), crnStn.getRow().shortValue(), crnStn.getBay().shortValue(), crnStn.getLev().shortValue(), locMast.getRow1().shortValue(), locMast.getBay1().shortValue(), locMast.getLev1().shortValue()); // 鍛戒护涓嬪彂鍖� -------------------------------------------------------------------------- CrnCommand crnCommand = new CrnCommand(); @@ -1155,7 +1145,7 @@ // 淇敼宸ヤ綔妗g姸鎬� 2.璁惧涓婅蛋 => 103.鍚婅溅鍏ュ簱涓� Date now = new Date(); wrkMast.setWrkSts(103L); - wrkMast.setPltType(1); + wrkMast.setPltType(crnStation); wrkMast.setCrnStrTime(now); wrkMast.setModiTime(now); if (wrkMastMapper.updateById(wrkMast) == 0) { @@ -1215,9 +1205,7 @@ continue; } - News.warnNoLog("" + mark + " - 1" + " - 15" + " - 鍛戒护涓嬪彂 : 宸ヤ綔鍙�={},婧愭帓={},婧愬垪={},婧愬眰={},鐩爣鎺�={},鐩爣鍒�={},鐩爣灞�={}", wrkMast.getWrkNo().shortValue() - , crnStn.getRow().shortValue(), crnStn.getBay().shortValue(), crnStn.getLev().shortValue() - , locMast.getRow1().shortValue(), locMast.getBay1().shortValue(), locMast.getLev1().shortValue()); + News.warnNoLog("" + mark + " - 1" + " - 15" + " - 鍛戒护涓嬪彂 : 宸ヤ綔鍙�={},婧愭帓={},婧愬垪={},婧愬眰={},鐩爣鎺�={},鐩爣鍒�={},鐩爣灞�={}", wrkMast.getWrkNo().shortValue(), crnStn.getRow().shortValue(), crnStn.getBay().shortValue(), crnStn.getLev().shortValue(), locMast.getRow1().shortValue(), locMast.getBay1().shortValue(), locMast.getLev1().shortValue()); // 鍛戒护涓嬪彂鍖� -------------------------------------------------------------------------- CrnCommand crnCommand = new CrnCommand(); @@ -1254,7 +1242,7 @@ /** * 鍑哄簱鍙栬揣 */ - public synchronized void outTake(CrnSlave slave, CrnProtocol crnProtocol, Integer mark) { + public synchronized void outTake(CrnSlave slave, CrnProtocol crnProtocol, Integer crnStation, Integer mark) { News.warnNoLog("" + mark + " - 2" + " - 0" + " - 鍫嗗灈鏈哄叆鍑哄簱浣滀笟涓嬪彂锛氭墽琛屽嚭搴�"); for (CrnSlave.CrnStn crnStn : slave.getCrnOutStn()) { // 鑾峰彇宸ヤ綔鐘舵�佷负11锛堢敓鎴愬嚭搴揑D锛夌殑鍑哄簱宸ヤ綔妗� @@ -1292,8 +1280,7 @@ break; } // 鍒ゆ柇鍫嗗灈鏈哄嚭搴撶珯鐘舵�� - if (staProtocol.isAutoing() && !staProtocol.isLoading() && staDetl.getCanouting() != null && staDetl.getCanouting().equals("Y") - && staProtocol.getWorkNo() == 0 && staProtocol.isOutEnable()) { + if (staProtocol.isAutoing() && !staProtocol.isLoading() && staDetl.getCanouting() != null && staDetl.getCanouting().equals("Y") && staProtocol.getWorkNo() == 0 && staProtocol.isOutEnable()) { // 鍛戒护涓嬪彂鍖� -------------------------------------------------------------------------- // 鍫嗗灈鏈烘帶鍒惰繃婊� @@ -1350,10 +1337,12 @@ } } } - - Integer crnStation = getCrnStation(wrkMast.getSourceLocNo()); + if (crnStation == 0) { + crnStation = getCrnStation(wrkMast.getSourceLocNo()); + } if (wrkMastMapper.selectByPltType(slave.getId(), crnStation) != null) { News.error("" + mark + " - 1" + " - 9" + " - 鍫嗗灈鏈烘敼宸ヤ綅瀛樺湪宸ヤ綔妗�,宸ヤ綅={}", crnStation); + break; } // 宸茬粡瀛樺湪鍚婅溅鎵ц浠诲姟鏃讹紝鍒欒繃婊� @@ -1362,9 +1351,7 @@ // return; } - News.warnNoLog("" + mark + " - 2" + " - 12" + " - 鍛戒护涓嬪彂 : 宸ヤ綔鍙�={},婧愭帓={},婧愬垪={},婧愬眰={},鐩爣鎺�={},鐩爣鍒�={},鐩爣灞�={}", wrkMast.getWrkNo().shortValue() - , sourceSta.getRow1().shortValue(), sourceSta.getBay1().shortValue(), sourceSta.getLev1().shortValue() - , crnStn.getRow().shortValue(), crnStn.getBay().shortValue(), crnStn.getLev().shortValue()); + News.warnNoLog("" + mark + " - 2" + " - 12" + " - 鍛戒护涓嬪彂 : 宸ヤ綔鍙�={},婧愭帓={},婧愬垪={},婧愬眰={},鐩爣鎺�={},鐩爣鍒�={},鐩爣灞�={}", wrkMast.getWrkNo().shortValue(), sourceSta.getRow1().shortValue(), sourceSta.getBay1().shortValue(), sourceSta.getLev1().shortValue(), crnStn.getRow().shortValue(), crnStn.getBay().shortValue(), crnStn.getLev().shortValue()); // 1.鍫嗗灈鏈哄紑濮嬬Щ鍔� CrnCommand crnCommand = new CrnCommand(); @@ -1386,6 +1373,7 @@ // 淇敼宸ヤ綔妗g姸鎬� 11.鐢熸垚鍑哄簱ID => 12.鍚婅溅鍑哄簱涓� Date now = new Date(); wrkMast.setWrkSts(106L); + wrkMast.setPltType(crnStation); wrkMast.setCrnStrTime(now); wrkMast.setModiTime(now); if (wrkMastMapper.updateById(wrkMast) == 0) { @@ -1441,8 +1429,7 @@ // continue; } // 鍒ゆ柇鍫嗗灈鏈哄嚭搴撶珯鐘舵�� - if (staProtocol.isAutoing() && !staProtocol.isLoading() && staDetl.getCanouting() != null && staDetl.getCanouting().equals("Y") - && staProtocol.getWorkNo() == 0 && staProtocol.isOutEnable()) { + if (staProtocol.isAutoing() && !staProtocol.isLoading() && staDetl.getCanouting() != null && staDetl.getCanouting().equals("Y") && staProtocol.getWorkNo() == 0 && staProtocol.isOutEnable()) { // 鍛戒护涓嬪彂鍖� -------------------------------------------------------------------------- // 鍫嗗灈鏈烘帶鍒惰繃婊� @@ -1452,53 +1439,53 @@ } // 鍙屾繁搴撲綅涓旀祬搴撲綅鏈夎揣锛屽垯闇�鍏堝娴呭簱浣嶈繘琛屽簱浣嶇Щ杞� - if (Utils.isDeepLoc(slaveProperties, wrkMast.getSourceLocNo())) { - News.warnNoLog("" + mark + " - 2" + " - 6" + " - 鍙屾繁搴撲綅涓旀祬搴撲綅鏈夎揣锛屽垯闇�鍏堝娴呭簱浣嶈繘琛屽簱浣嶇Щ杞� : 寮�濮嬫墽琛� 浠诲姟鍙�={}", wrkMast.getWrkNo()); - String shallowLocNo = Utils.getShallowLoc(slaveProperties, wrkMast.getSourceLocNo()); - LocMast shallowLoc = locMastService.selectById(shallowLocNo); - // O.绌哄簱浣嶃�丵.鎷f枡/鐩樼偣/骞舵澘鍐嶅叆搴撱�丼.鍏ュ簱棰勭害銆乆.绂佺敤 鐩存帴鎼紒 - if (shallowLoc.getLocSts().equals("P") || shallowLoc.getLocSts().equals("R")) { - News.warnNoLog("" + mark + " - 2" + " - 7" + " - // O.绌哄簱浣嶃�丵.鎷f枡/鐩樼偣/骞舵澘鍐嶅叆搴撱�丼.鍏ュ簱棰勭害銆乆.绂佺敤 鐩存帴鎼紒搴撲綅鐘舵��={}", shallowLoc.getLocSts()); - WrkMast waitWrkMast = wrkMastMapper.selectByLocNo(shallowLocNo); - if (null == waitWrkMast) { - News.error("{}搴撲綅寮傚父锛屾湭妫�绱㈠埌鐩稿簲宸ヤ綔妗o紒", shallowLocNo); - } else { - if (waitWrkMast.getWrkSts() == 11) { - waitWrkMast.setIoPri(15D); - waitWrkMast.setModiTime(new Date()); - if (wrkMastMapper.updateById(waitWrkMast) == 0) { - News.error("" + mark + " - 2" + " - 8" + " - 璋冩暣宸ヤ綔妗d紭鍏堢骇澶辫触锛佸伐浣滃彿={}", waitWrkMast.getWrkNo()); - } - continue; - } else { - - } - } - } else if (shallowLoc.getLocSts().equals("F") || shallowLoc.getLocSts().equals("D")) { - News.warnNoLog("" + mark + " - 2" + " - 9" + " - // F銆丏 搴撲綅鐘舵��={}", shallowLoc.getLocSts()); +// if (Utils.isDeepLoc(slaveProperties, wrkMast.getSourceLocNo())) { +// News.warnNoLog("" + mark + " - 2" + " - 6" + " - 鍙屾繁搴撲綅涓旀祬搴撲綅鏈夎揣锛屽垯闇�鍏堝娴呭簱浣嶈繘琛屽簱浣嶇Щ杞� : 寮�濮嬫墽琛� 浠诲姟鍙�={}", wrkMast.getWrkNo()); +// String shallowLocNo = Utils.getShallowLoc(slaveProperties, wrkMast.getSourceLocNo()); +// LocMast shallowLoc = locMastService.selectById(shallowLocNo); +// // O.绌哄簱浣嶃�丵.鎷f枡/鐩樼偣/骞舵澘鍐嶅叆搴撱�丼.鍏ュ簱棰勭害銆乆.绂佺敤 鐩存帴鎼紒 +// if (shallowLoc.getLocSts().equals("P") || shallowLoc.getLocSts().equals("R")) { +// News.warnNoLog("" + mark + " - 2" + " - 7" + " - // O.绌哄簱浣嶃�丵.鎷f枡/鐩樼偣/骞舵澘鍐嶅叆搴撱�丼.鍏ュ簱棰勭害銆乆.绂佺敤 鐩存帴鎼紒搴撲綅鐘舵��={}", shallowLoc.getLocSts()); // WrkMast waitWrkMast = wrkMastMapper.selectByLocNo(shallowLocNo); - //2022-08-16 modify,涓嶆牴鎹畊pdmk鏍囪绉诲簱浠诲姟(瀹规槗琚彇娑堝鑷村牭濉�)锛屾煡璇㈠伐浣滄。鏄惁瀛樺湪浠诲姟 - WrkMast waitWrkMast = wrkMastMapper.selectByLocNo1(shallowLocNo); - // 姝ゆ爣璁伴伩鍏嶅娆℃墽琛岀Щ搴撲换鍔� -// if (Cools.isEmpty(wrkMast.getUpdMk()) || "N".equals(wrkMast.getUpdMk()) -// || Cools.isEmpty(waitWrkMast)) { - if (Cools.isEmpty(waitWrkMast)) { - wrkMast.setUpdMk("Y"); - wrkMastMapper.updateById(wrkMast); - // 鐢熸垚宸ヤ綔妗�,灏嗘祬搴撲綅绉昏浆鍒版柊鐨勫簱浣嶄腑 - moveLocForDeepLoc(slave, shallowLoc, mark); - } - News.error("{}浠诲姟鍑哄簱澶辫触锛屾祬搴撲綅鍫靛锛佹祬搴撲綅鍙�:{}", wrkMast.getWrkNo(), shallowLocNo); - continue; - } else if (shallowLoc.getLocSts().equals("Q") || shallowLoc.getLocSts().equals("S")) { - News.warnNoLog("" + mark + " - 2" + " - 10" + " - // Q銆丼 搴撲綅鐘舵��={}", shallowLoc.getLocSts()); - WrkMast waitWrkMast = wrkMastMapper.selectByLocNo1(shallowLocNo); - if (null != waitWrkMast && waitWrkMast.getWrkSts() == 4) { - News.infoNoLog("" + mark + " - 2" + " - 11" + " - // F銆丏 宸ヤ綔鐘舵��(鍒ゆ柇鏉′欢涓�==4)={}", waitWrkMast.getWrkSts()); - continue; - } - } - } +// if (null == waitWrkMast) { +// News.error("{}搴撲綅寮傚父锛屾湭妫�绱㈠埌鐩稿簲宸ヤ綔妗o紒", shallowLocNo); +// } else { +// if (waitWrkMast.getWrkSts() == 11) { +// waitWrkMast.setIoPri(15D); +// waitWrkMast.setModiTime(new Date()); +// if (wrkMastMapper.updateById(waitWrkMast) == 0) { +// News.error("" + mark + " - 2" + " - 8" + " - 璋冩暣宸ヤ綔妗d紭鍏堢骇澶辫触锛佸伐浣滃彿={}", waitWrkMast.getWrkNo()); +// } +// continue; +// } else { +// +// } +// } +// } else if (shallowLoc.getLocSts().equals("F") || shallowLoc.getLocSts().equals("D")) { +// News.warnNoLog("" + mark + " - 2" + " - 9" + " - // F銆丏 搴撲綅鐘舵��={}", shallowLoc.getLocSts()); +//// WrkMast waitWrkMast = wrkMastMapper.selectByLocNo(shallowLocNo); +// //2022-08-16 modify,涓嶆牴鎹畊pdmk鏍囪绉诲簱浠诲姟(瀹规槗琚彇娑堝鑷村牭濉�)锛屾煡璇㈠伐浣滄。鏄惁瀛樺湪浠诲姟 +// WrkMast waitWrkMast = wrkMastMapper.selectByLocNo1(shallowLocNo); +// // 姝ゆ爣璁伴伩鍏嶅娆℃墽琛岀Щ搴撲换鍔� +//// if (Cools.isEmpty(wrkMast.getUpdMk()) || "N".equals(wrkMast.getUpdMk()) +//// || Cools.isEmpty(waitWrkMast)) { +// if (Cools.isEmpty(waitWrkMast)) { +// wrkMast.setUpdMk("Y"); +// wrkMastMapper.updateById(wrkMast); +// // 鐢熸垚宸ヤ綔妗�,灏嗘祬搴撲綅绉昏浆鍒版柊鐨勫簱浣嶄腑 +// moveLocForDeepLoc(slave, shallowLoc, mark); +// } +// News.error("{}浠诲姟鍑哄簱澶辫触锛屾祬搴撲綅鍫靛锛佹祬搴撲綅鍙�:{}", wrkMast.getWrkNo(), shallowLocNo); +// continue; +// } else if (shallowLoc.getLocSts().equals("Q") || shallowLoc.getLocSts().equals("S")) { +// News.warnNoLog("" + mark + " - 2" + " - 10" + " - // Q銆丼 搴撲綅鐘舵��={}", shallowLoc.getLocSts()); +// WrkMast waitWrkMast = wrkMastMapper.selectByLocNo1(shallowLocNo); +// if (null != waitWrkMast && waitWrkMast.getWrkSts() == 4) { +// News.infoNoLog("" + mark + " - 2" + " - 11" + " - // F銆丏 宸ヤ綔鐘舵��(鍒ゆ柇鏉′欢涓�==4)={}", waitWrkMast.getWrkSts()); +// continue; +// } +// } +// } if (wrkMastMapper.selectByPltType(slave.getId(), wrkMast.getPltType()) == null) { News.error("" + mark + " - 1" + " - 9" + " - 鍫嗗灈鏈烘敼宸ヤ綅瀛樺湪宸ヤ綔妗�,宸ヤ綅={}", wrkMast.getPltType()); @@ -1511,9 +1498,7 @@ // return; } - News.warnNoLog("" + mark + " - 2" + " - 12" + " - 鍛戒护涓嬪彂 : 宸ヤ綔鍙�={},婧愭帓={},婧愬垪={},婧愬眰={},鐩爣鎺�={},鐩爣鍒�={},鐩爣灞�={}", wrkMast.getWrkNo().shortValue() - , sourceSta.getRow1().shortValue(), sourceSta.getBay1().shortValue(), sourceSta.getLev1().shortValue() - , crnStn.getRow().shortValue(), crnStn.getBay().shortValue(), crnStn.getLev().shortValue()); + News.warnNoLog("" + mark + " - 2" + " - 12" + " - 鍛戒护涓嬪彂 : 宸ヤ綔鍙�={},婧愭帓={},婧愬垪={},婧愬眰={},鐩爣鎺�={},鐩爣鍒�={},鐩爣灞�={}", wrkMast.getWrkNo().shortValue(), sourceSta.getRow1().shortValue(), sourceSta.getBay1().shortValue(), sourceSta.getLev1().shortValue(), crnStn.getRow().shortValue(), crnStn.getBay().shortValue(), crnStn.getLev().shortValue()); // 1.鍫嗗灈鏈哄紑濮嬬Щ鍔� CrnCommand crnCommand = new CrnCommand(); @@ -1629,15 +1614,11 @@ // if(staProtocol.getWorkNo() == 9998){ // continue; // } - if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.getWorkNo() > 0 && staProtocol.isInEnable() - && staDetl.getCanining() != null && staDetl.getCanining().equals("Y")) { + if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.getWorkNo() > 0 && staProtocol.isInEnable() && staDetl.getCanining() != null && staDetl.getCanining().equals("Y")) { flag = true; } if (!flag) { - News.errorNoLog("" + mark + " - 1" + " - 3" + " - 鍫嗗灈鏈哄叆搴撶珯淇℃伅(浠ヤ笅闇�瑕佸叏true):" - + "鑷姩淇″彿" + staProtocol.isAutoing() + "鏈夌墿淇″彿" + staProtocol.isLoading() - + "宸ヤ綔鍙�>0" + staProtocol.getWorkNo() + "鍙叆淇″彿" + staProtocol.isInEnable() - + "鑳藉叆淇″彿锛坵ms璁剧疆锛�.equals(\"Y\")" + staDetl.getCanining()); + News.errorNoLog("" + mark + " - 1" + " - 3" + " - 鍫嗗灈鏈哄叆搴撶珯淇℃伅(浠ヤ笅闇�瑕佸叏true):" + "鑷姩淇″彿" + staProtocol.isAutoing() + "鏈夌墿淇″彿" + staProtocol.isLoading() + "宸ヤ綔鍙�>0" + staProtocol.getWorkNo() + "鍙叆淇″彿" + staProtocol.isInEnable() + "鑳藉叆淇″彿锛坵ms璁剧疆锛�.equals(\"Y\")" + staDetl.getCanining()); continue; } // 鑾峰彇宸ヤ綔鐘舵�佷负2锛堣澶囦笂璧帮級鐨勫叆搴撳伐浣滄。 @@ -1711,9 +1692,7 @@ // } // } // } - News.warnNoLog("" + mark + " - 1" + " - 15" + " - 鍛戒护涓嬪彂 : 宸ヤ綔鍙�={},婧愭帓={},婧愬垪={},婧愬眰={},鐩爣鎺�={},鐩爣鍒�={},鐩爣灞�={}", wrkMast.getWrkNo().shortValue() - , crnStn.getRow().shortValue(), crnStn.getBay().shortValue(), crnStn.getLev().shortValue() - , locMast.getRow1().shortValue(), locMast.getBay1().shortValue(), locMast.getLev1().shortValue()); + News.warnNoLog("" + mark + " - 1" + " - 15" + " - 鍛戒护涓嬪彂 : 宸ヤ綔鍙�={},婧愭帓={},婧愬垪={},婧愬眰={},鐩爣鎺�={},鐩爣鍒�={},鐩爣灞�={}", wrkMast.getWrkNo().shortValue(), crnStn.getRow().shortValue(), crnStn.getBay().shortValue(), crnStn.getLev().shortValue(), locMast.getRow1().shortValue(), locMast.getBay1().shortValue(), locMast.getLev1().shortValue()); // 鍛戒护涓嬪彂鍖� -------------------------------------------------------------------------- CrnCommand crnCommand = new CrnCommand(); @@ -1829,8 +1808,7 @@ // continue; } // 鍒ゆ柇鍫嗗灈鏈哄嚭搴撶珯鐘舵�� - if (staProtocol.isAutoing() && !staProtocol.isLoading() && staDetl.getCanouting() != null && staDetl.getCanouting().equals("Y") - && staProtocol.getWorkNo() == 0 && staProtocol.isOutEnable()) { + if (staProtocol.isAutoing() && !staProtocol.isLoading() && staDetl.getCanouting() != null && staDetl.getCanouting().equals("Y") && staProtocol.getWorkNo() == 0 && staProtocol.isOutEnable()) { // 鍛戒护涓嬪彂鍖� -------------------------------------------------------------------------- // 鍫嗗灈鏈烘帶鍒惰繃婊� @@ -1894,9 +1872,7 @@ // return; } - News.warnNoLog("" + mark + " - 2" + " - 12" + " - 鍛戒护涓嬪彂 : 宸ヤ綔鍙�={},婧愭帓={},婧愬垪={},婧愬眰={},鐩爣鎺�={},鐩爣鍒�={},鐩爣灞�={}", wrkMast.getWrkNo().shortValue() - , sourceSta.getRow1().shortValue(), sourceSta.getBay1().shortValue(), sourceSta.getLev1().shortValue() - , crnStn.getRow().shortValue(), crnStn.getBay().shortValue(), crnStn.getLev().shortValue()); + News.warnNoLog("" + mark + " - 2" + " - 12" + " - 鍛戒护涓嬪彂 : 宸ヤ綔鍙�={},婧愭帓={},婧愬垪={},婧愬眰={},鐩爣鎺�={},鐩爣鍒�={},鐩爣灞�={}", wrkMast.getWrkNo().shortValue(), sourceSta.getRow1().shortValue(), sourceSta.getBay1().shortValue(), sourceSta.getLev1().shortValue(), crnStn.getRow().shortValue(), crnStn.getBay().shortValue(), crnStn.getLev().shortValue()); // 1.鍫嗗灈鏈哄紑濮嬬Щ鍔� CrnCommand crnCommand = new CrnCommand(); @@ -2092,14 +2068,40 @@ if (wrkMastMapper.selectWorking(slave.getId()) != null) { return; } + int crnStation = 0; + String bay = wrkMast.getSourceLocNo().substring(2, 5); + String bay2 = wrkMast.getLocNo().substring(2, 5); + if (Integer.parseInt(bay) == 1 || Integer.parseInt(bay2) == 1) { + crnStation = 1; + if (wrkMastMapper.selectByPltType(slave.getId(), crnStation) != null) { + this.outPut(slave, crnProtocol, mark); + return; + } + } else if (Integer.parseInt(bay) == 29 || Integer.parseInt(bay2) == 29) { + crnStation = 2; + if (wrkMastMapper.selectByPltType(slave.getId(), crnStation) != null) { + this.outPut(slave, crnProtocol, mark); + return; + } + } else { + crnStation = 1; + if (wrkMastMapper.selectByPltType(slave.getId(), crnStation) != null) { + if (wrkMastMapper.selectByPltType(slave.getId(), 2) != null) { + this.outPut(slave, crnProtocol, mark); + return; + } else { + crnStation = 2; + } + } + } - News.warnNoLog("" + mark + " - 3" + " - 3" + " - 鍛戒护涓嬪彂 : 宸ヤ綔鍙�={},婧愭帓={},婧愬垪={},婧愬眰={},鐩爣鎺�={},鐩爣鍒�={},鐩爣灞�={}", wrkMast.getWrkNo().shortValue() - , sourceSta.getRow1().shortValue(), sourceSta.getBay1().shortValue(), sourceSta.getLev1().shortValue() - , sta.getRow1().shortValue(), sta.getBay1().shortValue(), sta.getLev1().shortValue()); + + + News.warnNoLog("" + mark + " - 3" + " - 3" + " - 鍛戒护涓嬪彂 : 宸ヤ綔鍙�={},婧愭帓={},婧愬垪={},婧愬眰={},鐩爣鎺�={},鐩爣鍒�={},鐩爣灞�={}", wrkMast.getWrkNo().shortValue(), sourceSta.getRow1().shortValue(), sourceSta.getBay1().shortValue(), sourceSta.getLev1().shortValue(), sta.getRow1().shortValue(), sta.getBay1().shortValue(), sta.getLev1().shortValue()); // 鍛戒护涓嬪彂鍖� -------------------------------------------------------------------------- CrnCommand crnCommand = new CrnCommand(); - crnCommand.setPltType(getCrnStation(wrkMast.getSourceLocNo())); + crnCommand.setPltType(crnStation); crnCommand.setCrnNo(slave.getId()); // 鍫嗗灈鏈虹紪鍙� crnCommand.setTaskNo(wrkMast.getWrkNo().shortValue()); // 宸ヤ綔鍙� crnCommand.setAckFinish((short) 0); // 浠诲姟瀹屾垚纭浣� @@ -2126,6 +2128,8 @@ News.infoNoLog("" + mark + " - 3" + " - 0" + " - 鍫嗗灈鏈哄叆鍑哄簱浣滀笟涓嬪彂锛氬簱浣嶇Щ杞畬鎴�"); } + + /** * 鎵ц瀵瑰伐浣滄。鐨勫畬鎴愭搷浣� @@ -2176,8 +2180,47 @@ if (wrkMastMapper.updateById(wrkMast) > 0) { // 鍫嗗灈鏈哄浣� log.error(wrkMast.getWrkNo() + "浠诲姟淇敼鐘舵��4鎴愬姛锛屽浣嶅爢鍨涙満={}", crnThread.getCrnProtocol().getCrnNo()); - News.warnNoLog("" + mark + " - 2" + " - 淇敼鎴愬姛鍚庡浣嶅爢鍨涙満 : 鍫嗗灈鏈哄彿={}", crnThread.getCrnProtocol().getCrnNo()); + News.warnNoLog("" + mark + " - 2" + " - 淇敼鎴愬姛鍚庡浣嶅爢鍨涙満 : 鍫嗗灈鏈哄彿宸ヤ綅1={}", crnThread.getCrnProtocol().getCrnNo()); crnThread.setResetFlag(true); + } + } else if (crnProtocol.statusTypeTwo == CrnStatusType.WAITING && crnProtocol.getTaskNoTwo() != 0) { + News.warnNoLog("" + mark + " - 0" + " - 寮�濮嬫墽琛屽宸ヤ綔妗g殑瀹屾垚鎿嶄綔锛屼换鍔″彿:" + crnProtocol.getTaskNo()); + if (crnProtocol.getTaskNo() == 9999) { + crnThread.setResetFlagTwo(true); + continue; + } + // 鑾峰彇鍏ュ簱寰呯‘璁ゅ伐浣滄。 + WrkMast wrkMast = wrkMastMapper.selectPakInStep3(crnProtocol.getTaskNoTwo().intValue()); + if (wrkMast == null) { + News.error("" + mark + " - 1" + " - 鍫嗗灈鏈哄浜庣瓑寰呯‘璁や笖浠诲姟瀹屾垚鐘舵�侊紝浣嗘湭鎵惧埌宸ヤ綔妗c�傚爢鍨涙満鍙�={}锛屽伐浣滃彿={}", crn.getId(), crnProtocol.getTaskNo()); + continue; + } + // 鍏ュ簱 + 搴撲綅杞Щ ==> 4.鍏ュ簱瀹屾垚 + if (wrkMast.getWrkSts() == 3) { + wrkMast.setWrkSts(4L); + wrkMast.setPltType(0); + } else if (wrkMast.getWrkSts() == 103) { + wrkMast.setWrkSts(104L); + } else if (wrkMast.getWrkSts() == 105) { + wrkMast.setWrkSts(4L); + wrkMast.setPltType(0); + } else if (wrkMast.getWrkSts() == 106) { + wrkMast.setWrkSts(107L); + } else if (wrkMast.getWrkSts() == 12 && wrkMast.getIoType() == 11) { + wrkMast.setWrkSts(4L); + wrkMast.setPltType(0); + } else { + continue; + } + Date now = new Date(); + wrkMast.setCrnEndTime(now); + wrkMast.setModiTime(now); + // 淇敼鎴愬姛鍚庡浣嶅爢鍨涙満 + if (wrkMastMapper.updateById(wrkMast) > 0) { + // 鍫嗗灈鏈哄浣� + log.error(wrkMast.getWrkNo() + "浠诲姟淇敼鐘舵��4鎴愬姛锛屽浣嶅爢鍨涙満={}", crnThread.getCrnProtocol().getCrnNo()); + News.warnNoLog("" + mark + " - 2" + " - 淇敼鎴愬姛鍚庡浣嶅爢鍨涙満 : 鍫嗗灈鏈哄彿2宸ヤ綅2={}", crnThread.getCrnProtocol().getCrnNo()); + crnThread.setResetFlagTwo(true); } } @@ -2214,8 +2257,7 @@ } BasCrnError crnError = basCrnErrorMapper.selectById(crnProtocol.getAlarm()); String errName = crnError == null ? String.valueOf(crnProtocol.getAlarm()) : crnError.getErrName(); - BasErrLog basErrLog = new BasErrLog( - null, // 缂栧彿 + BasErrLog basErrLog = new BasErrLog(null, // 缂栧彿 wrkMast.getWrkNo(), // 宸ヤ綔鍙� now, // 鍙戠敓鏃堕棿 null, // 缁撴潫鏃堕棿 @@ -2262,8 +2304,7 @@ if (latest == null || (latest.getErrCode() != crnProtocol.getAlarm().intValue())) { BasCrnError crnError = basCrnErrorMapper.selectById(crnProtocol.getAlarm()); String errName = crnError == null ? String.valueOf(crnProtocol.getAlarm()) : crnError.getErrName(); - BasErrLog basErrLog = new BasErrLog( - null, // 缂栧彿 + BasErrLog basErrLog = new BasErrLog(null, // 缂栧彿 null, // 宸ヤ綔鍙� now, // 鍙戠敓鏃堕棿 null, // 缁撴潫鏃堕棿 @@ -2338,13 +2379,7 @@ } // 绔欑偣鏉′欢鍒ゆ柇 - if (staProtocol.isAutoing() - && staProtocol.isLoading() - && staProtocol.isInEnable() - && staProtocol.isEmptyMk() - && staProtocol.isPakMk() - && (staProtocol.getWorkNo() != 0 && staProtocol.getWorkNo() > 9700) - ) { + if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.isInEnable() && staProtocol.isEmptyMk() && staProtocol.isPakMk() && (staProtocol.getWorkNo() != 0 && staProtocol.getWorkNo() > 9700)) { News.warnNoLog("" + mark + " - 0" + " - 寮�濮嬫墽琛岋細绌烘爤鏉垮垵濮嬪寲鍏ュ簱,鍙夎溅鍏ュ簱绔欐斁璐�"); try { @@ -2354,12 +2389,7 @@ param.setIoType(10); param.setSourceStaNo(emptyInSta.getStaNo()); param.setLocType1(locTypeDto.getLocType1()); - String response = new HttpHandler.Builder() - .setUri(wmsUrl) - .setPath("/rpc/pakin/loc/v1") - .setJson(JSON.toJSONString(param)) - .build() - .doPost(); + 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); @@ -2414,9 +2444,7 @@ } } else { - News.errorNoLog("" + mark + " - 4" + " - 绔欑偣淇℃伅涓嶇鍚堝叆搴撴潯浠讹紒锛侊紒" + " 鑷姩淇″彿锛�" + staProtocol.isAutoing() + "銆佸彲鍏ヤ俊鍙凤細" + staProtocol.isInEnable() - + "銆佺┖鏉夸俊鍙凤細" + staProtocol.isEmptyMk() + "銆佸伐浣滃彿锛�" + staProtocol.getWorkNo() - + "銆侀攣瀹氭爣璁�" + staProtocol.isPakMk()); + News.errorNoLog("" + mark + " - 4" + " - 绔欑偣淇℃伅涓嶇鍚堝叆搴撴潯浠讹紒锛侊紒" + " 鑷姩淇″彿锛�" + staProtocol.isAutoing() + "銆佸彲鍏ヤ俊鍙凤細" + staProtocol.isInEnable() + "銆佺┖鏉夸俊鍙凤細" + staProtocol.isEmptyMk() + "銆佸伐浣滃彿锛�" + staProtocol.getWorkNo() + "銆侀攣瀹氭爣璁�" + staProtocol.isPakMk()); } } } @@ -2673,9 +2701,9 @@ for (Integer row : rows) { if (Utils.isDeepLoc(slaveProperties, row)) { if (shallowLoc.getBay1() == 1) { - loc = locMastService.queryFreeLocMast2(row, shallowLoc.getLocType1(), 1); - } else if (shallowLoc.getRow1() == 29) { loc = locMastService.queryFreeLocMast2(row, shallowLoc.getLocType1(), 29); + } else if (shallowLoc.getRow1() == 29) { + loc = locMastService.queryFreeLocMast2(row, shallowLoc.getLocType1(), 1); } else { loc = locMastService.queryFreeLocMast(row, shallowLoc.getLocType1()); } @@ -2699,9 +2727,9 @@ for (Integer row : rows) { if (Utils.isShallowLoc(slaveProperties, row)) { if (shallowLoc.getBay1() == 1) { - loc = locMastService.queryFreeLocMast2(row, shallowLoc.getLocType1(), 1); - } else if (shallowLoc.getRow1() == 29) { loc = locMastService.queryFreeLocMast2(row, shallowLoc.getLocType1(), 29); + } else if (shallowLoc.getRow1() == 29) { + loc = locMastService.queryFreeLocMast2(row, shallowLoc.getLocType1(), 1); } else { loc = locMastService.queryFreeLocMast(row, shallowLoc.getLocType1()); } @@ -2972,9 +3000,7 @@ // 鍑哄簱鍒囨崲涓� devpThread.ioModeOf2F = IoModeType.PAKOUT_BOOTING; WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo()); - if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading() - && !devpThread.getStation().get(inSta.getStaNo() + 1).isLoading() - && devpThread.getStation().get(inSta.getStaNo() + 1).getWorkNo() == 0) { + if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading() && !devpThread.getStation().get(inSta.getStaNo() + 1).isLoading() && devpThread.getStation().get(inSta.getStaNo() + 1).getWorkNo() == 0) { // 鍑哄簱妯″紡 devpThread.ioModeOf2F = IoModeType.PAKOUT_MODE; } @@ -2990,9 +3016,7 @@ // 鍑哄簱鍒囨崲涓� devpThread.ioModeOf4F = IoModeType.PAKOUT_BOOTING; WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo()); - if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading() - && !devpThread.getStation().get(inSta.getStaNo() + 1).isLoading() - && devpThread.getStation().get(inSta.getStaNo() + 1).getWorkNo() == 0) { + if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading() && !devpThread.getStation().get(inSta.getStaNo() + 1).isLoading() && devpThread.getStation().get(inSta.getStaNo() + 1).getWorkNo() == 0) { // 鍑哄簱妯″紡 devpThread.ioModeOf4F = IoModeType.PAKOUT_MODE; } @@ -3053,8 +3077,7 @@ if (staProtocol.isAutoing() //鑷姩 && !staProtocol.isLoading() //鏃犵墿 && staProtocol.isOutEnable() //鍙嚭淇″彿 - && staProtocol.getWorkNo() == 0 - ) { + && staProtocol.getWorkNo() == 0) { WrkMast pakoutEmpty = wrkMastMapper.selectPakoutEmpty(site); if (null != pakoutEmpty) { return; @@ -3066,12 +3089,7 @@ LocTypeDto locTypeDto = new LocTypeDto(loctype1, (short) 1, (short) 1); locTypeDto.setSiteId(site); try { - String response = new HttpHandler.Builder() - .setUri(wmsUrl) - .setPath("/rpc/auto/emptyOut/v1") - .setJson(JSON.toJSONString(locTypeDto)) - .build() - .doPost(); + String response = new HttpHandler.Builder().setUri(wmsUrl).setPath("/rpc/auto/emptyOut/v1").setJson(JSON.toJSONString(locTypeDto)).build().doPost(); JSONObject jsonObject = JSON.parseObject(response); if (jsonObject.getInteger("code").equals(200)) { String data = jsonObject.get("data").toString(); @@ -3103,8 +3121,7 @@ if (staProtocol.isAutoing() //鑷姩 && staProtocol.isLoading() //鏈夌墿 && staProtocol.isInEnable() //鍙叆淇″彿 - && staProtocol.isPakMk() - && (staProtocol.getWorkNo() == 0 || staProtocol.getWorkNo() > 9990) //宸ヤ綔鍙蜂负0鎴栬�呭伐浣滃彿鏄�9991~9999锛堣緭閫佹満鐣欑敤锛� + && staProtocol.isPakMk() && (staProtocol.getWorkNo() == 0 || staProtocol.getWorkNo() > 9990) //宸ヤ綔鍙蜂负0鎴栬�呭伐浣滃彿鏄�9991~9999锛堣緭閫佹満鐣欑敤锛� ) { try { @@ -3115,12 +3132,7 @@ LocTypeDto locTypeDto = new LocTypeDto(loctype1, (short) 1, (short) 1); locTypeDto.setSiteId(site); - String response = new HttpHandler.Builder() - .setUri(wmsUrl) - .setPath("/rpc/auto/emptyIn/v1") - .setJson(JSON.toJSONString(locTypeDto)) - .build() - .doPost(); + String response = new HttpHandler.Builder().setUri(wmsUrl).setPath("/rpc/auto/emptyIn/v1").setJson(JSON.toJSONString(locTypeDto)).build().doPost(); JSONObject jsonObject = JSON.parseObject(response); if (jsonObject.getInteger("code").equals(200)) { News.info((String) jsonObject.get("msg")); @@ -3203,12 +3215,8 @@ } // 鍙湁褰揜GV绌洪棽銆佽嚜鍔�,宸ヤ綅涓�鏃犵墿//rgv鍙敤 - if (rgvProtocol.getStatusType() == RgvStatusType.IDLE && - rgvProtocol.getModeType() == RgvModeType.AUTO - && rgvProtocol.getLoaded1() == 0 //鐜板満淇敼锛氬彔鐩樻満锛屼笉婊¢兘绠楁棤鐗╋紝鎬庝箞鍒ゆ柇闇�瑕佽窡鐢垫帶瀵规帴 - && (rgvProtocol.getTaskNo1() == 0) - && rgvThread.isPakMk() - ) { + if (rgvProtocol.getStatusType() == RgvStatusType.IDLE && rgvProtocol.getModeType() == RgvModeType.AUTO && rgvProtocol.getLoaded1() == 0 //鐜板満淇敼锛氬彔鐩樻満锛屼笉婊¢兘绠楁棤鐗╋紝鎬庝箞鍒ゆ柇闇�瑕佽窡鐢垫帶瀵规帴 + && (rgvProtocol.getTaskNo1() == 0) && rgvThread.isPakMk()) { BasRgvMap basRgvMap = basRgvMapMapper.selectById(rgvProtocol.getRgvNo()); Integer rgvNoOther = basRgvMap.getRgvNoOther(rgvProtocol.getRgvNo()); @@ -3219,12 +3227,7 @@ } else { rgvProtocolOther = rgvProtocolOther.clone(); } - if (rgvProtocolOther.getStatusType() == RgvStatusType.IDLE - && rgvProtocolOther.getModeType() == RgvModeType.AUTO - && rgvProtocolOther.getLoaded1() == 0 - && (rgvProtocolOther.getTaskNo1() == 0) - && rgvThreadOther.isPakMk() - ) { + if (rgvProtocolOther.getStatusType() == RgvStatusType.IDLE && rgvProtocolOther.getModeType() == RgvModeType.AUTO && rgvProtocolOther.getLoaded1() == 0 && (rgvProtocolOther.getTaskNo1() == 0) && rgvThreadOther.isPakMk()) { //瀵瑰伐浣滄。杩涜鍒ゆ柇 basRgvMap.setNowRoute(rgvProtocol.getRgvPosI()); if (rgvProtocol.getTaskNo1() > 0 && rgvProtocol.getTaskNo1() <= 9000) { @@ -3268,10 +3271,7 @@ } // 鍙湁褰揜GV绛夊緟WCS纭銆佽嚜鍔� - if ((rgvProtocol.getStatusType1() == RgvStatusType.WAITING || rgvProtocol.getStatusType1() == RgvStatusType.FETCHWAITING) - && rgvProtocol.getModeType() == RgvModeType.AUTO - && (rgvProtocol.getStatusType() == RgvStatusType.WORKING1) - ) { + if ((rgvProtocol.getStatusType1() == RgvStatusType.WAITING || rgvProtocol.getStatusType1() == RgvStatusType.FETCHWAITING) && rgvProtocol.getModeType() == RgvModeType.AUTO && (rgvProtocol.getStatusType() == RgvStatusType.WORKING1)) { log.info("{}鍙峰皬杞︾瓑寰厀cs纭锛岀姸鎬亄}锛屽弬鏁皗}", rgvProtocol.getRgvNo(), rgvProtocol.getStatusType(), rgvProtocol); if (rgvProtocol.getTaskNo1() != 0) { if (rgvProtocol.getTaskNo1() == 32222) { @@ -3379,12 +3379,7 @@ } // 鍙湁褰揜GV绌洪棽銆佽嚜鍔�,宸ヤ綅涓�鏃犵墿//rgv鍙敤 - if (rgvProtocol.getStatusType() == RgvStatusType.IDLE - && rgvProtocol.getModeType() == RgvModeType.AUTO - && rgvProtocol.getLoaded1() == 0 - && rgvProtocol.getTaskNo1() == 0 - && rgvThread.isPakMk() - ) { + if (rgvProtocol.getStatusType() == RgvStatusType.IDLE && rgvProtocol.getModeType() == RgvModeType.AUTO && rgvProtocol.getLoaded1() == 0 && rgvProtocol.getTaskNo1() == 0 && rgvThread.isPakMk()) { BasRgvMap basRgvMap = basRgvMapMapper.selectById(rgvProtocol.getRgvNo()); if (basRgvMap == null) { log.error("{}鍙稲GV灏氭湭鍦ㄦ暟鎹簱鍦板浘涓繘琛岀淮鎶わ紒", rgvProtocol.getRgvNo()); @@ -3595,12 +3590,8 @@ } // 鍙湁褰揜GV绌洪棽銆佽嚜鍔�,宸ヤ綅涓�鏃犵墿//rgv鍙敤 - if (rgvProtocol.getStatusType() == RgvStatusType.IDLE - && rgvProtocol.getModeType() == RgvModeType.AUTO - && rgvProtocol.getLoaded1() == 0 //鐜板満淇敼锛氬彔鐩樻満锛屼笉婊¢兘绠楁棤鐗╋紝鎬庝箞鍒ゆ柇闇�瑕佽窡鐢垫帶瀵规帴 - && rgvProtocol.getTaskNo1() == 0 - && rgvProtocol.getStatusType1() == RgvStatusType.IDLE - && rgvThread.isPakMk() + if (rgvProtocol.getStatusType() == RgvStatusType.IDLE && rgvProtocol.getModeType() == RgvModeType.AUTO && rgvProtocol.getLoaded1() == 0 //鐜板満淇敼锛氬彔鐩樻満锛屼笉婊¢兘绠楁棤鐗╋紝鎬庝箞鍒ゆ柇闇�瑕佽窡鐢垫帶瀵规帴 + && rgvProtocol.getTaskNo1() == 0 && rgvProtocol.getStatusType1() == RgvStatusType.IDLE && rgvThread.isPakMk() // && rgvProtocol.getTaskNo2()==0 ) { BasRgvMap basRgvMap = basRgvMapMapper.selectById(rgvProtocol.getRgvNo()); @@ -3850,10 +3841,7 @@ continue; } } - List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>() - .eq("crn_no", crn.getId()) - .notIn("wrk_sts", 5, 14, 15) - ); + List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("crn_no", crn.getId()).notIn("wrk_sts", 5, 14, 15)); if (!wrkMasts.isEmpty()) { continue; } -- Gitblit v1.9.1