Просмотр исходного кода

dev:debug
关于规范性审查中纯数字风险的编号建议和原因更改

suhua31 3 недель назад
Родитель
Сommit
d16c54ce67

+ 5 - 2
core/construction_review/component/reviewers/utils/punctuation_checker.py

@@ -354,14 +354,17 @@ async def check_punctuation(items: List[str]) -> str:
             pre_results.append({
                 "original_text": text,
                 "title_mark_status": bool(title_pair_ok),
-                "bracket_status": False
+                "bracket_status": False,
+                "invalid_number_format": True,
+                "invalid_number_content": bracket_content
             })
         else:
             # 括号成对、无多余字符、编号格式正确
             pre_results.append({
                 "original_text": text,
                 "title_mark_status": True,
-                "bracket_status": True
+                "bracket_status": True,
+                "invalid_number_format": False
             })
 
     # 直接返回预检结果

+ 14 - 1
core/construction_review/component/reviewers/utils/punctuation_result_processor.py

@@ -95,7 +95,13 @@ HUMAN = """
 - suggestion:补充规范编号,正确格式:《规范名称》(编号)
 - risk_level:中风险
 
-当 title_mark_status = true 且 bracket_status = false:
+当 title_mark_status = true 且 invalid_number_format = true:
+- issue_point:编制依据格式错误
+- reason:格式错误!当前编号为纯数字
+- suggestion:规范编号应为英文加数字或中文加数字,而不是纯数字
+- risk_level:中风险
+
+当 title_mark_status = true 且 bracket_status = false 且 invalid_number_format 不存在或为 false:
 - issue_point:编制依据格式错误
 - reason:格式错误!正确格式:《规范名称》(编号)
 - suggestion:将规范编号用括号包裹,正确格式:《规范名称》(编号)
@@ -354,6 +360,9 @@ async def process_punctuation_results(check_results: str, enterprise_items: list
         risk_level = "中风险"
         
         # 判断问题类型并生成建议
+        invalid_number_format = item.get("invalid_number_format", False)
+        invalid_number_content = item.get("invalid_number_content", "")
+        
         if title_status is not True:
             # 书名号问题
             reason = "格式错误!正确格式:《规范名称》(编号)"
@@ -375,6 +384,10 @@ async def process_punctuation_results(check_results: str, enterprise_items: list
                 suggestion = await _generate_suggestion_with_validation(
                     original_text, "missing_number", base_suggestion
                 )
+        elif invalid_number_format:
+            # 括号内有编号,但格式不正确(纯数字)
+            reason = f"格式错误!当前编号为纯数字"
+            suggestion = f"规范编号应为英文加数字或中文加数字,而不是纯数字"
         elif bracket_status is False:
             # 有编号但无括号
             reason = "格式错误!正确格式:《规范名称》(编号)"