From 4dfc306f910a8b1ae1a2869bc8ffd38b2faf8f2e Mon Sep 17 00:00:00 2001 From: whycq <10027870+whycq@user.noreply.gitee.com> Date: 星期五, 24 五月 2024 09:02:27 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 56 insertions(+), 3 deletions(-) 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 903c93b..f64eed8 100644 --- a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java +++ b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java @@ -17,6 +17,7 @@ import org.springframework.transaction.annotation.Transactional; import java.io.IOException; +import java.util.Date; import java.util.List; import java.util.Map; import java.util.stream.Collectors; @@ -70,7 +71,11 @@ // 绌烘澘鍏ュ簱 璁剧疆搴撲綅鐘舵�佷负D.绌烘《/绌烘爤鏉� String locSts = agvWrkMast.getIoType() == 10 ? "D" : "F"; if (agvWrkMast.getIoType() == 10 || agvWrkMast.getIoType() == 109) { - agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"D",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue()); + if (agvWrkMast.getIoType() == 109 && agvWrkMast.getLocNo().substring(0,2).equals("DB")) { + agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getLocNo(),"R",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue()); + } else { + agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"D",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue()); + } } else { agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue()); } @@ -107,9 +112,20 @@ } if(agvWrkMast.getIoType() == 109){ - //淇敼婧愬簱浣嶇姸鎬佷负O - agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",agvWrkMast.getWhsType().shortValue(),"",(short)0); + if (agvWrkMast.getSourceLocNo().substring(0,2).equals("DB")) { + agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","",(short)0); + } else { + //淇敼婧愬簱浣嶇姸鎬佷负O + agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",agvWrkMast.getWhsType().shortValue(),"",(short)0); + // 鏂板缓宸ヤ綔妗� + Date now = new Date(); + createWrkMast(109, 201L, agvWrkMast.getLocNo(), "", agvWrkMast.getBarcode(), now, 9527L, agvWrkMast.getWhsType(), 0); + } } + if (agvWrkMast.getIoType() == 58) { + agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","",agvWrkMast.getWhsType().shortValue()); + } + //鍒犻櫎AGV宸ヤ綔妗� @@ -336,4 +352,41 @@ return num <= maxWrokNum; }).collect(Collectors.toList()); } + + /* + 鐢熸垚宸ヤ綔妗� + */ + private AgvWrkMast createWrkMast(int ioType, long wrkSts, String sourceLocNo, String locNo, String barcode, Date now, Long userId, int containerType, int floor){ + AgvWrkMast wrkMast = new AgvWrkMast(); + //宸ヤ綔鐘舵�� + wrkMast.setWrkSts(wrkSts); + //鍏ュ嚭搴撶被鍨� + wrkMast.setIoType(ioType); + wrkMast.setIoTime(now); + //浼樺厛绾� + wrkMast.setIoPri(300.0); + //婧愮珯鐐� + wrkMast.setSourceLocNo(sourceLocNo); + //鐩爣绔欑偣 + wrkMast.setLocNo(locNo); + //璐ф灦缂栫爜 + wrkMast.setBarcode(barcode); + //璐ф灦绫诲瀷 + wrkMast.setWhsType(containerType); + // 鐩爣妤煎眰 + wrkMast.setCrnNo(floor); + + wrkMast.setAppeUser(userId); + wrkMast.setAppeTime(now); + wrkMast.setModiUser(userId); + wrkMast.setModiTime(now); + + if (!agvWrkMastService.insertByIncrease(wrkMast)) { + throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�"); + } + + wrkMast = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>().eq("loc_no", locNo).eq("source_loc_no",sourceLocNo).eq("barcode",barcode).orderBy("modi_time",false)); + + return wrkMast; + } } -- Gitblit v1.9.1