From a38d955f816eb64f297cd587b507defd5839892e Mon Sep 17 00:00:00 2001
From: zzgtfwq <zzgtfwq>
Date: 星期二, 09 十二月 2025 15:08:46 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/core/MainProcess.java |  177 ++++++++++++++++++++++++++++++++---------------------------
 1 files changed, 96 insertions(+), 81 deletions(-)

diff --git a/src/main/java/com/zy/core/MainProcess.java b/src/main/java/com/zy/core/MainProcess.java
index 7a40880..5459597 100644
--- a/src/main/java/com/zy/core/MainProcess.java
+++ b/src/main/java/com/zy/core/MainProcess.java
@@ -24,101 +24,116 @@
     private MainServiceImpl mainService;
     // 鎵�灞炵嚎绋�
     private Thread thread;
+    private Thread rgvThread;
+    private Thread licenseThread;
     // 棰戠巼
     private int i = 0;
+    private int k = 0;
     private boolean rgcWrk = true;
 
     /**
      * =====>>  寮�濮嬪伐浣�
      */
     public void start(){
-        thread = new Thread(() -> {
-            while (!Thread.currentThread().isInterrupted()) {
-                try {
-
-                    // 闂撮殧
-                    Thread.sleep(500);
-
-                    // 绯荤粺杩愯鐘舵�佸垽鏂�
-                    if (!SystemProperties.WCS_RUNNING_STATUS.get()) {
-                        continue;
-                    }
-
-                    // 婕旂ず
-                    mainService.crnDemoOfLocMove1();
-                    //鍒锋柊RGV鍦板浘
-                    mainService.refreshRgvMap();
-
-                    // 鍏ュ嚭搴撴ā寮忓垏鎹㈠嚱鏁�
-//                    mainService.ioConvert();
-                    // 鍏ュ簱  ===>> 鍏ュ簱绔欏埌鍫嗗灈鏈虹珯锛屾牴鎹潯鐮佹壂鎻忕敓鎴愬叆搴撳伐浣滄。
-                    mainService.generateStoreWrkFile(1); // 缁勬墭
-                    mainService.generateStoreWrkFile0(2); // WMS鍏ュ簱
-                    Thread.sleep(500);
-                    // 鎷f枡銆佸苟鏉裤�佺洏鐐瑰啀鍏ュ簱
-                    mainService.stnToCrnStnPick(3);
-                    // 鍑哄簱  ===>>  鍫嗗灈鏈哄嚭搴撶珯鍒板嚭搴撶珯
-                    mainService.crnStnToOutStn(4);
-                    // 鍏ュ嚭搴�  ===>>  鍫嗗灈鏈哄叆鍑哄簱浣滀笟涓嬪彂
-                    mainService.crnIoExecute(5);
-                    // 鍏ュ嚭搴撳寮� ===>> 鍫嗗灈鏈哄懡浠や笅鍙戝悗锛屽紓姝ヤ慨鏀瑰伐浣滄。鐘舵��
-//                    mainService.crnIoWrkMast();
-                    // 鍏ュ簱  ===>> 鎵ц瀵瑰伐浣滄。鐨勫畬鎴愭搷浣�
-                    mainService.storeFinished(6);
-                    // 鍫嗗灈鏈哄紓甯镐俊鎭褰�
-                    mainService.recCrnErr(7);
-                    // 鍏ュ簱  ===>> 绌烘爤鏉垮垵濮嬪寲鍏ュ簱,鍙夎溅鍏ュ簱绔欐斁璐�
-                    mainService.storeEmptyPlt(8);
-                    // 鍑哄簱  ===>> 宸ヤ綔妗d俊鎭啓鍏ed鏄剧ず鍣�
-                    mainService.ledExecute(9);
-                    // 鍏朵粬  ===>> LED鏄剧ず鍣ㄥ浣嶏紝鏄剧ず榛樿淇℃伅
-                    mainService.ledReset(10);
-
-                    mainService.outOfDevp(11);
-
-                    //绌烘墭鐩樿嚜鍔ㄥ嚭搴�
-                    mainService.autoEmptyOut();
-//                    //绌烘墭鐩樿嚜鍔ㄥ叆搴�
-//                    mainService.autoEmptyIn();
-
-                    // 鍏朵粬  ===>> 鍏ュ嚭搴撴ā寮忓垏鎹�
-//                    i++;
-//                    if (i > 1) {
-//                        mainService.ioConvert();
-//                        i = 0;
-//                    }
-
-                    /////////////////////////////////////RGV璋冨害/////////////////////////////////////
-//
-                    //瀹屾垚灏忚溅浠诲姟
-                    mainService.rgvCompleteWrkMastSta();
-
-//                    //鎵ц灏忚溅绌烘澘鎼繍浠诲姟
-//                    mainService.rgvRunWrkMastEmptyStaPut();//鏀�
-//                    mainService.rgvRunWrkMastEmptyStaTake();//鍙�
-//                    if (rgcWrk){
-//                        //鎵ц灏忚溅璐х墿鎼繍浠诲姟
-                        mainService.rgvRunWrkMastFullSta();
-//                        rgcWrk = false;
-//                    }else {
-//                        mainService.rgvRunWrkMastEmptyStaAvoidance();//閬胯
-//                        rgcWrk = true;
-//                    }
-
-
-                    /////////////////////////////////////RGV璋冨害/////////////////////////////////////
-
-                } catch (Exception e) {
-                    e.printStackTrace();
-                }
-            }
-        });
+        thread = new Thread(this::crnAndDevRun);
         thread.start();
+        rgvThread = new Thread(this::rgvRun);
+        rgvThread.start();
+        licenseThread = new Thread(this::licenseThreadRun);
+        licenseThread.start();
+    }
+    private void crnAndDevRun() {
+        while (!Thread.currentThread().isInterrupted()) {
+            try {
+
+                // 闂撮殧
+                Thread.sleep(1000);
+
+                // 绯荤粺杩愯鐘舵�佸垽鏂�
+                if (!SystemProperties.WCS_RUNNING_STATUS.get()) {
+                    continue;
+                }
+//                // 绯荤粺婕旂ず妯″紡杩愯鐘舵�佸垽鏂�
+//                if (SystemProperties.WCS_RUNNING_STATUS_DEMO.get()) {
+//                    continue;
+//                }
+                // 鍏ュ簱  ===>> 鍏ュ簱绔欏埌鍫嗗灈鏈虹珯锛屾牴鎹潯鐮佹壂鎻忕敓鎴愬叆搴撳伐浣滄。
+                mainService.generateStoreWrkFile(); // 缁勬墭
+                // 鍏ュ簱  ===>> 绌烘爤鏉垮垵濮嬪寲鍏ュ簱
+                mainService.storeEmptyPlt();
+//                mainService.generateStoreWrkFileWalk(); // wms鍏ュ簱浠诲姟涓嬪彂
+                // 鍑哄簱  ===>>  鍫嗗灈鏈哄嚭搴撶珯鍒板嚭搴撶珯
+                mainService.crnStnToOutStn();
+                // 鍏ュ嚭搴�  ===>>  鍫嗗灈鏈哄叆鍑哄簱浣滀笟涓嬪彂
+                mainService.crnIoExecute();
+                // 鍏ュ簱  ===>> 鎵ц瀵瑰伐浣滄。鐨勫畬鎴愭搷浣�
+                mainService.storeFinished();
+                // 鍑哄簱  ===>>  鍫嗗灈鏈�10鍒嗛挓鏃犱换鍔″垯鍥炲埌婧愮偣
+                mainService.crnStnToOutStnSou();
+
+
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+        }
+    }
+    private void rgvRun() {
+        while (!Thread.currentThread().isInterrupted()) {
+            try {
+
+                // 闂撮殧
+                Thread.sleep(1000);
+
+                // 绯荤粺杩愯鐘舵�佸垽鏂�
+                if (!SystemProperties.WCS_RUNNING_STATUS.get()) {
+                    continue;
+                }
+                // 浠诲姟鐢熸垚
+                mainService.taskCreate();
+                // 浠诲姟涓嬪彂
+                mainService.taskStart();
+                // 浠诲姟鍒犻櫎
+                mainService.taskCancel();
+
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+        }
+    }
+
+    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++;
+                    }
+                } else {
+//                    SystemProperties.WCS_RUNNING_STATUS.set(Boolean.TRUE);
+                    log.info("++++++++ 楠岃瘉璁稿彲璇佹垚鍔� ++++++++");
+                }
+            } catch (Exception e) {}
+        }
     }
 
     @PreDestroy
     public void shutDown(){
         if (thread != null) thread.interrupt();
+        if (rgvThread != null) rgvThread.interrupt();
+        if (licenseThread != null) licenseThread.interrupt();
     }
 
 }

--
Gitblit v1.9.1