From 2ea423b0f01d4db3d879066cd6c9634cc6800c7c Mon Sep 17 00:00:00 2001
From: dubin <bindu_bean@163.com>
Date: 星期四, 27 十一月 2025 16:37:43 +0800
Subject: [PATCH] #1

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |  401 ++++++++++++++++++++++++++++++--------------------------
 1 files changed, 213 insertions(+), 188 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
index 6e49b2c..d5cf0fe 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -136,7 +136,9 @@
                         && staProtocol.isInEnable()
                         && !staProtocol.isEmptyMk()
                         && staProtocol.getWorkNo() == 9999
-                        && staProtocol.isPakMk() && (staProtocol.getEmptyInType() != 1 && staProtocol.getEmptyInType() != 2)) {
+                        && staProtocol.isPakMk()
+//                        && (staProtocol.getEmptyInType() != 1 && staProtocol.getEmptyInType() != 2)
+                ) {
                     News.warnNoLog("" + mark + " - 0" + " - 寮�濮嬫墽琛�");
 
                     String barcode = barcodeThread.getBarcode();
@@ -197,17 +199,17 @@
                         continue;
                     }
 
-                    if (inSta.getStaNo() == 1005) {
-                        //妫�娴嬫槸鍚︽湁鍑哄簱浠诲姟
-                        List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>()
-                                .in("io_type", 101, 103, 107)
-                                .in("sta_no", 1003, 1007)
-                        );
-                        if (!wrkMasts.isEmpty()) {
-                            News.error("" + mark + " - 4" + " - 1003绔欏叆搴擄紝妫�娴嬪瓨鍦ㄥ嚭搴撲换鍔★紝绛夊緟鍑哄簱浠诲姟鎵ц瀹屾垚,鎵樼洏鐮�={}", barcode);
-                            continue;
-                        }
-                    }
+//                    if (inSta.getStaNo() == 1002 || inSta.getStaNo() == 1007) {
+//                        //妫�娴嬫槸鍚︽湁鍑哄簱浠诲姟
+//                        List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>()
+//                                .in("io_type", 101, 103, 107)
+//                                .in("sta_no", 1003, 1004)
+//                        );
+//                        if (!wrkMasts.isEmpty()) {
+//                            News.error("" + mark + " - 4" + " - 鍏ュ簱锛屾娴嬪瓨鍦ㄥ嚭搴撲换鍔★紝绛夊緟鍑哄簱浠诲姟鎵ц瀹屾垚,鎵樼洏鐮�={}", barcode);
+//                            continue;
+//                        }
+//                    }
 
                     try {
                         LocTypeDto locTypeDto = new LocTypeDto(staProtocol);
@@ -232,14 +234,14 @@
 
                             short staNo = dto.getStaNo().shortValue();
 
-                            int sourceStaNo = dto.getSourceStaNo();
-                            if (sourceStaNo == 1007) {
-                                staNo = 2002;
-                            }
-
-                            if (inSta.getStaNo() == 1002) {
-                                staNo = 2002;
-                            }
+//                            int sourceStaNo = dto.getSourceStaNo();
+//                            if (sourceStaNo == 1007) {
+//                                staNo = 2002;
+//                            }
+//
+//                            if (inSta.getStaNo() == 1002) {
+//                                staNo = 2002;
+//                            }
 
                             barcodeThread.setBarcode("");
                             staProtocol.setWorkNo(dto.getWorkNo().shortValue());
@@ -409,20 +411,31 @@
                             // 鏃犳嫞鏂欐暟鎹�
                             continue;
                         }
