From 89f87a7d39da1bdb4846e332d7d7370e2e908f5c Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期一, 11 八月 2025 08:51:31 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/common/service/CommonService.java |   60 ++++++++++++++++++++++++++++++++++++++++--------------------
 1 files changed, 40 insertions(+), 20 deletions(-)

diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java
index bb25796..250bc28 100644
--- a/src/main/java/com/zy/common/service/CommonService.java
+++ b/src/main/java/com/zy/common/service/CommonService.java
@@ -203,6 +203,9 @@
         }
 
 
+        Config crnSearchDetectTaskCountConfig = configService.selectConfigByCode("crnSearchDetectTaskCount");
+        int crnSearchDetectTaskCount = Integer.parseInt(crnSearchDetectTaskCountConfig.getValue());
+
         Config crnSearchListConfig = configService.selectConfigByCode("123CrnSearchList");
         int crnSearchList = Integer.parseInt(crnSearchListConfig.getValue());
 
@@ -212,6 +215,15 @@
             curRow = locNecessaryParameters[1];
             crnNo = locNecessaryParameters[2];
             if (basCrnpService.checkSiteError(crnNo, true)) {
+                List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>()
+                        .eq("crn_no", crnNo)
+                        .in("io_type", 1, 10, 53, 57)
+                );
+                if(wrkMasts.size() > crnSearchDetectTaskCount){
+                    log.error(crnNo + "鍙峰爢鍨涙満宸茶揪鍒板叆搴撴帶鍒朵笂闄愶紒锛侊紒 浠诲姟鏁伴噺锛� {}锛� 鎺у埗鏁伴噺锛歿}", wrkMasts.size(), crnSearchDetectTaskCount);
+                    continue;
+                }
+
                 rowCount = locNecessaryParameters[0];
                 nearRow = locNecessaryParameters[3];
                 List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>()
@@ -235,26 +247,34 @@
                 //灏濊瘯鎵�1鍙峰集杞ㄥ爢鍨涙満搴撲綅
                 crnNo = 1;
                 if (basCrnpService.checkSiteError(crnNo, true)) {
-                    List<Integer> nearRowList = new ArrayList<Integer>() {{
-                        add(4);
-                        add(6);
-                        add(3);
-                        add(1);
-                    }};
-                    for (Integer near : nearRowList) {
-                        List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>()
-                                .eq("row1", near)
-                                .eq("loc_sts", "O")
-                                .eq("whs_type", rowLastnoType.getType().longValue())
-                                .eq("loc_type1", locTypeDto.getLocType1())
-                                .eq("loc_type2", locTypeDto.getLocType2())
-                        );
-                        int crnCountO = wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("crn_no", crnNo).le("io_type", 100));
-                        if (locMasts.size() - crnCountO <= 2) {
-                            log.error(crnNo + "鍙峰爢鍨涙満娌℃湁绌哄簱浣嶏紒锛侊紒 灏哄瑙勬牸锛� {}锛� 杞娆℃暟锛歿}", JSON.toJSONString(locTypeDto), times);
-                        } else {
-                            nearRow = near;
-                            break;
+                    List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>()
+                            .eq("crn_no", crnNo)
+                            .in("io_type", 1, 10, 53, 57)
+                    );
+                    if(wrkMasts.size() > crnSearchDetectTaskCount){
+                        log.error(crnNo + "鍙峰爢鍨涙満宸茶揪鍒板叆搴撴帶鍒朵笂闄愶紒锛侊紒 浠诲姟鏁伴噺锛� {}锛� 鎺у埗鏁伴噺锛歿}", wrkMasts.size(), crnSearchDetectTaskCount);
+                    }else {
+                        List<Integer> nearRowList = new ArrayList<Integer>() {{
+                            add(4);
+                            add(6);
+                            add(3);
+                            add(1);
+                        }};
+                        for (Integer near : nearRowList) {
+                            List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>()
+                                    .eq("row1", near)
+                                    .eq("loc_sts", "O")
+                                    .eq("whs_type", rowLastnoType.getType().longValue())
+                                    .eq("loc_type1", locTypeDto.getLocType1())
+                                    .eq("loc_type2", locTypeDto.getLocType2())
+                            );
+                            int crnCountO = wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("crn_no", crnNo).le("io_type", 100));
+                            if (locMasts.size() - crnCountO <= 2) {
+                                log.error(crnNo + "鍙峰爢鍨涙満娌℃湁绌哄簱浣嶏紒锛侊紒 灏哄瑙勬牸锛� {}锛� 杞娆℃暟锛歿}", JSON.toJSONString(locTypeDto), times);
+                            } else {
+                                nearRow = near;
+                                break;
+                            }
                         }
                     }
                 }

--
Gitblit v1.9.1