From 912d09bc076272770a507517e71703078c8ae9d7 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期三, 15 四月 2026 17:04:43 +0800
Subject: [PATCH] 1

---
 zy-asc-conveyor/src/main/java/com/zy/acs/conveyor/core/operation/handler/AppleLocOperationHandler.java |   47 ++++++++++++++++++++++++++++++++---------------
 1 files changed, 32 insertions(+), 15 deletions(-)

diff --git a/zy-asc-conveyor/src/main/java/com/zy/acs/conveyor/core/operation/handler/AppleLocOperationHandler.java b/zy-asc-conveyor/src/main/java/com/zy/acs/conveyor/core/operation/handler/AppleLocOperationHandler.java
index 6fafd4f..6021109 100644
--- a/zy-asc-conveyor/src/main/java/com/zy/acs/conveyor/core/operation/handler/AppleLocOperationHandler.java
+++ b/zy-asc-conveyor/src/main/java/com/zy/acs/conveyor/core/operation/handler/AppleLocOperationHandler.java
@@ -14,7 +14,6 @@
 import com.zy.acs.conveyor.core.properties.SlaveProperties;
 import com.zy.acs.conveyor.core.service.StationService;
 import com.zy.acs.conveyor.entity.Job;
-import com.zy.acs.conveyor.enums.WorkNoTypeType;
 import com.zy.acs.conveyor.service.JobService;
 import com.zy.acs.conveyor.service.WmsMainService;
 import com.zy.acs.conveyor.service.WrkLastnoService;
@@ -78,15 +77,27 @@
                         staProtocol = staProtocol.clone();
                     }
                     // 鍒ゆ柇鏄惁婊¤冻鏉′欢
-                    if (staProtocol.isInEnable()) {
+                    if (staProtocol.getWorkNo() == 0) {
+                        continue;
+                    }
+                    if (!staProtocol.isAutoing()) {
+                        //News.error("{}锛氱珯鐐癸細{}锛岄潪鑷姩", config.getMark(), staProtocol.getSiteId());
                         continue;
                     }
                     if (!staProtocol.isLoading()) {
                         News.error("{}锛氱珯鐐癸細{}锛屾棤鐗�", config.getMark(), staProtocol.getSiteId());
                         continue;
                     }
-                    if (!staProtocol.isAutoing()) {
-                        News.error("{}锛氱珯鐐癸細{}锛岄潪鑷姩", config.getMark(), staProtocol.getSiteId());
+                    if (staProtocol.isWeightErr()) {
+                        News.error("{}锛氱珯鐐癸細{}锛岄噸閲忓紓甯革細{}", config.getMark(), staProtocol.getSiteId(), staProtocol.getWeight());
+                        continue;
+                    }
+                    if (staProtocol.isBarcodeErr()) {
+                        News.error("{}锛氱珯鐐癸細{}锛屾潯鐮佸紓甯革細{}", config.getMark(), staProtocol.getSiteId(), staProtocol.getBarcode());
+                        continue;
+                    }
+                    if (staProtocol.isLoadErr()) {
+                        News.error("{}锛氱珯鐐癸細{}锛屽叆搴撴椂妫�娴嬫墭鐩樹笂鏈夋棤璐х墿", config.getMark(), staProtocol.getSiteId());
                         continue;
                     }
                     String barcode = staProtocol.getBarcode();
@@ -94,27 +105,36 @@
                         News.error("绔欑偣锛歿}锛屾湭鎵埌鐮佸�硷細{}", staProtocol.getSiteId(), barcode);
                         continue;
                     }
-                    Job job = jobService.getJobByBarcode(barcode);
+                    Job job = jobService.getJobByJobNo(staProtocol.getWorkNo());
+                    //Job job = jobService.getJobByBarcode(barcode);
                     if (job == null) {
                         News.error("{}锛氱珯鐐癸細{}锛屾壘涓嶅埌浠诲姟", config.getMark(), staProtocol.getSiteId());
                         continue;
                     }
                     if (job.getJobSts() != ConveyorStateType.STARTUP.getStatus()) {
-                        if (job.getJobSts() == ConveyorStateType.INBOUND.getStatus()){
+                        if (job.getJobSts() == ConveyorStateType.INBOUND.getStatus()) {
                             continue;
                         }
                         News.error("{}锛氱珯鐐癸細{}锛屼换鍔$姸鎬佷笉瀵癸紝{}", config.getMark(), staProtocol.getSiteId(), JSON.toJSON(job));
                         continue;
                     }
 
-                    ApplyInRepsonseDto locOfWms = wmsMainService.getLocOfWms(applyIn(barcode, inSta.getStaNo() + "", staProtocol));
+                    ApplyInRepsonseDto locOfWms = wmsMainService.getLocOfWms(applyIn(job, barcode, inSta.getStaNo() + "", staProtocol));
                     if (locOfWms != null) {
-                        Integer workNo = getWorkNo();
-                        staProtocol.setWorkNo(workNo);
+                        staProtocol.setWorkNo(staProtocol.getWorkNo());
                         staProtocol.setStaNo(inSta.getTargetSta());
                         redis.push(RedisConveyorConstant.CONVEYOR_TASK_FLAG, staProtocol);
-                        if (jobService.insert(initJob(locOfWms, barcode, workNo, inSta.getTargetSta() + ""))) {
+                        job.setLoc(locOfWms.getLocNo());
+                        job.setStaNo(String.valueOf(inSta.getTargetSta() + 1));
+                        job.setTaskNo(locOfWms.getTaskNo());
+                        job.setBatchNo(locOfWms.getBatchNo());
+                        job.setBarcode(barcode);
+                        job.setWmsTime(new Date());
+                        job.setJobSts(ConveyorStateType.INBOUND.getStatus());
+                        //if (jobService.insert(initJob(locOfWms, barcode, workNo, inSta.getTargetSta() + ""))) {
+                        if (jobService.updateById(job)) {
                             News.info("鐢宠鍏ュ簱鎴愬姛锛屾潯鐮侊細{},绔欑偣锛歿}", barcode, inSta.getStaNo());
+
                         }
                     } else {
                         News.error("WMS鏈繑鍥炲簱浣嶄俊鎭紝鏉$爜锛歿},绔欑偣锛歿}", barcode, inSta.getStaNo());
@@ -141,15 +161,12 @@
         return job;
     }
 
-    private Integer getWorkNo() {
-        return wrkLastnoService.nextWorkNo(WorkNoTypeType.WORK_NO_TYPE.type);
-    }
 
-    private ApplyInDto applyIn(String barcode, String staNo, StaProtocol staProtocol) {
+    private ApplyInDto applyIn(Job job, String barcode, String staNo, StaProtocol staProtocol) {
         ApplyInDto applyInDto = new ApplyInDto();
         applyInDto.setStaNo(staNo);
         applyInDto.setBarcode(barcode);
-        applyInDto.setFull(staProtocol.isFullPlt());
+        applyInDto.setFull(Boolean.valueOf(job.getFull()));
         applyInDto.setWeight(staProtocol.getWeight());
         return applyInDto;
     }

--
Gitblit v1.9.1