From da1c0be7b573ca68fef10f9627bb4225bb327a2d Mon Sep 17 00:00:00 2001 From: hmpc <hmpc> Date: 星期一, 04 十一月 2024 13:35:49 +0800 Subject: [PATCH] * --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 33 +++++++++++++++++++++------------ 1 files changed, 21 insertions(+), 12 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 7634128..1a6f127 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -21,6 +21,7 @@ import com.zy.core.thread.RgvThread; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -47,6 +48,9 @@ private BasCircularShuttleService basCircularShuttleService; @Autowired private WrkMastService wrkMastService; + + @Value("${constant-parameters.perimeter}") + private Long perimeter; /** * 绔欑偣浠诲姟妫�娴� 鏇存柊灏忚溅浣嶇疆淇℃伅 */ @@ -56,7 +60,7 @@ if (wrkMasts.isEmpty()){ return; } - List<BasDevpPosition> basDevpPositions = basDevpPositionService.selectList(new EntityWrapper<BasDevpPosition>().orderBy("plc_position",false)); + List<BasDevpPosition> basDevpPositions = basDevpPositionService.selectList(new EntityWrapper<BasDevpPosition>().orderBy("plc_position",true)); if (basDevpPositions.isEmpty()){ log.error("鑾峰彇鎵�鏈夌珯鐐逛俊鎭紓甯�"); return; @@ -86,8 +90,11 @@ rgvPosition.add(rgvProtocol.getRgvPos()); rgvPositionList.add(rgvPosition); } - Integer rgvNo = SortTheExecutionOfTheCarUtil.LatelyAndGreaterThan(rgvPositionList, sitePosition); - + Integer rgvNo = SortTheExecutionOfTheCarUtil.LatelyAndGreaterThan(rgvPositionList, sitePosition,perimeter); + if (rgvNo == -1){ + log.info("鏇存柊灏忚溅鎺掑簭淇℃伅寮傚父={}",rgvNo); + return; + } List<BasCircularShuttle> basCircularShuttleList = basCircularShuttleService.selectList(new EntityWrapper<BasCircularShuttle>().orderBy("rgv_id", true)); if (basCircularShuttleList.get(0).getRgvNo().equals(rgvNo)){ return; @@ -170,7 +177,7 @@ */ public synchronized void DevpTaskNoRun() { try{ - List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("wrk_sts", 1L).orderBy("modi_time",false)); + List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("wrk_sts", 1L).orderBy("modi_time",true)); if (wrkMasts.isEmpty()){ return; } @@ -185,8 +192,8 @@ if (rgvProtocol == null) { return; } - List<BasDevpPosition> basDevpPositions = basDevpPositionService.selectList(new EntityWrapper<BasDevpPosition>().orderBy("plc_position",false)); - Integer devNo = SortTheExecutionOfTheCarUtil.LatelyAndLessThan(basDevpPositions, rgvProtocol.getRgvPos()); + List<BasDevpPosition> basDevpPositions = basDevpPositionService.selectList(new EntityWrapper<BasDevpPosition>().orderBy("plc_position",true)); + Integer devNo = SortTheExecutionOfTheCarUtil.LatelyAndLessThan(basDevpPositions, rgvProtocol.getRgvPos(),perimeter); BasDevpPosition[] basDevpPositionsList = SortTheExecutionOfTheCarUtil.devpNoSort(basDevpPositions, devNo); BasDevpPosition[] basDevpPositionsListUN = SortTheExecutionOfTheCarUtil.devpNoSortUN(basDevpPositionsList); List<List<WrkMast>> wrkMastLists = getWrkMastLists(basDevpPositionsListUN); @@ -204,12 +211,14 @@ List<WrkMast> wrkMastlistA = new ArrayList<>(); List<WrkMast> wrkMastlistB = new ArrayList<>(); for (BasDevpPosition basDevpPosition : basDevpPositionsListUN){ - WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("sta_no", basDevpPosition.getDevNo()).eq("wrk_sts",1L)); - if (!Cools.isEmpty(wrkMast)){ - if (SortTheExecutionOfTheCarUtil.devpNoSortbj(basDevpPositionsListUN,wrkMast.getSourceStaNo(),wrkMast.getStaNo())){ - wrkMastlistA.add(wrkMast); - } else { - wrkMastlistB.add(wrkMast); + List<WrkMast> wrkMastList = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("sta_no", basDevpPosition.getDevNo()).eq("wrk_sts", 1L).orderBy("modi_time",true)); + for (WrkMast wrkMast:wrkMastList){ + if (!Cools.isEmpty(wrkMast)){ + if (SortTheExecutionOfTheCarUtil.devpNoSortbj(basDevpPositionsListUN,wrkMast.getSourceStaNo(),wrkMast.getStaNo())){ + wrkMastlistA.add(wrkMast); + } else { + wrkMastlistB.add(wrkMast); + } } } } -- Gitblit v1.9.1