From 3ba44e1a566074a38779c918da391b5c6264a381 Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期一, 03 十一月 2025 18:28:58 +0800
Subject: [PATCH] *
---
src/main/java/com/zy/core/MainProcess.java | 199 +++++++++++++++++++++++++++++++++++--------------
1 files changed, 143 insertions(+), 56 deletions(-)
diff --git a/src/main/java/com/zy/core/MainProcess.java b/src/main/java/com/zy/core/MainProcess.java
index 10cb9e5..aa10235 100644
--- a/src/main/java/com/zy/core/MainProcess.java
+++ b/src/main/java/com/zy/core/MainProcess.java
@@ -5,11 +5,9 @@
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import javax.annotation.PreDestroy;
-import java.util.ArrayList;
/**
* WCS涓绘祦绋�
@@ -24,71 +22,160 @@
private MainServiceImpl mainService;
// 鎵�灞炵嚎绋�
private Thread thread;
- // 棰戠巼
- private int i = 0;
+ private Thread thread2;
+ private Thread thread3;
+ private Thread thread4;
/**
* =====>> 寮�濮嬪伐浣�
*/
public void start(){
- thread = new Thread(() -> {
- while (!Thread.currentThread().isInterrupted()) {
- try {
-
- // 闂撮殧
- Thread.sleep(1000);
-
- // 绯荤粺杩愯鐘舵�佸垽鏂�
- if (!SystemProperties.WCS_RUNNING_STATUS.get()) {
- continue;
- }
-
- // 婕旂ず
- mainService.crnDemoOfLocMove1();
- // 鍏ュ嚭搴撴ā寮忓垏鎹㈠嚱鏁�
-// mainService.ioConvert();
- // 鍏ュ簱 ===>> 鍏ュ簱绔欏埌鍫嗗灈鏈虹珯锛屾牴鎹潯鐮佹壂鎻忕敓鎴愬叆搴撳伐浣滄。
- mainService.generateStoreWrkFile(); // 缁勬墭
- mainService.generateStoreWrkFile0(); // WMS鍏ュ簱
- // 鎷f枡銆佸苟鏉裤�佺洏鐐瑰啀鍏ュ簱
- mainService.stnToCrnStnPick();
- // 鍑哄簱 ===>> 鍫嗗灈鏈哄嚭搴撶珯鍒板嚭搴撶珯
- mainService.crnStnToOutStn();
- // 鍏ュ嚭搴� ===>> 鍫嗗灈鏈哄叆鍑哄簱浣滀笟涓嬪彂
- mainService.crnIoExecute();
- // 鍏ュ嚭搴撳寮� ===>> 鍫嗗灈鏈哄懡浠や笅鍙戝悗锛屽紓姝ヤ慨鏀瑰伐浣滄。鐘舵��
-// mainService.crnIoWrkMast();
- // 鍏ュ簱 ===>> 鎵ц瀵瑰伐浣滄。鐨勫畬鎴愭搷浣�
- mainService.storeFinished();
- // 鍫嗗灈鏈哄紓甯镐俊鎭褰�
- mainService.recCrnErr();
- // 鍏ュ簱 ===>> 绌烘爤鏉垮垵濮嬪寲鍏ュ簱,鍙夎溅鍏ュ簱绔欐斁璐�
- mainService.storeEmptyPlt();
-// // 鍑哄簱 ===>> 宸ヤ綔妗d俊鎭啓鍏ed鏄剧ず鍣�
-// mainService.ledExecute();
-// // 鍏朵粬 ===>> LED鏄剧ず鍣ㄥ浣嶏紝鏄剧ず榛樿淇℃伅
-// mainService.ledReset();
-
- mainService.outOfDevp();
-
- // 鍏朵粬 ===>> 鍏ュ嚭搴撴ā寮忓垏鎹�
- i++;
- if (i > 1) {
- mainService.ioConvert();
- i = 0;
- }
-
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- });
+ thread = new Thread(this::crnAndDevRun);
thread.start();
+
+ thread2 = new Thread(this::crnAndDevOtherRun);
+ thread2.start();
+
+ thread3 = new Thread(this::demoRun);
+ thread3.start();
+
+ thread4 = new Thread(this::demoOpenRun);
+ thread4.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.generateStoreWrkFileIsEmptyMk(); // 缁勬墭 绌烘墭
+ mainService.generateStoreWrkFileWalk(); // wms鍏ュ簱浠诲姟涓嬪彂
+ // 鍏ュ嚭搴� ===>> 鍫嗗灈鏈哄叆鍑哄簱浣滀笟涓嬪彂
+ mainService.crnIoExecute();
+ // 鍏ュ簱 ===>> 鎵ц瀵瑰伐浣滄。鐨勫畬鎴愭搷浣�
+ mainService.storeFinished();
+ // 浠诲姟涓嬪彂
+ mainService.taskStart();
+ // 鍑哄簱 ===>> 鍫嗗灈鏈�10鍒嗛挓鏃犱换鍔″垯鍥炲埌婧愮偣
+ mainService.crnStnToOutStnSou();
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ }
+ private void crnAndDevOtherRun() {
+ while (!Thread.currentThread().isInterrupted()) {
+ try {
+ // 闂撮殧
+ Thread.sleep(400);
+ // 绯荤粺杩愯鐘舵�佸垽鏂�
+ if (!SystemProperties.WCS_RUNNING_STATUS.get()) {
+ continue;
+ }
+ // 绯荤粺婕旂ず妯″紡杩愯鐘舵�佸垽鏂�
+ if (SystemProperties.WCS_RUNNING_STATUS_DEMO.get()) {
+ continue;
+ }
+ // 鍑哄簱 ===>> 鍫嗗灈鏈哄嚭搴撶珯鍒板嚭搴撶珯
+ mainService.crnStnToOutStn();
+ // 鍫嗗灈鏈哄紓甯镐俊鎭褰�
+ mainService.recCrnErr();
+ // 杈撻�佺嚎寮傚父淇℃伅璁板綍
+// mainService.recDevErr();
+ // 鍑哄簱 ===>> 宸ヤ綔妗d俊鎭啓鍏ed鏄剧ず鍣�
+// mainService.ledExecute(9);
+ // 鍏朵粬 ===>> LED鏄剧ず鍣ㄥ浣嶏紝鏄剧ず榛樿淇℃伅
+// mainService.ledReset(10);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ private void demoRun() {
+ while (!Thread.currentThread().isInterrupted()) {
+ try {
+ // 闂撮殧
+ Thread.sleep(1000);
+ // 绯荤粺杩愯鐘舵�佸垽鏂�
+ if (!SystemProperties.WCS_RUNNING_STATUS.get()) {
+ continue;
+ }
+ // 绯荤粺婕旂ず妯″紡杩愯鐘舵�佸垽鏂�
+ if (!SystemProperties.WCS_RUNNING_STATUS_DEMO.get()) {
+ continue;
+ }
+ // 鍑哄簱 ===>> 鍫嗗灈鏈哄嚭搴撶珯鍒板嚭搴撶珯
+ mainService.crnStnToOutStn();
+ // 鍏ュ嚭搴� ===>> 鍫嗗灈鏈哄叆鍑哄簱浣滀笟涓嬪彂
+ mainService.crnIoExecute();
+ // 鍏朵粬 ===>> LED鏄剧ず鍣ㄦ樉绀烘椂闂�
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ private void demoOpenRun() {
+ while (!Thread.currentThread().isInterrupted()) {
+ try {
+ // 闂撮殧
+ Thread.sleep(1000);
+ // 绯荤粺婕旂ず妯″紡杩愯鐘舵�佸彉鍖�
+ if (SystemProperties.WCS_RUNNING_STATUS_DEMO.get()) {
+ if (SystemProperties.WCS_RUNNING_STATUS_DEMO_VALUE == 2){
+ boolean signHpMk = mainService.crnStnDEMOStop2();
+ if (signHpMk){
+ SystemProperties.WCS_RUNNING_STATUS_DEMO_VALUE = 3;
+ }
+ } else if (SystemProperties.WCS_RUNNING_STATUS_DEMO_VALUE == 3){
+ boolean signHpMk = mainService.crnStnDEMOStop3();
+ if (signHpMk){
+ SystemProperties.WCS_RUNNING_STATUS_DEMO.set(false);
+ SystemProperties.WCS_RUNNING_STATUS_DEMO_VALUE = 0;
+ }
+ }
+ } else {
+ if (SystemProperties.WCS_RUNNING_STATUS_DEMO_VALUE == 1){
+ boolean signHpMk = mainService.crnStnDEMOOpen1();
+ if (signHpMk){
+ SystemProperties.WCS_RUNNING_STATUS_DEMO.set(true);
+ SystemProperties.WCS_RUNNING_STATUS_DEMO_VALUE = 2;
+ } else {
+ SystemProperties.WCS_RUNNING_STATUS_DEMO_VALUE = 0;
+ }
+ } else {
+ boolean signHpMk = mainService.crnStnDEMOOpen0();
+ if (signHpMk){
+ SystemProperties.WCS_RUNNING_STATUS_DEMO_VALUE = 1;
+ } else {
+ SystemProperties.WCS_RUNNING_STATUS_DEMO_VALUE = 0;
+ }
+ }
+ }
+ // 鍏朵粬 ===>> LED鏄剧ず鍣ㄦ樉绀烘椂闂�
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
}
@PreDestroy
public void shutDown(){
if (thread != null) thread.interrupt();
+ if (thread2 != null) thread2.interrupt();
+ if (thread3 != null) thread3.interrupt();
+ if (thread4 != null) thread4.interrupt();
}
}
--
Gitblit v1.9.1