From f5cc69d226d73878bfb9a67b3835ff1842732ffe Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期二, 23 六月 2026 11:15:23 +0800
Subject: [PATCH] 1.质检规则优化

---
 src/main/java/com/ruoyi/quality/service/impl/QualityInspectServiceImpl.java |    9 +++++++++
 docs/quality_auto_judge.md                                                  |    4 +++-
 src/main/java/com/ruoyi/quality/dto/AutoJudgeAllResponse.java               |    5 ++++-
 3 files changed, 16 insertions(+), 2 deletions(-)

diff --git a/docs/quality_auto_judge.md b/docs/quality_auto_judge.md
index 7296c3f..0335f61 100644
--- a/docs/quality_auto_judge.md
+++ b/docs/quality_auto_judge.md
@@ -97,6 +97,7 @@
   "data": {
     "autoJudgeResult": "涓嶅悎鏍�",
     "hasRequiredUnqualified": true,
+    "hasNonRequiredUnqualified": false,
     "allTextDescription": false,
     "paramResults": [
       {
@@ -373,7 +374,8 @@
 2. **蹇呰鍒ゆ柇鍙傛暟**锛歚isRequired = 1` 鐨勫弬鏁伴」涓哄繀瑕佸垽鏂弬鏁�
 3. **鏁翠綋鍒ゆ柇閫昏緫**锛�
    - 濡傛灉鏈変换涓�蹇呰鍒ゆ柇鍙傛暟涓嶅悎鏍� 鈫� 鏁翠綋鍒ゅ畾涓�"涓嶅悎鏍�"锛岀鐢ㄧ敤鎴蜂慨鏀�
-   - 濡傛灉鎵�鏈夊繀瑕佸垽鏂弬鏁伴兘鍚堟牸 鈫� 鏁翠綋鍒ゅ畾涓�"鍚堟牸"
+   - 濡傛灉鎵�鏈夊繀瑕佸垽鏂弬鏁伴兘鍚堟牸锛屼絾鏈夐潪蹇呰鍒ゆ柇鍙傛暟涓嶅悎鏍� 鈫� 鏁翠綋鍒ゅ畾涓�"閮ㄥ垎鍚堟牸"锛屽厑璁哥敤鎴锋墜鍔ㄩ�夋嫨鏈�缁堢粨鏋�
+   - 濡傛灉鎵�鏈夊弬鏁伴」閮藉悎鏍� 鈫� 鏁翠綋鍒ゅ畾涓�"鍚堟牸"
    - 濡傛灉鍏ㄦ槸鏂囧瓧鎻忚堪绫诲瀷 鈫� `autoJudgeResult = null`锛屽厑璁哥敤鎴锋墜鍔ㄩ�夋嫨
 4. **鏂囧瓧鎻忚堪绫诲瀷**锛氫笉杩涜鑷姩鍒ゆ柇锛岀敱鐢ㄦ埛鎵嬪姩閫夋嫨"鍚堟牸"鎴�"涓嶅悎鏍�"
 
diff --git a/src/main/java/com/ruoyi/quality/dto/AutoJudgeAllResponse.java b/src/main/java/com/ruoyi/quality/dto/AutoJudgeAllResponse.java
index 05e6019..44dfbe4 100644
--- a/src/main/java/com/ruoyi/quality/dto/AutoJudgeAllResponse.java
+++ b/src/main/java/com/ruoyi/quality/dto/AutoJudgeAllResponse.java
@@ -12,12 +12,15 @@
 @Schema(name = "AutoJudgeAllResponse", description = "鏁翠綋鑷姩鍒ゆ柇鍝嶅簲")
 public class AutoJudgeAllResponse {
 
-    @Schema(description = "鑷姩鍒ゆ柇缁撴灉锛氬悎鏍�/涓嶅悎鏍�/null(闇�鎵嬪姩鍒ゆ柇)")
+    @Schema(description = "鑷姩鍒ゆ柇缁撴灉锛氬悎鏍�/涓嶅悎鏍�/閮ㄥ垎鍚堟牸/null(闇�鎵嬪姩鍒ゆ柇)")
     private String autoJudgeResult;
 
     @Schema(description = "鏄惁鏈夊繀瑕佸垽鏂弬鏁颁笉鍚堟牸")
     private Boolean hasRequiredUnqualified;
 
+    @Schema(description = "鏄惁鏈夐潪蹇呰鍒ゆ柇鍙傛暟涓嶅悎鏍�")
+    private Boolean hasNonRequiredUnqualified;
+
     @Schema(description = "鏄惁鍏ㄦ槸鏂囧瓧鎻忚堪绫诲瀷")
     private Boolean allTextDescription;
 
diff --git a/src/main/java/com/ruoyi/quality/service/impl/QualityInspectServiceImpl.java b/src/main/java/com/ruoyi/quality/service/impl/QualityInspectServiceImpl.java
index 4a44166..10b156c 100644
--- a/src/main/java/com/ruoyi/quality/service/impl/QualityInspectServiceImpl.java
+++ b/src/main/java/com/ruoyi/quality/service/impl/QualityInspectServiceImpl.java
@@ -585,6 +585,7 @@
         AutoJudgeAllResponse response = new AutoJudgeAllResponse();
         List<AutoJudgeAllResponse.ParamJudgeResult> paramResults = new ArrayList<>();
         boolean hasRequiredUnqualified = false;
+        boolean hasNonRequiredUnqualified = false;
         boolean allTextDescription = true;
         boolean hasRequiredParam = false;
 
@@ -624,12 +625,17 @@
                 if (paramResult.getIsRequired() && Boolean.FALSE.equals(result.getQualified())) {
                     hasRequiredUnqualified = true;
                 }
+                // 妫�鏌ラ潪蹇呰鍒ゆ柇鍙傛暟鏄惁涓嶅悎鏍�
+                if (!paramResult.getIsRequired() && Boolean.FALSE.equals(result.getQualified())) {
+                    hasNonRequiredUnqualified = true;
+                }
             }
             paramResults.add(paramResult);
         }
 
         response.setParamResults(paramResults);
         response.setHasRequiredUnqualified(hasRequiredUnqualified);
+        response.setHasNonRequiredUnqualified(hasNonRequiredUnqualified);
         response.setAllTextDescription(allTextDescription);
 
         // 纭畾鏁翠綋鍒ゆ柇缁撴灉
@@ -637,6 +643,9 @@
             response.setAutoJudgeResult(null);
         } else if (hasRequiredUnqualified) {
             response.setAutoJudgeResult("涓嶅悎鏍�");
+        } else if (hasNonRequiredUnqualified) {
+            // 蹇呰鍙傛暟閮藉悎鏍硷紝浣嗘湁闈炲繀瑕佸弬鏁颁笉鍚堟牸 鈫� 閮ㄥ垎鍚堟牸
+            response.setAutoJudgeResult("閮ㄥ垎鍚堟牸");
         } else {
             // 鎵�鏈夐渶瑕佽嚜鍔ㄥ垽鏂殑鍙傛暟椤归兘鍚堟牸锛屾暣浣撲负鍚堟牸
             response.setAutoJudgeResult("鍚堟牸");

--
Gitblit v1.9.3