+
+                        if (wrkMast.getIoType() == 53 || wrkMast.getIoType() == 57) {
+                            if (wrkMast.getWrkSts() != 2) {
+                                News.error("" + mark + " - 3" + " - 鎷i�夌洏鐐瑰洖搴撳伐浣滄。鐘舵�佸紓甯革紒锛侊紒 [plc缂栧彿锛歿}]", devp.getId());
+                                continue;
+                            }
+
+                            LocMast locMast = locMastService.selectById(wrkMast.getLocNo());
+                            // 鏇存柊绔欑偣淇℃伅 涓� 涓嬪彂plc鍛戒护
+                            staProtocol.setWorkNo(wrkMast.getWrkNo().shortValue());
+                            staProtocol.setStaNo(wrkMast.getStaNo().shortValue());
+                            staProtocol.setPalletSize(locMast.getLocType2());
+                            devpThread.setPakMk(staProtocol.getSiteId(), false);
+                            boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
+                            if (!result) {
+                                News.error("" + mark + " - 3" + " - 鍙戝竷鍛戒护鑷宠緭閫佺嚎闃熷垪澶辫触锛侊紒锛� [plc缂栧彿锛歿}]", devp.getId());
+                            }
+                            continue;
+                        }
+
                         if ((wrkMast.getIoType() != 103 && wrkMast.getIoType() != 104 && wrkMast.getIoType() != 107)
                                 || Cools.isEmpty(wrkMast.getStaNo()) || Cools.isEmpty(wrkMast.getSourceStaNo())) {
                             continue;
                         }
 
-                        // 鎷c�佺洏銆佸苟 浣滀笟绔欒浆鎹�
-//                    int stnNo = 0;
-//                    if (wrkMast.getStaNo() == 109) {
-//                        stnNo = 127;
-//                    } else if (wrkMast.getStaNo() == 113) {
-//                        stnNo = 128;
-//                    } else {
-//                        log.error("{}鍙蜂换鍔℃暟鎹紓甯革紒", wrkMast.getWrkNo());
-//                    }
                         // 鑾峰彇鐩爣绔�
                         Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>()
                                 .eq("type_no", wrkMast.getIoType() - 50)
