Browse Source

规则、规则集逻辑初步完成

JoeLazy 2 months ago
parent
commit
396d683acd

+ 40 - 5
src/main/java/com/sundata/internalevaluation/calc/calcUnit/RuleCalcUnit.java

@@ -1,8 +1,12 @@
 package com.sundata.internalevaluation.calc.calcUnit;
 
+import com.sundata.common.util.StringUtil;
 import com.sundata.internalevaluation.calc.model.CalcResult;
 import com.sundata.internalevaluation.calc.model.CalcUnit;
 import com.sundata.internalevaluation.calc.model.finals.CalcType;
+import com.sundata.internalevaluation.configuration.model.SysReqRule;
+import com.sundata.internalevaluation.script.ScriptUtil;
+import com.sundata.internalevaluation.script.TemplateUtil;
 
 import java.util.List;
 import java.util.Map;
@@ -16,6 +20,8 @@ import java.util.Map;
  */
 public class RuleCalcUnit extends CalcUnit {
 
+    private SysReqRule reqRule;
+
     /**
      * 创建数据单元的绝对对象,对象必须包含如下参数
      *
@@ -24,9 +30,9 @@ public class RuleCalcUnit extends CalcUnit {
      * @param calcType    计算类型
      * @param initContext 计算单元初始化参数
      */
-    public RuleCalcUnit(String calcCode, String calcName, CalcType calcType, Map<String, Object> initContext) {
+    public RuleCalcUnit(String calcCode, String calcName, CalcType calcType, Map<String, Object> initContext, SysReqRule reqRule) {
         super(calcCode, calcName, calcType, initContext);
-
+        this.reqRule = reqRule;
     }
 
     /**
@@ -37,6 +43,7 @@ public class RuleCalcUnit extends CalcUnit {
      */
     @Override
     public boolean isCalcFinished(String calculateInstanceNumber) {
+        // TODO  是否计算完成
         return false;
     }
 
@@ -48,7 +55,7 @@ public class RuleCalcUnit extends CalcUnit {
      */
     @Override
     public void initResultContext(String calculateInstanceNumber) {
-
+        // TODO  出书画数据??
     }
 
     /**
@@ -58,6 +65,7 @@ public class RuleCalcUnit extends CalcUnit {
      */
     @Override
     public List<CalcUnit> getSourceCalcUnits() {
+        // TODO  获取关联的所有指标
         return List.of();
     }
 
@@ -90,7 +98,34 @@ public class RuleCalcUnit extends CalcUnit {
      * @param sourceResults           源头计算节点的结果
      */
     @Override
-    public void calc(CalcResult<String, Object> thisResult, String calculateInstanceNumber, Map<String, Object> context, Map<CalcUnit, CalcResult<String, Object>> sourceResults) {
-        // TODO 实际的计算过程
+    public void calc(CalcResult<String, Object> thisResult,
+                     String calculateInstanceNumber,
+                     Map<String, Object> context,
+                     Map<CalcUnit, CalcResult<String, Object>> sourceResults) {
+
+        // 获取道规则的计算模板或脚本
+        String ruleTemplate = this.reqRule.getRuleTemplate();
+
+        // 模板或脚本需要的参数
+        // TODO 根据实际情况获取
+        Map<String, Object> initContext = this.getInitContext();
+
+        // 执行脚本  获取结果
+        Object res = ScriptUtil.executeScript(String.valueOf(System.currentTimeMillis()), ruleTemplate, initContext);
+
+        // 填充结果
+        // true 表示出发规则 所以执行规则结果
+        // false 未触发  所以 无执行
+        thisResult.put(this.getCalcCode(), res.equals(true) ? reqRule.getRuleResult():"none");
+
+
+        // ******************************
+        String ruleConclusionTemplate = this.reqRule.getRuleConclusionTemplate();
+        if (StringUtil.isNotEmpty(ruleConclusionTemplate)) {
+            String result = TemplateUtil.execute("tempNo" + System.currentTimeMillis(), ruleConclusionTemplate, Map.of("result", res));
+            System.err.printf("%s-%s-结论:%s\n\r", this.getCalcCode(), this.getCalcName(), result);
+        } else {
+            System.err.printf("%s-%s-[没有结论模板]....\n\r", this.getCalcCode(), this.getCalcName());
+        }
     }
 }

+ 59 - 27
src/main/java/com/sundata/internalevaluation/calc/calcUnit/RulesCalcUnit.java

@@ -1,14 +1,20 @@
 package com.sundata.internalevaluation.calc.calcUnit;
 
+import cn.hutool.extra.spring.SpringUtil;
 import com.sundata.internalevaluation.calc.model.CalcResult;
 import com.sundata.internalevaluation.calc.model.CalcUnit;
 import com.sundata.internalevaluation.calc.model.finals.CalcType;
+import com.sundata.internalevaluation.configuration.model.SysReqRule;
+import com.sundata.internalevaluation.configuration.model.SysReqRules;
+import com.sundata.internalevaluation.configuration.service.SysReqRuleService;
+import com.sundata.internalevaluation.configuration.service.SysReqRulesService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
+import java.util.stream.Collectors;
 
 
 /**
@@ -23,6 +29,15 @@ public class RulesCalcUnit extends CalcUnit {
 
     private static final Logger log = LoggerFactory.getLogger(RulesCalcUnit.class);
 
+    /**
+     * 规则集实体
+     */
+    private final SysReqRules reqRules;
+
+
+    private final SysReqRuleService sysReqRuleService;
+
+
     /**
      * 创建数据单元的绝对对象,对象必须包含如下参数
      *
@@ -30,8 +45,12 @@ public class RulesCalcUnit extends CalcUnit {
      * @param calcName    计算对象名称
      * @param initContext 计算单元初始化参数
      */
-    public RulesCalcUnit(String calcCode, String calcName, Map<String, Object> initContext) {
+    public RulesCalcUnit(String calcCode, String calcName, Map<String, Object> initContext, SysReqRules reqRules, SysReqRuleService sysReqRuleService) {
         super(calcCode, calcName, CalcType.RULES, initContext);
+
+        this.reqRules = reqRules;
+
+        this.sysReqRuleService = sysReqRuleService;
     }
 
     /**
@@ -73,6 +92,8 @@ public class RulesCalcUnit extends CalcUnit {
 //        );
     }
 
+    private List<SysReqRule> sysReqRuleList = new ArrayList<>();
+
     /**
      * 根据节点配置获取源节点;
      *
@@ -80,13 +101,11 @@ public class RulesCalcUnit extends CalcUnit {
      */
     @Override
     public List<CalcUnit> getSourceCalcUnits() {
-        // TODO 获取源头节点
+        List<SysReqRule> sysReqRules = sysReqRuleService.selectRuleListByRulesNo(reqRules.getRulesNo());
+        return sysReqRules.stream()
+                .map(rule-> new RuleCalcUnit(rule.getRuleNo(),rule.getRuleName(),
+                        CalcType.RULE, Map.of("age",15), rule)).collect(Collectors.toList());
 
-//        SpringUtil.
-
-
-        return new ArrayList<>();
-//        return ConfigImages.rulesCalcUnitListMap.get(this);
     }
 
     /**
@@ -117,25 +136,38 @@ public class RulesCalcUnit extends CalcUnit {
      * @param sourceResults 源头计算节点的结果
      */
     @Override
-    public void calc(final CalcResult<String, Object> thisResult, String calculateInstanceNumber, Map<String, Object> context, Map<CalcUnit, CalcResult<String, Object>> sourceResults) {
-        // Map<CalcUnit, CalcResult<String, Object>> sourceResults
-
-        // TODO 实际的计算过程
-
-        // 规则集 RULES-MAIN
-//        sourceResults.forEach((a,b)->{
-//
-//            if (a.getCalcCode().equals("RULE001")){
-//                System.out.println(b);
-//            }
-//
-//            if (b.get(a.getCalcCode()).equals("触发预警规则")) {
-//                thisResult.put(this.getCalcCode(),"规则集拦截");
-//            }
-//            if (thisResult.isEmpty()){
-//                thisResult.put(this.getCalcCode(),"规则集未拦截");
-//            }
-//        });
-
+    public void calc(final CalcResult<String, Object> thisResult,
+                     String calculateInstanceNumber,
+                     Map<String, Object> context,
+                     Map<CalcUnit, CalcResult<String, Object>> sourceResults) {
+
+        Map<Object, List<CalcUnit>> collect = sourceResults.entrySet().stream()
+                .collect(Collectors.groupingBy(
+                        s -> s.getValue().get(s.getKey().getCalcCode()),
+                        Collectors.mapping(Map.Entry::getKey, Collectors.toList()))
+                );
+
+        List<CalcUnit> intercept = collect.get("intercept");
+        StringBuilder sb = new StringBuilder();
+        if (intercept != null && !intercept.isEmpty()) {
+            sb.append("触发拦截规则:\n");
+            intercept.forEach(a -> {
+                sb.append(" ·").append(a.getCalcCode()).append("-").append(a.getCalcName()).append("\n");
+            });
+            thisResult.put(this.getCalcCode(),sb.toString());
+            return;
+        }
+
+        List<CalcUnit> warn = collect.get("warn");
+        if (warn != null && !warn.isEmpty()) {
+            sb.append("触发预警规则:\n");
+            warn.forEach(a -> {
+                sb.append(" ·").append(a.getCalcCode()).append("-").append(a.getCalcName()).append("\n");
+            });
+            thisResult.put(this.getCalcCode(),sb.toString());
+            return;
+        }
+
+        thisResult.put(this.getCalcCode(),"规则集未拦截");
     }
 }

+ 15 - 0
src/main/java/com/sundata/internalevaluation/configuration/controller/SysReqRuleController.java

@@ -1,8 +1,13 @@
 package com.sundata.internalevaluation.configuration.controller;
 
 import java.util.List;
+import java.util.Map;
 
 import com.sundata.common.base.BaseAction;
+import com.sundata.internalevaluation.calc.calcUnit.RulesCalcUnit;
+import com.sundata.internalevaluation.calc.running.threads.CalcTaskResult;
+import com.sundata.internalevaluation.calc.util.CalcUtil;
+import com.sundata.internalevaluation.configuration.model.SysReqRules;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -37,6 +42,16 @@ public class SysReqRuleController extends BaseAction {
      */
     @RequestMapping("getById")
     public SysReqRule getById(@RequestBody SysReqRule sysReqRule) {
+        SysReqRules rules = new SysReqRules();
+        rules.setRulesNo("rules1001");
+        rules.setRulesName("年龄判断");
+        System.out.println("****** 计算开始 *******");
+        CalcTaskResult calc = CalcUtil.calc("waterNo:" + System.currentTimeMillis(),
+                new RulesCalcUnit(rules.getRulesNo(), rules.getRulesName(), Map.of(), rules, sysReqRuleService),
+                Map.of());
+
+        System.out.println("结果:"+calc);
+
         return sysReqRuleService.getById(sysReqRule.getRuleNo());
     }    
      

+ 3 - 1
src/main/java/com/sundata/internalevaluation/configuration/mapper/SysReqRuleMapper.java

@@ -3,6 +3,7 @@ package com.sundata.internalevaluation.configuration.mapper;
 import java.util.List;
 import org.apache.ibatis.annotations.Mapper;
 import com.sundata.internalevaluation.configuration.model.SysReqRule;
+import org.apache.ibatis.annotations.Param;
 
 @Mapper
 public interface SysReqRuleMapper {
@@ -48,5 +49,6 @@ public interface SysReqRuleMapper {
      * @return 返回影响行数
      */
 	int delete(SysReqRule sysReqRule);
-	
+
+	List<SysReqRule> selectRuleListByRulesNo(@Param("rulesNo") String rulesNo);
 }

+ 122 - 41
src/main/java/com/sundata/internalevaluation/configuration/model/SysReqRule.java

@@ -34,91 +34,172 @@ public class SysReqRule {
      */
     private String ruleThreshold;
 
-    public void setRuleNo(String ruleNo) {
+    /**
+     * 规则结论模板
+     */
+    private String ruleConclusionTemplate;
+
+    public SysReqRule() {
+    }
+
+    public SysReqRule(String ruleNo, String ruleName, String ruleTemplate, String templateDesc, String ruleResult, String ruleIndex, String ruleThreshold, String ruleConclusionTemplate) {
         this.ruleNo = ruleNo;
+        this.ruleName = ruleName;
+        this.ruleTemplate = ruleTemplate;
+        this.templateDesc = templateDesc;
+        this.ruleResult = ruleResult;
+        this.ruleIndex = ruleIndex;
+        this.ruleThreshold = ruleThreshold;
+        this.ruleConclusionTemplate = ruleConclusionTemplate;
+    }
+
+
+    @Override
+    public boolean equals(Object o) {
+        if (this == o) {
+            return true;
+        }
+        if (o == null || getClass() != o.getClass()) {
+            return false;
+        }
+        SysReqRule that = (SysReqRule) o;
+        return ruleNo.equals(that.ruleNo);
     }
 
+    @Override
+    public int hashCode() {
+        return java.util.Objects.hash(ruleNo);
+    }
+
+    /**
+     * 获取
+     * @return ruleNo
+     */
     public String getRuleNo() {
-        return this.ruleNo;
+        return ruleNo;
+    }
+
+    /**
+     * 设置
+     * @param ruleNo
+     */
+    public void setRuleNo(String ruleNo) {
+        this.ruleNo = ruleNo;
+    }
+
+    /**
+     * 获取
+     * @return ruleName
+     */
+    public String getRuleName() {
+        return ruleName;
     }
 
+    /**
+     * 设置
+     * @param ruleName
+     */
     public void setRuleName(String ruleName) {
         this.ruleName = ruleName;
     }
 
-    public String getRuleName() {
-        return this.ruleName;
+    /**
+     * 获取
+     * @return ruleTemplate
+     */
+    public String getRuleTemplate() {
+        return ruleTemplate;
     }
 
+    /**
+     * 设置
+     * @param ruleTemplate
+     */
     public void setRuleTemplate(String ruleTemplate) {
         this.ruleTemplate = ruleTemplate;
     }
 
-    public String getRuleTemplate() {
-        return this.ruleTemplate;
+    /**
+     * 获取
+     * @return templateDesc
+     */
+    public String getTemplateDesc() {
+        return templateDesc;
     }
 
+    /**
+     * 设置
+     * @param templateDesc
+     */
     public void setTemplateDesc(String templateDesc) {
         this.templateDesc = templateDesc;
     }
 
-    public String getTemplateDesc() {
-        return this.templateDesc;
+    /**
+     * 获取
+     * @return ruleResult
+     */
+    public String getRuleResult() {
+        return ruleResult;
     }
 
+    /**
+     * 设置
+     * @param ruleResult
+     */
     public void setRuleResult(String ruleResult) {
         this.ruleResult = ruleResult;
     }
 
-    public String getRuleResult() {
-        return this.ruleResult;
+    /**
+     * 获取
+     * @return ruleIndex
+     */
+    public String getRuleIndex() {
+        return ruleIndex;
     }
 
+    /**
+     * 设置
+     * @param ruleIndex
+     */
     public void setRuleIndex(String ruleIndex) {
         this.ruleIndex = ruleIndex;
     }
 
-    public String getRuleIndex() {
-        return this.ruleIndex;
+    /**
+     * 获取
+     * @return ruleThreshold
+     */
+    public String getRuleThreshold() {
+        return ruleThreshold;
     }
 
+    /**
+     * 设置
+     * @param ruleThreshold
+     */
     public void setRuleThreshold(String ruleThreshold) {
         this.ruleThreshold = ruleThreshold;
     }
 
-    public String getRuleThreshold() {
-        return this.ruleThreshold;
-    }
-
-
-    @Override
-    public boolean equals(Object o) {
-        if (this == o) {
-            return true;
-        }
-        if (o == null || getClass() != o.getClass()) {
-            return false;
-        }
-        SysReqRule that = (SysReqRule) o;
-        return ruleNo.equals(that.ruleNo);
+    /**
+     * 获取
+     * @return ruleConclusionTemplate
+     */
+    public String getRuleConclusionTemplate() {
+        return ruleConclusionTemplate;
     }
 
-    @Override
-    public int hashCode() {
-        return java.util.Objects.hash(ruleNo);
+    /**
+     * 设置
+     * @param ruleConclusionTemplate
+     */
+    public void setRuleConclusionTemplate(String ruleConclusionTemplate) {
+        this.ruleConclusionTemplate = ruleConclusionTemplate;
     }
 
-    @Override
     public String toString() {
-        return "SysReqRule{" +
-                "ruleNo=" + ruleNo +
-                ",ruleName='" + ruleName + "'" +
-                ",ruleTemplate='" + ruleTemplate + "'" +
-                ",templateDesc='" + templateDesc + "'" +
-                ",ruleResult='" + ruleResult + "'" +
-                ",ruleIndex='" + ruleIndex + "'" +
-                ",ruleThreshold='" + ruleThreshold + "'" +
-                '}';
+        return "SysReqRule{ruleNo = " + ruleNo + ", ruleName = " + ruleName + ", ruleTemplate = " + ruleTemplate + ", templateDesc = " + templateDesc + ", ruleResult = " + ruleResult + ", ruleIndex = " + ruleIndex + ", ruleThreshold = " + ruleThreshold + ", ruleConclusionTemplate = " + ruleConclusionTemplate + "}";
     }
-
 }

+ 80 - 33
src/main/java/com/sundata/internalevaluation/configuration/model/SysReqRules.java

@@ -27,64 +27,111 @@ public class SysReqRules {
      */
     private List<String> ruleIds = new ArrayList<>();
 
-    public void setBelongProduct(String belongProduct) {
+    private String rulesConclusionTemplate;
+
+
+    public SysReqRules() {
+    }
+
+    public SysReqRules(String belongProduct, String rulesNo, String rulesName, List<String> ruleIds, String rulesConclusionTemplate) {
         this.belongProduct = belongProduct;
+        this.rulesNo = rulesNo;
+        this.rulesName = rulesName;
+        this.ruleIds = ruleIds;
+        this.rulesConclusionTemplate = rulesConclusionTemplate;
     }
 
+    /**
+     * 获取
+     *
+     * @return belongProduct
+     */
     public String getBelongProduct() {
-        return this.belongProduct;
+        return belongProduct;
     }
 
-    public void setRulesNo(String rulesNo) {
-        this.rulesNo = rulesNo;
+    /**
+     * 设置
+     *
+     * @param belongProduct
+     */
+    public void setBelongProduct(String belongProduct) {
+        this.belongProduct = belongProduct;
     }
 
+    /**
+     * 获取
+     *
+     * @return rulesNo
+     */
     public String getRulesNo() {
-        return this.rulesNo;
+        return rulesNo;
     }
 
-    public void setRulesName(String rulesName) {
-        this.rulesName = rulesName;
+    /**
+     * 设置
+     *
+     * @param rulesNo
+     */
+    public void setRulesNo(String rulesNo) {
+        this.rulesNo = rulesNo;
     }
 
+    /**
+     * 获取
+     *
+     * @return rulesName
+     */
     public String getRulesName() {
-        return this.rulesName;
+        return rulesName;
     }
 
-    public void setRuleIds(List<String> ruleIds) {
-        this.ruleIds = ruleIds;
+    /**
+     * 设置
+     *
+     * @param rulesName
+     */
+    public void setRulesName(String rulesName) {
+        this.rulesName = rulesName;
     }
 
+    /**
+     * 获取
+     *
+     * @return ruleIds
+     */
     public List<String> getRuleIds() {
-        return this.ruleIds;
+        return ruleIds;
     }
 
+    /**
+     * 设置
+     *
+     * @param ruleIds
+     */
+    public void setRuleIds(List<String> ruleIds) {
+        this.ruleIds = ruleIds;
+    }
 
-    @Override
-    public boolean equals(Object o) {
-        if (this == o) {
-            return true;
-        }
-        if (o == null || getClass() != o.getClass()) {
-            return false;
-        }
-        SysReqRules that = (SysReqRules) o;
-        return rulesNo.equals(that.rulesNo);
+    /**
+     * 获取
+     *
+     * @return rulesConclusionTemplate
+     */
+    public String getRulesConclusionTemplate() {
+        return rulesConclusionTemplate;
     }
 
-    @Override
-    public int hashCode() {
-        return java.util.Objects.hash(rulesNo);
+    /**
+     * 设置
+     *
+     * @param rulesConclusionTemplate
+     */
+    public void setRulesConclusionTemplate(String rulesConclusionTemplate) {
+        this.rulesConclusionTemplate = rulesConclusionTemplate;
     }
 
-    @Override
     public String toString() {
-        return "SysReqRules{" +
-                "belongProduct=" + belongProduct +
-                ",rulesNo='" + rulesNo + "'" +
-                ",rulesName='" + rulesName + "'" +
-                ",ruleIds='" + ruleIds + "'" +
-                '}';
+        return "SysReqRules{belongProduct = " + belongProduct + ", rulesNo = " + rulesNo + ", rulesName = " + rulesName + ", ruleIds = " + ruleIds + ", rulesConclusionTemplate = " + rulesConclusionTemplate + "}";
     }
-
-}
+}

+ 29 - 0
src/main/java/com/sundata/internalevaluation/configuration/mybatis/SysReqRuleMapper.xml

@@ -5,6 +5,7 @@
         <result column="RULE_NO" property="ruleNo"/>
         <result column="RULE_NAME" property="ruleName"/>
         <result column="RULE_TEMPLATE" property="ruleTemplate"/>
+        <result column="RULE_CONCLUSION_TEMPLATE" property="ruleConclusionTemplate"/>
         <result column="TEMPLATE_DESC" property="templateDesc"/>
         <result column="RULE_RESULT" property="ruleResult"/>
         <result column="RULE_INDEX" property="ruleIndex"/>
@@ -18,6 +19,7 @@
         RULE_NO
         , t.RULE_NAME
         , t.RULE_TEMPLATE
+        , t.RULE_CONCLUSION_TEMPLATE
         , t.TEMPLATE_DESC
         , t.RULE_RESULT
         , t.RULE_INDEX
@@ -70,6 +72,9 @@
             <if test="ruleTemplate != null">
                 RULE_TEMPLATE,
             </if>
+            <if test="ruleConclusionTemplate != null">
+                RULE_CONCLUSION_TEMPLATE,
+            </if>
             <if test="templateDesc != null">
                 TEMPLATE_DESC,
             </if>
@@ -93,6 +98,9 @@
             <if test="ruleTemplate != null">
                 #{ruleTemplate},
             </if>
+            <if test="ruleConclusionTemplate != null">
+                #{ruleConclusionTemplate},
+            </if>
             <if test="templateDesc != null">
                 #{templateDesc},
             </if>
@@ -120,6 +128,9 @@
             <if test="ruleTemplate != null">
                 RULE_TEMPLATE=#{ruleTemplate},
             </if>
+            <if test="ruleConclusionTemplate != null">
+                RULE_CONCLUSION_TEMPLATE=#{ruleConclusionTemplate},
+            </if>
             <if test="templateDesc != null">
                 TEMPLATE_DESC=#{templateDesc},
             </if>
@@ -149,5 +160,23 @@
     </select>
 
 
+    <select id="selectRuleListByRulesNo"
+            resultType="com.sundata.internalevaluation.configuration.model.SysReqRule">
+
+        select
+            t.RULE_NO AS ruleNo,
+            t.RULE_NAME AS ruleName,
+            t.RULE_RESULT AS ruleResult,
+            t.RULE_INDEX AS ruleIndex,
+            t.RULE_THRESHOLD AS ruleThreshold,
+            t.RULE_TEMPLATE AS ruleTemplate,
+            t.RULE_CONCLUSION_TEMPLATE AS ruleConclusionTemplate,
+            t.TEMPLATE_DESC AS templateDesc
+        from  SYS_REQ_RULE_RULES rr
+            inner join   SYS_REQ_RULE t on t.RULE_NO = rr.RULE_NO
+        where rr.RULES_NO = #{rulesNo}
+
+    </select>
+
 
 </mapper>

+ 17 - 8
src/main/java/com/sundata/internalevaluation/configuration/mybatis/SysReqRulesMapper.xml

@@ -3,6 +3,7 @@
 <mapper namespace="com.sundata.internalevaluation.configuration.mapper.SysReqRulesMapper">
     <resultMap id="BaseResultMap" type="com.sundata.internalevaluation.configuration.model.SysReqRules">
         <result column="BELONG_PRODUCT" property="belongProduct"/>
+        <result column="RULES_CONCLUSION_TEMPLATE" property="rulesConclusionTemplate"/>
         <result column="RULES_NO" property="rulesNo"/>
         <result column="RULES_NAME" property="rulesName"/>
     </resultMap>
@@ -15,20 +16,18 @@
 
     <!-- 表字段 -->
     <sql id="baseColumns">
-        t
-        .
-        BELONG_PRODUCT
-        , t.RULES_NO
-        , t.RULES_NAME
+        t.BELONG_PRODUCT,
+        t.RULES_NO,
+        t.RULES_NAME
 --         , t.RULE_IDS
     </sql>
 
     <!-- 查询全部 -->
     <select id="listAll" resultMap="BaseResultMap">
         SELECT
-        t.BELONG_PRODUCT
-        , t.RULES_NO
-        , t.RULES_NAME
+        t.BELONG_PRODUCT,
+        t.RULES_NO,
+        t.RULES_NAME
         FROM SYS_REQ_RULES t
         <where>
             <if test="rulesNo != null and rulesNo != ''">
@@ -62,6 +61,7 @@
         SELECT
             r.rules_no,
             r.rules_name,
+            r.rules_Conclusion_Template,
             r.BELONG_PRODUCT
         FROM SYS_REQ_RULES r
         WHERE r.RULES_NO = #{rulesNo}
@@ -85,6 +85,9 @@
             <if test="belongProduct != null">
                 BELONG_PRODUCT,
             </if>
+            <if test="rulesConclusionTemplate != null">
+                rules_Conclusion_Template,
+            </if>
             <if test="rulesNo != null">
                 RULES_NO,
             </if>
@@ -99,6 +102,9 @@
             <if test="belongProduct != null">
                 #{belongProduct},
             </if>
+            <if test="rulesConclusionTemplate != null">
+                #{rulesConclusionTemplate},
+            </if>
             <if test="rulesNo != null">
                 #{rulesNo},
             </if>
@@ -122,6 +128,9 @@
             <if test="belongProduct != null">
                 BELONG_PRODUCT=#{belongProduct},
             </if>
+            <if test="rulesConclusionTemplate != null">
+                rules_Conclusion_Template=#{rulesConclusionTemplate},
+            </if>
             <if test="rulesName != null">
                 RULES_NAME=#{rulesName},
             </if>

+ 5 - 0
src/main/java/com/sundata/internalevaluation/configuration/service/SysReqRuleService.java

@@ -89,5 +89,10 @@ public class SysReqRuleService {
 //            return 0;
         }
     }
+
+
+    public List<SysReqRule> selectRuleListByRulesNo(String rulesNo) {
+        return sysReqRuleMapper.selectRuleListByRulesNo(rulesNo);
+    }
 	
 }