From 3c3779a57590280ef32ca2e4a96f148b438bc6ef Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期四, 20 三月 2025 18:16:15 +0800
Subject: [PATCH] *

---
 src/main/java/com/zy/asrs/task/handler/ReportToDismantleTheStackHandler.java |  140 ++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 140 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/zy/asrs/task/handler/ReportToDismantleTheStackHandler.java b/src/main/java/com/zy/asrs/task/handler/ReportToDismantleTheStackHandler.java
index 017011c..0926e27 100644
--- a/src/main/java/com/zy/asrs/task/handler/ReportToDismantleTheStackHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/ReportToDismantleTheStackHandler.java
@@ -191,6 +191,146 @@
         }
         return FAIL;
     }
+    public ReturnT<String> start2(int staNo) {
+        try {
+            Date now = new Date();
+            BasDevp basDevp = basDevpService.selectById(staNo);
+            Integer staOther = getStaOther(staNo);
+            Integer staEnd = getStaEnd(staNo);
+            if (staOther==0) return FAIL;
+
+            SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, 1);
+            StaProtocol staProtocol = devpThread.getStation().get(staNo);
+            if (staProtocol == null) {
+                return FAIL;
+            } else {
+                staProtocol = staProtocol.clone();
+            }
+
+//            StaProtocol staProtocolOther = devpThread.getStation().get(staOther);
+//            if (staProtocolOther == null) {
+//                return FAIL;
+//            } else {
+//                staProtocolOther = staProtocolOther.clone();
+//            }
+
+
+            StaProtocol staProtocolEnd = devpThread.getStation().get(staEnd);
+            if (staProtocolEnd == null) {
+                return FAIL;
+            } else {
+                staProtocolEnd = staProtocolEnd.clone();
+            }
+
+
+            BasDevp basDevpOther = basDevpService.selectById(staOther);
+            if (Cools.isEmpty(basDevpOther) || basDevpOther.getReportSign()==1){
+                return FAIL;
+            }
+
+
+            BasDevp basDevpEnd = basDevpService.selectById(staEnd);
+            if (!basDevpEnd.getLoading().equals("Y") || !basDevpEnd.getAutoing().equals("Y") || !basDevpEnd.getEmptyMk().equals("Y")){
+                return FAIL;
+            }
+            if (!staProtocolEnd.isLoading() || !staProtocolEnd.isAutoing() || !staProtocolEnd.isEmptyMk() ){
+                return FAIL;
+            }
+
+            if ( basDevpEnd.getWrkNo()!=0 || basDevpEnd.getReportSign()!=0){
+                return FAIL;
+            }
+            if ( staProtocolEnd.getWorkNo()!=0 ){
+                return FAIL;
+            }
+
+            WrkMast wrkMast1 = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("io_type", 202).eq("source_sta_no", staEnd).eq("wrk_sts",51L));
+            if (!Cools.isEmpty(wrkMast1)) return FAIL;
+            if (!Cools.isEmpty(basDevp) && basDevp.getAutoing().equals("Y") && basDevp.getWrkNo()!=0){ //涓婁紶鍓嶅伐浣滃彿璺熺數鎺х害瀹氫负9992涓帶(妗佹灦)锛氱爜鍨涘畬鎴愪笅鍙戝叆搴撲俊鎭紙浣犲彲浠ヨ嚜瀹氫箟锛�
+                if (staProtocol.isAutoing() && staProtocol.getWorkNo()!=0){
+                    WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", basDevp.getWrkNo()));
+                    if (Cools.isEmpty(wrkMast) || Cools.isEmpty(wrkMast.getSheetNo()) || !wrkMast.getSheetNo().equals("0")){
+                        return FAIL;
+                    }
+                    List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
+                    if (Cools.isEmpty(wrkDetls) || wrkDetls.isEmpty()){
+                        return FAIL;
+                    }
+                    List<WrkDetl> wrkDetlList = new ArrayList<>();
+                    String signOne = "";
+                    String signTwo = "";
+                    for (WrkDetl wrkDetl:wrkDetls){
+                        if (wrkDetl.getOrigin().equals("1") && signOne.equals("")){
+                            wrkDetlList.add(wrkDetl);
+                            signOne = "1";
+                        } else if (wrkDetl.getOrigin().equals("2") && signTwo.equals("")){
+                            wrkDetlList.add(wrkDetl);
+                            signTwo = "2";
+                        }
+                        if (!signOne.equals("") && !signTwo.equals("")){
+                            break;
+                        }
+                    }
+                    SingleMountUnstackingCompleteParam singleMountUnstackingCompleteParam = new SingleMountUnstackingCompleteParam(wrkMast,wrkDetlList);
+                    singleMountUnstackingCompleteParam.setStaStart(staNo);
+                    singleMountUnstackingCompleteParam.setStaEnd(staEnd);
+//                result = null;
+//                if (true){
+//                    return FAIL;
+//                }
+                    log.error("涓婁紶鏈烘鑷傛椂锛岀珯鐐圭姸鎬侊細"+JSON.toJSONString(basDevpEnd));
+                    log.error("涓婁紶鏈烘鑷傛椂锛屽伐浣滃彿锛�"+JSON.toJSONString(wrkMast));
+                    ReturnT<String> result = postMesData(reportOutPath,singleMountUnstackingCompleteParam);
+//                System.out.println(result);
+//                if (true){
+//                    for (WrkDetl wrkDetl:wrkDetls){
+//                        WrkDetlSingle wrkDetlSingle = new WrkDetlSingle();
+//                        wrkDetlSingle.sync(wrkDetl);
+//                        wrkDetlSingle.setWrkNo(wrkDetl.getWrkNo().longValue());
+//                        wrkDetlSingleService.insert(wrkDetlSingle);
+//                    }
+//                    wrkMast.setSheetNo("1");
+//                    wrkMastService.updateById(wrkMast);
+//                    basDevp.setReportSign(1);
+//                    basDevpService.updateById(basDevp);
+//                    basDevpEnd.setReportSign(1);
+//                    basDevpService.updateById(basDevp);
+//                    return SUCCESS;
+//                }
+                    if (result.getCode()==200){
+                        Date nowOne = new Date();
+                        Date nowTwo = now;
+                        for (WrkDetl wrkDetl:wrkDetls){
+                            if (wrkDetl.getOrigin().equals("1")){
+                                now = nowOne;
+                            } else if (wrkDetl.getOrigin().equals("2")){
+                                now = nowTwo;
+                            }
+                            WrkDetlSingle wrkDetlSingle = new WrkDetlSingle();
+                            wrkDetlSingle.sync(wrkDetl);
+                            wrkDetlSingle.setWrkNo(wrkDetl.getWrkNo().longValue());
+                            wrkDetlSingle.setIoTime(now);
+                            wrkDetlSingleService.insert(wrkDetlSingle);
+                        }
+                        wrkMast.setSheetNo("1");
+                        wrkMastService.updateById(wrkMast);
+                        basDevp.setReportSign(1);
+                        basDevpService.updateById(basDevp);
+                        basDevpEnd.setReportSign(1);
+                        basDevpService.updateById(basDevpEnd);
+
+                        return SUCCESS;
+                    }else {
+                        log.error("鎷嗗灈淇℃伅涓婁紶澶辫触");
+                    }
+                }
+            }
+        }catch (Exception e){
+            log.error("寮傚父锛侊紒锛�"+e);
+            return FAIL;
+        }
+        return FAIL;
+    }
 
     private ReturnT<String> postMesData(String erpPath,Object combParam){
         if(combParam != null){

--
Gitblit v1.9.1