@@ -446,62 +459,58 @@
                         }
 
                         try {
-                            // 淇濆瓨宸ヤ綔鏄庣粏妗e巻鍙叉。
-                            if (wrkMastMapper.saveWrkDetlLog(wrkMast.getWrkNo()) == 0) {
-                                throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏妗e巻鍙叉。澶辫触");
-                            }
-                            // 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗�
-                            if (wrkMastMapper.saveWrkMastLog(wrkMast.getWrkNo()) == 0) {
-                                throw new CoolException("淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗eけ璐�");
-                            }
+                            LocTypeDto locTypeDto = new LocTypeDto(staProtocol);
 
-                            Date now = new Date();
-                            // 鍫嗗灈鏈虹珯鐐�(鐩爣绔�)
-                            Integer staNo = staDesc.getCrnStn();
-                            // 鏇存柊宸ヤ綔妗f暟鎹姸鎬�
-                            wrkMast.setIoTime(now);
-                            wrkMast.setIoType(wrkMast.getIoType() - 50); // 鍏ュ嚭搴撶被鍨�: 103->53,104->54,107->57
-                            wrkMast.setWrkSts(2L); // 宸ヤ綔鐘舵��: 2.璁惧涓婅蛋
-                            wrkMast.setSourceStaNo(wrkMast.getStaNo()); // 婧愮珯
-                            wrkMast.setStaNo(staNo); // 鐩爣绔�
-                            wrkMast.setLocNo(wrkMast.getSourceLocNo()); // 鐩爣搴撲綅 = 鍑哄簱鏃剁殑婧愬簱浣�
-                            wrkMast.setSourceLocNo(""); // 婧愬簱浣嶆竻绌�
-                            wrkMast.setModiTime(now);
-                            wrkMast.setUpdMk("");//鍏佽鍐嶆绉诲簱
-                            if (wrkMastMapper.updateById(wrkMast) == 0) {
-                                throw new CoolException("鏇存柊宸ヤ綔妗f暟鎹姸鎬佸け璐�");
-                            }
-                            // 鏇存柊鏄庣粏妗o_time (鍘嗗彶妗e叧鑱斾娇鐢級
-                            wrkDetlService.updateIoTime(wrkMast.getWrkNo(), now);
-                            // 淇敼搴撲綅鐘舵�� Q.鎷f枡/鐩樼偣/骞舵澘鍐嶅叆搴�
-                            LocMast locMast = locMastService.selectById(wrkMast.getLocNo());
-                            locMast.setLocSts("Q");
-                            locMast.setModiTime(new Date());
-                            if (!locMastService.updateById(locMast)) {
-                                throw new CoolException("淇敼搴撲綅鐘舵�佸け璐�");
+                            SearchLocParam param = new SearchLocParam();
+                            param.setBarcode(wrkMast.getBarcode());
+                            param.setSourceStaNo(pickSta.getStaNo());
+                            param.setLocType1(locTypeDto.getLocType1());
+                            String response = new HttpHandler.Builder()
+                                    .setUri(wmsUrl)
+                                    .setPath("/rpc/pakin/pick/loc/v1")
+                                    .setJson(JSON.toJSONString(param))
+                                    .build()
+                                    .doPost();
+                            JSONObject jsonObject = JSON.parseObject(response);
+                            if (jsonObject.getInteger("code").equals(200)) {
+                                WrkMast newWrkMast = wrkMastMapper.selectPakInStepBarcode(wrkMast.getBarcode());
+                                if (newWrkMast == null) {
+                                    // 鏃犳嫞鏂欐暟鎹�
+                                    News.error("" + mark + " - 3" + " - 鎷i�夌洏鐐瑰洖搴撹幏鍙栧伐浣滄。澶辫触锛侊紒锛� [plc缂栧彿锛歿}]", devp.getId());
+                                    continue;
+                                }
+
+                                if(newWrkMast.getWrkSts() != 53 && newWrkMast.getWrkSts() != 57) {
+                                    News.error("" + mark + " - 3" + " - 鎷i�夌洏鐐瑰洖搴撳伐浣滄。绫诲瀷寮傚父锛侊紒锛� [plc缂栧彿锛歿}]", devp.getId());
+                                    continue;
+                                }
+
+                                if (wrkMast.getWrkSts() != 2) {
+                                    News.error("" + mark + " - 3" + " - 鎷i�夌洏鐐瑰洖搴撳伐浣滄。鐘舵�佸紓甯革紒锛侊紒 [plc缂栧彿锛歿}]", devp.getId());
+                                    continue;
+                                }
+
+                                LocMast locMast = locMastService.selectById(newWrkMast.getLocNo());
+                                // 鏇存柊绔欑偣淇℃伅 涓� 涓嬪彂plc鍛戒护
+                                staProtocol.setWorkNo(newWrkMast.getWrkNo().shortValue());
+                                staProtocol.setStaNo(newWrkMast.getStaNo().shortValue());
+                                staProtocol.setPalletSize(locMast.getLocType2());
+                                devpThread.setPakMk(staProtocol.getSiteId(), false);
+                                boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
+                                if (!result) {
+                                    News.error("" + mark + " - 3" + " - 鍙戝竷鍛戒护鑷宠緭閫佺嚎闃熷垪澶辫触锛侊紒锛� [plc缂栧彿锛歿}]", devp.getId());
+                                }
+                            } else {
+                                News.error("" + mark + " - 5" + " - 璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", wmsUrl + "/rpc/pakin/pick/loc/v1", JSON.toJSONString(param), response);
                             }
                         } catch (Exception e) {
                             e.printStackTrace();
-                            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
-                            continue;
-                        }
-
-                        LocMast locMast = locMastService.selectById(wrkMast.getLocNo());
-                        // 鏇存柊绔欑偣淇℃伅 涓� 涓嬪彂plc鍛戒护
-                        staProtocol.setWorkNo(wrkMast.getWrkNo().shortValue());
-                        staProtocol.setStaNo(wrkMast.getStaNo().shortValue());
-                        staProtocol.setPalletSize(locMast.getLocType2());
-                        devpThread.setPakMk(staProtocol.getSiteId(), false);
-                        boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
-                        if (!result) {
-                            News.error("" + mark + " - 3" + " - 鍙戝竷鍛戒护鑷宠緭閫佺嚎闃熷垪澶辫触锛侊紒锛� [plc缂栧彿锛歿}]", devp.getId());
                         }
 
                     } else {
                         News.errorNoLog("" + mark + " - 6" + " - 绔欑偣淇℃伅涓嶇鍚堝叆搴撴潯浠讹紒锛侊紒" + " 鑷姩淇″彿锛�" + staProtocol.isLoading() + "銆佸彲鍏ヤ俊鍙凤細" + staProtocol.isInEnable()
                                 + "銆佺┖鏉夸俊鍙凤細" + staProtocol.isEmptyMk());
                     }
