From e776092499ea84188c796e9f66c9a2e69321c92e Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期三, 11 二月 2026 10:21:27 +0800
Subject: [PATCH] 1

---
 zy-acs-cv/src/main/java/com/zy/core/operation/handler/InOperationHandler.java |   45 ++++++++++++++++++++++++---------------------
 1 files changed, 24 insertions(+), 21 deletions(-)

diff --git a/zy-acs-cv/src/main/java/com/zy/core/operation/handler/InOperationHandler.java b/zy-acs-cv/src/main/java/com/zy/core/operation/handler/InOperationHandler.java
index 0171836..ce272ca 100644
--- a/zy-acs-cv/src/main/java/com/zy/core/operation/handler/InOperationHandler.java
+++ b/zy-acs-cv/src/main/java/com/zy/core/operation/handler/InOperationHandler.java
@@ -1,5 +1,6 @@
 package com.zy.core.operation.handler;
 
+import com.core.common.Cools;
 import com.core.exception.CoolException;
 import com.zy.asrs.entity.Job;
 import com.zy.asrs.service.CtuMainService;
@@ -15,13 +16,12 @@
 import com.zy.core.operation.OperationHandler;
 import com.zy.core.properties.CtuOperationConfig;
 import com.zy.core.properties.SlaveProperties;
+import com.zy.core.thread.BarcodeThread;
 import com.zy.core.thread.SiemensDevpThread;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 import org.springframework.transaction.interceptor.TransactionAspectSupport;
-
-import java.util.Date;
 
 /**
  * 鍏ュ簱
@@ -50,7 +50,7 @@
     }
 
     @Override
-    public void execute(CtuOperationConfig config) {
+    public synchronized void execute(CtuOperationConfig config) {
         try {
             // 鏍规嵁杈撻�佺嚎plc閬嶅巻
             for (DevpSlave devp : slaveProperties.getDevp()) {
@@ -69,25 +69,28 @@
                         return;
                     }
                     if (staProtocol.getWorkNo() > 0 && staProtocol.isAutoing()) {
-                        StaProtocol targetStaProtocol = devpThread.getStation().get(inSta.getTargetSta());
-                        if (targetStaProtocol.getWorkNo() == 0 && targetStaProtocol.isAutoing() && !targetStaProtocol.isLoading()) {
-                            Job job = jobService.getJobByJobNoAndJobSts(staProtocol.getWorkNo(), 2);
-                            if (job != null) {
-                                staProtocol.setWorkNo(staProtocol.getWorkNo());
-                                staProtocol.setStaNo(inSta.getTargetSta());
-                                boolean result = MessageQueue.offer(SlaveType.Devp, 1, new Task(2, staProtocol));
-                                if (result) {
-                                    job.setJobSts(4);
-                                    job.setInTime(new Date());
-                                    if (jobService.updateById(job)) {
-                                        throw new CoolException("鏇存柊杈撻�佺嚎浠诲姟澶辫触," + " - " + staProtocol.getWorkNo());
-                                    }
-                                    log.info("" + config.getMark() + "鍏ュ簱鍓嶈繘锛歿},{}", staProtocol.getWorkNo(), inSta.getTargetSta());
-                                }
-                            } else {
-                                // 妯℃嫙鎿嶄綔閫昏緫
-                            }
+                        BarcodeThread barcodeThread = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, devp.getId());
+                        String barcode = barcodeThread.getBarcode();
+                        if (Cools.isEmpty(barcode)){
+                            return;
                         }
+                        Job job = jobService.getJobByBarcode(barcode);
+                        if (job != null) {
+                            Integer targetSta = inSta.getTargetSta();
+                            staProtocol.setWorkNo(job.getJobNo());
+                            staProtocol.setStaNo(targetSta);
+                            boolean result = MessageQueue.offer(SlaveType.Devp, 1, new Task(2, staProtocol));
+                            if (result) {
+                                job.setJobSts(5);
+                                if (!jobService.updateById(job)) {
+                                    throw new CoolException("鏇存柊杈撻�佺嚎浠诲姟澶辫触," + " - " + staProtocol.getWorkNo());
+                                }
+                                log.info("" + config.getMark() + "鍏ュ簱鍓嶈繘锛歿},{}", staProtocol.getWorkNo(), inSta.getTargetSta());
+                            }
+                        } else {
+                            // 妯℃嫙鎿嶄綔閫昏緫
+                        }
+                        //}
                     }
                 }
             }

--
Gitblit v1.9.1