From 286eadc0913fe9974ab2f2fd188fb707dc16ad40 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期二, 24 二月 2026 09:16:14 +0800
Subject: [PATCH] 1

---
 zy-acs-cv/src/main/java/com/zy/asrs/service/impl/JobServiceImpl.java                   |    1 
 zy-acs-cv/src/main/java/com/zy/asrs/mapper/JobMapper.java                              |    3 
 zy-acs-cv/src/main/java/com/zy/core/operation/handler/ClearSingleOperationHandler.java |   19 +--
 zy-acs-cv/src/main/java/com/zy/core/operation/handler/OutOperationHandler.java         |   21 ++-
 zy-acs-cv/src/main/java/com/zy/asrs/controller/WmsController.java                      |    9 -
 zy-acs-cv/src/main/java/com/zy/core/operation/handler/SendTaskOperationHandler.java    |   58 +++++++----
 zy-acs-cv/src/main/resources/mapper/JobMapper.xml                                      |   26 +++-
 zy-acs-cv/src/main/java/com/zy/asrs/controller/requestParam/StaParam.java              |    1 
 zy-acs-cv/src/main/java/com/zy/core/model/Task.java                                    |    5 
 zy-acs-cv/src/main/java/com/zy/core/enums/TaskType.java                                |   10 ++
 zy-acs-cv/src/main/java/com/zy/core/thread/SiemensDevpThread.java                      |   12 +-
 zy-acs-cv/src/main/java/com/zy/core/operation/handler/FakeUserOperationHandler.java    |    6 
 zy-acs-cv/src/main/java/com/zy/core/enums/ConveyorStateType.java                       |   27 +++-
 zy-acs-cv/src/main/java/com/zy/asrs/entity/Job.java                                    |    5 +
 zy-acs-cv/src/main/java/com/zy/core/operation/handler/InOperationHandler.java          |   21 ++--
 zy-acs-cv/src/main/java/com/zy/core/ConveyorBackgroundService.java                     |    1 
 zy-acs-cv/src/main/java/com/zy/asrs/scheduler/JobLogScheduler.java                     |    5 
 zy-acs-cv/src/main/resources/application.yml                                           |    8 
 zy-acs-cv/src/main/java/com/zy/asrs/controller/SiteController.java                     |    3 
 zy-acs-cv/src/main/java/com/zy/core/operation/handler/AppleLocOperationHandler.java    |   28 +++--
 20 files changed, 161 insertions(+), 108 deletions(-)

diff --git a/zy-acs-cv/src/main/java/com/zy/asrs/controller/SiteController.java b/zy-acs-cv/src/main/java/com/zy/asrs/controller/SiteController.java
index 74fbe57..0c5e9a4 100644
--- a/zy-acs-cv/src/main/java/com/zy/asrs/controller/SiteController.java
+++ b/zy-acs-cv/src/main/java/com/zy/asrs/controller/SiteController.java
@@ -13,6 +13,7 @@
 import com.zy.core.cache.OutputQueue;
 import com.zy.core.cache.SlaveConnection;
 import com.zy.core.enums.SlaveType;
+import com.zy.core.enums.TaskType;
 import com.zy.core.model.DevpSlave;
 import com.zy.core.model.Task;
 import com.zy.core.model.protocol.StaProtocol;
@@ -162,7 +163,7 @@
                     if (pakMk != null) {
                         staProtocol.setPakMk(pakMk.equals("Y"));
                     }
-                    boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
+                    boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(TaskType.WRITE, staProtocol));
                     if (result) {
                         return R.ok();
                     } else {
diff --git a/zy-acs-cv/src/main/java/com/zy/asrs/controller/WmsController.java b/zy-acs-cv/src/main/java/com/zy/asrs/controller/WmsController.java
index 27dd6f1..c7ddbcc 100644
--- a/zy-acs-cv/src/main/java/com/zy/asrs/controller/WmsController.java
+++ b/zy-acs-cv/src/main/java/com/zy/asrs/controller/WmsController.java
@@ -1,9 +1,7 @@
 package com.zy.asrs.controller;
 
-import com.core.common.Cools;
 import com.core.common.R;
 import com.zy.asrs.controller.requestParam.StaParam;
-import com.zy.asrs.controller.requestParam.StationRequestParam;
 import com.zy.asrs.controller.responseParam.StationResponseParam;
 import com.zy.asrs.entity.Job;
 import com.zy.asrs.service.JobService;
@@ -12,7 +10,6 @@
 import com.zy.core.cache.SlaveConnection;
 import com.zy.core.enums.SlaveType;
 import com.zy.core.model.protocol.StaProtocol;
-import com.zy.core.properties.SlaveProperties;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.PostMapping;
@@ -50,9 +47,9 @@
         Integer workNo = staProtocol.getWorkNo();
         if (workNo != null) {
             Job jobByJobNo = jobService.getJobByJobNo(workNo);
-           if (jobByJobNo != null) {
-               return R.ok(jobByJobNo.getJobNo());
-           }
+            if (jobByJobNo != null) {
+                return R.ok(jobByJobNo.getJobNo());
+            }
         }
         return R.ok(list);
     }
