From e0c7be4335fd432e60bfc5cbb81dfd7096589a0b Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期五, 14 七月 2023 10:42:33 +0800
Subject: [PATCH] rgv路径

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |   65 +++++++++++++++++++++++++++++++-
 1 files changed, 62 insertions(+), 3 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 08378c0..5be7d4a 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -632,7 +632,7 @@
                         }
 
                         //鍒ゆ柇琛岃蛋璺緞鏄惁琚崰鐢�
-                        Integer staNo = wrkMast.getStaNo();
+                        Integer staNo = wrkMast.getSourceStaNo();
                         BasDevp basDevp = basDevpService.selectById(staNo);
                         if (basDevp == null) {
                             continue;//鐩爣绔欎笉瀛樺湪
@@ -641,8 +641,13 @@
                         int startPath = rgvProtocol.getRgvPos().intValue();
                         //鐩爣璺緞鍊�
                         int endPath = basDevp.getLocType3().intValue();
-                        boolean pathUsed = RgvUtils.isPathUsed(startPath, endPath);
-
+                        boolean pathUsed = RgvUtils.isPathUsed(startPath, endPath);//鍒ゆ柇琛岃蛋璺緞鏄惁琚崰鐢�
+                        if (pathUsed) {
+                            //琛岃蛋璺緞琚崰鐢紝绂佹涓嬪彂鍛戒护
+                            continue;
+                        }
+                        //琛岃蛋璺緞绌洪棽锛岄攣瀹氳矾寰�
+                        RgvUtils.lockPath(startPath, endPath, rgvProtocol.getRgvNo(), true);
 
                         //  鍛戒护涓嬪彂鍖� --------------------------------------------------------------------------
                         RgvCommand rgvCommand = new RgvCommand();
@@ -672,6 +677,24 @@
                             continue;
                         }
 
+                        //鍒ゆ柇琛岃蛋璺緞鏄惁琚崰鐢�
+                        Integer staNo = wrkMast.getStaNo();
+                        BasDevp basDevp = basDevpService.selectById(staNo);
+                        if (basDevp == null) {
+                            continue;//鐩爣绔欎笉瀛樺湪
+                        }
+                        //璧峰璺緞
+                        int startPath = rgvProtocol.getRgvPos().intValue();
+                        //鐩爣璺緞鍊�
+                        int endPath = basDevp.getLocType3().intValue();
+                        boolean pathUsed = RgvUtils.isPathUsed(startPath, endPath);//鍒ゆ柇琛岃蛋璺緞鏄惁琚崰鐢�
+                        if (pathUsed) {
+                            //琛岃蛋璺緞琚崰鐢紝绂佹涓嬪彂鍛戒护
+                            continue;
+                        }
+                        //琛岃蛋璺緞绌洪棽锛岄攣瀹氳矾寰�
+                        RgvUtils.lockPath(startPath, endPath, rgvProtocol.getRgvNo(), true);
+
                         //  鍛戒护涓嬪彂鍖� --------------------------------------------------------------------------
                         RgvCommand rgvCommand = new RgvCommand();
                         rgvCommand.setRgvNo(wrkMast.getRgvNo()); // RGV缂栧彿
@@ -696,6 +719,24 @@
                         if (rgvProtocol.getTaskNo1() != 0 || rgvProtocol.getLoaded1() != 0) {//RGV鏄惁鏃犱换鍔°�丷GV鏄惁鏃犺揣
                             continue;
                         }
+
+                        //鍒ゆ柇琛岃蛋璺緞鏄惁琚崰鐢�
+                        Integer staNo = wrkMast.getSourceStaNo();
+                        BasDevp basDevp = basDevpService.selectById(staNo);
+                        if (basDevp == null) {
+                            continue;//鐩爣绔欎笉瀛樺湪
+                        }
+                        //璧峰璺緞
+                        int startPath = rgvProtocol.getRgvPos().intValue();
+                        //鐩爣璺緞鍊�
+                        int endPath = basDevp.getLocType3().intValue();
+                        boolean pathUsed = RgvUtils.isPathUsed(startPath, endPath);//鍒ゆ柇琛岃蛋璺緞鏄惁琚崰鐢�
+                        if (pathUsed) {
+                            //琛岃蛋璺緞琚崰鐢紝绂佹涓嬪彂鍛戒护
+                            continue;
+                        }
+                        //琛岃蛋璺緞绌洪棽锛岄攣瀹氳矾寰�
+                        RgvUtils.lockPath(startPath, endPath, rgvProtocol.getRgvNo(), true);
 
                         //  鍛戒护涓嬪彂鍖� --------------------------------------------------------------------------
                         RgvCommand rgvCommand = new RgvCommand();
@@ -725,6 +766,24 @@
                             continue;
                         }
 
+                        //鍒ゆ柇琛岃蛋璺緞鏄惁琚崰鐢�
+                        Integer staNo = wrkMast.getStaNo();
+                        BasDevp basDevp = basDevpService.selectById(staNo);
+                        if (basDevp == null) {
+                            continue;//鐩爣绔欎笉瀛樺湪
+                        }
+                        //璧峰璺緞
+                        int startPath = rgvProtocol.getRgvPos().intValue();
+                        //鐩爣璺緞鍊�
+                        int endPath = basDevp.getLocType3().intValue();
+                        boolean pathUsed = RgvUtils.isPathUsed(startPath, endPath);//鍒ゆ柇琛岃蛋璺緞鏄惁琚崰鐢�
+                        if (pathUsed) {
+                            //琛岃蛋璺緞琚崰鐢紝绂佹涓嬪彂鍛戒护
+                            continue;
+                        }
+                        //琛岃蛋璺緞绌洪棽锛岄攣瀹氳矾寰�
+                        RgvUtils.lockPath(startPath, endPath, rgvProtocol.getRgvNo(), true);
+
                         //  鍛戒护涓嬪彂鍖� --------------------------------------------------------------------------
                         RgvCommand rgvCommand = new RgvCommand();
                         rgvCommand.setRgvNo(wrkMast.getRgvNo()); // RGV缂栧彿

--
Gitblit v1.9.1