-
                 }
 
             }
@@ -708,9 +717,14 @@
                     LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>()
                             .eq("loc_no", wrkMast.getSourceLocNo()));
 
+                    short staNo = wrkMast.getStaNo().shortValue();
+                    if (wrkMast.getStaNo() == 1004) {
+                        staNo = 2003;
+                    }
+
                     // 涓嬪彂绔欑偣淇℃伅
                     staProtocol.setWorkNo(wrkMast.getWrkNo().shortValue());
-                    staProtocol.setStaNo(wrkMast.getStaNo().shortValue());
+                    staProtocol.setStaNo(staNo);
                     staProtocol.setPalletSize(locMast.getLocType2());
                     if (!MessageQueue.offer(SlaveType.Devp, devpId, new Task(2, staProtocol))) {
                         continue;
@@ -1003,16 +1017,16 @@
                 continue;
             }
 
-            if (crnProtocol.getCrnNo() == 1) {
-                //鍒ゆ柇鍫嗗灈鏈哄拰褰撳墠浠诲姟鏄惁澶勪簬涓�涓贩閬�
-                if (Utils.getLaneByLocNo(wrkMast.getLocNo()) != crnProtocol.getCrnLane()) {
-                    //鍒ゆ柇鍫嗗灈鏈烘墍鍦ㄥ贩閬撴槸鍚﹀瓨鍦ㄥ叾浠栦换鍔★紝濡傚瓨鍦ㄥ垯浼樺厛鎵ц
-                    List<WrkMast> currentWrkMasts = wrkMastService.selectLaneWrkMast(crnProtocol.getCrnLane(), false);
-//                    if (!currentWrkMasts.isEmpty()) {
-//                        continue;//褰撳墠鍫嗗灈鏈烘墍鍦ㄥ贩閬撳瓨鍦ㄤ换鍔�
-//                    }
-                }
-            }
+//            if (crnProtocol.getCrnNo() == 1) {
+//                //鍒ゆ柇鍫嗗灈鏈哄拰褰撳墠浠诲姟鏄惁澶勪簬涓�涓贩閬�
+//                if (Utils.getLaneByLocNo(wrkMast.getLocNo()) != crnProtocol.getCrnLane()) {
+//                    //鍒ゆ柇鍫嗗灈鏈烘墍鍦ㄥ贩閬撴槸鍚﹀瓨鍦ㄥ叾浠栦换鍔★紝濡傚瓨鍦ㄥ垯浼樺厛鎵ц
+//                    List<WrkMast> currentWrkMasts = wrkMastService.selectLaneWrkMast(crnProtocol.getCrnLane(), false);
+////                    if (!currentWrkMasts.isEmpty()) {
+////                        continue;//褰撳墠鍫嗗灈鏈烘墍鍦ㄥ贩閬撳瓨鍦ㄤ换鍔�
+////                    }
+//                }
+//            }
 
             // 鍙屾繁搴撲綅涓旀祬搴撲綅鏈夎揣锛屽垯闇�鍏堝娴呭簱浣嶈繘琛屽簱浣嶇Щ杞�
             if (Utils.isDeepLoc(slaveProperties, wrkMast.getLocNo())) {
@@ -1119,32 +1133,32 @@
     public synchronized void locToCrnStn(CrnSlave slave, CrnProtocol crnProtocol, Integer mark) {
         News.warnNoLog("" + mark + " - 2" + " - 0" + " - 鍫嗗灈鏈哄叆鍑哄簱浣滀笟涓嬪彂锛氭墽琛屽嚭搴�");
 
-        int devpTaskStackOver = 20;
-        Config config = configService.selectOne(new EntityWrapper<Config>()
-                .eq("code", "devpTaskStackOver"));
-        if (config != null) {
-            devpTaskStackOver = Integer.parseInt(config.getValue());
-        }
-        int devpCheckTaskStackOver = 2;
-        Config config2 = configService.selectOne(new EntityWrapper<Config>()
-                .eq("code", "devpCheckTaskStackOver"));
-        if (config2 != null) {
-            devpCheckTaskStackOver = Integer.parseInt(config2.getValue());
-        }
-
-        int outNumber = 13;
-        Config config3 = configService.selectOne(new EntityWrapper<Config>()
-                .eq("code", "fullBoardOutboundNumber"));
-        if (config3 != null) {
-            outNumber = Integer.parseInt(config3.getValue());
-        }
-
-
-        Integer devpWorkingCount = commonService.queryDevpWorkingCount();
-        if (devpWorkingCount > devpTaskStackOver) {
-            News.warn("" + mark + " - 2" + " - 0" + " - 杈撻�佺嚎浠诲姟杩囪浇锛屽綋鍓嶈緭閫佺嚎鎵胯浇鏁伴噺:{}", devpWorkingCount);
-            return;
-        }
+//        int devpTaskStackOver = 20;
+//        Config config = configService.selectOne(new EntityWrapper<Config>()
+//                .eq("code", "devpTaskStackOver"));
+//        if (config != null) {
+//            devpTaskStackOver = Integer.parseInt(config.getValue());
+//        }
+//        int devpCheckTaskStackOver = 2;
+//        Config config2 = configService.selectOne(new EntityWrapper<Config>()
+//                .eq("code", "devpCheckTaskStackOver"));
+//        if (config2 != null) {
+//            devpCheckTaskStackOver = Integer.parseInt(config2.getValue());
+//        }
+//
+//        int outNumber = 13;
+//        Config config3 = configService.selectOne(new EntityWrapper<Config>()
+//                .eq("code", "fullBoardOutboundNumber"));
+//        if (config3 != null) {
+//            outNumber = Integer.parseInt(config3.getValue());
+//        }
+//
+//
+//        Integer devpWorkingCount = commonService.queryDevpWorkingCount();
+//        if (devpWorkingCount > devpTaskStackOver) {
+//            News.warn("" + mark + " - 2" + " - 0" + " - 杈撻�佺嚎浠诲姟杩囪浇锛屽綋鍓嶈緭閫佺嚎鎵胯浇鏁伴噺:{}", devpWorkingCount);
+//            return;
+//        }
 
         for (CrnSlave.CrnStn crnStn : slave.getCrnOutStn()) {
             // 鑾峰彇宸ヤ綔鐘舵�佷负11锛堢敓鎴愬嚭搴揑D锛夌殑鍑哄簱宸ヤ綔妗�
@@ -1176,48 +1190,49 @@
                     staProtocol = staProtocol.clone();
                 }
 
-                if (wrkMast.getStaNo() == 1003 || wrkMast.getStaNo() == 1007) {
-                    //妫�娴嬫槸鍚︽湁鍏ュ簱浠诲姟
-                    List<WrkMast> inWrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>()
-                            .in("io_type", 1, 53, 57)
-                            .in("source_sta_no", 1005)
-                    );
-                    if (!inWrkMasts.isEmpty()) {
-                        News.error("" + mark + " - 2" + " - 妫�娴嬪瓨鍦ㄥ叆搴撲换鍔★紝绛夊緟鍏ュ簱浠诲姟鎵ц瀹屾垚鍐嶅嚭搴擄紝宸ヤ綔鍙�={}" + wrkMast.getWrkNo());
-                        continue;
-                    }
-                }
+//                if (wrkMast.getStaNo() == 1003 || wrkMast.getStaNo() == 1007 || wrkMast.getStaNo() == 1004) {
+//                    //妫�娴嬫槸鍚︽湁鍏ュ簱浠诲姟
+//                    List<WrkMast> inWrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>()
+//                            .in("io_type", 1, 53, 57)
+//                            .notIn("wrk_sts", 3, 4, 5)
+//                            .in("source_sta_no", 1002, 1007)
+//                    );
+//                    if (!inWrkMasts.isEmpty()) {
+//                        News.error("" + mark + " - 2" + " - 妫�娴嬪瓨鍦ㄥ叆搴撲换鍔★紝绛夊緟鍏ュ簱浠诲姟鎵ц瀹屾垚鍐嶅嚭搴擄紝宸ヤ綔鍙�={}" + wrkMast.getWrkNo());
+//                        continue;
+//                    }
+//                }
 
                 //zhangc
-                if (wrkMast.getIoType() == 103 || wrkMast.getIoType() == 107) {
-                    if (wrkMast.getStaNo() == 1058) {
-                        List<WrkMast> inWrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>()
-                                .in("wrk_sts", 12, 14)
-                                .eq("sta_no", 1058)
-                        );
-                        if (!Cools.isEmpty(inWrkMasts) && inWrkMasts.size() >= devpCheckTaskStackOver) {
-                            News.error("" + mark + " - 2" + " - 妫�娴嬪瓨鍦�1058绔欑偣锛屽瓨鍦ㄤ袱绗斿伐浣滀腑鐨勪换鍔★紝宸ヤ綔鍙�={}" + wrkMast.getWrkNo());
-                            continue;
-                        }
-                    } else if (wrkMast.getStaNo() == 1062) {
-                        List<WrkMast> inWrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>()
-                                .in("wrk_sts", 12, 14)
-                                .eq("sta_no", 1062)
-                        );
-                        if (!Cools.isEmpty(inWrkMasts) && inWrkMasts.size() >= devpCheckTaskStackOver) {
-                            News.error("" + mark + " - 2" + " - 妫�娴嬪瓨鍦�1062绔欑偣锛屽瓨鍦ㄤ袱绗斿伐浣滀腑鐨勪换鍔★紝宸ヤ綔鍙�={}" + wrkMast.getWrkNo());
-                            continue;
-                        }
-                    }
-                }else if (wrkMast.getIoType() == 101) {
-                    List<WrkMast> inWrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>()
-                            .in("wrk_sts", 12, 14)
-                    );
-                    if (!Cools.isEmpty(inWrkMasts) && inWrkMasts.size() >= outNumber) {
-                        News.error("" + mark + " - 4" + " - 妫�娴嬪埌鍏ㄦ澘鍑哄簱鐨勪换鍔″凡缁忓埌杈句笂绾匡紝宸ヤ綔鍙�={}" + wrkMast.getWrkNo());
-                        continue;
-                    }
-                }
+//                if (wrkMast.getIoType() == 103 || wrkMast.getIoType() == 107) {
+//                    if (wrkMast.getStaNo() == 1058) {
+//                        List<WrkMast> inWrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>()
+//                                .in("wrk_sts", 12, 14)
+//                                .eq("sta_no", 1058)
+//                        );
+//                        if (!Cools.isEmpty(inWrkMasts) && inWrkMasts.size() >= devpCheckTaskStackOver) {
+//                            News.error("" + mark + " - 2" + " - 妫�娴嬪瓨鍦�1058绔欑偣锛屽瓨鍦ㄤ袱绗斿伐浣滀腑鐨勪换鍔★紝宸ヤ綔鍙�={}" + wrkMast.getWrkNo());
+//                            continue;
+//                        }
+//                    } else if (wrkMast.getStaNo() == 1062) {
+//                        List<WrkMast> inWrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>()
+//                                .in("wrk_sts", 12, 14)
+//                                .eq("sta_no", 1062)
+//                        );
+//                        if (!Cools.isEmpty(inWrkMasts) && inWrkMasts.size() >= devpCheckTaskStackOver) {
+//                            News.error("" + mark + " - 2" + " - 妫�娴嬪瓨鍦�1062绔欑偣锛屽瓨鍦ㄤ袱绗斿伐浣滀腑鐨勪换鍔★紝宸ヤ綔鍙�={}" + wrkMast.getWrkNo());
+//                            continue;
+//                        }
+//                    }
+//                }else if (wrkMast.getIoType() == 101) {
+//                    List<WrkMast> inWrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>()
+//                            .in("wrk_sts", 12, 14)
+//                    );
+//                    if (!Cools.isEmpty(inWrkMasts) && inWrkMasts.size() >= outNumber) {
+//                        News.error("" + mark + " - 4" + " - 妫�娴嬪埌鍏ㄦ澘鍑哄簱鐨勪换鍔″凡缁忓埌杈句笂绾匡紝宸ヤ綔鍙�={}" + wrkMast.getWrkNo());
+//                        continue;
+//                    }
+//                }
 
 //            // 鍏ュ嚭搴撴ā寮忓垽鏂�
 //            if (devpThread.ioMode != IoModeType.PAKOUT_MODE) { continue; }
