From be25fdca12071375d82a09f78c1235322b4106d0 Mon Sep 17 00:00:00 2001
From: lsh <1>
Date: 星期三, 17 一月 2024 14:23:51 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java |  390 +++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 333 insertions(+), 57 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
index 80f27d5..dec99b3 100644
--- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -1,6 +1,7 @@
 package com.zy.asrs.service.impl;
 
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.baomidou.mybatisplus.mapper.Wrapper;
 import com.core.common.Cools;
 import com.core.common.DateUtils;
 import com.core.common.R;
@@ -12,11 +13,17 @@
 import com.zy.asrs.entity.result.StockVo;
 import com.zy.asrs.mapper.TagMapper;
 import com.zy.asrs.service.*;
+import com.zy.asrs.task.core.ReturnT;
 import com.zy.asrs.utils.MatUtils;
+import com.zy.asrs.utils.PostMesDataUtils;
 import com.zy.common.model.DetlDto;
+import com.zy.common.model.LocTypeDto;
+import com.zy.common.model.StartupDto;
 import com.zy.common.model.enums.WorkNoType;
 import com.zy.common.service.CommonService;
 import com.zy.common.utils.NodeUtils;
+import com.zy.common.web.WcsController;
+import com.zy.common.web.param.SearchLocParam;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -61,6 +68,18 @@
     private WaitPakinService waitPakinService;
     @Autowired
     private CommonService commonService;
+    @Autowired
+    private LocDetlRullUpDetailService locDetlRullUpDetailService;
+    @Autowired
+    private WrkDetlSingleService wrkDetlSingleService;
+    @Autowired
+    private WrkMastStaService wrkMastStaService;
+    @Autowired
+    private WrkMastStaLogService wrkMastStaLogService;
+    @Autowired
+    private StaDescService staDescService;
+    @Autowired
+    private LocMastService locMastService;
 
     @Override
     @Transactional