diff --git a/zy-acs-cv/src/main/java/com/zy/asrs/controller/requestParam/StaParam.java b/zy-acs-cv/src/main/java/com/zy/asrs/controller/requestParam/StaParam.java
index 7344f06..dda5a8f 100644
--- a/zy-acs-cv/src/main/java/com/zy/asrs/controller/requestParam/StaParam.java
+++ b/zy-acs-cv/src/main/java/com/zy/asrs/controller/requestParam/StaParam.java
@@ -3,7 +3,6 @@
 import lombok.Data;
 
 import java.io.Serializable;
-import java.util.List;
 
 @Data
 public class StaParam implements Serializable {
diff --git a/zy-acs-cv/src/main/java/com/zy/asrs/entity/Job.java b/zy-acs-cv/src/main/java/com/zy/asrs/entity/Job.java
index 0903ef4..055f4ef 100644
--- a/zy-acs-cv/src/main/java/com/zy/asrs/entity/Job.java
+++ b/zy-acs-cv/src/main/java/com/zy/asrs/entity/Job.java
@@ -65,6 +65,11 @@
     @TableField("job_sts")
     private Integer jobSts;
     /**
+     * 寮�濮嬫椂闂�
+     */
+    @TableField("start_time")
+    private Date startTime;
+    /**
      * 鍏ュ簱鏃堕棿
      */
     @TableField("wms_time")
diff --git a/zy-acs-cv/src/main/java/com/zy/asrs/mapper/JobMapper.java b/zy-acs-cv/src/main/java/com/zy/asrs/mapper/JobMapper.java
index be5e921..ca14893 100644
--- a/zy-acs-cv/src/main/java/com/zy/asrs/mapper/JobMapper.java
+++ b/zy-acs-cv/src/main/java/com/zy/asrs/mapper/JobMapper.java
@@ -13,7 +13,6 @@
 public interface JobMapper extends BaseMapper<Job> {
 
 
-
     Job getJobByTaskNo(@Param("seqNum") String seqNum);
 
     Job getJobByJobNo(@Param("workNo") Integer workNo);
@@ -28,5 +27,7 @@
 
     List<Job> listJobByJobSts(@Param("jobSts") Integer jobSts);
 
+    List<Job> listJobToLog(@Param("jobSts") Integer jobSts, @Param("day") Integer day);
+
 
 }
diff --git a/zy-acs-cv/src/main/java/com/zy/asrs/scheduler/JobLogScheduler.java b/zy-acs-cv/src/main/java/com/zy/asrs/scheduler/JobLogScheduler.java
index 1ea228c..c98a3a6 100644
--- a/zy-acs-cv/src/main/java/com/zy/asrs/scheduler/JobLogScheduler.java
+++ b/zy-acs-cv/src/main/java/com/zy/asrs/scheduler/JobLogScheduler.java
@@ -3,6 +3,7 @@
 import com.zy.asrs.entity.Job;
 import com.zy.asrs.mapper.JobMapper;
 import com.zy.asrs.service.JobService;
+import com.zy.core.enums.ConveyorStateType;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.scheduling.annotation.Scheduled;
@@ -27,11 +28,11 @@
     //@Scheduled(cron = "0 0 2 * * ?")
     @Scheduled(cron = "*/5 * * * * ?")
     public void autoToLog() {
-        List<Job> jobs = jobMapper.listJobByJobSts(8);
+        List<Job> jobs = jobMapper.listJobByJobSts(ConveyorStateType.CLEARSIGNAL.getStatus());
         for (Job job : jobs) {
             jobService.saveJobLog(job);
         }
-        jobs = jobMapper.listJobByJobSts(2);
+        jobs = jobMapper.listJobToLog(ConveyorStateType.OUTBOUND.getStatus(), 1);
         for (Job job : jobs) {
             jobService.saveJobLog(job);
         }
diff --git a/zy-acs-cv/src/main/java/com/zy/asrs/service/impl/JobServiceImpl.java b/zy-acs-cv/src/main/java/com/zy/asrs/service/impl/JobServiceImpl.java
index de72f6a..1d42622 100644
--- a/zy-acs-cv/src/main/java/com/zy/asrs/service/impl/JobServiceImpl.java
+++ b/zy-acs-cv/src/main/java/com/zy/asrs/service/impl/JobServiceImpl.java
@@ -20,7 +20,6 @@
     private JobLogMapper jobLogMapper;
 
 
-
     @Override
     public Job getJobByTaskNo(String seqNum) {
         return baseMapper.getJobByTaskNo(seqNum);
diff --git a/zy-acs-cv/src/main/java/com/zy/core/ConveyorBackgroundService.java b/zy-acs-cv/src/main/java/com/zy/core/ConveyorBackgroundService.java
index 4ebfbba..70f2413 100644
--- a/zy-acs-cv/src/main/java/com/zy/core/ConveyorBackgroundService.java
+++ b/zy-acs-cv/src/main/java/com/zy/core/ConveyorBackgroundService.java
@@ -61,6 +61,7 @@
         try {
             // 鎵ц閰嶇疆鐨勬搷浣滃簭鍒�
             for (CtuOperationConfig config : properties.getOperations()) {
+                log.info("鎵ц杈撻�佺嚎鎿嶄綔: {}", config.getType());
                 operationExecutor.execute(config);
             }
 
diff --git a/zy-acs-cv/src/main/java/com/zy/core/enums/ConveyorStateType.java b/zy-acs-cv/src/main/java/com/zy/core/enums/ConveyorStateType.java
index c465e02..9501226 100644
--- a/zy-acs-cv/src/main/java/com/zy/core/enums/ConveyorStateType.java
+++ b/zy-acs-cv/src/main/java/com/zy/core/enums/ConveyorStateType.java
@@ -2,22 +2,31 @@
 
 public enum ConveyorStateType {
     //鍑哄簱璁惧涓婅蛋
-    OUTBOUND,
+    OUTBOUND(2),
     //妯℃嫙鐢ㄦ埛
-    FAKEUSER,
+    FAKEUSER(3),
     //鍏ュ簱鐢宠
-    APPLYLOC,
+    APPLYLOC(4),
     //鍏ュ簱璁惧涓婅蛋
-    INBOUND,
-    //娓呴櫎杈撻�佺嚎涓婄殑淇″彿
-    CLEARSIGNAL,
+    INBOUND(5),
     //鍙戦�佷换鍔$粰RCS
-    SENDTASK;
+    SENDTASK(7),
+    //娓呴櫎杈撻�佺嚎涓婄殑淇″彿
+    CLEARSIGNAL(8),
+    ;
 
+    private int status;
 
-    ConveyorStateType() {
-
+    ConveyorStateType(int status) {
+        this.status = status;
     }
 
 
+    public int getStatus() {
+        return status;
+    }
+
+    public void setStatus(int status) {
+        this.status = status;
+    }
 }
diff --git a/zy-acs-cv/src/main/java/com/zy/core/enums/TaskType.java b/zy-acs-cv/src/main/java/com/zy/core/enums/TaskType.java
new file mode 100644
index 0000000..9a58b2b
--- /dev/null
+++ b/zy-acs-cv/src/main/java/com/zy/core/enums/TaskType.java
@@ -0,0 +1,10 @@
+package com.zy.core.enums;
+
+public enum TaskType {
+
+    READ,
+    WRITE,
+    ;
+
+
+}
diff --git a/zy-acs-cv/src/main/java/com/zy/core/model/Task.java b/zy-acs-cv/src/main/java/com/zy/core/model/Task.java
index c3cf784..d87dd79 100644
--- a/zy-acs-cv/src/main/java/com/zy/core/model/Task.java
+++ b/zy-acs-cv/src/main/java/com/zy/core/model/Task.java
@@ -1,5 +1,6 @@
 package com.zy.core.model;
 
+import com.zy.core.enums.TaskType;
 import lombok.Data;
 
 /**
@@ -8,14 +9,14 @@
 @Data
 public class Task {
 
-    private Integer step;
+    private TaskType step;
 
     private Object data;
 
     public Task() {
     }
 
-    public Task(Integer step, Object data) {
+    public Task(TaskType step, Object data) {
         this.step = step;
         this.data = data;
     }
diff --git a/zy-acs-cv/src/main/java/com/zy/core/operation/handler/AppleLocOperationHandler.java b/zy-acs-cv/src/main/java/com/zy/core/operation/handler/AppleLocOperationHandler.java
index a2f6e6a..268d169 100644
--- a/zy-acs-cv/src/main/java/com/zy/core/operation/handler/AppleLocOperationHandler.java
+++ b/zy-acs-cv/src/main/java/com/zy/core/operation/handler/AppleLocOperationHandler.java
@@ -65,28 +65,26 @@
                     StaProtocol staProtocol = devpThread.getStation().get(inSta.getStaNo());
                     BarcodeThread barcodeThread = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, devp.getId());
                     if (staProtocol == null) {
-                        return;
+                        continue;
                     } else {
                         staProtocol = staProtocol.clone();
                     }
                     // 鍒ゆ柇鏄惁婊¤冻鏉′欢
                     if (!staProtocol.isLoading()) {
-                        return;
+                        continue;
                     }
                     if (staProtocol.getWorkNo() > 0 && staProtocol.isAutoing()) {
                         String barcode = barcodeThread.getBarcode();
-                        if (Cools.isEmpty(barcode)) {
-                            log.info("鏈壂鍒扮爜鍊硷細{}", barcode);
+                        if (barcodeThread == null || Cools.isEmpty(barcode)) {
+                            log.error("绔欑偣锛歿}锛屾湭鎵埌鐮佸�硷細{}", staProtocol.getSiteId(), barcode);
                             return;
                         }
+                        // 9991鏄┖鏉匡紝9992鏄弧鏉�
                         if (staProtocol.getWorkNo() >= 9991 && staProtocol.getWorkNo() <= 9992) {
                             Job job = jobService.getJobByBarcode(barcode);
+                            // 鐢宠鍏ュ簱
                             if (job == null || (job != null && job.getJobSts() == 8)) {
-                                ApplyInDto applyInDto = new ApplyInDto();
-                                applyInDto.setStaNo(inSta.getStaNo() + "");
-                                applyInDto.setBarcode(barcode);
-                                applyInDto.setFull(staProtocol.getWorkNo() == 9992);
-                                ApplyInRepsonseDto locOfWms = wmsMainService.getLocOfWms(applyInDto);
+                                ApplyInRepsonseDto locOfWms = wmsMainService.getLocOfWms(applyIn(barcode, inSta.getStaNo() + "", staProtocol));
                                 if (locOfWms != null) {
                                     job = new Job();
                                     job.setLoc(locOfWms.getLocNo());
@@ -95,11 +93,11 @@
                                     job.setBarcode(barcode);
                                     job.setStaNo(inSta.getTargetSta() + "");
                                     job.setJobNo(wrkLastnoService.nextWorkNo(WorkNoTypeType.WORK_NO_TYPE.type));
-                                    job.setJobSts(4);
+                                    job.setJobSts(ConveyorStateType.APPLYLOC.getStatus());
                                     job.setWmsTime(new Date());
                                     jobService.insert(job);
                                 } else {
-                                    log.info("WMS鏈繑鍥炲簱浣嶄俊鎭紝{}", applyInDto);
+                                    log.info("WMS鏈繑鍥炲簱浣嶄俊鎭紝鏉$爜锛歿},绔欑偣锛歿}", barcode, inSta.getStaNo());
                                 }
                             }
                         }
@@ -111,4 +109,12 @@
             TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
         }
     }
+
+    private ApplyInDto applyIn(String barcode, String staNo, StaProtocol staProtocol) {
+        ApplyInDto applyInDto = new ApplyInDto();
+        applyInDto.setStaNo(staNo);
+        applyInDto.setBarcode(barcode);
+        applyInDto.setFull(staProtocol.getWorkNo() == 9992);
+        return applyInDto;
+    }
 }
diff --git a/zy-acs-cv/src/main/java/com/zy/core/operation/handler/ClearSingleOperationHandler.java b/zy-acs-cv/src/main/java/com/zy/core/operation/handler/ClearSingleOperationHandler.java
index 29b6f55..20952ec 100644
--- a/zy-acs-cv/src/main/java/com/zy/core/operation/handler/ClearSingleOperationHandler.java
+++ b/zy-acs-cv/src/main/java/com/zy/core/operation/handler/ClearSingleOperationHandler.java
@@ -1,13 +1,12 @@
 package com.zy.core.operation.handler;
 
 import com.zy.asrs.entity.Job;
-import com.zy.asrs.service.CtuMainService;
 import com.zy.asrs.service.JobService;
-import com.zy.asrs.service.WrkLastnoService;
 import com.zy.core.cache.MessageQueue;
 import com.zy.core.cache.SlaveConnection;
 import com.zy.core.enums.ConveyorStateType;
 import com.zy.core.enums.SlaveType;
+import com.zy.core.enums.TaskType;
 import com.zy.core.model.DevpSlave;
 import com.zy.core.model.Task;
 import com.zy.core.model.protocol.StaProtocol;
@@ -33,12 +32,6 @@
 
 
     @Autowired
-    private WrkLastnoService wrkLastnoService;
-
-    @Autowired
-    private CtuMainService ctuMainService;
-
-    @Autowired
     private JobService jobService;
 
 
@@ -58,24 +51,24 @@
                     SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
                     StaProtocol staProtocol = devpThread.getStation().get(takeSta.getStaNo());
                     if (staProtocol == null) {
-                        return;
+                        continue;
                     } else {
                         staProtocol = staProtocol.clone();
                     }
                     // 鍒ゆ柇鏄惁婊¤冻鏉′欢
                     if (staProtocol.isLoading()) {
-                        return;
+                        continue;
                     }
                     if (staProtocol.getWorkNo() > 0 && staProtocol.isAutoing()) {
                         Job job = jobService.getJobByJobNo(staProtocol.getWorkNo());
-                        if (job != null && job.getJobSts() == 7) {
+                        if (job != null && job.getJobSts() == ConveyorStateType.SENDTASK.getStatus()) {
                             //String s = ctuMainService.checkStationStatus(takeSta.getStaNo());
                             staProtocol.setWorkNo(0);
                             staProtocol.setStaNo(0);
-                            boolean result = MessageQueue.offer(SlaveType.Devp, 1, new Task(2, staProtocol));
+                            boolean result = MessageQueue.offer(SlaveType.Devp, 1, new Task(TaskType.WRITE, staProtocol));
                             if (result) {
                                 log.info("" + config.getMark() + "绔欑偣娓呯┖澶辫触锛歿},{}", takeSta.getStaNo(), staProtocol.getWorkNo());
-                                job.setJobSts(8);
+                                job.setJobSts(ConveyorStateType.CLEARSIGNAL.getStatus());
                                 jobService.updateById(job);
                             }
                         }
diff --git a/zy-acs-cv/src/main/java/com/zy/core/operation/handler/FakeUserOperationHandler.java b/zy-acs-cv/src/main/java/com/zy/core/operation/handler/FakeUserOperationHandler.java
index 4c3e724..20ebcbd 100644
--- a/zy-acs-cv/src/main/java/com/zy/core/operation/handler/FakeUserOperationHandler.java
+++ b/zy-acs-cv/src/main/java/com/zy/core/operation/handler/FakeUserOperationHandler.java
@@ -1,13 +1,12 @@
 package com.zy.core.operation.handler;
 
 import com.zy.asrs.entity.Job;
-import com.zy.asrs.service.CtuMainService;
 import com.zy.asrs.service.JobService;
-import com.zy.asrs.service.WrkLastnoService;
 import com.zy.core.cache.MessageQueue;
 import com.zy.core.cache.SlaveConnection;
 import com.zy.core.enums.ConveyorStateType;
 import com.zy.core.enums.SlaveType;
+import com.zy.core.enums.TaskType;
 import com.zy.core.model.Task;
 import com.zy.core.model.protocol.StaProtocol;
 import com.zy.core.operation.OperationHandler;
@@ -28,7 +27,6 @@
 
     @Autowired
     private SlaveProperties slaveProperties;
-
 
 
     @Autowired
@@ -60,7 +58,7 @@
                 Job jobByWorkNo = jobService.getJobByJobNo(staProtocol.getWorkNo());
                 if (jobByWorkNo != null && jobByWorkNo.getJobSts() == 1) {
                     staProtocol.setStaNo(1006);
-                    boolean result = MessageQueue.offer(SlaveType.Devp, 1, new Task(2, staProtocol));
+                    boolean result = MessageQueue.offer(SlaveType.Devp, 1, new Task(TaskType.WRITE, staProtocol));
                     if (result) {
                         jobByWorkNo.setJobSts(3);
                         jobByWorkNo.setMemo("妯℃嫙鎸夋寜閽�");
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 ce272ca..e48aa59 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
@@ -10,6 +10,7 @@
 import com.zy.core.cache.SlaveConnection;
 import com.zy.core.enums.ConveyorStateType;
 import com.zy.core.enums.SlaveType;
+import com.zy.core.enums.TaskType;
 import com.zy.core.model.DevpSlave;
 import com.zy.core.model.Task;
 import com.zy.core.model.protocol.StaProtocol;
@@ -22,6 +23,8 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 import org.springframework.transaction.interceptor.TransactionAspectSupport;
+
+import java.util.Date;
 
 /**
  * 鍏ュ簱
@@ -60,37 +63,35 @@
                     SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
                     StaProtocol staProtocol = devpThread.getStation().get(inSta.getStaNo());
                     if (staProtocol == null) {
-                        return;
+                        continue;
                     } else {
                         staProtocol = staProtocol.clone();
                     }
                     // 鍒ゆ柇鏄惁婊¤冻鏉′欢
                     if (!staProtocol.isLoading()) {
-                        return;
+                        continue;
                     }
                     if (staProtocol.getWorkNo() > 0 && staProtocol.isAutoing()) {
                         BarcodeThread barcodeThread = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, devp.getId());
                         String barcode = barcodeThread.getBarcode();
-                        if (Cools.isEmpty(barcode)){
-                            return;
+                        if (Cools.isEmpty(barcode)) {
+                            continue;
                         }
                         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));
+                            boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(TaskType.WRITE, staProtocol));
                             if (result) {
-                                job.setJobSts(5);
+                                job.setJobSts(ConveyorStateType.INBOUND.getStatus());
+                                job.setStartTime(new Date());
                                 if (!jobService.updateById(job)) {
                                     throw new CoolException("鏇存柊杈撻�佺嚎浠诲姟澶辫触," + " - " + staProtocol.getWorkNo());
                                 }
-                                log.info("" + config.getMark() + "鍏ュ簱鍓嶈繘锛歿},{}", staProtocol.getWorkNo(), inSta.getTargetSta());
+                                log.info("鍏ュ簱鍓嶈繘锛歿},{}", staProtocol.getWorkNo(), inSta.getTargetSta());
                             }
-                        } else {
-                            // 妯℃嫙鎿嶄綔閫昏緫
                         }
-                        //}
                     }
                 }
             }
diff --git a/zy-acs-cv/src/main/java/com/zy/core/operation/handler/OutOperationHandler.java b/zy-acs-cv/src/main/java/com/zy/core/operation/handler/OutOperationHandler.java
index 34edab6..8473dab 100644
--- a/zy-acs-cv/src/main/java/com/zy/core/operation/handler/OutOperationHandler.java
+++ b/zy-acs-cv/src/main/java/com/zy/core/operation/handler/OutOperationHandler.java
@@ -6,11 +6,11 @@
 import com.zy.asrs.service.CtuMainService;
 import com.zy.asrs.service.JobService;
 import com.zy.asrs.service.WrkLastnoService;
-import com.zy.common.utils.News;
 import com.zy.core.cache.MessageQueue;
 import com.zy.core.cache.SlaveConnection;
 import com.zy.core.enums.ConveyorStateType;
 import com.zy.core.enums.SlaveType;
+import com.zy.core.enums.TaskType;
 import com.zy.core.model.DevpSlave;
 import com.zy.core.model.Task;
 import com.zy.core.model.protocol.StaProtocol;
@@ -65,9 +65,17 @@
                     }
                     // 鍒ゆ柇鏄惁婊¤冻鏉′欢
                     if (!staProtocol.isLoading()) {
+                        if (staProtocol.getWorkNo() > 0) {
+                            log.error("杈撻�佺嚎涓婃湁浠诲姟鍙锋棤璐э紝闇�瑕佷汉宸ュ鐞嗭細{}", staProtocol.getSiteId());
+                        }
                         continue;
                     }
+
                     if (staProtocol.isAutoing() && staProtocol.getWorkNo() == 0) {
+                        if (staProtocol.isInEnable()) {
+                            log.error("娌℃湁鍙叆淇″彿锛歿}", staProtocol.getSiteId());
+                            continue;
+                        }
                         String seqNum = ctuMainService.checkStationStatus(releaseSta.getStaNo());
                         if (seqNum != null) {
                             Job jobBySeqNum = jobService.getJobByTaskNo(seqNum);
@@ -79,23 +87,20 @@
                                 Job job = new Job();
                                 job.setTaskNo(seqNum);
                                 job.setJobNo(workNo);
-                                job.setJobSts(2);
+                                job.setJobSts(ConveyorStateType.OUTBOUND.getStatus());
                                 if (!jobService.insert(job)) {
                                     throw new CoolException("鎻掑叆杈撻�佺嚎浠诲姟澶辫触," + jobBySeqNum + " - " + workNo);
                                 }
-                                devpThread.setPakMk(staProtocol.getSiteId(), false);
-                                boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
+                                boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(TaskType.WRITE, staProtocol));
                                 if (result) {
                                     log.info("杈撻�佺嚎涓嬪彂锛歿},{}", staProtocol.getWorkNo(), releaseSta.getTargetSta());
                                 } else {
-                                    News.error("" + config.getMark() + " - 鍙戝竷鍛戒护鑷宠緭閫佺嚎闃熷垪澶辫触锛侊紒锛� [plc缂栧彿锛歿}]", devp.getId());
+                                    log.error("鍙戝竷鍛戒护鑷宠緭閫佺嚎闃熷垪澶辫触锛侊紒锛� [plc缂栧彿锛歿}]", devp.getId());
                                 }
                             }
                         } else {
-                            News.errorNoLog("" + config.getMark() + " - 绔欑偣淇℃伅涓嶇鍚堝叆搴撴潯浠讹紒锛侊紒" + " 璋冪敤RCS妫�楠屾湭閫氳繃,绔欑偣锛�" + staProtocol.getSiteId());
+                            log.info("绔欑偣淇℃伅涓嶇鍚堝叆搴撴潯浠讹紒锛侊紒" + " 璋冪敤RCS妫�楠屾湭閫氳繃,绔欑偣锛歿}", staProtocol.getSiteId());
                         }
-                    } else {
-                        News.errorNoLog("" + config.getMark() + " - 绔欑偣淇℃伅涓嶇鍚堝叆搴撴潯浠讹紒锛侊紒" + " 鑷姩淇″彿锛�" + staProtocol.isLoading() + "銆佸彲鍏ヤ俊鍙凤細" + staProtocol.isInEnable() + "銆佺┖鏉夸俊鍙凤細" + staProtocol.isEmptyMk() + "銆佸伐浣滃彿锛�" + staProtocol.getWorkNo() + "銆侀攣瀹氭爣璁�" + staProtocol.isPakMk());
                     }
                 }
             }
diff --git a/zy-acs-cv/src/main/java/com/zy/core/operation/handler/SendTaskOperationHandler.java b/zy-acs-cv/src/main/java/com/zy/core/operation/handler/SendTaskOperationHandler.java
index e30dbc0..760106d 100644
--- a/zy-acs-cv/src/main/java/com/zy/core/operation/handler/SendTaskOperationHandler.java
+++ b/zy-acs-cv/src/main/java/com/zy/core/operation/handler/SendTaskOperationHandler.java
@@ -1,6 +1,5 @@
 package com.zy.core.operation.handler;
 
-import com.core.common.DateUtils;
 import com.zy.asrs.controller.vo.OpenBusSubmitParam;
 import com.zy.asrs.controller.vo.TaskDto;
 import com.zy.asrs.entity.Job;
@@ -58,37 +57,35 @@
                     SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
                     StaProtocol staProtocol = devpThread.getStation().get(inSta.getTargetSta());
                     if (staProtocol == null) {
-                        return;
+                        continue;
                     } else {
                         staProtocol = staProtocol.clone();
                     }
                     // 鍒ゆ柇鏄惁婊¤冻鏉′欢
                     if (!staProtocol.isLoading()) {
-                        return;
+                        if (staProtocol.getWorkNo() > 0) {
+                            log.error("杈撻�佺嚎涓婃湁浠诲姟鍙锋棤璐э紝闇�瑕佷汉宸ュ鐞嗭細{}", staProtocol.getSiteId());
+                        }
+                        continue;
                     }
-                    if (staProtocol.getWorkNo() > 0 && staProtocol.isAutoing()) {
+                    if (staProtocol.getWorkNo() == 0) {
+                        log.error("杈撻�佺嚎涓婃湁璐ф棤浠诲姟鍙凤紝闇�瑕佷汉宸ュ鐞嗭細{}", staProtocol.getSiteId());
+                        continue;
+                    }
+                    if (staProtocol.isAutoing()) {
                         Job job = jobService.getJobByJobNo(staProtocol.getWorkNo());
-                        if (job != null && job.getJobSts() == 5) {
-                            OpenBusSubmitParam openBusSubmitParam = new OpenBusSubmitParam();
-                            openBusSubmitParam.setBatchNo(job.getBatchNo());
-                            List<TaskDto> taskList = new ArrayList<>();
-                            TaskDto taskDto = new TaskDto();
-                            taskDto.setTaskNo(job.getTaskNo());
-                            taskDto.setBatchNo(job.getBatchNo());
-                            taskDto.setOriSta(job.getStaNo());
-                            taskDto.setDestLoc(job.getLoc());
-                            taskDto.setPriority(1);
-                            taskList.add(taskDto);
-                            openBusSubmitParam.setTasks(taskList);
-                            if (ctuMainService.sendTask(openBusSubmitParam)) {
-                                job.setJobSts(7);
+                        if (job != null && job.getJobSts() == ConveyorStateType.INBOUND.getStatus()) {
+                            if (ctuMainService.sendTask(process(job))) {
+                                job.setJobSts(ConveyorStateType.SENDTASK.getStatus());
                                 job.setRcsTime(new Date());
                                 jobService.updateById(job);
-                                log.info("浠诲姟鍙戦�佺粰RCS鎴愬姛," + job.getTaskNo() + " - " + job.getJobNo());
+                                log.info("浠诲姟鍙戦�佺粰RCS鎴愬姛,WMS浠诲姟鍙凤細{},杈撻�佺嚎宸ヤ綔鍙凤細{}", job.getTaskNo(), job.getJobNo());
                             } else {
-                                log.info("浠诲姟鍙戦�佺粰RCS澶辫触," + job.getTaskNo() + " - " + job.getJobNo());
+                                log.info("浠诲姟鍙戦�佺粰RCS澶辫触,WMS浠诲姟鍙凤細{},杈撻�佺嚎宸ヤ綔鍙凤細{}", job.getTaskNo(), job.getJobNo());
                             }
                         }
+                    } else {
+                        log.error("杈撻�佺嚎涓鸿嚜鍔紝闇�瑕佸紑鍚細{}", staProtocol.getSiteId());
                     }
                 }
             }
@@ -97,4 +94,25 @@
             TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
         }
     }
+
+    /**
+     * 澶勭悊浠诲姟
+     *
+     * @param job
+     * @return
+     */
+    private OpenBusSubmitParam process(Job job) {
+        OpenBusSubmitParam openBusSubmitParam = new OpenBusSubmitParam();
+        openBusSubmitParam.setBatchNo(job.getBatchNo());
+        List<TaskDto> taskList = new ArrayList<>();
+        TaskDto taskDto = new TaskDto();
+        taskDto.setTaskNo(job.getTaskNo());
+        taskDto.setBatchNo(job.getBatchNo());
+        taskDto.setOriSta(job.getStaNo());
+        taskDto.setDestLoc(job.getLoc());
+        taskDto.setPriority(1);
+        taskList.add(taskDto);
+        openBusSubmitParam.setTasks(taskList);
+        return openBusSubmitParam;
+    }
 }
diff --git a/zy-acs-cv/src/main/java/com/zy/core/thread/SiemensDevpThread.java b/zy-acs-cv/src/main/java/com/zy/core/thread/SiemensDevpThread.java
index 2a65490..833976c 100644
--- a/zy-acs-cv/src/main/java/com/zy/core/thread/SiemensDevpThread.java
+++ b/zy-acs-cv/src/main/java/com/zy/core/thread/SiemensDevpThread.java
@@ -17,6 +17,7 @@
 import com.zy.core.cache.OutputQueue;
 import com.zy.core.cache.SlaveConnection;
 import com.zy.core.enums.SlaveType;
+import com.zy.core.enums.TaskType;
 import com.zy.core.model.DevpSlave;
 import com.zy.core.model.Task;
 import com.zy.core.model.protocol.StaProtocol;
@@ -55,7 +56,6 @@
     }};
 
 
-
     public static final ArrayList<Integer> BarcodeList = new ArrayList<Integer>() {{
         add(1);
     }};
@@ -86,18 +86,18 @@
         connect();
         while (true) {
             try {
-                int step = 1;
+                TaskType step = TaskType.READ;
                 Task task = MessageQueue.poll(SlaveType.Devp, slave.getId());
                 if (task != null) {
                     step = task.getStep();
                 }
                 switch (step) {
                     // 璇绘暟鎹�
-                    case 1:
+                    case READ:
                         read();
                         break;
                     // 鍐欐暟鎹� ID+鐩爣绔�
-                    case 2:
+                    case WRITE:
                         write((StaProtocol) task.getData());
                         break;
                     default:
@@ -209,7 +209,7 @@
                 BarcodeThread barcodeThread = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, barcodeId);
                 if (Cools.isEmpty(barcode)) {
                     barcodeThread.clearBarcode();
-                }else {
+                } else {
                     if (!Cools.isEmpty(barcodeThread) && !barcodeThread.getBarcode().equals(barcode)) {
                         barcodeThread.setBarcode(barcode);
                         log.info("鏂欑鐮侊細{}", barcode);
@@ -280,8 +280,6 @@
             News.error("SiemensDevp" + " - 4" + " - 鍐欏叆杈撻�佺嚎绔欑偣鏁版嵁澶辫触銆傝緭閫佺嚎plc缂栧彿={}锛岀珯鐐规暟鎹�={}", slave.getId(), JSON.toJSON(staProtocol));
         }
     }
-
-
 
 
     /**
diff --git a/zy-acs-cv/src/main/resources/application.yml b/zy-acs-cv/src/main/resources/application.yml
index b639f9f..a5e6ff6 100644
--- a/zy-acs-cv/src/main/resources/application.yml
+++ b/zy-acs-cv/src/main/resources/application.yml
@@ -31,10 +31,10 @@
         mark: 10
         max-retries: 3
         retry-delay: 800
-      - type: FAKEUSER
-        mark: 20
-        max-retries: 2
-        retry-delay: 800
+#      - type: FAKEUSER
+#        mark: 20
+#        max-retries: 2
+#        retry-delay: 800
       - type: APPLYLOC
         mark: 30
         max-retries: 2
diff --git a/zy-acs-cv/src/main/resources/mapper/JobMapper.xml b/zy-acs-cv/src/main/resources/mapper/JobMapper.xml
index ccb7cad..4b7aaea 100644
--- a/zy-acs-cv/src/main/resources/mapper/JobMapper.xml
+++ b/zy-acs-cv/src/main/resources/mapper/JobMapper.xml
@@ -5,14 +5,14 @@
     <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
     <resultMap id="BaseResultMap" type="com.zy.asrs.entity.Job">
         <id column="id" property="id"/>
-        <result column="in_task_no" property="inTaskNo"/>
-        <result column="out_task_no" property="outTaskNo"/>
+        <result column="task_no" property="taskNo"/>
         <result column="batch_no" property="batchNo"/>
         <result column="loc" property="loc"/>
         <result column="sta_no" property="staNo"/>
         <result column="barcode" property="barcode"/>
         <result column="job_no" property="jobNo"/>
         <result column="job_sts" property="jobSts"/>
+        <result column="start_time" property="startTime"/>
         <result column="wms_time" property="wmsTime"/>
         <result column="rcs_time" property="rcsTime"/>
         <result column="status" property="status"/>
@@ -26,38 +26,42 @@
     </resultMap>
 
 
-
     <select id="getJobByTaskNo" resultMap="BaseResultMap">
         select *
         from cv_job
-        where task_no = #{seqNum}  order by id desc limit 1
+        where task_no = #{seqNum}
+        order by id desc limit 1
     </select>
 
 
     <select id="getJobByJobNo" resultMap="BaseResultMap">
         select *
         from cv_job
-        where job_no = #{workNo} order by id desc limit 1
+        where job_no = #{workNo}
+        order by id desc limit 1
     </select>
 
     <select id="getJobByJobNoAndJobSts" resultMap="BaseResultMap">
         select *
         from cv_job
         where job_no = #{workNo}
-          and job_sts = #{jobSts}  order by id desc limit 1
+          and job_sts = #{jobSts}
+        order by id desc limit 1
     </select>
 
     <select id="getJobByBarcodeAndJobSts" resultMap="BaseResultMap">
         select *
         from cv_job
         where barcode = #{barcode}
-          and job_sts = #{jobSts}  order by id desc limit 1
+          and job_sts = #{jobSts}
+        order by id desc limit 1
     </select>
 
     <select id="getJobByBarcode" resultMap="BaseResultMap">
         select *
         from cv_job
-        where barcode = #{barcode}  order by id desc limit 1
+        where barcode = #{barcode}
+        order by id desc limit 1
     </select>
 
 
@@ -67,4 +71,10 @@
         where job_sts = #{jobSts}
     </select>
 
+
+    <select id="listJobToLog" resultMap="BaseResultMap">
+        select *
+        from cv_job
+        where job_sts = #{jobSts} and DATEDIFF(NOW(), #{day}) > 1
+    </select>
 </mapper>

--
Gitblit v1.9.1