From 880b14b0be176882182f8d48cd8f5e80c1d9febe Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期一, 23 十月 2023 14:03:08 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/task/handler/FireOutHandler.java |   67 ++++++++++++++++++++++++---------
 1 files changed, 48 insertions(+), 19 deletions(-)

diff --git a/src/main/java/com/zy/asrs/task/handler/FireOutHandler.java b/src/main/java/com/zy/asrs/task/handler/FireOutHandler.java
index 75c5120..a629340 100644
--- a/src/main/java/com/zy/asrs/task/handler/FireOutHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/FireOutHandler.java
@@ -1,6 +1,7 @@
 package com.zy.asrs.task.handler;
 
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.core.common.Cools;
 import com.core.exception.CoolException;
 import com.zy.asrs.entity.*;
 import com.zy.asrs.service.*;
@@ -34,18 +35,37 @@
     private CommonService commonService;
     @Autowired
     private WrkDetlService wrkDetlService;
+    @Autowired
+    private StaDescService staDescService;
 
     @Transactional
     public ReturnT<String> start() {
         try {
             List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>()
                     .eq("fire_status", 1)
-                    .eq("loc_sts", "F"));
-
-            Integer ioType = 101;   //鍏ュ嚭搴撶被鍨�
+                    .andNew()
+                    .eq("loc_sts", "F")
+                    .or()
+                    .eq("loc_sts", "R"));
+            Integer ioType = 101;   //鍑哄簱
             Date now = new Date();
-            //浼樺厛绾�99锛屽嚭搴撶珯109锛氭秷闃茬锛�101
+            //浼樺厛绾�99锛岀Щ搴撳埌0102501
             for(LocMast locMast : locMasts){
+                if (Cools.isEmpty(locMast)){
+                    continue;
+                }
+                WrkMast wrkMast2=wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("sta_no",1000)
+                        .eq("source_loc_no",locMast.getLocNo()));
+                 if(!Cools.isEmpty(wrkMast2)){
+                    continue;
+                 }
+                WrkMast wrkMast1=wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("source_loc_no",locMast.getLocNo()));
+                if(!Cools.isEmpty(wrkMast1)){
+                    wrkMastService.delete(new EntityWrapper<WrkMast>().eq("source_loc_no",locMast.getLocNo()));
+                    wrkDetlService.delete(new EntityWrapper<WrkDetl>().eq("zpallet",locMast.getBarcode()));
+                }
+                // 鑾峰彇璺緞
+                StaDesc staDesc = staDescService.queryCrnStn(ioType, locMast.getCrnNo(), 1000);
                 // 鐢熸垚宸ヤ綔鍙�
                 int workNo = commonService.getWorkNo(WorkNoType.getWorkNoType(ioType));
                 // 鐢熸垚宸ヤ綔妗�
@@ -53,34 +73,41 @@
                 wrkMast.setWrkNo(workNo);
                 wrkMast.setIoTime(now);
                 wrkMast.setWrkSts(11L); // 宸ヤ綔鐘舵�侊細11.鐢熸垚鍑哄簱ID
-                wrkMast.setIoType(ioType); // 鍏ュ嚭搴撶姸鎬�
-                wrkMast.setIoPri(99D); // 浼樺厛绾э細99
-                wrkMast.setCrnNo(locMast.getCrnNo());
-                wrkMast.setSourceStaNo(109); // 婧愮珯
-                wrkMast.setStaNo(109); // 鐩爣绔�
+                wrkMast.setIoType(101); // 鍏ュ嚭搴撶姸鎬侊細 101鍑哄簱浣滀笟
+                wrkMast.setIoPri(99D);
+                wrkMast.setCrnNo(1);
+                wrkMast.setSourceStaNo(staDesc.getCrnStn()); // 婧愮珯
+                wrkMast.setStaNo(staDesc.getStnNo()); // 鐩爣绔�
                 wrkMast.setSourceLocNo(locMast.getLocNo()); // 婧愬簱浣�
+                wrkMast.setLocNo("0102501"); // 鐩爣搴撲綅
                 wrkMast.setFullPlt("Y"); // 婊℃澘锛歒
                 wrkMast.setPicking("N"); // 鎷f枡
                 wrkMast.setExitMk("N"); // 閫�鍑�
                 wrkMast.setEmptyMk("N"); // 绌烘澘
+                wrkMast.setBarcode(locMast.getBarcode()); // 鎵樼洏鐮�
                 wrkMast.setLinkMis("N");
-                wrkMast.setBarcode(locMast.getBarcode());
+                wrkMast.setAppeUser(9999L);
                 wrkMast.setAppeTime(now);
+                wrkMast.setModiUser(9999L);
                 wrkMast.setModiTime(now);
                 if (!wrkMastService.insert(wrkMast)) {
                     throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐ワ紝鍑哄簱搴撲綅鍙凤細"+locMast.getLocNo());
                 }
                 // 鐢熸垚宸ヤ綔妗f槑缁�
                 LocDetl detlDto=locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no",locMast.getLocNo()));
-                WrkDetl wrkDetl = new WrkDetl();
-                wrkDetl.sync(detlDto);
-                wrkDetl.setWrkNo(workNo);
-                wrkDetl.setIoTime(now);
-                wrkDetl.setAnfme(1.0); // 鏁伴噺
-                wrkDetl.setAppeTime(now);
-                wrkDetl.setModiTime(now);
-                if (!wrkDetlService.insert(wrkDetl)) {
-                    throw new CoolException("淇濆瓨宸ヤ綔妗f槑缁嗗け璐�");
+                if (Cools.isEmpty(detlDto)){
+                    log.error("搴撲綅:"+locMast.getLocNo()+"\t娌℃湁鏄庣粏");
+                }else {
+                    WrkDetl wrkDetl = new WrkDetl();
+                    wrkDetl.sync(detlDto);
+                    wrkDetl.setWrkNo(workNo);
+                    wrkDetl.setIoTime(now);
+                    wrkDetl.setAnfme(1.0); // 鏁伴噺
+                    wrkDetl.setAppeTime(now);
+                    wrkDetl.setModiTime(now);
+                    if (!wrkDetlService.insert(wrkDetl)) {
+                        log.error("搴撲綅:"+locMast.getLocNo()+"\t淇濆瓨宸ヤ綔妗f槑缁嗗け璐�");
+                    }
                 }
                 // 淇敼搴撲綅鐘舵��:   F.鍦ㄥ簱 ====>>> R.鍑哄簱棰勭害
                 if (locMast.getLocSts().equals("F")) {
@@ -89,6 +116,8 @@
                     if (!locMastService.updateById(locMast)) {
                         throw new CoolException("棰勭害搴撲綅鐘舵�佸け璐ワ紝搴撲綅鍙凤細"+locMast.getLocNo());
                     }
+                }else if(locMast.getLocSts().equals("R")){
+
                 } else {
                     throw new CoolException(locMast.getLocNo() + "搴撲綅涓嶆槸鍦ㄥ簱鐘舵��");
                 }

--
Gitblit v1.9.1