From d60d755c814e97d5c77daefad89265ee15d087c2 Mon Sep 17 00:00:00 2001 From: pang.jiabao <pang_jiabao@163.com> Date: 星期五, 05 七月 2024 17:01:55 +0800 Subject: [PATCH] 1.深库位出库让浅库位先出 --- src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 50 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java index a62fc32..4386b97 100644 --- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java @@ -26,7 +26,6 @@ import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; -import javax.servlet.http.HttpServletRequest; import java.io.IOException; import java.util.*; @@ -94,11 +93,13 @@ taskWrk.setIoPri(param.getTaskPriority());//浼樺厛绾� taskWrk.setBarcode(param.getBarcode());//鏉$爜 taskWrk.setCrnNo(param.getCrn()); + String stats = ""; if(param.getIoType() == 1){ taskWrk.setWrkSts(1); if (!Cools.isEmpty(param.getTargetPoint())) { taskWrk.setTargetPoint(Utils.getWcsLocNo(param.getTargetPoint()));//缁堢偣 taskWrk.setOriginTargetPoint(param.getTargetPoint()); + stats = "S"; } } else if (param.getIoType() == 2) { @@ -106,6 +107,7 @@ if (!Cools.isEmpty(param.getStartPoint())) { taskWrk.setStartPoint(Utils.getWcsLocNo(param.getStartPoint()));//璧风偣 taskWrk.setOriginStartPoint(param.getStartPoint()); + stats = "R"; } taskWrk.setTargetPoint(param.getTargetPoint()); }else if (param.getIoType() == 3){ @@ -113,6 +115,7 @@ if (!Cools.isEmpty(param.getStartPoint())) { taskWrk.setStartPoint(Utils.getWcsLocNo(param.getStartPoint()));//璧风偣 taskWrk.setOriginStartPoint(param.getStartPoint()); + stats = "R"; } } @@ -121,6 +124,12 @@ if (!Cools.isEmpty(param.getMemo())) { taskWrk.setMemo(param.getMemo());//澶囨敞 } + + // 鏇存柊搴撲綅鐘舵�� + String wcsLocNo = Utils.getWcsLocNo(param.getStartPoint()); + LocMast locMast = locMastService.selectByLocNo(wcsLocNo); + locMast.setLocSts(stats); + locMastService.updateById(locMast); if (!taskWrkService.insert(taskWrk)) { return R.error("鍒涘缓浠诲姟澶辫触"); @@ -138,6 +147,10 @@ list = getInEnableRoadway(); }else { list = getInEnableRoadway2(); + } + + if (Cools.isEmpty(list)){ + return R.error("鏃犲彲鍏ュ贩閬�"); } @@ -162,7 +175,7 @@ JSONObject jsonObject = JSON.parseObject(response); - apiLogService.save("wms璇锋眰鍏ュ簱鐮佸ご鎺ュ彛" + apiLogService.save("璇锋眰鍏ュ簱鐮佸ご鎺ュ彛" ,wmsUrl+"wcsManager/wcsInterface/inboundTaskApply" ,null ,"127.0.0.1" @@ -213,13 +226,13 @@ } @Override - public void getAgvTaskOver(TaskOverParam param) { + public R getAgvTaskOver(TaskOverParam param) { // 鏍规嵁杈撻�佺嚎plc閬嶅巻 for (DevpSlave devp : slaveProperties.getDevp()) { StaDesc staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>() .eq("stn_desc", param.getWharfCode())); if (Cools.isEmpty(staDesc)){ - throw new RuntimeException("鏈煡璇㈠埌绔欑偣淇℃伅"); + throw new CoolException("鏈煡璇㈠埌绔欑偣淇℃伅"); } // 鑾峰彇鍏ュ簱绔欎俊鎭� DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId()); @@ -237,10 +250,13 @@ staProtocol.setStaNo((short)0); boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(3, staProtocol)); if (result) { - + return R.ok("鍙栬揣瀹屾垚"); } else { - throw new RuntimeException("agv杩斿洖瀹屾垚鍚庯紝鍛戒护涓嬪彂澶辫触"); + throw new CoolException("agv杩斿洖瀹屾垚鍚庯紝鍛戒护涓嬪彂澶辫触"); } + }else { + return R.error("鍙栬揣绔欑偣鐘舵�佹湁璇�,鏈夌墿淇″彿锛�"+staProtocol.isLoading() + +",杞﹁締淇″彿锛�"+staProtocol.isCar()+",宸ヤ綔鍙凤細"+staProtocol.getWorkNo()); } }else { for (DevpSlave.Sta inSta : devp.getInSta()) { @@ -252,16 +268,20 @@ staProtocol.setStaNo(inSta.getStaNo().shortValue()); boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(3, staProtocol)); if (result) { - + return R.ok("鏀捐揣瀹屾垚"); } else { - throw new RuntimeException("agv杩斿洖瀹屾垚鍚庯紝鍛戒护涓嬪彂澶辫触"); + throw new CoolException("agv杩斿洖瀹屾垚鍚庯紝鍛戒护涓嬪彂澶辫触"); } + }else { + return R.error("鏀捐揣绔欑偣鐘舵�佹湁璇�,鏈夌墿淇″彿锛�"+staProtocol.isLoading() + +",杞﹁締淇″彿锛�"+staProtocol.isCar()+",宸ヤ綔鍙凤細"+staProtocol.getWorkNo()); } } } } } + return R.ok(); } @@ -289,8 +309,18 @@ staProtocol = staProtocol.clone(); } Short workNo = staProtocol.getWorkNo(); - if (workNo == 0 && !staProtocol.isLoading()){ + if (workNo == 0 && !staProtocol.isLoading() && staProtocol.isAutoing()){ if (Cools.isEmpty( map.get(inSta.getStaNo()))){ + continue; + } + BasCrnp crnp = basCrnpService.selectOne(new EntityWrapper<BasCrnp>().eq("crn_no", map.get(inSta.getStaNo()))); + if (Cools.isEmpty(crnp)){ + continue; + } + if (crnp.getInEnable().equals("N")){ + continue; + } + if (crnp.getCrnSts()!=3){ continue; } list.add( map.get(inSta.getStaNo())); @@ -325,10 +355,20 @@ staProtocol = staProtocol.clone(); } Short workNo = staProtocol.getWorkNo(); - if (workNo == 0 && !staProtocol.isLoading()){ + if (workNo == 0 && !staProtocol.isLoading() && staProtocol.isAutoing()){ if (Cools.isEmpty( map.get(inSta.getStaNo()))){ continue; } + BasCrnp crnp = basCrnpService.selectOne(new EntityWrapper<BasCrnp>().eq("crn_no", map.get(inSta.getStaNo()))); + if (Cools.isEmpty(crnp)){ + continue; + } + if (crnp.getInEnable().equals("N")){ + continue; + } + if (crnp.getCrnSts()!=3){ + continue; + } list.add( map.get(inSta.getStaNo())); } } -- Gitblit v1.9.1