@@ -741,6 +760,7 @@
 
         Date now = new Date();
         for (PalletizingCompleteParam.MatList matList:param.getMatLists()){
+            long rollUp = new Date().getTime();
             Mat mat = matService.selectByMatnr(matList.getMatnr());
             if (Cools.isEmpty(mat)) {
                 throw new CoolException(matList.getMatnr() + "鍟嗗搧妗f涓嶅瓨鍦�");
@@ -760,11 +780,188 @@
             waitPakin.setAppeTime(now);
             waitPakin.setModiUser(userId);
             waitPakin.setModiTime(now);
+            waitPakin.setRollUp(rollUp);
+            if (!Cools.isEmpty(matList.getMatDetlList())){
+                for (PalletizingCompleteParam.MatDetlList matDetlList:matList.getMatDetlList()){
+                    LocDetlRullUpDetail locDetlRullUpDetail = new LocDetlRullUpDetail();
+                    locDetlRullUpDetail.setUuid(rollUp);
+                    locDetlRullUpDetail.setRollNo(matDetlList.getBoxNoDetl());
+                    locDetlRullUpDetail.setRollWeight(matDetlList.getWeightDetl().toString());
+                    locDetlRullUpDetailService.insert(locDetlRullUpDetail);
+                }
+            }
             if (!waitPakinService.insert(waitPakin)) {
                 throw new CoolException("淇濆瓨鍏ュ簱閫氱煡妗eけ璐�");
             }
         }
 
+    }
+
+    /*
+     * 鏉剧洓(1妤�)锛氱爜鍨涘畬鎴愪笅鍙戝叆搴撲俊鎭�
+     * */
+    @Override
+    @Transactional
+    public void palletizingCompleteS(PalletizingCompleteParam param) {
+        Long userId = 7776L;//鏉剧洓
+        //鍒ゆ柇param鍙傛暟
+        if (Cools.isEmpty(param.getBarcode())){
+            throw new CoolException("鍙傛暟锛氭墭鐩樼爜 barcode涓虹┖");
+        }else if (Cools.isEmpty(param.getPalletizingNo())){
+            throw new CoolException("鍙傛暟锛氱爜鍨涗綅缂栧彿 palletizingNo涓虹┖");
+        }else if (Cools.isEmpty(param.getBoxType())){
+            throw new CoolException("鍙傛暟锛氭湪绠辩被鍨� boxType涓虹┖");
+        }else if (Cools.isEmpty(param.getMatLists()) || param.getMatLists().size()!=1){
+            throw new CoolException("鍙傛暟锛氱墿鏂欐槑缁� matLists涓虹┖");
+        }
+
+        ArrayList<String> positions = new ArrayList<>();   //鏈ㄧ浣嶇疆鏌ラ噸      (orgin)
+        ArrayList<String> boxNos = new ArrayList<>();   //鏈ㄧ鍞竴缂栫爜鏌ラ噸  锛坆atch锛�
+        //鍒ゆ柇matLists鍙傛暟
+        for (PalletizingCompleteParam.MatList matList:param.getMatLists()){
+            if (Cools.isEmpty(matList.getMatnr())){
+                throw new CoolException("鍙傛暟锛氱墿鏂欑紪鐮� matnr涓虹┖");
+            }else if (Cools.isEmpty(matList.getPosition())){
+                throw new CoolException("鐗╂枡缂栫爜锛�"+matList.getMatnr()+"銆佸弬鏁帮細鐮佸灈浣嶇疆 position涓虹┖");
+            }else if (Cools.isEmpty(matList.getBoxNo())){
+                throw new CoolException("鐗╂枡缂栫爜锛�"+matList.getMatnr()+"銆佸弬鏁帮細鏈ㄧ缂栧彿 boxNo涓虹┖");
+            }else if (Cools.isEmpty(matList.getAnfme()) || matList.getAnfme().equals(0)){
+                throw new CoolException("鐗╂枡缂栫爜锛�"+matList.getMatnr()+"銆佸弬鏁帮細鏈ㄧ涓摐绠旀暟閲� anfme涓虹┖");
+            }else if (Cools.isEmpty(matList.getWeight()) || matList.getWeight().equals(0D)){
+                throw new CoolException("鐗╂枡缂栫爜锛�"+matList.getMatnr()+"銆佸弬鏁帮細閲嶉噺 weight涓虹┖");
+            }
+
+            if (!positions.contains(matList.getPosition())){
+                positions.add(matList.getPosition());
+            }else {
+                throw new CoolException("鍙傛暟锛氭湪绠辩紪鍙� boxNo:"+matList.getBoxNo()+",鏈ㄧ浣嶇疆瀛樺湪閲嶅锛�"+matList.getPosition());
+            }
+
+            if (!boxNos.contains(matList.getBoxNo())){
+                boxNos.add(matList.getBoxNo());
+            }else {
+                throw new CoolException("鍙傛暟锛氭湪绠辩紪鍙� boxNo:"+matList.getBoxNo()+",鏈ㄧ缂栫爜瀛樺湪閲嶅");
+            }
+        }
+
+        BasDevp basDevp = basDevpService.selectById(param.getPalletizingNo2());
+        if (Cools.isEmpty(basDevp)){
+            throw new CoolException("鍙傛暟锛氱爜鍨涗綅缂栧彿 palletizingNo="+param.getPalletizingNo2()+"涓嶅瓨鍦�");
+        }
+        if (Cools.isEmpty(basDevp.getAutoing()) || !basDevp.getAutoing().equals("Y")){
+            throw new CoolException("鐮佸灈浣嶇紪鍙� palletizingNo="+param.getPalletizingNo()+" 鎵�澶勭珯鐐逛笉鏄嚜鍔ㄧ姸鎬�");
+        }
+        if (Cools.isEmpty(basDevp.getLoading()) || !basDevp.getLoading().equals("Y")){
+            throw new CoolException("鐮佸灈浣嶇紪鍙� palletizingNo="+param.getPalletizingNo()+" 鎵�澶勭珯鐐逛笉鏄湁鐗╃姸鎬�");
+        }
+//        if (Cools.isEmpty(basDevp.getCanining()) || !basDevp.getCanining().equals("Y")){
+//            throw new CoolException("鐮佸灈浣嶇紪鍙� palletizingNo="+param.getPalletizingNo()+" 鎵�澶勭珯鐐逛笉鏄兘鍏ョ姸鎬�");
+//        }
+
+
+
+
+//        if (locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet", param.getBarcode()))!=0
+//                || wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet", param.getBarcode()))!=0
+//                || waitPakinService.selectCount(new EntityWrapper<WaitPakin>().eq("zpallet", param.getBarcode()))!=0){
+//            throw new CoolException("鎵樼洏鏉$爜锛�"+param.getBarcode()+"宸插瓨鍦紝璇峰嬁閲嶅缁勬墭");
+//        }
+//
+//
+//        Date now = new Date();
+//        List<WaitPakin> waitPakins = new ArrayList<>();
+//        String matnr = null;
+//        for (PalletizingCompleteParam.MatList matList:param.getMatLists()){
+//            long rollUp = new Date().getTime();
+//            Mat mat = matService.selectByMatnr(matList.getMatnr());
+//            if (Cools.isEmpty(mat)) {
+//                throw new CoolException(matList.getMatnr() + "鍟嗗搧妗f涓嶅瓨鍦�");
+//            }
+//            matnr = mat.getMatnr();
+//            WaitPakin waitPakin = new WaitPakin();
+//            waitPakin.sync(mat);
+//            waitPakin.setModel(matList.getBatch());     //鎵规
+//            waitPakin.setSpecs(matList.getSpecs());     //瑙勬牸
+//            waitPakin.setBatch(matList.getBoxNo());       //鏈ㄧ缂栫爜
+//            waitPakin.setBrand(param.getBoxType());     //鏈ㄧ绫诲瀷
+//            waitPakin.setZpallet(param.getBarcode());   //鎵樼洏鐮�
+//            waitPakin.setOrigin(matList.getPosition()); //鏈ㄧ鍦ㄦ墭鐩樹笂鐨勪綅缃�
+//            waitPakin.setIoStatus("Y");     // 鍏ュ嚭鐘舵��
+//            waitPakin.setAnfme(matList.getAnfme().doubleValue());  // 鏈ㄧ涓摐绠旀暟閲�
+//            waitPakin.setStatus("Y");    // 鐘舵��
+//            waitPakin.setAppeUser(userId);
+//            waitPakin.setAppeTime(now);
+//            waitPakin.setModiUser(userId);
+//            waitPakin.setModiTime(now);
+//            waitPakin.setRollUp(rollUp);
+//            if (!Cools.isEmpty(matList.getMatDetlList())){
+//                for (PalletizingCompleteParam.MatDetlList matDetlList:matList.getMatDetlList()){
+//                    LocDetlRullUpDetail locDetlRullUpDetail = new LocDetlRullUpDetail();
+//                    locDetlRullUpDetail.setUuid(rollUp);
+//                    locDetlRullUpDetail.setRollNo(matDetlList.getBoxNoDetl());
+//                    locDetlRullUpDetail.setRollWeight(matDetlList.getWeightDetl().toString());
+//                    locDetlRullUpDetailService.insert(locDetlRullUpDetail);
+//                }
+//            }
+//            if (!waitPakinService.insert(waitPakin)) {
+//                throw new CoolException("淇濆瓨鍏ュ簱閫氱煡妗eけ璐�");
+//            }
+//            waitPakins.add(waitPakin);
+//        }
+//        LocTypeDto locTypeDto = new LocTypeDto();
+//        locTypeDto.setLocType1((short)1);
+//
+//        StartupDto dto = commonService.getLocNo(1, 1, param.getPalletizingNo2(), matnr,null,null, locTypeDto);
+//
+//        int workNo = dto.getWorkNo();
+//        // 鐢熸垚宸ヤ綔妗�
+//        WrkMast wrkMast = new WrkMast();
+//        wrkMast.setWrkNo(workNo);
+//        wrkMast.setIoTime(new Date());
+//        wrkMast.setWrkSts(1L); // 宸ヤ綔鐘舵�侊細鐢熸垚鍏ュ簱ID
+//        wrkMast.setIoType(1); // 鍏ュ嚭搴撶姸鎬侊細1.鍏ュ簱
+//        wrkMast.setIoPri(13D); // 浼樺厛绾�
+//        wrkMast.setCrnNo(dto.getCrnNo());
+//        wrkMast.setSourceStaNo(dto.getSourceStaNo());
+//        wrkMast.setStaNo(dto.getStaNo());
+//        wrkMast.setLocNo(dto.getLocNo());
+//        wrkMast.setBarcode(param.getBarcode()); // 鎵樼洏鐮�
+//        wrkMast.setFullPlt("Y"); // 婊℃澘锛歒
+//        wrkMast.setPicking("N"); // 鎷f枡
+//        wrkMast.setExitMk("N"); // 閫�鍑�
+//        wrkMast.setEmptyMk("N"); // 绌烘澘
+//        wrkMast.setLinkMis("Y");
+//        wrkMast.setCtnType(0); // 瀹瑰櫒绫诲瀷
+//        // 鎿嶄綔浜哄憳鏁版嵁
+//        wrkMast.setAppeTime(now);
+//        wrkMast.setModiTime(now);
+//        boolean res = wrkMastService.insert(wrkMast);
+//        if (!res) {
+//            throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
+//        }
+//        // 鐢熸垚宸ヤ綔妗f槑缁�
+//        waitPakins.forEach(waitPakin -> {
+//            WrkDetl wrkDetl = new WrkDetl();
+//            wrkDetl.sync(waitPakin);
+//            wrkDetl.setWrkNo(wrkMast.getWrkNo());
+//            wrkDetl.setIoTime(wrkMast.getIoTime());
+//            wrkDetl.setAppeTime(now);
+//            wrkDetl.setModiTime(now);
+//            if (!wrkDetlService.insert(wrkDetl)) {
+//                throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏澶辫触");
+//            }
+//        });
+//        // 鏇存柊鐩爣搴撲綅鐘舵��
+//        LocMast locMast = locMastService.selectById(dto.getLocNo());
+//        if (locMast.getLocSts().equals("O")){
+//            locMast.setLocSts("S"); // S.鍏ュ簱棰勭害
+//            locMast.setModiTime(now);
+//            if (!locMastService.updateById(locMast)){
+//                throw new CoolException("鏀瑰彉搴撲綅鐘舵�佸け璐�");
+//            }
+//        } else {
+//            throw new CoolException(dto.getLocNo()+"鐩爣搴撲綅宸茶鍗犵敤");
+//        }
     }
 
 
