From 8b8a2086509e28bb902166aa35e4c287eb906621 Mon Sep 17 00:00:00 2001 From: zjj <3272660260@qq.com> Date: 星期一, 30 六月 2025 15:28:39 +0800 Subject: [PATCH] #禁止跨层 --- zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/impl/MainServiceImpl.java | 49 ++++++++++++++++++++++++++----------------------- 1 files changed, 26 insertions(+), 23 deletions(-) diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/impl/MainServiceImpl.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/impl/MainServiceImpl.java index 0582f3e..66eacea 100644 --- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/impl/MainServiceImpl.java +++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/impl/MainServiceImpl.java @@ -23,10 +23,7 @@ import com.zy.asrs.wcs.core.model.command.LiftCommand; import com.zy.asrs.wcs.core.model.enums.*; import com.zy.asrs.wcs.core.service.*; -import com.zy.asrs.wcs.core.utils.OpenUtils; -import com.zy.asrs.wcs.core.utils.RedisUtil; -import com.zy.asrs.wcs.core.utils.ShuttleDispatcher; -import com.zy.asrs.wcs.core.utils.Utils; +import com.zy.asrs.wcs.core.utils.*; import com.zy.asrs.wcs.rcs.News; import com.zy.asrs.wcs.rcs.cache.SlaveConnection; import com.zy.asrs.wcs.rcs.constant.DeviceRedisConstant; @@ -95,6 +92,8 @@ private OpenUtils openUtils; @Autowired private LiftAction liftAction; + @Autowired + private NavigateUtils navigateUtils; /** * 缁勬墭 @@ -102,6 +101,10 @@ */ public synchronized void generateInboundWrk() { try { + List<Task> tasks = taskService.list(new LambdaQueryWrapper<Task>().eq(Task::getTaskCtg,7)); + if (!Cools.isEmpty(tasks)){ + return; + } // 鏍规嵁杈撻�佺嚎plc閬嶅巻 List<Device> list = deviceService.list(new LambdaQueryWrapper<Device>() .eq(Device::getDeviceType, DeviceCtgType.CONVEYOR.val()) @@ -780,10 +783,6 @@ * 鍑哄簱 ====>> 鍚屼竴鏃堕棿涓�鍙扮┛姊溅鍙兘鏈変竴涓嚭搴撲换鍔� */ public synchronized void analyzeOutBoundTask() { - List<Task> moveTask = taskService.selectWaitAnalyzeMoveTask(); - if (!moveTask.isEmpty()) { - return; - } List<Task> tasks = taskService.selectPakOut(); if (tasks.isEmpty()) { return; @@ -816,15 +815,13 @@ // continue; // } -// //鍚屽簱浣嶇粍鏍¢獙 -// List<String> outerLoc = Utils.getGroupOuterLoc(wrkMast.getSourceLocNo()); -// List<LocMast> outerLocMasts = locMastService.selectNotEmptyLocNos(outerLoc); -// if (!outerLocMasts.isEmpty()) { -// News.info("{}浠诲姟锛屾祬搴撲綅瀛樺湪璐х墿锛岀郴缁熺瓑寰呬腑", wrkMast.getWrkNo()); -// continue;//娴呭簱浣嶅瓨鍦ㄦ湭鎵ц浠诲姟 -// } + //妫�娴嬭揣鐗╂槸鍚﹀彲鍑� + boolean checkLocPathIsAvailable = navigateUtils.checkLocPathIsAvailable(task.getOriginLoc(), task.getHostId()); + if(!checkLocPathIsAvailable) { + continue; + } - if (Cools.isEmpty(task.getShuttleNo())) { + if (Cools.isEmpty(task.getShuttleNo()) || task.getShuttleNo() ==0) { //鍒嗛厤灏忚溅 //鎼滅储绌洪棽杞� ShuttleThread shuttleThread = shuttleDispatcher.searchIdleShuttle(task); @@ -844,7 +841,7 @@ // generate motion list List<Motion> motionList = analyzeService.generateMotion(task); if (Cools.isEmpty(motionList)) { - task.setShuttleNo(null);//淇濆瓨绌挎杞﹀彿 + task.setShuttleNo(0);//淇濆瓨绌挎杞﹀彿 task.setUpdateTime(new Date()); if (!taskService.updateById(task)) { News.info("{}浠诲姟鏇存柊绌挎杞﹀彿澶辫触", task.getTaskNo()); @@ -954,12 +951,12 @@ } //鎼滅储鍏朵粬妤煎眰鍏呯數妗� - List<ShuttleChargeSta> list2 = shuttleChargeStaService.list(new LambdaQueryWrapper<ShuttleChargeSta>() - .notIn(ShuttleChargeSta::getDeviceLev, lev) - .eq(ShuttleChargeSta::getStatus, 1)); - if (!list2.isEmpty()) { - allChargeLoc.addAll(list2); - } +// List<ShuttleChargeSta> list2 = shuttleChargeStaService.list(new LambdaQueryWrapper<ShuttleChargeSta>() +// .notIn(ShuttleChargeSta::getDeviceLev, lev) +// .eq(ShuttleChargeSta::getStatus, 1)); +// if (!list2.isEmpty()) { +// allChargeLoc.addAll(list2); +// } //娌℃湁鎵惧埌鍏呯數妗� if (allChargeLoc.isEmpty()) { @@ -1313,6 +1310,12 @@ // 瑙f瀽灏忚溅杞借揣绉诲姩宸ヤ綔妗� public synchronized void analyzeLadenMoveTask() { for (Task task : taskService.selectWaitAnalyzeLadenMoveTask()) { + //妫�娴嬭揣鐗╂槸鍚﹀彲鍑� + boolean checkLocPathIsAvailable = navigateUtils.checkLocPathIsAvailable(task.getOriginLoc(), task.getHostId()); + if(!checkLocPathIsAvailable) { + continue; + } + if (Cools.isEmpty(task.getShuttleNo())) { //鍒嗛厤灏忚溅 //鎼滅储绌洪棽杞� -- Gitblit v1.9.1