From dbeff5ad092f2e8b599950ebee1d3499e466d9a4 Mon Sep 17 00:00:00 2001 From: tqs <56479841@qq.com> Date: 星期四, 22 十二月 2022 10:43:21 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 65 ++++++++++++++++++-------------- 1 files changed, 37 insertions(+), 28 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 44e1231..588859d 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -331,6 +331,7 @@ /** * 鎷f枡銆佸苟鏉裤�佺洏鐐瑰啀鍏ュ簱銆愮2闃舵銆� */ + @Transactional public synchronized void stnToCrnStnPick1(){ for (DevpSlave devp : slaveProperties.getDevp()) { // 閬嶅巻鎷f枡鍏ュ簱鍙� @@ -454,7 +455,8 @@ throw new CoolException(wrkMast.getWrkNo() + "淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗eけ璐�"); } - String sourceLocNo = wrkMast.getSourceLocNo().trim(); +// String sourceLocNo = wrkMast.getSourceLocNo().trim(); + // 鏇存柊宸ヤ綔妗f暟鎹姸鎬� wrkMast.setIoType(wrkMast.getIoType() - 50); // 鍏ュ嚭搴撶被鍨�: 103->53,104->54,107->57 wrkMast.setWrkSts(2L); // 宸ヤ綔鐘舵��: 2.璁惧涓婅蛋 @@ -470,14 +472,8 @@ if (wrkMastMapper.setSteEmpty(wrkMast.getWrkNo()) == 0) { throw new CoolException(wrkMast.getWrkNo() + "鏇存柊宸ヤ綔妗f暟鎹姸鎬佸け璐�"); } + LocMast locMast = null; - // 淇敼婧愬簱浣嶇姸鎬� O.绌哄簱浣� -// locMast = locMastService.selectById(sourceLocNo); -// locMast.setLocSts("O"); -// locMast.setModiTime(new Date()); -// if (!locMastService.updateById(locMast)) { -// throw new CoolException(wrkMast.getWrkNo() + "淇敼婧愬簱浣嶇姸鎬� O.绌哄簱浣�"); -// } // 淇敼鐩爣搴撲綅鐘舵�� Q.鎷f枡/鐩樼偣/骞舵澘鍐嶅叆搴� locMast = locMastService.selectById(wrkMast.getLocNo()); locMast.setLocSts("Q"); @@ -485,10 +481,21 @@ if (!locMastService.updateById(locMast)) { throw new CoolException(wrkMast.getWrkNo() + "淇敼鐩爣搴撲綅鐘舵�� Q.鎷f枡/鐩樼偣/骞舵澘鍐嶅叆搴�"); } - // 搴撳瓨鏄庣粏杞Щ -// if (!locDetlService.updateLocNo(wrkMast.getLocNo(), sourceLocNo)) { -// throw new CoolException(wrkMast.getWrkNo() + "浠诲姟搴撳瓨鏄庣粏杞Щ澶辫触锛侊紒锛�"); -// } + // 婧愬簱浣嶅簱瀛樻槑缁嗚浆绉诲埌鐩爣搴撲綅 + if (!locDetlService.updateLocNo(wrkMast.getLocNo(), wrkMast.getSourceLocNo())) { + throw new CoolException(wrkMast.getLocNo() + "浠诲姟搴撳瓨鏄庣粏杞Щ澶辫触锛侊紒锛�"); + } + + // 淇敼婧愬簱浣嶇姸鎬� O.绌哄簱浣� + LocMast sourceLocMast = locMastService.selectById(wrkMast.getSourceLocNo()); + if (sourceLocMast.getLocSts().equals("P")) { + sourceLocMast.setLocSts("O"); + sourceLocMast.setModiTime(new Date()); + if (!locMastService.updateById(sourceLocMast)) { + throw new CoolException(wrkMast.getWrkNo() + "淇敼婧愬簱浣嶇姸鎬� O.绌哄簱浣�"); + } + locDetlService.delete(new EntityWrapper<LocDetl>().eq("loc_no", wrkMast.getSourceLocNo())); + } // 鏉$爜璁惧澶勭悊 barcodeThread.setBarcode(""); @@ -544,16 +551,16 @@ public synchronized void pickWrkCompleteStaNo() { List<WrkMast> wrkMasts = wrkMastMapper.selectPick17(null, null); for (WrkMast wrkMast : wrkMasts) { - // 淇敼婧愬簱浣嶇姸鎬� O.绌哄簱浣� - LocMast locMast = locMastService.selectById(wrkMast.getSourceLocNo()); - if (locMast.getLocSts().equals("P")) { - locMast.setLocSts("O"); - locMast.setModiTime(new Date()); - if (!locMastService.updateById(locMast)) { - throw new CoolException(wrkMast.getWrkNo() + "淇敼婧愬簱浣嶇姸鎬� O.绌哄簱浣�"); - } - locDetlService.delete(new EntityWrapper<LocDetl>().eq("loc_no", wrkMast.getSourceLocNo())); - } +// // 淇敼婧愬簱浣嶇姸鎬� O.绌哄簱浣� +// LocMast locMast = locMastService.selectById(wrkMast.getSourceLocNo()); +// if (locMast.getLocSts().equals("P")) { +// locMast.setLocSts("O"); +// locMast.setModiTime(new Date()); +// if (!locMastService.updateById(locMast)) { +// throw new CoolException(wrkMast.getWrkNo() + "淇敼婧愬簱浣嶇姸鎬� O.绌哄簱浣�"); +// } +// locDetlService.delete(new EntityWrapper<LocDetl>().eq("loc_no", wrkMast.getSourceLocNo())); +// } // 淇敼宸ヤ綔妗� wrkMast.setIoPri(13D); wrkMast.setModiTime(new Date()); @@ -932,13 +939,13 @@ WrkMast one = wrkMastMapper.selectLocMoveData(slave.getId()); if(!Cools.isEmpty(one)){ //瀛樺湪绉诲簱浠诲姟锛屼笖鍦ㄧЩ鍑轰腑锛屼笖绉诲簱婧愬簱浣嶄笌寰呭嚭搴撳簱浣嶄笉鍦ㄥ悓涓�搴撲綅缁勶紝鏃惰烦鍑猴紝纭繚绉诲簱/鍑哄簱鍏ㄥ浠诲姟瀹屾垚鍚庯紝鍐嶆墽琛屼笅涓�绗� - if(wrkMast.getWrkNo() ==11 && one.getWrkSts() > 10 && (Utils.getGroupRow(wrkMast.getSourceLocNo()) != Utils.getGroupRow(one.getSourceLocNo()) + if(wrkMast.getWrkNo() == 11 && one.getWrkSts() > 10 && (Utils.getGroupRow(wrkMast.getSourceLocNo()) != Utils.getGroupRow(one.getSourceLocNo()) || Utils.getBay(wrkMast.getSourceLocNo()) != Utils.getBay(one.getSourceLocNo()) || Utils.getLev(wrkMast.getSourceLocNo()) != Utils.getLev(one.getSourceLocNo()))){ continue; } //瀛樺湪绉诲簱浠诲姟锛屼笖鍦ㄧЩ鍥炰腑锛屼笖绉诲簱鐩爣搴撲綅涓庡緟鍑哄簱搴撲綅涓嶅湪鍚屼竴搴撲綅缁勶紝鏃惰烦鍑猴紝纭繚绉诲簱/鍑哄簱鍏ㄥ浠诲姟瀹屾垚鍚庯紝鍐嶆墽琛屼笅涓�绗� - if(wrkMast.getWrkNo() ==11 && one.getWrkSts() < 11 && (Utils.getGroupRow(wrkMast.getSourceLocNo()) != Utils.getGroupRow(one.getLocNo()) + if(wrkMast.getWrkNo() == 11 && one.getWrkSts() < 11 && (Utils.getGroupRow(wrkMast.getSourceLocNo()) != Utils.getGroupRow(one.getLocNo()) || Utils.getBay(wrkMast.getSourceLocNo()) != Utils.getBay(one.getLocNo()) || Utils.getLev(wrkMast.getSourceLocNo()) != Utils.getLev(one.getLocNo()))){ continue; @@ -949,7 +956,7 @@ boolean flag = false; if(!locMastService.isOutMost(wrkMast.getSourceLocNo())){ WrkMast wrkMastMove = wrkMastMapper.selectLocMoveWorking(slave.getId()); - if(wrkMastMove != null){ + if(wrkMastMove != null && wrkMast.getWrkNo() == 11){ continue; } @@ -1446,7 +1453,7 @@ } } LocMast sourceLoc = locMastService.selectById(wrkMast.getSourceLocNo()); - if(sourceLoc.getLocSts().equals("F")){ + if(sourceLoc.getLocSts().equals("F") || sourceLoc.getLocSts().equals("D")){ sourceLoc.setLocSts("R"); // R.鍑哄簱棰勭害 sourceLoc.setModiTime(new Date()); if (!locMastService.updateById(sourceLoc)) { @@ -2119,7 +2126,7 @@ SteThread steThread = (SteThread) SlaveConnection.get(SlaveType.Ste, steNo); SteProtocol steProtocol = steThread.getSteProtocol(); if (steProtocol == null) { return; } - if (steProtocol.isIdle()) { + if (steProtocol.isIdle() && steProtocol.getLoad() == 0) { // 鍫嗗灈鏈虹┖闂� if (crnProtocol.getStatusType().equals(CrnStatusType.IDLE) || crnProtocol.getTaskNo() == 0) { LocMast locMast; @@ -2198,7 +2205,7 @@ SteProtocol steProtocol = steThread.getSteProtocol(); if (steProtocol == null) { return; } // 绌挎杞︾┖闂� - if (steProtocol.isIdle()) { + if (steProtocol.isIdle() && steProtocol.getLoad() == 0) { // 鍫嗗灈鏈虹┖闂� if (crnProtocol.getStatusType().equals(CrnStatusType.IDLE) || crnProtocol.getTaskNo() == 0) { @@ -2544,6 +2551,8 @@ log.error("搴撲綅绉昏浆 ===>> 杞Щ搴撳瓨鏄庣粏鏁版嵁澶辫触锛沎婧愬簱浣�={}],[鐩爣搴撲綅={}]", wrkMast.getSourceLocNo(), wrkMast.getLocNo()); continue; } + } else { + locSts = "D"; } if(Cools.isEmpty(locSts)){ log.error("搴撲綅绉昏浆 ===>> 搴撳瓨鐘舵�佷负绌猴紱[婧愬簱浣�={}],[鐩爣搴撲綅={}]", wrkMast.getSourceLocNo(), wrkMast.getLocNo()); -- Gitblit v1.9.1