@@ -793,33 +990,29 @@
     public void singleUnstackingComplete(SingleUnstackingCompleteParam param) {
         Long userId = 8888L;//妗佹灦涓婁綅杞欢
         //鍒ゆ柇param鍙傛暟
-        if (Cools.isEmpty(param.getBarcode())){
-            throw new CoolException("鍙傛暟锛氭墭鐩樼爜 barcode涓虹┖");
-        }else if (Cools.isEmpty(param.getPalletizingNo())){
+        if (Cools.isEmpty(param.getPalletizingNo())){
             throw new CoolException("鍙傛暟锛氱爜鍨涗綅缂栧彿 palletizingNo涓虹┖");
-        }else if (Cools.isEmpty(param.getMatLists()) || param.getMatLists().size()==0){
+        }else if (Cools.isEmpty(param.getMatList()) || param.getMatList().size()==0){
             throw new CoolException("鍙傛暟锛氱墿鏂欐槑缁� matLists涓虹┖");
         }
-        WrkMast wrkMastMatrix = wrkMastService.selectByBarcode(param.getBarcode());
-        if (Cools.isEmpty(wrkMastMatrix)){
-            throw new CoolException("鍙傛暟锛氭墭鐩樼爜鏌ヨ宸ヤ綔妗eけ璐ワ細"+param.getBarcode());
-        }
 
-        List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNoUnstacking(wrkMastMatrix.getWrkNo());
         ArrayList<WrkDetl> wrkDetlsNew = new ArrayList<>();
+        ArrayList<WrkDetlSingle> wrkDetlsOld = new ArrayList<>();
         //鍒ゆ柇matLists鍙傛暟
-        for (SingleUnstackingCompleteParam.MatList matList:param.getMatLists()){
+        for (SingleUnstackingCompleteParam.MatList matList:param.getMatList()){
             if (Cools.isEmpty(matList.getPosition())){
                 throw new CoolException("鍙傛暟锛氱爜鍨涗綅缃� position涓虹┖");
             }else if (Cools.isEmpty(matList.getBoxNo())){
                 throw new CoolException("鍙傛暟锛氭湪绠辩紪鍙� boxNo涓虹┖");
             }
+            List<WrkDetlSingle> wrkDetlSingles = wrkDetlSingleService.selectList(new EntityWrapper<WrkDetlSingle>().eq("batch", matList.getBoxNo()));
             boolean sign=true;
-            for (WrkDetl wrkDetl:wrkDetls){
-                if (wrkDetl.getBatch().equals(matList.getBoxNo())){//鏈ㄧ缂栫爜
-                    wrkDetl.setInspect(1);
-                    wrkDetlService.update(wrkDetl,new EntityWrapper<WrkDetl>().eq("batch",wrkDetl.getBatch()));
+            for (WrkDetlSingle wrkDetlSingle:wrkDetlSingles){
+                if (wrkDetlSingle.getBatch().equals(matList.getBoxNo())){//鏈ㄧ缂栫爜
+                    WrkDetl wrkDetl = new WrkDetl();
+                    wrkDetl.sync(wrkDetlSingle);
                     wrkDetlsNew.add(wrkDetl);
+                    wrkDetlsOld.add(wrkDetlSingle);
                     sign=false;
                     break;
                 }
@@ -841,7 +1034,7 @@
         wrkMast.setIoType(202); // 鍏ュ嚭搴撶姸鎬侊細202.鎷嗗灈鍚庡嚭搴�
         wrkMast.setIoPri(99D); // 浼樺厛绾�
         wrkMast.setSourceStaNo(param.getDevNo$());
-        wrkMast.setStaNo(140); //璐存爣绔欑偣
+        wrkMast.setStaNo(144); //璐存爣绔欑偣  鐩存帴鍒板熬绔�
         // 鎿嶄綔浜哄憳鏁版嵁
         wrkMast.setAppeUser(userId);
         wrkMast.setAppeTime(now);
@@ -861,6 +1054,13 @@
             }
         }
 
+        for (WrkDetlSingle wrkDetlSingle : wrkDetlsOld) {
+            wrkDetlSingleService.delete(new EntityWrapper<WrkDetlSingle>()
+                    .eq("batch",wrkDetlSingle.getBatch())
+                    .eq("wrk_no",wrkDetlSingle.getWrkNo())
+                    .eq("io_time",wrkDetlSingle.getIoTime()));
+        }
+
     }
 
     /*
@@ -873,49 +1073,50 @@
         //鍒ゆ柇param鍙傛暟
         if (Cools.isEmpty(param.getBarcode())){
             throw new CoolException("鍙傛暟锛氭墭鐩樼爜 barcode涓虹┖");
-        }else if (Cools.isEmpty(param.getPalletizingNo())){
-            throw new CoolException("鍙傛暟锛氱爜鍨涗綅缂栧彿 palletizingNo涓虹┖");
         }
+//        else if (Cools.isEmpty(param.getPalletizingNo())){
+//            throw new CoolException("鍙傛暟锛氱爜鍨涗綅缂栧彿 palletizingNo涓虹┖");
+//        }
         WrkMast wrkMastMatrix = wrkMastService.selectByBarcode(param.getBarcode());
         if (Cools.isEmpty(wrkMastMatrix)){
             throw new CoolException("鍙傛暟锛氭墭鐩樼爜鏌ヨ宸ヤ綔妗eけ璐ワ細"+param.getBarcode());
         }else {
-            if (!wrkMastMatrix.getIoType().equals(101)){
-                List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNoUnstacking(wrkMastMatrix.getWrkNo());
-                if (Cools.isEmpty(param.getMatLists()) || param.getMatLists().size()==0 || param.getMatLists().size()!=wrkDetls.size()){
-                    throw new CoolException("杩斿洖鐗╂枡鏄庣粏鏁颁负"+param.getMatLists().size()+",鎵樼洏鐮侊細"+param.getBarcode()+"搴斿墿浣欑墿鏂欐暟锛�"+wrkDetls.size());
-                }
-
-                ArrayList<String> orgin = new ArrayList<>();
-                //鍒ゆ柇matLists鍙傛暟
-                for (SingleMountUnstackingCompleteParam.MatList matList : param.getMatLists()){
-                    if (Cools.isEmpty(matList.getPosition())){
-                        throw new CoolException("鍙傛暟锛氱爜鍨涗綅缃� position涓虹┖");
-                    }else if (Cools.isEmpty(matList.getBoxNo())){
-                        throw new CoolException("鍙傛暟锛氭湪绠辩紪鍙� boxNo涓虹┖");
-                    }
-                    if (!orgin.contains(matList.getPosition())){
-                        orgin.add(matList.getPosition());
-                    }else {
-                        throw new CoolException("鍙傛暟锛氭湪绠辩紪鍙� boxNo:"+matList.getBoxNo()+",鏈ㄧ浣嶇疆瀛樺湪閲嶅");
-                    }
-                    boolean sign=true;
-                    for (WrkDetl wrkDetl:wrkDetls){
-                        if (wrkDetl.getBatch().equals(matList.getBoxNo())){//鏈ㄧ缂栫爜
-                            wrkDetl.setOrigin(matList.getPosition());
-                            wrkDetlService.update(wrkDetl,new EntityWrapper<WrkDetl>().eq("batch",wrkDetl.getBatch()));
-                            sign=false;
-                            break;
-                        }
-                    }
-                    if (sign){
-                        throw new CoolException("鍙傛暟锛氭湪绠辩紪鍙� boxNo:"+matList.getBoxNo()+"鏈煡璇㈠埌瀵瑰簲鐨勫伐浣滄槑缁嗭紒");
-                    }
-                }
-            }
+//            if (wrkMastMatrix.getIoType().equals(103)){
+//                List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNoUnstacking(wrkMastMatrix.getWrkNo());
+//                if (Cools.isEmpty(param.getMatLists()) || param.getMatLists().size()==0 || param.getMatLists().size()!=wrkDetls.size()){
+//                    throw new CoolException("杩斿洖鐗╂枡鏄庣粏鏁颁负"+param.getMatLists().size()+",鎵樼洏鐮侊細"+param.getBarcode()+"搴斿墿浣欑墿鏂欐暟锛�"+wrkDetls.size());
+//                }
+//
+//                ArrayList<String> orgin = new ArrayList<>();
+//                //鍒ゆ柇matLists鍙傛暟
+//                for (SingleMountUnstackingCompleteParam.MatList matList : param.getMatLists()){
+//                    if (Cools.isEmpty(matList.getPosition())){
+//                        throw new CoolException("鍙傛暟锛氱爜鍨涗綅缃� position涓虹┖");
+//                    }else if (Cools.isEmpty(matList.getBoxNo())){
+//                        throw new CoolException("鍙傛暟锛氭湪绠辩紪鍙� boxNo涓虹┖");
+//                    }
+//                    if (!orgin.contains(matList.getPosition())){
+//                        orgin.add(matList.getPosition());
+//                    }else {
+//                        throw new CoolException("鍙傛暟锛氭湪绠辩紪鍙� boxNo:"+matList.getBoxNo()+",鏈ㄧ浣嶇疆瀛樺湪閲嶅");
+//                    }
+//                    boolean sign=true;
+//                    for (WrkDetl wrkDetl:wrkDetls){
+//                        if (wrkDetl.getBatch().equals(matList.getBoxNo())){//鏈ㄧ缂栫爜
+//                            wrkDetl.setOrigin(matList.getPosition());
+//                            wrkDetlService.update(wrkDetl,new EntityWrapper<WrkDetl>().eq("batch",wrkDetl.getBatch()));
+//                            sign=false;
+//                            break;
+//                        }
+//                    }
+//                    if (sign){
+//                        throw new CoolException("鍙傛暟锛氭湪绠辩紪鍙� boxNo:"+matList.getBoxNo()+"鏈煡璇㈠埌瀵瑰簲鐨勫伐浣滄槑缁嗭紒");
+//                    }
+//                }
+//            }
         }
 
-        wrkMastMatrix.setSheetNo("1");
+        wrkMastMatrix.setSheetNo("2");
         if (!wrkMastService.updateById(wrkMastMatrix)){
             throw new CoolException("鏇存柊宸ヤ綔妗eけ璐�==銆嬫鏋朵笂浣嶈蒋浠讹細鍗曟墭鎷嗗灈瀹屾垚閫氱煡");
         }
@@ -939,19 +1140,94 @@
     @Override
     @Transactional
     public void cs2() {
-        BasDevp basDevp = basDevpService.selectById(216);
-        basDevp.setWrkNo(0);
-        basDevp.setBarcode("");
-        basDevpService.updateById(basDevp);
+//        int[] staNos =new int[]{122};
+//        for (Integer staNo:staNos){
+//            int[] crnNos =new int[]{6};
+//            for (Integer crnNo:crnNos){
+//                descSta(staNo,crnNo);
+//            }
+//        }
+
     }
 
-    /*
+    private void descSta(Integer staNo,Integer crnNo){
+//        int[] typeNos =new int[]{1,10,53,101,103,110};
+        int[] typeNos =new int[]{10,110};
+        for (Integer typeNo:typeNos){
+            descSta3(staNo,crnNo,typeNo);
+        }
+    }
+
+    private void descSta3(Integer staNo,Integer crnNo,Integer typeNo){
+        StaDesc staDesc = new StaDesc();
+        staDesc.setTypeNo(typeNo);
+        staDesc.setStnNo(staNo);
+        staDesc.setCrnNo(crnNo);
+        staDesc.setCrnStn(CrnNoRC(crnNo,staDesc.getTypeNo()>100));
+        descSta2(staDesc);
+    }
+
+    private void descSta2(StaDesc staDesc){
+        Date now = new Date();
+        //鍏ュ簱
+        int sameRes = staDescService.selectCount(new EntityWrapper<StaDesc>()
+                .eq("type_no", staDesc.getTypeNo())
+                .eq("stn_no", staDesc.getStnNo())
+                .eq("crn_no", staDesc.getCrnNo())
+                .eq("crn_stn", staDesc.getCrnStn()));
+        if (sameRes == 0) {
+            staDesc.setModiUser(9527L);
+            staDesc.setModiTime(now);
+            staDesc.setAppeUser(9527L);
+            staDesc.setAppeTime(now);
+            staDescService.insert(staDesc);
+        }
+    }
+
+    private Integer CrnNoRC(Integer crnNo,boolean sign){
+        Integer crnStn = 0;
+        switch (crnNo){
+            case 1:
+                crnStn = 102;
+                break;
+            case 2:
+                crnStn = 105;
+                break;
+            case 3:
+                crnStn = 108;
+                break;
+            case 4:
+                crnStn = 111;
+                break;
+            case 5:
+                crnStn = 114;
+                break;
+            case 6:
+                crnStn = 117;
+                break;
+        }
+        if (sign){
+            return crnStn-2;
+        }
+        return crnStn;
+    }
+
+
+        /*
      *
      * */
     @Override
     @Transactional
     public void cs3() {
-
+        //鎷嗙洏
+        WrkMastSta wrkMastSta1 = new WrkMastSta(new Date(),119);
+        wrkMastSta1.setType(2);
+        wrkMastSta1.setWrkType(2);
+        wrkMastStaService.insert(wrkMastSta1);
+        WrkMastSta wrkMastSta2 = new WrkMastSta(new Date(),121);
+        wrkMastSta2.setType(2);
+        wrkMastSta2.setWrkType(2);
+        wrkMastStaService.insert(wrkMastSta2);
     }
 
     /*...........................涓婇ザ姹熼摐..............浠ヤ笂.............寰愬伐姹変簯...........................*/

--
Gitblit v1.9.1