@@ -1237,22 +1252,22 @@
                 if (staProtocol.isAutoing() && !staProtocol.isLoading() && staDetl.getCanouting() != null && staDetl.getCanouting().equals("Y")) {
 
                     //鏍规嵁鍙傛暟鍒ゆ柇鏄惁鏍¢獙鍙嚭淇″彿
-                    String crnOutVerifyOut = "Y";
-                    Config crnOutVerifyOutEnableConfig = configService.selectOne(new EntityWrapper<Config>()
-                            .eq("code", "crnOutVerifyOutEnable"));
-                    if (crnOutVerifyOutEnableConfig != null) {
-                        crnOutVerifyOut = crnOutVerifyOutEnableConfig.getValue();
-                    }
-
-                    if (crnOutVerifyOut.equals("Y")) {
-                        if (!staProtocol.isOutEnable()) {
-                            continue;
-                        }
-
-                        if (staProtocol.getWorkNo() > 0) {
-                            continue;
-                        }
-                    }
+//                    String crnOutVerifyOut = "Y";
+//                    Config crnOutVerifyOutEnableConfig = configService.selectOne(new EntityWrapper<Config>()
+//                            .eq("code", "crnOutVerifyOutEnable"));
+//                    if (crnOutVerifyOutEnableConfig != null) {
+//                        crnOutVerifyOut = crnOutVerifyOutEnableConfig.getValue();
+//                    }
+//
+//                    if (crnOutVerifyOut.equals("Y")) {
+//                        if (!staProtocol.isOutEnable()) {
+//                            continue;
+//                        }
+//
+//                        if (staProtocol.getWorkNo() > 0) {
+//                            continue;
+//                        }
+//                    }
 
 
                     // 鍛戒护涓嬪彂鍖� --------------------------------------------------------------------------
@@ -1263,26 +1278,26 @@
                         break;
                     }
 
