From 236edf0559e2d5a6031b1df56a69454baa0357e5 Mon Sep 17 00:00:00 2001
From: zzgtfwq <zzgtfwq>
Date: 星期二, 09 十二月 2025 14:26:44 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/core/MainProcess.java |  191 +++++++++++++++++------------------------------
 1 files changed, 70 insertions(+), 121 deletions(-)

diff --git a/src/main/java/com/zy/core/MainProcess.java b/src/main/java/com/zy/core/MainProcess.java
index fbb579c..5459597 100644
--- a/src/main/java/com/zy/core/MainProcess.java
+++ b/src/main/java/com/zy/core/MainProcess.java
@@ -24,8 +24,8 @@
     private MainServiceImpl mainService;
     // 鎵�灞炵嚎绋�
     private Thread thread;
-    private Thread armThread;
-    private Thread agvThread;
+    private Thread rgvThread;
+    private Thread licenseThread;
     // 棰戠巼
     private int i = 0;
     private int k = 0;
@@ -37,12 +37,10 @@
     public void start(){
         thread = new Thread(this::crnAndDevRun);
         thread.start();
-
-        armThread = new Thread(this::roboticArmDispatch);
-        armThread.start();
-
-        agvThread = new Thread(this::agvDispatch);
-        agvThread.start();
+        rgvThread = new Thread(this::rgvRun);
+        rgvThread.start();
+        licenseThread = new Thread(this::licenseThreadRun);
+        licenseThread.start();
     }
     private void crnAndDevRun() {
         while (!Thread.currentThread().isInterrupted()) {
@@ -55,136 +53,87 @@
                 if (!SystemProperties.WCS_RUNNING_STATUS.get()) {
                     continue;
                 }
-
-                // 婕旂ず
-//                    mainService.crnDemoOfLocMove1();
-                //鍒锋柊RGV鍦板浘
-                mainService.refreshRgvMap();
-
-                // 鍏ュ嚭搴撴ā寮忓垏鎹㈠嚱鏁�
-//                    mainService.ioConvert();
-
-                // 鎷f枡銆佸苟鏉裤�佺洏鐐瑰啀鍏ュ簱
-                mainService.stnToCrnStnPick(3);
-//                    mainService.stnToCrnStnPick2();
-
+//                // 绯荤粺婕旂ず妯″紡杩愯鐘舵�佸垽鏂�
+//                if (SystemProperties.WCS_RUNNING_STATUS_DEMO.get()) {
+//                    continue;
+//                }
                 // 鍏ュ簱  ===>> 鍏ュ簱绔欏埌鍫嗗灈鏈虹珯锛屾牴鎹潯鐮佹壂鎻忕敓鎴愬叆搴撳伐浣滄。
-                mainService.generateStoreWrkFile(1); // 缁勬墭
-//                    mainService.generateStoreWrkFile0(2); // WMS鍏ュ簱
-                Thread.sleep(500);
-
+                mainService.generateStoreWrkFile(); // 缁勬墭
+                // 鍏ュ簱  ===>> 绌烘爤鏉垮垵濮嬪寲鍏ュ簱
+                mainService.storeEmptyPlt();
+//                mainService.generateStoreWrkFileWalk(); // wms鍏ュ簱浠诲姟涓嬪彂
                 // 鍑哄簱  ===>>  鍫嗗灈鏈哄嚭搴撶珯鍒板嚭搴撶珯
-                mainService.crnStnToOutStn(4);
+                mainService.crnStnToOutStn();
                 // 鍏ュ嚭搴�  ===>>  鍫嗗灈鏈哄叆鍑哄簱浣滀笟涓嬪彂
-                mainService.crnIoExecute(5);
-                // 鍏ュ嚭搴撳寮� ===>> 鍫嗗灈鏈哄懡浠や笅鍙戝悗锛屽紓姝ヤ慨鏀瑰伐浣滄。鐘舵��
-//                    mainService.crnIoWrkMast();
+                mainService.crnIoExecute();
                 // 鍏ュ簱  ===>> 鎵ц瀵瑰伐浣滄。鐨勫畬鎴愭搷浣�
-                mainService.storeFinished(6);
-                // 鍫嗗灈鏈哄紓甯镐俊鎭褰�
-                mainService.recCrnErr(7);
-                // 鍏ュ簱  ===>> 绌烘爤鏉垮垵濮嬪寲鍏ュ簱,鍙夎溅鍏ュ簱绔欐斁璐�
-                mainService.storeEmptyPlt(8);
-                // 鍑哄簱  ===>> 宸ヤ綔妗d俊鎭啓鍏ed鏄剧ず鍣�
-                mainService.ledExecute(9);
-                // 鍏朵粬  ===>> LED鏄剧ず鍣ㄥ浣嶏紝鏄剧ず榛樿淇℃伅
-                mainService.ledReset();
-                //鍫嗗灈鏈鸿鎺ヤ换鍔$敓鎴�
-                mainService.connectWrk(10);
+                mainService.storeFinished();
+                // 鍑哄簱  ===>>  鍫嗗灈鏈�10鍒嗛挓鏃犱换鍔″垯鍥炲埌婧愮偣
+                mainService.crnStnToOutStnSou();
 
-//                    mainService.outOfDevp(11);
 
-                if (i>10){
-                    //绌烘墭鐩樿嚜鍔ㄥ嚭搴�
-                    mainService.autoEmptyOut();
-                    //绌烘墭鐩樿嚜鍔ㄥ叆搴�
-                    mainService.autoEmptyIn();
-                    i=0;
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+        }
+    }
+    private void rgvRun() {
+        while (!Thread.currentThread().isInterrupted()) {
+            try {
+
+                // 闂撮殧
+                Thread.sleep(1000);
+
+                // 绯荤粺杩愯鐘舵�佸垽鏂�
+                if (!SystemProperties.WCS_RUNNING_STATUS.get()) {
+                    continue;
                 }
-                i++;
+                // 浠诲姟鐢熸垚
+                mainService.taskCreate();
+                // 浠诲姟涓嬪彂
+                mainService.taskStart();
+                // 浠诲姟鍒犻櫎
+                mainService.taskCancel();
 
-                /////////////////////////////////////RGV璋冨害/////////////////////////////////////
-                k++;
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+        }
+    }
 
-                // RGV  ===>>  灏忚溅浠诲姟浣滀笟涓嬪彂
-                try{
-                    //RGV灏忚溅鍑哄叆搴撳彇璐т笅鍙�
-                    mainService.rgvIoExecute(11);
-                    if(k > 2){
-                        mainService.rgvOutExecute();
-                        k = 0;
+    private void licenseThreadRun(){
+        int i = 0;
+        while (true) {
+            try{
+                Thread.sleep(60*60*1000L);
+
+                // 绯荤粺杩愯鐘舵�佸垽鏂�
+                if (!SystemProperties.WCS_RUNNING_STATUS.get()) {
+                    continue;
+                }
+
+                log.info("++++++++ 寮�濮嬮獙璇佽鍙瘉 ++++++++");
+                if (!mainService.licenseVerify()){
+                    if (i>6){
+                        SystemProperties.WCS_RUNNING_STATUS.set(Boolean.FALSE);
+                        log.info("++++++++ 楠岃瘉璁稿彲璇佸け璐� ++++++++");
+                        i = 0;
+                    } else {
+                        i++;
                     }
-                }catch (Exception e){
-                    e.printStackTrace();
-                    log.error("RGV  ===>>  灏忚溅浠诲姟浣滀笟涓嬪彂寮傚父"+e);
+                } else {
+//                    SystemProperties.WCS_RUNNING_STATUS.set(Boolean.TRUE);
+                    log.info("++++++++ 楠岃瘉璁稿彲璇佹垚鍔� ++++++++");
                 }
-//                //瀹屾垚灏忚溅浠诲姟
-                mainService.rgvTaskComplete();
-
-
-            } catch (Exception e) {
-                e.printStackTrace();
-            }
-        }
-    }
-
-    private void roboticArmDispatch() {
-        while (!Thread.currentThread().isInterrupted()) {
-            try {
-
-                // 闂撮殧
-                Thread.sleep(400);
-
-                // 绯荤粺杩愯鐘舵�佸垽鏂�
-                if (!SystemProperties.WCS_RUNNING_STATUS.get()) {
-                    continue;
-                }
-
-                //arm浠诲姟瀹屾垚
-                mainService.armMissionAccomplished();//4==>5
-                mainService.armMissionAccomplishedScanToCheckIn();//3===銆�4
-
-                //arm浠诲姟涓嬪彂
-                mainService.armTaskAssignment();//0===銆�1
-
-            } catch (Exception e) {
-                e.printStackTrace();
-            }
-        }
-    }
-
-    private void agvDispatch() {
-        while (!Thread.currentThread().isInterrupted()) {
-            try {
-
-                // 闂撮殧
-                Thread.sleep(400);
-
-                // 绯荤粺杩愯鐘舵�佸垽鏂�
-                if (!SystemProperties.WCS_RUNNING_STATUS.get()) {
-                    continue;
-                }
-                //agv浠诲姟涓嬪彂
-//                mainService.agvTaskAssignment0();//0===銆�1  AGV搴撲綅==銆嬭緭閫佺嚎绔欑偣  0
-//                mainService.agvTaskAssignment1();//0===銆�1  AGV搴撲綅==銆婣GV搴撲綅  1
-//                mainService.agvTaskAssignment2();//0===銆�1  杈撻�佺嚎绔欑偣==銆婣GV搴撲綅  2
-//                mainService.agvTaskAssignment3();//0===銆�1  杈撻�佺嚎绔欑偣==銆嬭緭閫佺嚎绔欑偣  3
-//
-//
-//                mainService.agvTaskCreateFull();//浠诲姟鐢熸垚  鍑哄簱鍙�==銆婣GV搴撲綅
-//                mainService.agvTaskCreateEmpty();//浠诲姟鐢熸垚  鍑哄簱鍙�==銆婣GV搴撲綅
-//                mainService.agvTaskCreateR();//浠诲姟鐢熸垚  AGV搴撲綅==銆嬪叆搴撳彛
-
-            } catch (Exception e) {
-                e.printStackTrace();
-            }
+            } catch (Exception e) {}
         }
     }
 
     @PreDestroy
     public void shutDown(){
         if (thread != null) thread.interrupt();
-        if (armThread != null) armThread.interrupt();
+        if (rgvThread != null) rgvThread.interrupt();
+        if (licenseThread != null) licenseThread.interrupt();
     }
 
 }

--
Gitblit v1.9.1