From ce641926a957d238b202aa0d9dac3b8f15aff153 Mon Sep 17 00:00:00 2001 From: ZY <zc857179121@qq.com> Date: 星期三, 14 五月 2025 14:43:00 +0800 Subject: [PATCH] 123 --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 268 +++++++++++++++++++++++++++++++++-------------------- 1 files changed, 166 insertions(+), 102 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 b8a304a..6a022bd 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -224,29 +224,39 @@ } // 鍒ゆ柇閲嶅宸ヤ綔妗� - WrkMast wrkMast = wrkMastMapper.selectPakInStep1(inSta.getStaNo(), barcode); - //杩囨护鍒ゆ柇锛岄槻姝㈡嫞鏂欏啀鍏ュ簱璐х墿锛岀粡杩囧叆搴撶珯鍐嶅叆搴撴椂锛岃閫�鍥炲埌閫�搴撶珯 - WrkMast wrkMast1 = wrkMastMapper.selectPakInStepBarcode(barcode); - if (wrkMast1 != null) { - if (wrkMast1.getIoType() == 103 || wrkMast1.getIoType() == 107 || wrkMast1.getIoType() == 104) { + WrkMast wrkMast = wrkMastMapper.selectPakInStepBarcode(barcode); + if (wrkMast != null && wrkMast.getWrkSts() == 2) { + int wrkNo1 = basDevpService.count(new QueryWrapper<BasDevp>().eq("wrk_no", wrkMast.getWrkNo())); + if (wrkNo1 != 0) { + News.error(barcode + "鏉$爜宸插瓨鍦ㄧ姸鎬佷负锛� 2.璁惧涓婅蛋 锛夌殑鏁版嵁,璇锋煡鐪媁CS杈撻�佺嚎鐣岄潰,宸ヤ綔鍙�={}", wrkMast.getWrkNo()); + if (ledThread != null) { + News.error(":鎵爜澶辫触锛岃閲嶈瘯"); + MessageQueue.offer(SlaveType.Led, inSta.getLed(), new Task(3, barcode + "鏉$爜宸插瓨鍦ㄧ姸鎬佷负锛� 2.璁惧涓婅蛋 锛夌殑浠诲姟,宸ヤ綔鍙�=" + wrkMast.getWrkNo())); + } continue; } - } - if (wrkMast != null) { - News.error("" + mark + " - 4" + " - 宸ヤ綔妗d腑宸插瓨鍦ㄨ绔欑姸鎬佷负锛� 2.璁惧涓婅蛋 锛夌殑鏁版嵁,宸ヤ綔鍙�={}", wrkMast.getWrkNo()); - staProtocol.setWorkNo((short) 9999); - staProtocol.setStaNo(inSta.getBackSta().shortValue()); + barcodeThread.setBarcode(""); + staProtocol.setWorkNo(Short.parseShort(wrkMast.getWrkNo() + "")); + staProtocol.setStaNo(Short.parseShort(wrkMast.getStaNo() + "")); devpThread.setPakMk(staProtocol.getSiteId(), false); boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); + log.info("杈撻�佺嚎涓嬪彂(瀛樺湪璁惧涓婅蛋鐨勫伐浣滄。锛岀洿鎺ヤ笅鍙戯紒))锛�" + wrkMast.getWrkNo() + "," + wrkMast.getStaNo()); + + ledThread.errorReset(); + log.info("缁勬墭璇锋眰鍚嶭ED閿欒娓呴櫎"); + if (!result) { - throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触"); + News.error(":鏇存柊plc绔欑偣淇℃伅澶辫触"); + log.error("杈撻�佺嚎涓嬪彂(瀛樺湪璁惧涓婅蛋鐨勫伐浣滄。锛岀洿鎺ヤ笅鍙戯紒)==>鏇存柊plc绔欑偣淇℃伅澶辫触"); +// throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触"); + continue; } - // led 寮傚父鏄剧ず - if (ledThread != null) { - String errorMsg = "宸ヤ綔妗e凡瀛樺湪璇ユ潯鐮佸彿===>>" + barcode; - MessageQueue.offer(SlaveType.Led, inSta.getLed(), new Task(5, errorMsg)); - } + } + WrkMast checkPick = wrkMastMapper.selectOne(new QueryWrapper<WrkMast>() + .eq("barcode", barcode) + .in("io_type", 107, 103, 57)); + if (!Cools.isEmpty(checkPick)) { continue; } @@ -260,7 +270,7 @@ param.setLocType1(locTypeDto.getLocType1()); if (inSta.getStaNo() == 102) { param.setLocType2((short) 3); - } else if (inSta.getStaNo() == 211) { + } else if (inSta.getStaNo() == 211 || inSta.getStaNo() == 104) { param.setLocType1((short) 5); param.setLocType2((short) 4); } else if (inSta.getStaNo() == 201) { @@ -300,16 +310,17 @@ staProtocol.setWorkNo((short) 9999); staProtocol.setStaNo(inSta.getBackSta().shortValue()); devpThread.setPakMk(staProtocol.getSiteId(), false); - boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); - if (!result) { - throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触"); - } - // led 寮傚父鏄剧ず if (ledThread != null) { String errorMsg = jsonObject.getString("msg"); MessageQueue.offer(SlaveType.Led, inSta.getLed(), new Task(5, errorMsg)); } + boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); + if (!result) { + throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触"); + } + + } } catch (Exception e) { @@ -407,10 +418,20 @@ staProtocol = staProtocol.clone(); } - if (barcodeThread == null) { + String barcode = ""; + if (barcodeThread == null && staProtocol.getSiteId() != 104) { continue; + } else if (staProtocol.getSiteId() == 104) { + if (staProtocol.getWorkNo() == 9996) { + // 鑾峰彇鍒版嫞鏂欎换鍔$殑鎵樼洏鐮� + WrkMast wrkMast = wrkMastMapper.selectOne(new QueryWrapper<WrkMast>().eq("wrk_sts", 14).eq("io_type", 103).eq("source_sta_no", 104)); + if (wrkMast != null) { + barcode = wrkMast.getBarcode(); + } + } + } else { + barcode = barcodeThread.getBarcode(); } - String barcode = barcodeThread.getBarcode(); // 灏哄妫�娴嬪紓甯� boolean back = false; String errMsg = ""; @@ -489,10 +510,16 @@ if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.isInEnable() && staProtocol.isPakMk()) { News.warnNoLog("" + mark + " - 0" + " - 寮�濮嬫墽琛�"); WrkMast wrkMast = wrkMastMapper.selectPickStep(barcode); -// WrkMast wrkMast = wrkMastMapper.selectPakInStep3(staProtocol.getWorkNo().intValue()); + // WrkMast wrkMast = wrkMastMapper.selectPakInStep3(staProtocol.getWorkNo().intValue()); if (wrkMast == null) { - // 鏃犳嫞鏂欐暟鎹� - continue; + WrkMast wrkMast1 = wrkMastMapper.selectPakInStepBarcode(barcode); + if (!(wrkMast1 != null && wrkMast1.getWrkSts() == 2 && wrkMast1.getIoType() == 53)) { + // 鏃犳嫞鏂欐暟鎹� + continue; + } else { + wrkMast1.setIoType(103); + wrkMast = wrkMast1; + } } if ((wrkMast.getIoType() != 103 && wrkMast.getIoType() != 104 && wrkMast.getIoType() != 107) || Cools.isEmpty(wrkMast.getStaNo()) || Cools.isEmpty(wrkMast.getSourceStaNo())) { continue; @@ -508,12 +535,13 @@ // log.error("{}鍙蜂换鍔℃暟鎹紓甯革紒", wrkMast.getWrkNo()); // } // 鑾峰彇鐩爣绔� + Wrapper<StaDesc> wrapper = new QueryWrapper<StaDesc>().eq("type_no", wrkMast.getIoType() - 50).eq("stn_no", pickSta.getStaNo()) // 浣滀笟绔欑偣 = 鎷f枡鍑哄簱鐨勭洰鏍囩珯 .eq("crn_no", wrkMast.getCrnNo()); // 鍫嗗灈鏈哄彿 StaDesc staDesc = staDescService.getOne(wrapper); if (Cools.isEmpty(staDesc)) { News.error("" + mark + " - 2" + " - 鍏ュ簱璺緞涓嶅瓨鍦紒type_no={},stn_no={},crn_no={}", wrkMast.getIoType(), pickSta.getStaNo(), wrkMast.getCrnNo()); - staProtocol.setWorkNo((short) 9989); + staProtocol.setWorkNo((short) 9999); staProtocol.setStaNo((short) (pickSta.getStaNo().shortValue() - (short) 1)); devpThread.setPakMk(staProtocol.getSiteId(), false); MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); @@ -646,7 +674,7 @@ crnThread.setResetFlag(true); } else if (statusTypeTwo == CrnStatusType.WAITING_TWO) { crnThread.setResetFlagTwo(true); - } else { + } else if (statusTypeTwo == CrnStatusType.WAITING_All) { crnThread.setResetFlag(true); crnThread.setResetFlagTwo(true); } @@ -862,7 +890,7 @@ wrkMast.setIoPri(14D); wrkMastMapper.updateById(wrkMast); // 鐢熸垚宸ヤ綔妗�,灏嗘祬搴撲綅绉昏浆鍒版柊鐨勫簱浣嶄腑 - moveLocForDeepLoc(slave, shallowLoc, mark); + moveLocForDeepLoc(slave, shallowLoc, mark, wrkMast.getTenant()); // 鐢熸垚宸ヤ綔妗c�佹敼鍙樻祬搴撲綅鐨勬簮搴�/鐩爣搴� 搴撲綅鐘舵�併�佷笅鍙戝爢鍨涙満鍛戒护锛堢珛椹墽琛�) // moveLocForDeepLocPakin(slave, shallowLoc, wrkMast); } @@ -892,6 +920,9 @@ crnCommand.setDestinationPosXTwo(locMast.getRow1().shortValue()); // 鐩爣搴撲綅鎺� crnCommand.setDestinationPosYTwo(locMast.getBay1().shortValue()); // 鐩爣搴撲綅鍒� crnCommand.setDestinationPosZTwo(locMast.getLev1().shortValue()); // 鐩爣搴撲綅灞� + if (crnStn.getStaNo() == 202) { + crnCommand.setSourcePosYTwo((short) 6); // 婧愬簱浣嶅垪 + } } else { if (workMode == 1) { crnCommand.setTaskMode(CrnTaskModeType.PAKIN); @@ -904,6 +935,9 @@ crnCommand.setDestinationPosX(locMast.getRow1().shortValue()); // 鐩爣搴撲綅鎺� crnCommand.setDestinationPosY(locMast.getBay1().shortValue()); // 鐩爣搴撲綅鍒� crnCommand.setDestinationPosZ(locMast.getLev1().shortValue()); // 鐩爣搴撲綅灞� + if (workMode == 1 && crnStn.getStaNo() == 202) { + crnCommand.setSourcePosY((short) 6); // 婧愬簱浣嶅垪 + } } // crnCommand.setAckFinish((short) 0); // 浠诲姟瀹屾垚纭浣� @@ -1031,7 +1065,7 @@ wrkMast.setUpdMk("Y"); wrkMastMapper.updateById(wrkMast); // 鐢熸垚宸ヤ綔妗�,灏嗘祬搴撲綅绉昏浆鍒版柊鐨勫簱浣嶄腑 - moveLocForDeepLoc(slave, shallowLoc, mark); + moveLocForDeepLoc(slave, shallowLoc, mark, wrkMast.getTenant()); } News.error("{}浠诲姟鍑哄簱澶辫触锛屾祬搴撲綅鍫靛锛佹祬搴撲綅鍙�:{}", wrkMast.getWrkNo(), shallowLocNo); continue; @@ -1070,6 +1104,9 @@ crnCommand.setDestinationPosXTwo(crnStn.getRow().shortValue()); // 鐩爣搴撲綅鎺� crnCommand.setDestinationPosYTwo(crnStn.getBay().shortValue()); // 鐩爣搴撲綅鍒� crnCommand.setDestinationPosZTwo(crnStn.getLev().shortValue()); // 鐩爣搴撲綅灞� + if (crnStn.getStaNo() == 202) { + crnCommand.setDestinationPosYTwo((short) 6); // 婧愬簱浣嶅垪 + } } else { if (workMode == 1) { crnCommand.setTaskMode(CrnTaskModeType.PAKIN); @@ -1082,6 +1119,9 @@ crnCommand.setDestinationPosX(crnStn.getRow().shortValue()); // 鐩爣搴撲綅鎺� crnCommand.setDestinationPosY(crnStn.getBay().shortValue()); // 鐩爣搴撲綅鍒� crnCommand.setDestinationPosZ(crnStn.getLev().shortValue()); // 鐩爣搴撲綅灞� + if (workMode == 1 && crnStn.getStaNo() == 202) { + crnCommand.setDestinationPosY((short) 6); // 婧愬簱浣嶅垪 + } } if (!MessageQueue.offer(SlaveType.Crn, wrkMast.getCrnNo(), new Task(2, crnCommand))) { @@ -1272,6 +1312,7 @@ crnCommand.setAckFinish((short) 0); // 浠诲姟瀹屾垚纭浣� if (workMode == 2) { //CrnTaskModeType璇ユ灇涓剧被鏃犳晥锛屽彧鏈�1浠h〃宸ヤ綅锛�2浠h〃宸ヤ綅2锛�3鍙屽伐浣� + crnCommand.setTaskMode(CrnTaskModeType.PAKOUT); crnCommand.setSourcePosXTwo(sourceSta.getRow1().shortValue()); // 婧愬簱浣嶆帓 crnCommand.setSourcePosYTwo(sourceSta.getBay1().shortValue()); // 婧愬簱浣嶅垪 crnCommand.setSourcePosZTwo(sourceSta.getLev1().shortValue()); // 婧愬簱浣嶅眰 @@ -1329,8 +1370,38 @@ // 鐘舵�侊細绛夊緟纭 骞朵笖 浠诲姟瀹屾垚浣� = 1 if (wait && crnProtocol.getTaskNo() != 0) { News.warnNoLog("" + mark + " - 0" + " - 寮�濮嬫墽琛屽宸ヤ綔妗g殑瀹屾垚鎿嶄綔"); - if (crnProtocol.getTaskNo() == 9999) { +// if (crnProtocol.getTaskNo() == 9999) { +// // 鍫嗗灈鏈哄浣� +// if (statusType == CrnStatusType.WAITING_ONE) { +// crnThread.setResetFlag(true); +// } else if (statusTypeTwo == CrnStatusType.WAITING_TWO) { +// crnThread.setResetFlagTwo(true); +// } else { +// crnThread.setResetFlag(true); +// crnThread.setResetFlagTwo(true); +// } +// } else { + // 鑾峰彇鍏ュ簱寰呯‘璁ゅ伐浣滄。 + WrkMast wrkMast = wrkMastMapper.selectPakInStep3(crnProtocol.getTaskNo().intValue()); + if (wrkMast == null) { + News.error("" + mark + " - 1" + " - 鍫嗗灈鏈哄浜庣瓑寰呯‘璁や笖浠诲姟瀹屾垚鐘舵�侊紝浣嗘湭鎵惧埌宸ヤ綔妗c�傚爢鍨涙満鍙�={}锛屽伐浣滃彿={}", crn.getId(), crnProtocol.getTaskNo()); + continue; + } + // 鍏ュ簱 + 搴撲綅杞Щ ==> 4.鍏ュ簱瀹屾垚 + if (wrkMast.getWrkSts() == 3 || (wrkMast.getWrkSts() == 12 && wrkMast.getIoType() == 11)) { + wrkMast.setWrkSts(4L); + } else { + //TODO + News.info("鐘舵�佷笉瀵�,鐘舵��={}锛屽伐浣滃彿={}", wrkMast.getWrkSts(), crnProtocol.getTaskNo()); + continue; + } + Date now = new Date(); + wrkMast.setCrnEndTime(now); + wrkMast.setModiTime(now); + // 淇敼鎴愬姛鍚庡浣嶅爢鍨涙満 + if (wrkMastMapper.updateById(wrkMast) > 0) { // 鍫嗗灈鏈哄浣� + News.info("" + mark + " - 2" + " - 淇敼鎴愬姛鍚庡浣嶅爢鍨涙満 : 鍫嗗灈鏈哄彿={}", crnThread.getCrnProtocol().getCrnNo()); if (statusType == CrnStatusType.WAITING_ONE) { crnThread.setResetFlag(true); } else if (statusTypeTwo == CrnStatusType.WAITING_TWO) { @@ -1340,39 +1411,11 @@ crnThread.setResetFlagTwo(true); } } else { - // 鑾峰彇鍏ュ簱寰呯‘璁ゅ伐浣滄。 - WrkMast wrkMast = wrkMastMapper.selectPakInStep3(crnProtocol.getTaskNo().intValue()); - if (wrkMast == null) { - News.error("" + mark + " - 1" + " - 鍫嗗灈鏈哄浜庣瓑寰呯‘璁や笖浠诲姟瀹屾垚鐘舵�侊紝浣嗘湭鎵惧埌宸ヤ綔妗c�傚爢鍨涙満鍙�={}锛屽伐浣滃彿={}", crn.getId(), crnProtocol.getTaskNo()); - continue; - } - // 鍏ュ簱 + 搴撲綅杞Щ ==> 4.鍏ュ簱瀹屾垚 - if (wrkMast.getWrkSts() == 3 || (wrkMast.getWrkSts() == 12 && wrkMast.getIoType() == 11)) { - wrkMast.setWrkSts(4L); - } else { - continue; - } - Date now = new Date(); - wrkMast.setCrnEndTime(now); - wrkMast.setModiTime(now); - // 淇敼鎴愬姛鍚庡浣嶅爢鍨涙満 - if (wrkMastMapper.updateById(wrkMast) > 0) { - // 鍫嗗灈鏈哄浣� - News.info("" + mark + " - 2" + " - 淇敼鎴愬姛鍚庡浣嶅爢鍨涙満 : 鍫嗗灈鏈哄彿={}", crnThread.getCrnProtocol().getCrnNo()); - if (statusType == CrnStatusType.WAITING_ONE) { - crnThread.setResetFlag(true); - } else if (statusTypeTwo == CrnStatusType.WAITING_TWO) { - crnThread.setResetFlagTwo(true); - } else { - crnThread.setResetFlag(true); - crnThread.setResetFlagTwo(true); - } - } else { - News.error("" + mark + " - 2" + " - 淇敼鎴愬姛鍚庡浣嶅爢鍨涙満 澶辫触锛侊紒锛屽爢鍨涙満鍙�={}", crnThread.getCrnProtocol().getCrnNo()); - } + News.error("" + mark + " - 2" + " - 淇敼鎴愬姛鍚庡浣嶅爢鍨涙満 澶辫触锛侊紒锛屽爢鍨涙満鍙�={}", crnThread.getCrnProtocol().getCrnNo()); } - } + + //} } News.infoNoLog("" + mark + " - 0" + " - 瀵瑰伐浣滄。鐨勫畬鎴愭搷浣滄墽琛屽畬鎴�"); } @@ -1519,10 +1562,10 @@ staProtocol = staProtocol.clone(); } - if (barcodeThread == null) { - continue; - } - String barcode = barcodeThread.getBarcode(); +// if (barcodeThread == null) { +// continue; +// } +// String barcode = barcodeThread.getBarcode(); // 灏哄妫�娴嬪紓甯� boolean back = false; String errMsg = ""; @@ -1563,9 +1606,9 @@ if (!staProtocol.isLoading()) { continue; } - if (!staProtocol.isPakMk()) { - continue; - } +// if (!staProtocol.isPakMk()) { +// continue; +// } staProtocol.setWorkNo((short) 9999); News.info("{}鍏ュ簱鍥為��锛歿}锛屼换鍔″彿锛歿}", emptyInSta.getStaNo(), errMsg, (short) 9999); staProtocol.setStaNo(emptyInSta.getBackSta().shortValue()); @@ -1597,7 +1640,7 @@ param.setLocType1(locTypeDto.getLocType1()); if (emptyInSta.getStaNo() == 102) { param.setLocType2((short) 3); - } else if (emptyInSta.getStaNo() == 211) { + } else if (emptyInSta.getStaNo() == 211 || emptyInSta.getStaNo() == 104) { param.setLocType1((short) 5); param.setLocType2((short) 4); } else if (emptyInSta.getStaNo() == 201) { @@ -1910,7 +1953,7 @@ * 鍥犲弻娣卞簱浣嶉樆濉烇紝瀵规祬搴撲綅杩涜绉昏浆锛堢珛鍗虫墽琛岀増) * tip锛氬悓姝� */ - private synchronized void moveLocForDeepLoc(CrnSlave crn, LocMast shallowLoc, Integer mark) { + private synchronized void moveLocForDeepLoc(CrnSlave crn, LocMast shallowLoc, Integer mark, Long tenant) { try { News.warnNoLog("" + mark + "moveLocForDeepLoc" + " - 0" + " - 寮�濮嬫墽琛�:鍥犲弻娣卞簱浣嶉樆濉烇紝瀵规祬搴撲綅杩涜绉昏浆锛堢珛鍗虫墽琛岀増)"); @@ -1994,7 +2037,7 @@ wrkMast.setCrnNo(crn.getId()); wrkMast.setSourceLocNo(shallowLoc.getLocNo()); // 婧愬簱浣� wrkMast.setLocNo(loc.getLocNo()); // 鐩爣搴撲綅 - wrkMast.setFullPlt(shallowLoc.getFullPlt()); // 婊℃澘 + wrkMast.setFullPlt(shallowLoc.getLocSts().equals("F") ? "Y" : "N"); // 婊℃澘 wrkMast.setPicking("N"); // 鎷f枡 wrkMast.setExitMk("N"); // 閫�鍑� wrkMast.setEmptyMk(shallowLoc.getLocSts().equals("D") ? "Y" : "N"); // 绌烘澘 @@ -2002,6 +2045,7 @@ wrkMast.setLinkMis("N"); wrkMast.setAppeTime(new Date()); wrkMast.setModiTime(new Date()); + wrkMast.setTenant(tenant); int res = wrkMastMapper.insert(wrkMast); if (res == 0) { News.errorNoLog("" + mark + "moveLocForDeepLoc" + " - 2" + " - 淇濆瓨宸ヤ綔妗eけ璐�"); @@ -2018,6 +2062,7 @@ VersionUtils.setWrkDetl(wrkDetl, locDetl); // 鐗堟湰鎺у埗 wrkDetl.setAppeTime(new Date()); wrkDetl.setModiTime(new Date()); + wrkDetl.setTenant(tenant); if (!wrkDetlService.save(wrkDetl)) { News.errorNoLog("" + mark + "moveLocForDeepLoc" + " - 3" + " - 淇濆瓨宸ヤ綔妗f槑缁嗗け璐�"); throw new CoolException("淇濆瓨宸ヤ綔妗f槑缁嗗け璐�"); @@ -2285,7 +2330,7 @@ public synchronized void autoEmptyOut() { DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, 1); - Integer autoOutSite = 12; + Integer autoOutSite = 103; //濡傛灉绔欑偣鍙嚭绂佺敤锛屽垯涓嶇敓鎴愮┖鐩樺嚭搴撲换鍔� StaProtocol staProtocol = devpThread.getStation().get(autoOutSite); if (staProtocol == null) { @@ -2295,32 +2340,27 @@ } if (staProtocol.isAutoing() //鑷姩 && !staProtocol.isLoading() //鏃犵墿 - && staProtocol.isOutEnable() //鍙嚭淇″彿 +// && staProtocol.isOutEnable() //鍙嚭淇″彿 && staProtocol.getWorkNo() == 0) { - WrkMast pakoutEmpty = wrkMastMapper.selectPakoutEmpty(autoOutSite); - if (null != pakoutEmpty) { - return; +// WrkMast pakoutEmpty = wrkMastMapper.selectPakoutEmpty(autoOutSite); +// if (null != pakoutEmpty) { +// return; +// } + + LocMast byId = locMastService.getById("0200405"); + if (byId != null&&byId.getLocSts().equalsIgnoreCase("D")){ + } - try { - String response = new HttpHandler.Builder().setUri(wmsUrl).setPath("/rpc/auto/emptyOut/v1").build().doPost(); - JSONObject jsonObject = JSON.parseObject(response); - if (jsonObject.getInteger("code").equals(200)) { - JSONObject data = (JSONObject) jsonObject.get("data"); - News.info((String) data.get("msg")); - } else { - News.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", wmsUrl + "/rpc/auto/emptyOut/v1", "", response); - } - } catch (Exception e) { - e.printStackTrace(); - TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); - } + } } + @Autowired + private WrkMastService wrkMastService; + public synchronized void autoEmptyIn() { DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, 1); - Integer autoInSite = 12; - StaProtocol staProtocol = devpThread.getStation().get(autoInSite); + StaProtocol staProtocol = devpThread.getStation().get(103); if (staProtocol == null) { return; } else { @@ -2328,20 +2368,44 @@ } if (staProtocol.isAutoing() //鑷姩 && staProtocol.isLoading() //鏈夌墿 - && staProtocol.isInEnable() //鍙叆淇″彿 +// && staProtocol.isInEnable() //鍙叆淇″彿 && (staProtocol.getWorkNo() == 0 || staProtocol.getWorkNo() >= 9990) //宸ヤ綔鍙蜂负0鎴栬�呭伐浣滃彿鏄�9991~9999锛堣緭閫佹満鐣欑敤锛� ) { try { - LocTypeDto locTypeDto = new LocTypeDto((short) 1, (short) 1, (short) 1); + Date now = new Date(); + // 鐢熸垚宸ヤ綔妗� + WrkMast wrkMast = new WrkMast(); + int workNo = commonService.getWorkNo(0); + wrkMast.setWrkNo(workNo); + wrkMast.setIoTime(now); + wrkMast.setWrkSts(2L); + wrkMast.setIoPri(13D); + wrkMast.setIoType(10); + wrkMast.setCrnNo(1); + wrkMast.setSourceStaNo(101); + wrkMast.setStaNo(103); + wrkMast.setLocNo("0200405"); + wrkMast.setFullPlt("N"); // 婊℃澘锛歂 + wrkMast.setPicking("N"); // 鎷f枡 + wrkMast.setExitMk("N"); // 閫�鍑� + wrkMast.setEmptyMk("Y"); // 绌烘澘 + wrkMast.setLinkMis("Y"); + // 鎿嶄綔浜哄憳鏁版嵁 + wrkMast.setAppeTime(now); + wrkMast.setModiTime(now); + wrkMast.setMemo("鑷姩绌烘墭鍏ュ簱"); + boolean res = wrkMastService.save(wrkMast); - - 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")); - } else { - News.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", wmsUrl + "/rpc/auto/emptyIn/v1", JSON.toJSONString(locTypeDto), response); + // 鏇存柊鐩爣搴撲綅鐘舵�� + LocMast locMast = locMastService.getById("0200405"); + if (locMast.getLocSts().equals("O")) { + locMast.setLocSts("S"); // S.鍏ュ簱棰勭害 + locMast.setModiUser(789L); + locMast.setModiTime(now); + if (!locMastService.updateById(locMast)) { + throw new CoolException("鏀瑰彉搴撲綅鐘舵�佸け璐�"); + } } } catch (Exception e) { e.printStackTrace(); -- Gitblit v1.9.1