-                    if (crnProtocol.getCrnNo() == 1) {
-                        String turnCrnExecuteCurrentChannel = "Y";
-                        Config turnCrnExecuteCurrentChannelConfig = configService.selectOne(new EntityWrapper<Config>()
-                                .eq("code", "turnCrnExecuteCurrentChannel")
-                        );
-                        if (turnCrnExecuteCurrentChannelConfig != null) {
-                            turnCrnExecuteCurrentChannel = turnCrnExecuteCurrentChannelConfig.getValue();
-                        }
-
-                        if (turnCrnExecuteCurrentChannel.equals("Y")) {
-                            //鍒ゆ柇鍫嗗灈鏈哄拰褰撳墠浠诲姟鏄惁澶勪簬涓�涓贩閬�
-                            if (Utils.getLaneByLocNo(wrkMast.getSourceLocNo()) != crnProtocol.getCrnLane()) {
-                                //鍒ゆ柇鍫嗗灈鏈烘墍鍦ㄥ贩閬撴槸鍚﹀瓨鍦ㄥ叾浠栦换鍔★紝濡傚瓨鍦ㄥ垯浼樺厛鎵ц
-                                List<WrkMast> currentWrkMasts = wrkMastService.selectLaneWrkMast(crnProtocol.getCrnLane(), false);
-                                if (!currentWrkMasts.isEmpty()) {
-                                    continue;//褰撳墠鍫嗗灈鏈烘墍鍦ㄥ贩閬撳瓨鍦ㄤ换鍔�
-                                }
-                            }
-                        }
-                    }
+//                    if (crnProtocol.getCrnNo() == 1) {
+//                        String turnCrnExecuteCurrentChannel = "Y";
+//                        Config turnCrnExecuteCurrentChannelConfig = configService.selectOne(new EntityWrapper<Config>()
+//                                .eq("code", "turnCrnExecuteCurrentChannel")
+//                        );
+//                        if (turnCrnExecuteCurrentChannelConfig != null) {
+//                            turnCrnExecuteCurrentChannel = turnCrnExecuteCurrentChannelConfig.getValue();
+//                        }
+//
+//                        if (turnCrnExecuteCurrentChannel.equals("Y")) {
+//                            //鍒ゆ柇鍫嗗灈鏈哄拰褰撳墠浠诲姟鏄惁澶勪簬涓�涓贩閬�
+//                            if (Utils.getLaneByLocNo(wrkMast.getSourceLocNo()) != crnProtocol.getCrnLane()) {
+//                                //鍒ゆ柇鍫嗗灈鏈烘墍鍦ㄥ贩閬撴槸鍚﹀瓨鍦ㄥ叾浠栦换鍔★紝濡傚瓨鍦ㄥ垯浼樺厛鎵ц
+//                                List<WrkMast> currentWrkMasts = wrkMastService.selectLaneWrkMast(crnProtocol.getCrnLane(), false);
+//                                if (!currentWrkMasts.isEmpty()) {
+//                                    continue;//褰撳墠鍫嗗灈鏈烘墍鍦ㄥ贩閬撳瓨鍦ㄤ换鍔�
+//                                }
+//                            }
+//                        }
+//                    }
 
                     // 鍙屾繁搴撲綅涓旀祬搴撲綅鏈夎揣锛屽垯闇�鍏堝娴呭簱浣嶈繘琛屽簱浣嶇Щ杞�
                     if (Utils.isDeepLoc(slaveProperties, wrkMast.getSourceLocNo())) {
@@ -2032,6 +2047,16 @@
                         continue;
                     }
 
+                    //妫�娴嬫槸鍚︽湁鍏ュ簱浠诲姟
+                    List<WrkMast> inWrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>()
+                            .in("io_type", 1, 53, 57)
+                            .in("source_sta_no", 1002, 1007)
+                    );
+                    if (!inWrkMasts.isEmpty()) {
+                        News.error("" + mark + " - 2" + " - 妫�娴嬪瓨鍦ㄥ叆搴撲换鍔★紝绛夊緟鍏ュ簱浠诲姟鎵ц瀹屾垚鍐嶅叆绌烘墭锛屽伐浣滃彿={}");
+                        continue;
+                    }
+
                     int workNo = commonService.getWorkNo(3);
                     // 鐢熸垚宸ヤ綔妗�
                     WrkMast wrkMast1 = new WrkMast();

--
Gitblit v1.9.1