fuliqi
2024-04-19 0c1f76c4a9c34a2adb05a94da4b20f3560374a29
考核模板
21个文件已修改
3个文件已添加
5个文件已删除
1576 ■■■■■ 已修改文件
document/需求确认书.docx 补丁 | 查看 | 原始文档 | blame | 历史
ycl-common/src/main/java/annotation/AutoFill.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-common/src/main/java/constant/CheckConstants.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CheckRule.java 119 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CheckTemplate.java 171 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CheckTemplateRule.java 92 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/query/CheckTemplateQuery.java 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-pojo/src/main/java/com/ycl/platform/domain/vo/CheckRuleVO.java 52 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/aop/AutoFillAspect.java 84 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/handler/GlobalExceptionHandler.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/platform/controller/CheckPublishController.java 99 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/platform/controller/CheckRuleController.java 79 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/platform/controller/CheckTemplateController.java 67 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/platform/mapper/CheckRuleMapper.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/platform/mapper/CheckTemplateMapper.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/platform/mapper/CheckTemplateRuleMapper.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/platform/service/ICheckPublishService.java 62 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/platform/service/ICheckRuleService.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/platform/service/ICheckTemplateRuleService.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/platform/service/ICheckTemplateService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/platform/service/impl/CheckPublishServiceImpl.java 97 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/platform/service/impl/CheckRuleServiceImpl.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/platform/service/impl/CheckTemplateRuleServiceImpl.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/platform/service/impl/CheckTemplateServiceImpl.java 175 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/resources/mapper/zgyw/CheckPublishMapper.xml 107 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/resources/mapper/zgyw/CheckResultMapper.xml 88 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/resources/mapper/zgyw/CheckRuleMapper.xml 57 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/resources/mapper/zgyw/CheckTemplateMapper.xml 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/resources/mapper/zgyw/CheckTemplateRuleMapper.xml 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
document/ÐèÇóÈ·ÈÏÊé.docx
Binary files differ
ycl-common/src/main/java/annotation/AutoFill.java
New file
@@ -0,0 +1,16 @@
package annotation;
import enumeration.OperationType;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface AutoFill {
    OperationType value();
}
ycl-common/src/main/java/constant/CheckConstants.java
New file
@@ -0,0 +1,19 @@
package constant;
/**
 * è€ƒæ ¸å¸¸é‡
 */
public class CheckConstants {
    //车辆规则
    public static final Short Rule_Category_Car = 1;
    //人脸规则
    public static final Short Rule_Category_Face = 2;
    //视频规则
    public static final Short Rule_Category_Video = 0;
    public static final String Delete = "1";
    public static final String Status_Use = "0";
    public static final String Status_Stop = "1";
}
ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CheckRule.java
@@ -1,137 +1,54 @@
package com.ycl.platform.domain.entity;
import annotation.Excel;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ycl.system.entity.BaseEntity;
import lombok.Data;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;
import java.util.Date;
/**
 * è€ƒæ ¸è§„则对象 t_check_rule
 * 
 * @author ruoyi
 * @date 2024-04-01
 * @date 2024-04-15
 */
@Data
public class CheckRule extends BaseEntity
{
    private static final long serialVersionUID = 1L;
    /**  */
    private Long id;
    /** è§„则名称 */
    @Excel(name = "规则名称")
    private String ruleName;
    /** è§„则细则 */
    @Excel(name = "规则细则")
    /** å¯¹åº”index表字段名 */
    @Excel(name = "对应index表字段名")
    private String ruleIndex;
    /** è§„则类型 */
    @Excel(name = "规则类型")
    private Long ruleCategory;
    /** 0.视频监控;1.车辆识别;2.人员识 */
    @Excel(name = "0.视频监控;1.车辆识别;2.人员识")
    private Short ruleCategory;
    /** è€ƒæ ¸ç±»åž‹ */
    @Excel(name = "考核类型")
    private Long examineCategory;
    /** å¯é…ç½®çš„规则参数json */
    @Excel(name = "可配置的规则参数json")
    private String ruleCondition;
    /** è§„则描述 */
    @Excel(name = "规则描述")
    private String ruleDescription;
    /** å¯ç”¨çŠ¶æ€ */
    @Excel(name = "启用状态")
    private Long state;
    /** 0/1 å¯ç”¨/停用 */
    @Excel(name = "0/1 å¯ç”¨/停用")
    private Short state;
    /** é€»è¾‘删除 */
    @Excel(name = "逻辑删除")
    private String deleted;
    public void setId(Long id)
    {
        this.id = id;
    }
    public Long getId()
    {
        return id;
    }
    public void setRuleName(String ruleName)
    {
        this.ruleName = ruleName;
    }
    public String getRuleName()
    {
        return ruleName;
    }
    public void setRuleIndex(String ruleIndex)
    {
        this.ruleIndex = ruleIndex;
    }
    public String getRuleIndex()
    {
        return ruleIndex;
    }
    public void setRuleCategory(Long ruleCategory)
    {
        this.ruleCategory = ruleCategory;
    }
    public Long getRuleCategory()
    {
        return ruleCategory;
    }
    public void setExamineCategory(Long examineCategory)
    {
        this.examineCategory = examineCategory;
    }
    public Long getExamineCategory()
    {
        return examineCategory;
    }
    public void setRuleDescription(String ruleDescription)
    {
        this.ruleDescription = ruleDescription;
    }
    public String getRuleDescription()
    {
        return ruleDescription;
    }
    public void setState(Long state)
    {
        this.state = state;
    }
    public Long getState()
    {
        return state;
    }
    public void setDeleted(String deleted)
    {
        this.deleted = deleted;
    }
    public String getDeleted()
    {
        return deleted;
    }
    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("ruleName", getRuleName())
            .append("ruleIndex", getRuleIndex())
            .append("ruleCategory", getRuleCategory())
            .append("examineCategory", getExamineCategory())
            .append("ruleDescription", getRuleDescription())
            .append("state", getState())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .append("deleted", getDeleted())
            .toString();
    }
}
ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CheckTemplate.java
@@ -1,9 +1,15 @@
package com.ycl.platform.domain.entity;
import annotation.Excel;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ycl.system.entity.BaseEntity;
import lombok.Data;
import lombok.experimental.Accessors;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;
import java.math.BigDecimal;
import java.util.Date;
/**
 * è€ƒæ ¸æ¨¡æ¿å¯¹è±¡ t_check_template
@@ -11,12 +17,14 @@
 * @author ruoyi
 * @date 2024-04-01
 */
public class CheckTemplate extends BaseEntity
@Data
@Accessors(chain = true)
public class CheckTemplate
{
    private static final long serialVersionUID = 1L;
    /**  */
    private Long id;
    private Integer id;
    /** æ¨¡æ¿åç§° */
    @Excel(name = "模板名称")
@@ -29,10 +37,16 @@
    /** è°ƒæ•´æ–¹å¼ï¼šä¹˜é™¤ */
    @Excel(name = "调整方式:乘除")
    private String adjustWay;
    /** è€ƒæ ¸æ ‡ç­¾(省厅 å¸‚å±€)*/
    @Excel(name = "考核标签")
    private Short examineTag;
    /** è€ƒæ ¸ç±»åž‹ */
    @Excel(name = "考核类型")
    private Long examineCategory;
    private Short examineCategory;
    /** å®šæ—¶ä»»åŠ¡id*/
    @Excel(name = "定时任务id")
    private Integer jobId;
    /** å¯ç”¨/停用 */
    @Excel(name = "启用/停用")
@@ -42,149 +56,28 @@
    @Excel(name = "区县")
    private String deptId;
    /** åˆ›å»ºäººid */
    /** æŠ¥è­¦åˆ†æ•° */
    @Excel(name = "报警分数")
    private BigDecimal alarmScore;
    /** è€ƒæ ¸é¢‘率 */
    @Excel(name = "考核频率")
    private Short frequency;
    /** è€ƒæ ¸æè¿° */
    @Excel(name = "考核描述")
    private String description;
    private Long createUser;
    /** åˆ›å»ºäººå§“名 */
    @Excel(name = "创建人姓名")
    private String createUserName;
    /**  */
    private Long updateUser;
    /**  */
    @Excel(name = "")
    private String updateUserName;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;
    /** é€»è¾‘删除 */
    private String deleted;
    public void setId(Long id)
    {
        this.id = id;
    }
    public Long getId()
    {
        return id;
    }
    public void setTemplateName(String templateName)
    {
        this.templateName = templateName;
    }
    public String getTemplateName()
    {
        return templateName;
    }
    public void setAdjustCoefficient(Long adjustCoefficient)
    {
        this.adjustCoefficient = adjustCoefficient;
    }
    public Long getAdjustCoefficient()
    {
        return adjustCoefficient;
    }
    public void setAdjustWay(String adjustWay)
    {
        this.adjustWay = adjustWay;
    }
    public String getAdjustWay()
    {
        return adjustWay;
    }
    public void setExamineCategory(Long examineCategory)
    {
        this.examineCategory = examineCategory;
    }
    public Long getExamineCategory()
    {
        return examineCategory;
    }
    public void setStatus(String status)
    {
        this.status = status;
    }
    public String getStatus()
    {
        return status;
    }
    public void setDeptId(String deptId)
    {
        this.deptId = deptId;
    }
    public String getDeptId()
    {
        return deptId;
    }
    public void setCreateUser(Long createUser)
    {
        this.createUser = createUser;
    }
    public Long getCreateUser()
    {
        return createUser;
    }
    public void setCreateUserName(String createUserName)
    {
        this.createUserName = createUserName;
    }
    public String getCreateUserName()
    {
        return createUserName;
    }
    public void setUpdateUser(Long updateUser)
    {
        this.updateUser = updateUser;
    }
    public Long getUpdateUser()
    {
        return updateUser;
    }
    public void setUpdateUserName(String updateUserName)
    {
        this.updateUserName = updateUserName;
    }
    public String getUpdateUserName()
    {
        return updateUserName;
    }
    public void setDeleted(String deleted)
    {
        this.deleted = deleted;
    }
    public String getDeleted()
    {
        return deleted;
    }
    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("templateName", getTemplateName())
            .append("adjustCoefficient", getAdjustCoefficient())
            .append("adjustWay", getAdjustWay())
            .append("examineCategory", getExamineCategory())
            .append("status", getStatus())
            .append("deptId", getDeptId())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .append("createUser", getCreateUser())
            .append("createUserName", getCreateUserName())
            .append("updateUser", getUpdateUser())
            .append("updateUserName", getUpdateUserName())
            .append("deleted", getDeleted())
            .toString();
    }
}
ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CheckTemplateRule.java
@@ -1,7 +1,13 @@
package com.ycl.platform.domain.entity;
import annotation.Excel;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.ycl.system.entity.BaseEntity;
import lombok.Data;
import lombok.experimental.Accessors;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;
@@ -13,97 +19,31 @@
 * @author ruoyi
 * @date 2024-04-01
 */
public class CheckTemplateRule extends BaseEntity
@Data
@Accessors(chain = true)
@TableName("t_check_template_rule")
public class CheckTemplateRule
{
    private static final long serialVersionUID = 1L;
    /**  */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    /** è€ƒæ ¸æ¨¡æ¿ */
    @Excel(name = "考核模板")
    private Long checkTemplateId;
    @TableField("check_template_id")
    private Integer checkTemplateId;
    /** è€ƒæ ¸è§„则 */
    @Excel(name = "考核规则")
    private Long checkRuleId;
    @TableField("check_rule_id")
    private Integer checkRuleId;
    /** è§„则权重 */
    @Excel(name = "规则权重")
    @TableField("weight")
    private BigDecimal weight;
    /** æ»¡åˆ† */
    @Excel(name = "满分")
    private BigDecimal maxScore;
    /** å®¡æ ¸çŠ¶æ€ */
    @Excel(name = "审核状态")
    private Long auditState;
    public void setId(Long id)
    {
        this.id = id;
    }
    public Long getId()
    {
        return id;
    }
    public void setCheckTemplateId(Long checkTemplateId)
    {
        this.checkTemplateId = checkTemplateId;
    }
    public Long getCheckTemplateId()
    {
        return checkTemplateId;
    }
    public void setCheckRuleId(Long checkRuleId)
    {
        this.checkRuleId = checkRuleId;
    }
    public Long getCheckRuleId()
    {
        return checkRuleId;
    }
    public void setWeight(BigDecimal weight)
    {
        this.weight = weight;
    }
    public BigDecimal getWeight()
    {
        return weight;
    }
    public void setMaxScore(BigDecimal maxScore)
    {
        this.maxScore = maxScore;
    }
    public BigDecimal getMaxScore()
    {
        return maxScore;
    }
    public void setAuditState(Long auditState)
    {
        this.auditState = auditState;
    }
    public Long getAuditState()
    {
        return auditState;
    }
    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("checkTemplateId", getCheckTemplateId())
            .append("checkRuleId", getCheckRuleId())
            .append("weight", getWeight())
            .append("maxScore", getMaxScore())
            .append("auditState", getAuditState())
            .toString();
    }
}
ycl-pojo/src/main/java/com/ycl/platform/domain/query/CheckTemplateQuery.java
@@ -1,60 +1,65 @@
package com.ycl.platform.domain.query;
import annotation.Excel;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.ycl.platform.base.AbsQuery;
import io.swagger.annotations.ApiModel;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.experimental.Accessors;
import java.util.Date;
import java.util.List;
import java.util.Map;
@Data
@Accessors(chain = true)
@ApiModel(value = "规则模板查询", description = "规则模板查询")
public class CheckTemplateQuery extends AbsQuery {
    /**  */
    private Long id;
    private Integer id;
    /** æ¨¡æ¿åç§° */
    @Excel(name = "模板名称")
    @NotBlank(message = "模板名不能为空")
    private String templateName;
    /** è°ƒæ•´ç³»æ•° */
    @Excel(name = "调整系数")
    private Long adjustCoefficient;
    /** è°ƒæ•´æ–¹å¼ï¼šä¹˜é™¤ */
    @Excel(name = "调整方式:乘除")
    private String adjustWay;
    /** è€ƒæ ¸æ ‡ç­¾ï¼ˆ0/1 çœåŽ…/市局)*/
    @NotNull(message = "考核标签不能为空")
    private Short examineTag;
    /** è€ƒæ ¸ç±»åž‹ */
    @Excel(name = "考核类型")
    private Long examineCategory;
    @NotNull(message = "考核类型不能为空")
    private Short examineCategory;
    /** å®šæ—¶ä»»åŠ¡id*/
    private Integer jobId;
    /** å¯ç”¨/停用 */
    @Excel(name = "启用/停用")
    @NotBlank(message = "启用状态不能为空")
    private String status;
    /** åŒºåŽ¿ */
    @Excel(name = "区县")
    private List deptId;
    private List<Integer> deptId;
    /** åˆ›å»ºäººid */
    private Long createUser;
    /** åˆ›å»ºäººå§“名 */
    @Excel(name = "创建人姓名")
    private String createUserName;
    /**  */
    private Long updateUser;
    /**  */
    @Excel(name = "")
    private String updateUserName;
    /** é€»è¾‘删除 */
@@ -76,4 +81,14 @@
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(fill = FieldFill.UPDATE)
    private Date updateTime;
    /** æŠ¥è­¦åˆ†æ•° */
    private String alarmScore;
    /** è€ƒæ ¸é¢‘率 */
    @NotNull(message = "考核频率不能为空")
    private Short frequency;
    /** è€ƒæ ¸æè¿° */
    private String description;
    /** è€ƒæ ¸è§„则 */
    private List<Map<String,Object>> ruleFormList;
}
ycl-pojo/src/main/java/com/ycl/platform/domain/vo/CheckRuleVO.java
@@ -1,55 +1,15 @@
package com.ycl.platform.domain.vo;
import annotation.Excel;
import com.ycl.platform.base.AbsVo;
import com.ycl.platform.domain.entity.CheckRule;
import lombok.Data;
import lombok.experimental.Accessors;
import java.math.BigDecimal;
import java.util.List;
/**
 * è€ƒæ ¸è§„则展示
 *
 */
@Data
@Accessors(chain = true)
public class CheckRuleVO extends AbsVo {
    /**
     * æ¨¡æ¿id
     */
    private Integer templateId;
    /** æ¨¡æ¿å */
    private String templateName;
    /**
     * å®¡æ ¸çŠ¶æ€
     */
    private Integer auditState;
    /**
     * è§„则名称
     */
    private String ruleName;
    /**
     * è§„则类型
     */
    private String ruleCategory;
    /** è§„则细则 */
    private String ruleIndex;
    /** è€ƒæ ¸ç±»åž‹ */
    private Long examineCategory;
    /** è§„则描述 */
    private String ruleDescription;
    /** è§„则权重 */
    private BigDecimal weight;
    /** å¯ç”¨çŠ¶æ€ */
    private Long state;
    /** é€»è¾‘删除 */
    private String deleted;
public class CheckRuleVO {
    private List<CheckRule> videoRules;
    private List<CheckRule> faceRules;
    private List<CheckRule> carRules;
}
ycl-server/src/main/java/com/ycl/aop/AutoFillAspect.java
New file
@@ -0,0 +1,84 @@
package com.ycl.aop;
import annotation.AutoFill;
import com.ycl.utils.SecurityUtils;
import enumeration.OperationType;
import lombok.extern.slf4j.Slf4j;
import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
import org.aspectj.lang.annotation.Pointcut;
import org.aspectj.lang.reflect.MethodSignature;
import org.springframework.stereotype.Component;
import java.lang.reflect.Method;
import java.util.Date;
@Aspect
@Component
@Slf4j
public class AutoFillAspect {
    /**
     * åˆ‡å…¥ç‚¹
     */
    @Pointcut("execution(* com.ycl.platform.mapper.*.*(..)) && @annotation(annotation.AutoFill)")
    public void autoFillPointCut(){
    }
    /**
     * å‰ç½®é€šçŸ¥ï¼Œåœ¨é€šçŸ¥ä¸­è¿›è¡Œå…¬å…±å­—段的赋值
     */
    @Before("autoFillPointCut()")
    public void autoFill(JoinPoint joinPoint){
        log.info("开始进行公共字段自动填充");
        //获取到当前被拦截的方法上的数据库操作类型
        MethodSignature signature = (MethodSignature) joinPoint.getSignature();//方法签名对象
        AutoFill autoFill = signature.getMethod().getAnnotation(AutoFill.class);//获得方法上的注解对象
        OperationType operationType = autoFill.value();//获得数据库操作类型
        //获取到当前被拦截的方法的参数--实体对象
        Object[] args = joinPoint.getArgs();
        if(args == null || args.length == 0){
            return;
        }
        Object entity = args[0];
        //准备赋值的数据
        Date now = new Date();
        Long userId = SecurityUtils.getUserId();
        //根据当前不同的操作类型,为对应的属性通过反射来赋值
        if(operationType == OperationType.INSERT){
            //为4个公共字段赋值
            try {
                Method setCreateTime = entity.getClass().getDeclaredMethod("setCreateTime", Date.class);
                Method setCreateUser = entity.getClass().getDeclaredMethod("setCreateUser", Long.class);
                Method setUpdateTime = entity.getClass().getDeclaredMethod("setUpdateTime", Date.class);
                Method setUpdateUser = entity.getClass().getDeclaredMethod("setUpdateUser", Long.class);
                //通过反射为对象属性赋值
                setCreateTime.invoke(entity,now);
                setCreateUser.invoke(entity,userId);
                setUpdateTime.invoke(entity,now);
                setUpdateUser.invoke(entity,userId);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }else if(operationType == OperationType.UPDATE){
            //为2个公共字段赋值
            try {
                Method setUpdateTime = entity.getClass().getDeclaredMethod("setUpdateTime", Date.class);
                Method setUpdateUser = entity.getClass().getDeclaredMethod("setUpdateUser", Long.class);
                //通过反射为对象属性赋值
                setUpdateTime.invoke(entity,now);
                setUpdateUser.invoke(entity,userId);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
}
ycl-server/src/main/java/com/ycl/handler/GlobalExceptionHandler.java
@@ -6,6 +6,7 @@
import com.ycl.utils.StringUtils;
import constant.HttpStatus;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.validation.UnexpectedTypeException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.security.access.AccessDeniedException;
@@ -102,7 +103,16 @@
        String message = e.getBindingResult().getFieldError().getDefaultMessage();
        return AjaxResult.error(message);
    }
    /**
     * å‚数校验异常
     */
    @ExceptionHandler(UnexpectedTypeException.class)
    public AjaxResult handleUnexpectedTypeException(UnexpectedTypeException e)
    {
        log.error(e.getMessage(), e);
        String message = e.getMessage();
        return AjaxResult.error(message);
    }
    /**
     * æ¼”示模式异常
     */
ycl-server/src/main/java/com/ycl/platform/controller/CheckPublishController.java
File was deleted
ycl-server/src/main/java/com/ycl/platform/controller/CheckRuleController.java
@@ -2,27 +2,20 @@
import annotation.Log;
import com.ycl.platform.domain.entity.CheckRule;
import com.ycl.platform.domain.query.CheckRuleQuery;
import com.ycl.platform.domain.vo.CheckRuleVO;
import com.ycl.platform.service.ICheckRuleService;
import com.ycl.system.AjaxResult;
import com.ycl.system.controller.BaseController;
import com.ycl.system.page.TableDataInfo;
import com.ycl.utils.poi.ExcelUtil;
import enumeration.BusinessType;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
 * è€ƒæ ¸è§„则Controller
 *
 * @author ruoyi
 * @date 2024-04-01
 * @date 2024-04-15
 */
@RestController
@RequestMapping("/check/rule")
@@ -34,53 +27,30 @@
    /**
     * æŸ¥è¯¢è€ƒæ ¸è§„则列表
     */
//    @PreAuthorize("@ss.hasPermi('system:rule:list')")
    @PostMapping("/list")
    public TableDataInfo list(@RequestBody CheckRuleQuery checkRuleQuery)
    @PreAuthorize("@ss.hasPermi('check:rule:list')")
    @GetMapping("/list")
    public AjaxResult list(CheckRule checkRule)
    {
        startPage();
        List<CheckRuleVO> list = checkRuleService.selectCheckRuleList(checkRuleQuery);
        return getDataTable(list);
        CheckRuleVO checkRuleVO = checkRuleService.selectCheckRuleList(checkRule);
        return success(checkRuleVO);
    }
    /**
     * å¯¼å‡ºè€ƒæ ¸è§„则列表
     */
    @PreAuthorize("@ss.hasPermi('system:rule:export')")
    @Log(title = "考核规则", businessType = BusinessType.EXPORT)
    @PostMapping("/export")
    public void export(HttpServletResponse response, CheckRuleQuery checkRuleQuery)
    {
        List<CheckRuleVO> list = checkRuleService.selectCheckRuleList(checkRuleQuery);
        ExcelUtil<CheckRuleVO> util = new ExcelUtil<CheckRuleVO>(CheckRuleVO.class);
        util.exportExcel(response, list, "考核规则数据");
    }
    /**
     * èŽ·å–è€ƒæ ¸è§„åˆ™è¯¦ç»†ä¿¡æ¯
     */
//    @PreAuthorize("@ss.hasPermi('system:rule:query')")
    @PreAuthorize("@ss.hasPermi('check:rule:query')")
    @GetMapping(value = "/{id}")
    public AjaxResult getInfo(@PathVariable("id") Long id)
    {
        return success(checkRuleService.selectCheckRuleById(id));
    }
    /**
     * æ–°å¢žè€ƒæ ¸è§„则
     */
    @PreAuthorize("@ss.hasPermi('system:rule:add')")
    @Log(title = "考核规则", businessType = BusinessType.INSERT)
    @PostMapping
    public AjaxResult add(@RequestBody CheckRule checkRule)
    {
        return toAjax(checkRuleService.insertCheckRule(checkRule));
    }
    /**
     * ä¿®æ”¹è€ƒæ ¸è§„则
     */
    @PreAuthorize("@ss.hasPermi('system:rule:edit')")
    @PreAuthorize("@ss.hasPermi('check:rule:edit')")
    @Log(title = "考核规则", businessType = BusinessType.UPDATE)
    @PutMapping
    public AjaxResult edit(@RequestBody CheckRule checkRule)
@@ -88,14 +58,27 @@
        return toAjax(checkRuleService.updateCheckRule(checkRule));
    }
    /**
     * åˆ é™¤è€ƒæ ¸è§„则
     */
    @PreAuthorize("@ss.hasPermi('system:rule:remove')")
    @Log(title = "考核规则", businessType = BusinessType.DELETE)
    @DeleteMapping("/{ids}")
    public AjaxResult remove(@PathVariable Long[] ids)
    {
        return toAjax(checkRuleService.deleteCheckRuleByIds(ids));
    }
//    /**
//     * å¯¼å‡ºè€ƒæ ¸è§„则列表
//     */
//    @PreAuthorize("@ss.hasPermi('check:rule:export')")
//    @Log(title = "考核规则", businessType = BusinessType.EXPORT)
//    @PostMapping("/export")
//    public void export(HttpServletResponse response, CheckRule checkRule)
//    {
//        List<CheckRule> list = checkRuleService.selectCheckRuleList(checkRule);
//        ExcelUtil<CheckRule> util = new ExcelUtil<CheckRule>(CheckRule.class);
//        util.exportExcel(response, list, "考核规则数据");
//    }
//    /**
//     * æ–°å¢žè€ƒæ ¸è§„则
//     */
//    @PreAuthorize("@ss.hasPermi('check:rule:add')")
//    @Log(title = "考核规则", businessType = BusinessType.INSERT)
//    @PostMapping
//    public AjaxResult add(@RequestBody CheckRule checkRule)
//    {
//        return toAjax(checkRuleService.insertCheckRule(checkRule));
//    }
}
ycl-server/src/main/java/com/ycl/platform/controller/CheckTemplateController.java
@@ -8,12 +8,11 @@
import com.ycl.system.Result;
import com.ycl.system.controller.BaseController;
import com.ycl.system.page.TableDataInfo;
import com.ycl.utils.poi.ExcelUtil;
import enumeration.BusinessType;
import io.swagger.annotations.ApiOperation;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@@ -34,69 +33,69 @@
    /**
     * æŸ¥è¯¢è€ƒæ ¸æ¨¡æ¿åˆ—表
     */
//    @PreAuthorize("@ss.hasPermi('system:template:list')")
    @PreAuthorize("@ss.hasPermi('check:template:list')")
    @GetMapping("/list")
    public TableDataInfo list(CheckTemplateQuery checkTemplateDTO)
    {
        startPage();
        List<CheckTemplate> list = checkTemplateService.selectCheckTemplateList(checkTemplateDTO);
        List<CheckTemplateQuery> list = checkTemplateService.selectCheckTemplateList(checkTemplateDTO);
        return getDataTable(list);
    }
    /**
     * å¯¼å‡ºè€ƒæ ¸æ¨¡æ¿åˆ—表
     */
//    @PreAuthorize("@ss.hasPermi('system:template:export')")
    @Log(title = "考核模板", businessType = BusinessType.EXPORT)
    @PostMapping("/export")
    public void export(HttpServletResponse response, CheckTemplateQuery checkTemplateDTO)
    {
        List<CheckTemplate> list = checkTemplateService.selectCheckTemplateList(checkTemplateDTO);
        ExcelUtil<CheckTemplate> util = new ExcelUtil<CheckTemplate>(CheckTemplate.class);
        util.exportExcel(response, list, "考核模板数据");
    }
    /**
     * èŽ·å–è€ƒæ ¸æ¨¡æ¿è¯¦ç»†ä¿¡æ¯
     */
//    @PreAuthorize("@ss.hasPermi('system:template:query')")
    @PreAuthorize("@ss.hasPermi('check:template:query')")
    @GetMapping(value = "/{id}")
    public AjaxResult getInfo(@PathVariable("id") Long id)
    public AjaxResult getInfo(@PathVariable("id") String id)
    {
        return success(checkTemplateService.selectCheckTemplateById(id));
        return success(checkTemplateService.selectCheckTemplateById(Integer.parseInt(id)));
    }
    /**
     * æ–°å¢žè€ƒæ ¸æ¨¡æ¿
     */
//    @PreAuthorize("@ss.hasPermi('system:template:add')")
    @PreAuthorize("@ss.hasPermi('check:template:add')")
    @Log(title = "考核模板", businessType = BusinessType.INSERT)
    @PostMapping
    public AjaxResult add(@RequestBody CheckTemplateQuery checkTemplateDTO)
    public AjaxResult add(@RequestBody @Validated CheckTemplateQuery checkTemplateDTO)
    {
        return toAjax(checkTemplateService.insertCheckTemplate(checkTemplateDTO));
    }
    /**
     * å¤åˆ¶è€ƒæ ¸æ¨¡æ¿
     */
    @PreAuthorize("@ss.hasPermi('check:template:copy')")
    @Log(title = "考核模板", businessType = BusinessType.INSERT)
    @PostMapping("/copy")
    public AjaxResult copy(@RequestBody CheckTemplateQuery checkTemplateDTO)
    {
        return toAjax(checkTemplateService.copyCheckTemplate(checkTemplateDTO));
    }
    /**
     * ä¿®æ”¹è€ƒæ ¸æ¨¡æ¿
     */
    @PreAuthorize("@ss.hasPermi('system:template:edit')")
    @PreAuthorize("@ss.hasPermi('check:template:edit')")
    @Log(title = "考核模板", businessType = BusinessType.UPDATE)
    @PutMapping
    public AjaxResult edit(@RequestBody CheckTemplate checkTemplate)
    public AjaxResult edit(@RequestBody CheckTemplateQuery checkTemplateDTO)
    {
        return toAjax(checkTemplateService.updateCheckTemplate(checkTemplate));
        return toAjax(checkTemplateService.updateCheckTemplate(checkTemplateDTO));
    }
    /**
     * åˆ é™¤è€ƒæ ¸æ¨¡æ¿
     */
    @PreAuthorize("@ss.hasPermi('system:template:remove')")
    @PreAuthorize("@ss.hasPermi('check:template:remove')")
    @Log(title = "考核模板", businessType = BusinessType.DELETE)
    @DeleteMapping("/{ids}")
    public AjaxResult remove(@PathVariable Long[] ids)
    @DeleteMapping("/{id}")
    public AjaxResult remove(@PathVariable String id)
    {
        return toAjax(checkTemplateService.deleteCheckTemplateByIds(ids));
        return toAjax(checkTemplateService.deleteCheckTemplateById(Integer.parseInt(id)));
    }
    @GetMapping("/pullList")
@@ -104,4 +103,16 @@
    public Result pullList() {
        return checkTemplateService.pullList();
    }
//    /**
//     * å¯¼å‡ºè€ƒæ ¸æ¨¡æ¿åˆ—表
//     */
////    @PreAuthorize("@ss.hasPermi('system:template:export')")
//    @Log(title = "考核模板", businessType = BusinessType.EXPORT)
//    @PostMapping("/export")
//    public void export(HttpServletResponse response, CheckTemplateQuery checkTemplateDTO)
//    {
//        List<CheckTemplate> list = checkTemplateService.selectCheckTemplateList(checkTemplateDTO);
//        ExcelUtil<CheckTemplate> util = new ExcelUtil<CheckTemplate>(CheckTemplate.class);
//        util.exportExcel(response, list, "考核模板数据");
//    }
}
ycl-server/src/main/java/com/ycl/platform/mapper/CheckRuleMapper.java
@@ -1,8 +1,6 @@
package com.ycl.platform.mapper;
import com.ycl.platform.domain.entity.CheckRule;
import com.ycl.platform.domain.query.CheckRuleQuery;
import com.ycl.platform.domain.vo.CheckRuleVO;
import java.util.List;
@@ -10,7 +8,7 @@
 * è€ƒæ ¸è§„则Mapper接口
 * 
 * @author ruoyi
 * @date 2024-04-01
 * @date 2024-04-15
 */
public interface CheckRuleMapper 
{
@@ -20,15 +18,15 @@
     * @param id è€ƒæ ¸è§„则主键
     * @return è€ƒæ ¸è§„则
     */
    public CheckRuleVO selectCheckRuleById(Long id);
    public CheckRule selectCheckRuleById(Long id);
    /**
     * æŸ¥è¯¢è€ƒæ ¸è§„则列表
     * 
     * @param checkRuleQuery è€ƒæ ¸è§„则
     * @param checkRule è€ƒæ ¸è§„则
     * @return è€ƒæ ¸è§„则集合
     */
    public List<CheckRuleVO> selectCheckRuleList(CheckRuleQuery checkRuleQuery);
    public List<CheckRule> selectCheckRuleList(CheckRule checkRule);
    /**
     * æ–°å¢žè€ƒæ ¸è§„则
ycl-server/src/main/java/com/ycl/platform/mapper/CheckTemplateMapper.java
@@ -1,7 +1,10 @@
package com.ycl.platform.mapper;
import annotation.AutoFill;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ycl.platform.domain.entity.CheckTemplate;
import com.ycl.platform.domain.query.CheckTemplateQuery;
import enumeration.OperationType;
import java.util.List;
@@ -11,7 +14,7 @@
 * @author ruoyi
 * @date 2024-04-01
 */
public interface CheckTemplateMapper
public interface CheckTemplateMapper extends BaseMapper<CheckTemplate>
{
    /**
     * æŸ¥è¯¢è€ƒæ ¸æ¨¡æ¿
@@ -19,7 +22,7 @@
     * @param id è€ƒæ ¸æ¨¡æ¿ä¸»é”®
     * @return è€ƒæ ¸æ¨¡æ¿
     */
    public CheckTemplate selectCheckTemplateById(Long id);
    public CheckTemplate selectCheckTemplateById(Integer id);
    /**
     * æŸ¥è¯¢è€ƒæ ¸æ¨¡æ¿åˆ—表
@@ -35,6 +38,7 @@
     * @param checkTemplate è€ƒæ ¸æ¨¡æ¿
     * @return ç»“æžœ
     */
    @AutoFill(OperationType.INSERT)
    public int insertCheckTemplate(CheckTemplate checkTemplate);
    /**
@@ -43,6 +47,7 @@
     * @param checkTemplate è€ƒæ ¸æ¨¡æ¿
     * @return ç»“æžœ
     */
    @AutoFill(OperationType.UPDATE)
    public int updateCheckTemplate(CheckTemplate checkTemplate);
    /**
@@ -51,7 +56,7 @@
     * @param id è€ƒæ ¸æ¨¡æ¿ä¸»é”®
     * @return ç»“æžœ
     */
    public int deleteCheckTemplateById(Long id);
    public int deleteCheckTemplateById(Integer id);
    /**
     * æ‰¹é‡åˆ é™¤è€ƒæ ¸æ¨¡æ¿
@@ -59,5 +64,5 @@
     * @param ids éœ€è¦åˆ é™¤çš„æ•°æ®ä¸»é”®é›†åˆ
     * @return ç»“æžœ
     */
    public int deleteCheckTemplateByIds(Long[] ids);
    public int deleteCheckTemplateByIds(Integer[] ids);
}
ycl-server/src/main/java/com/ycl/platform/mapper/CheckTemplateRuleMapper.java
@@ -1,5 +1,6 @@
package com.ycl.platform.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ycl.platform.domain.entity.CheckTemplateRule;
import java.util.List;
@@ -10,7 +11,7 @@
 * @author ruoyi
 * @date 2024-04-01
 */
public interface CheckTemplateRuleMapper
public interface CheckTemplateRuleMapper extends BaseMapper<CheckTemplateRule>
{
    /**
     * æŸ¥è¯¢è€ƒæ ¸æ¨¡æ¿-规则中间
@@ -59,4 +60,8 @@
     * @return ç»“æžœ
     */
    public int deleteCheckTemplateRuleByIds(Long[] ids);
    List<CheckTemplateRule> selectListByTemplateId(Integer id);
    void deleteByTemplateId(Integer templateId);
}
ycl-server/src/main/java/com/ycl/platform/service/ICheckPublishService.java
File was deleted
ycl-server/src/main/java/com/ycl/platform/service/ICheckRuleService.java
@@ -1,7 +1,6 @@
package com.ycl.platform.service;
import com.ycl.platform.domain.entity.CheckRule;
import com.ycl.platform.domain.query.CheckRuleQuery;
import com.ycl.platform.domain.vo.CheckRuleVO;
import java.util.List;
@@ -10,7 +9,7 @@
 * è€ƒæ ¸è§„则Service接口
 * 
 * @author ruoyi
 * @date 2024-04-01
 * @date 2024-04-15
 */
public interface ICheckRuleService 
{
@@ -20,15 +19,15 @@
     * @param id è€ƒæ ¸è§„则主键
     * @return è€ƒæ ¸è§„则
     */
    public CheckRuleVO selectCheckRuleById(Long id);
    public CheckRule selectCheckRuleById(Long id);
    /**
     * æŸ¥è¯¢è€ƒæ ¸è§„则列表
     * 
     * @param checkRuleQuery è€ƒæ ¸è§„则
     * @param checkRule è€ƒæ ¸è§„则
     * @return è€ƒæ ¸è§„则集合
     */
    public List<CheckRuleVO> selectCheckRuleList(CheckRuleQuery checkRuleQuery);
    public CheckRuleVO selectCheckRuleList(CheckRule checkRule);
    /**
     * æ–°å¢žè€ƒæ ¸è§„则
ycl-server/src/main/java/com/ycl/platform/service/ICheckTemplateRuleService.java
@@ -1,5 +1,6 @@
package com.ycl.platform.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ycl.platform.domain.entity.CheckTemplateRule;
import java.util.List;
@@ -10,7 +11,7 @@
 * @author ruoyi
 * @date 2024-04-01
 */
public interface ICheckTemplateRuleService
public interface ICheckTemplateRuleService extends IService<CheckTemplateRule>
{
    /**
     * æŸ¥è¯¢è€ƒæ ¸æ¨¡æ¿-规则中间
ycl-server/src/main/java/com/ycl/platform/service/ICheckTemplateService.java
@@ -1,5 +1,6 @@
package com.ycl.platform.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ycl.platform.domain.entity.CheckTemplate;
import com.ycl.platform.domain.query.CheckTemplateQuery;
import com.ycl.system.Result;
@@ -12,7 +13,7 @@
 * @author ruoyi
 * @date 2024-04-01
 */
public interface ICheckTemplateService
public interface ICheckTemplateService extends IService<CheckTemplate>
{
    /**
     * æŸ¥è¯¢è€ƒæ ¸æ¨¡æ¿
@@ -20,7 +21,7 @@
     * @param id è€ƒæ ¸æ¨¡æ¿ä¸»é”®
     * @return è€ƒæ ¸æ¨¡æ¿
     */
    public CheckTemplateQuery selectCheckTemplateById(Long id);
    public CheckTemplateQuery selectCheckTemplateById(Integer id);
    /**
     * æŸ¥è¯¢è€ƒæ ¸æ¨¡æ¿åˆ—表
@@ -28,7 +29,7 @@
     * @param checkTemplateDTO è€ƒæ ¸æ¨¡æ¿
     * @return è€ƒæ ¸æ¨¡æ¿é›†åˆ
     */
    public List<CheckTemplate> selectCheckTemplateList(CheckTemplateQuery checkTemplateDTO);
    public List<CheckTemplateQuery> selectCheckTemplateList(CheckTemplateQuery checkTemplateDTO);
    /**
     * æ–°å¢žè€ƒæ ¸æ¨¡æ¿
@@ -41,10 +42,10 @@
    /**
     * ä¿®æ”¹è€ƒæ ¸æ¨¡æ¿
     * 
     * @param checkTemplate è€ƒæ ¸æ¨¡æ¿
     * @param checkTemplateDTO è€ƒæ ¸æ¨¡æ¿
     * @return ç»“æžœ
     */
    public int updateCheckTemplate(CheckTemplate checkTemplate);
    public int updateCheckTemplate(CheckTemplateQuery checkTemplateDTO);
    /**
     * æ‰¹é‡åˆ é™¤è€ƒæ ¸æ¨¡æ¿
@@ -52,7 +53,7 @@
     * @param ids éœ€è¦åˆ é™¤çš„考核模板主键集合
     * @return ç»“æžœ
     */
    public int deleteCheckTemplateByIds(Long[] ids);
    public int deleteCheckTemplateByIds(Integer[] ids);
    /**
     * åˆ é™¤è€ƒæ ¸æ¨¡æ¿ä¿¡æ¯
@@ -60,8 +61,9 @@
     * @param id è€ƒæ ¸æ¨¡æ¿ä¸»é”®
     * @return ç»“æžœ
     */
    public int deleteCheckTemplateById(Long id);
    public int deleteCheckTemplateById(Integer id);
    Result pullList();
    int copyCheckTemplate(CheckTemplateQuery checkTemplateDTO);
}
ycl-server/src/main/java/com/ycl/platform/service/impl/CheckPublishServiceImpl.java
File was deleted
ycl-server/src/main/java/com/ycl/platform/service/impl/CheckRuleServiceImpl.java
@@ -1,21 +1,26 @@
package com.ycl.platform.service.impl;
import com.ycl.platform.domain.entity.CheckRule;
import com.ycl.platform.domain.query.CheckRuleQuery;
import com.ycl.platform.domain.vo.CheckRuleVO;
import com.ycl.platform.mapper.CheckRuleMapper;
import com.ycl.platform.service.ICheckRuleService;
import constant.CheckConstants;
import org.hibernate.annotations.Check;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import utils.DateUtils;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
 * è€ƒæ ¸è§„则Service业务层处理
 * 
 * @author ruoyi
 * @date 2024-04-01
 * @date 2024-04-15
 */
@Service
public class CheckRuleServiceImpl implements ICheckRuleService 
@@ -25,12 +30,11 @@
    /**
     * æŸ¥è¯¢è€ƒæ ¸è§„则
     *
     * @param id è€ƒæ ¸è§„则主键
     * @return è€ƒæ ¸è§„则
     */
    @Override
    public CheckRuleVO selectCheckRuleById(Long id)
    public CheckRule selectCheckRuleById(Long id)
    {
        return checkRuleMapper.selectCheckRuleById(id);
    }
@@ -38,13 +42,19 @@
    /**
     * æŸ¥è¯¢è€ƒæ ¸è§„则列表
     * 
     * @param checkRuleQuery è€ƒæ ¸è§„则
     * @param checkRule è€ƒæ ¸è§„则
     * @return è€ƒæ ¸è§„则
     */
    @Override
    public List<CheckRuleVO> selectCheckRuleList(CheckRuleQuery checkRuleQuery)
    public CheckRuleVO selectCheckRuleList(CheckRule checkRule)
    {
        return checkRuleMapper.selectCheckRuleList(checkRuleQuery);
        List<CheckRule> checkRules = checkRuleMapper.selectCheckRuleList(checkRule);
        Map<Short, List<CheckRule>> map = checkRules.stream().collect(Collectors.groupingBy(CheckRule::getRuleCategory));
        CheckRuleVO checkRuleVO = new CheckRuleVO()
                .setCarRules(map.get(CheckConstants.Rule_Category_Car))
                .setFaceRules(map.get(CheckConstants.Rule_Category_Face))
                .setVideoRules(map.get(CheckConstants.Rule_Category_Video));
        return checkRuleVO;
    }
    /**
@@ -56,20 +66,18 @@
    @Override
    public int insertCheckRule(CheckRule checkRule)
    {
        checkRule.setCreateTime(DateUtils.getNowDate());
        return checkRuleMapper.insertCheckRule(checkRule);
    }
    /**
     * ä¿®æ”¹è€ƒæ ¸è§„则
     *
     * @param checkRule è€ƒæ ¸è§„则
     * @return ç»“æžœ
     */
    @Override
    public int updateCheckRule(CheckRule checkRule)
    {
        checkRule.setUpdateTime(DateUtils.getNowDate());
        return checkRuleMapper.updateCheckRule(checkRule);
    }
ycl-server/src/main/java/com/ycl/platform/service/impl/CheckTemplateRuleServiceImpl.java
@@ -1,5 +1,6 @@
package com.ycl.platform.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ycl.platform.domain.entity.CheckTemplateRule;
import com.ycl.platform.mapper.CheckTemplateRuleMapper;
import com.ycl.platform.service.ICheckTemplateRuleService;
@@ -15,7 +16,7 @@
 * @date 2024-04-01
 */
@Service
public class CheckTemplateRuleServiceImpl implements ICheckTemplateRuleService
public class CheckTemplateRuleServiceImpl extends ServiceImpl<CheckTemplateRuleMapper,CheckTemplateRule> implements ICheckTemplateRuleService
{
    @Autowired
    private CheckTemplateRuleMapper checkTemplateRuleMapper;
ycl-server/src/main/java/com/ycl/platform/service/impl/CheckTemplateServiceImpl.java
@@ -1,25 +1,32 @@
package com.ycl.platform.service.impl;
import com.alibaba.fastjson2.JSONArray;
import com.baomidou.mybatisplus.extension.service.IService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ycl.platform.base.BaseSelect;
import com.ycl.platform.domain.entity.CheckTemplate;
import com.ycl.platform.domain.entity.CheckTemplateRule;
import com.ycl.platform.domain.query.CheckTemplateQuery;
import com.ycl.platform.mapper.CheckTemplateMapper;
import com.ycl.platform.mapper.CheckTemplateRuleMapper;
import com.ycl.platform.service.ICheckTemplateRuleService;
import com.ycl.platform.service.ICheckTemplateService;
import com.ycl.system.Result;
import com.ycl.system.entity.SysDept;
import com.ycl.system.service.ISysDeptService;
import io.jsonwebtoken.lang.Collections;
import com.ycl.utils.SecurityUtils;
import constant.CheckConstants;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import utils.DateUtils;
import utils.StringUtils;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Objects;
import java.math.BigDecimal;
import java.util.*;
import java.util.stream.Collectors;
/**
@@ -29,12 +36,13 @@
 * @date 2024-04-01
 */
@Service
public class CheckTemplateServiceImpl implements ICheckTemplateService {
public class CheckTemplateServiceImpl extends ServiceImpl<CheckTemplateMapper,CheckTemplate> implements ICheckTemplateService {
    @Autowired
    private CheckTemplateMapper checkTemplateMapper;
    @Autowired
    private ISysDeptService deptService;
    private ICheckTemplateRuleService templateRuleServicee;
    @Autowired
    private CheckTemplateRuleMapper checkTemplateRuleMapper;
    /**
     * æŸ¥è¯¢è€ƒæ ¸æ¨¡æ¿
     *
@@ -42,16 +50,26 @@
     * @return è€ƒæ ¸æ¨¡æ¿
     */
    @Override
    public CheckTemplateQuery selectCheckTemplateById(Long id) {
    public CheckTemplateQuery selectCheckTemplateById(Integer id) {
        CheckTemplate checkTemplate = checkTemplateMapper.selectCheckTemplateById(id);
        CheckTemplateQuery checkTemplateQuery = new CheckTemplateQuery();
        BeanUtils.copyProperties(checkTemplate,checkTemplateQuery);
        String deptId = checkTemplate.getDeptId();
        String deptIdStr = deptId.substring(1, deptId.length() - 1);
        List<Integer> deptIds = Arrays.stream(deptIdStr.split(","))
                .mapToInt(Integer::parseInt)
                .boxed().collect(Collectors.toList());
        checkTemplateQuery.setDeptId(deptIds);
        BeanUtils.copyProperties(checkTemplate, checkTemplateQuery);
        List<Integer> deptIds = JSONArray.parseArray(checkTemplate.getDeptId(), Integer.class);
        checkTemplateQuery.setDeptId(deptIds)
                .setAlarmScore(checkTemplate.getAlarmScore()+"");
        //查询规则权重
        List<CheckTemplateRule> templateRuleList = checkTemplateRuleMapper.selectListByTemplateId(checkTemplate.getId());
        List<Map<String,Object>> list = new ArrayList<>();
        for (CheckTemplateRule checkTemplateRule : templateRuleList) {
            Map<String,Object> map = new HashMap<>();
            map.put("ruleId",checkTemplateRule.getCheckRuleId());
            map.put("weight",checkTemplateRule.getWeight());
            list.add(map);
        }
        checkTemplateQuery.setRuleFormList(list);
        //TODO:查询template_rule表中的权重信息。
        return checkTemplateQuery;
    }
@@ -62,27 +80,19 @@
     * @return è€ƒæ ¸æ¨¡æ¿
     */
    @Override
    public List<CheckTemplate> selectCheckTemplateList(CheckTemplateQuery checkTemplateDTO) {
    public List<CheckTemplateQuery> selectCheckTemplateList(CheckTemplateQuery checkTemplateDTO) {
        List<CheckTemplate> checkTemplates = checkTemplateMapper.selectCheckTemplateList(checkTemplateDTO);
        //部门区域下拉列表
        Result all = deptService.pullList();
        List<BaseSelect> data = (List<BaseSelect>) all.get("data");
        //翻译部门id
        List<CheckTemplateQuery> checkTemplateList = new ArrayList<>();
        //转换部门id为集合,转换alarmScore为string
        for (CheckTemplate template : checkTemplates) {
            if(template.getDeptId() == null)continue;
            String[] deptIds = template.getDeptId().replace("[", "").replace("]", "").split(",");
            List<String> deptName = new ArrayList<>();
            for (String deptId : deptIds) {
                List<String> deptStr = data.stream()
                        .filter(baseSelect -> baseSelect.getId().equals(Integer.parseInt(deptId)))
                        .map(BaseSelect::getValue)
                        .collect(Collectors.toList());
                deptName.addAll(deptStr);
            }
            template.setDeptId(StringUtils.join(deptName,","));
            List<Integer> deptIds = JSONArray.parseArray(template.getDeptId(), Integer.class);
            CheckTemplateQuery checkTemplateQuery = new CheckTemplateQuery();
            BeanUtils.copyProperties(template, checkTemplateQuery);
            checkTemplateQuery.setDeptId(deptIds);
            checkTemplateList.add(checkTemplateQuery);
        }
        return checkTemplates;
        return checkTemplateList;
    }
    /**
@@ -92,12 +102,55 @@
     * @return ç»“æžœ
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public int insertCheckTemplate(CheckTemplateQuery checkTemplateDTO) {
        checkTemplateDTO.setCreateTime(DateUtils.getNowDate());
        //TODO:新增定时任务,状态同模板,然后赋值jobId给template
        String username = SecurityUtils.getUsername();
        /** æ’å…¥t_template */
        CheckTemplate checkTemplate = new CheckTemplate();
        BeanUtils.copyProperties(checkTemplateDTO,checkTemplate);
        checkTemplate.setDeptId(checkTemplateDTO.getDeptId().toString().replaceAll(" ",""));
        return checkTemplateMapper.insertCheckTemplate(checkTemplate);
        BeanUtils.copyProperties(checkTemplateDTO, checkTemplate);
        //从小到大排序
        List<Integer> deptId = checkTemplateDTO.getDeptId();
        Collections.sort(deptId);
        Date nowDate = DateUtils.getNowDate();
        checkTemplate.setDeptId(JSONArray.toJSONString(deptId))
                .setUpdateUserName(username)
                .setCreateUserName(username)
                //不填报警分数---->零分---->不报警
                .setAlarmScore(new BigDecimal(checkTemplateDTO.getAlarmScore() == null? "":checkTemplateDTO.getAlarmScore()));
        int i = checkTemplateMapper.insertCheckTemplate(checkTemplate);
        /** t_template_rule新增权重 */
        insertTemlpateRule(checkTemplateDTO, checkTemplate);
        return i;
    }
    /**
     * å¤åˆ¶è€ƒæ ¸æ¨¡æ¿
     *
     * @param checkTemplate è€ƒæ ¸æ¨¡æ¿
     * @return ç»“æžœ
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public int copyCheckTemplate(CheckTemplateQuery checkTemplateDTO) {
        //TODO:新增定时任务,状态同模板,然后赋值jobId给template
        //插入模板表
        CheckTemplate checkTemplate = checkTemplateMapper.selectCheckTemplateById(checkTemplateDTO.getId());
        String username = SecurityUtils.getUsername();
        checkTemplate.setUpdateUserName(username)
                .setCreateUserName(username)
                .setStatus(CheckConstants.Status_Stop)
                .setId(null);
        int i = checkTemplateMapper.insertCheckTemplate(checkTemplate);
        //插入template_rule表
        List<CheckTemplateRule> templateRuleList = checkTemplateRuleMapper.selectListByTemplateId(checkTemplateDTO.getId());
        templateRuleList.forEach(checkTemplateRule -> checkTemplateRule.setCheckTemplateId(checkTemplate.getId()).setId(null));
        templateRuleServicee.saveBatch(templateRuleList);
        return i;
    }
    /**
@@ -107,9 +160,24 @@
     * @return ç»“æžœ
     */
    @Override
    public int updateCheckTemplate(CheckTemplate checkTemplate) {
        checkTemplate.setUpdateTime(DateUtils.getNowDate());
        return checkTemplateMapper.updateCheckTemplate(checkTemplate);
    @Transactional(rollbackFor = Exception.class)
    public int updateCheckTemplate(CheckTemplateQuery checkTemplateDTO) {
        CheckTemplate checkTemplate = new CheckTemplate();
        BeanUtils.copyProperties(checkTemplateDTO, checkTemplate);
        checkTemplate.setUpdateUserName(SecurityUtils.getUsername());
        List<Integer> deptId = checkTemplateDTO.getDeptId();
        Collections.sort(deptId);
        checkTemplate.setDeptId(JSONArray.toJSONString(deptId));
        int i = checkTemplateMapper.updateCheckTemplate(checkTemplate);
        /** t_template_rule修改权重 */
        //先删除原数据
        checkTemplateRuleMapper.deleteByTemplateId(checkTemplate.getId());
        //插入新规则数据
        insertTemlpateRule(checkTemplateDTO, checkTemplate);
        //TODO:判断状态是否修改,调整job表里的状态
        return i;
    }
    /**
@@ -119,7 +187,7 @@
     * @return ç»“æžœ
     */
    @Override
    public int deleteCheckTemplateByIds(Long[] ids) {
    public int deleteCheckTemplateByIds(Integer[] ids) {
        return checkTemplateMapper.deleteCheckTemplateByIds(ids);
    }
@@ -130,8 +198,12 @@
     * @return ç»“æžœ
     */
    @Override
    public int deleteCheckTemplateById(Long id) {
        return checkTemplateMapper.deleteCheckTemplateById(id);
    public int deleteCheckTemplateById(Integer id) {
        //TODO:删除定时任务
        return checkTemplateMapper.updateCheckTemplate(new CheckTemplate().setId(id)
                .setDeleted(CheckConstants.Delete));
    }
    @Override
@@ -140,4 +212,21 @@
        return Result.ok().data(checkTemplates);
    }
    private void insertTemlpateRule(CheckTemplateQuery checkTemplateDTO, CheckTemplate checkTemplate) {
        List<Map<String, Object>> ruleFormList = checkTemplateDTO.getRuleFormList();
        if (!CollectionUtils.isEmpty(ruleFormList)) {
            List<CheckTemplateRule> templateRuleList = new ArrayList<>();
            for (Map<String, Object> map : ruleFormList) {
                templateRuleList.add(new CheckTemplateRule()
                        .setCheckRuleId((Integer) map.get("ruleId"))
                        .setCheckTemplateId(checkTemplate.getId())
                        .setWeight(new BigDecimal(map.get("weight").toString())));
            }
            //批量插入数据库
            templateRuleServicee.saveBatch(templateRuleList);
        }
    }
}
ycl-server/src/main/resources/mapper/zgyw/CheckPublishMapper.xml
File was deleted
ycl-server/src/main/resources/mapper/zgyw/CheckResultMapper.xml
File was deleted
ycl-server/src/main/resources/mapper/zgyw/CheckRuleMapper.xml
@@ -9,61 +9,59 @@
        <result property="ruleName"    column="rule_name"    />
        <result property="ruleIndex"    column="rule_index"    />
        <result property="ruleCategory"    column="rule_category"    />
        <result property="examineCategory"    column="examine_category"    />
        <result property="ruleCondition"    column="rule_condition"    />
        <result property="ruleDescription"    column="rule_description"    />
        <result property="state"    column="state"    />
        <result property="createTime"    column="create_time"    />
        <result property="updateTime"    column="update_time"    />
        <result property="state"    column="state"    />
        <result property="deleted"    column="deleted"    />
    </resultMap>
    <sql id="selectCheckRuleVo">
        select id, rule_name, rule_index, rule_category, examine_category, rule_description, state, create_time, update_time, deleted from t_check_rule
        select id, rule_name, rule_index, rule_category, rule_condition, rule_description, rule_object,
               update_time,  state, deleted
        from t_check_rule
    </sql>
    <select id="selectCheckRuleList" resultType="com.ycl.platform.domain.vo.CheckRuleVO">
        select tcr.id, tcr.rule_name, tcr.rule_index, tcr.rule_category, tcr.examine_category, tcr.rule_description,
               tctr.weight, tctr.audit_state,tctr.check_template_id as templateId,tct.template_name
        from t_check_template_rule tctr inner join t_check_rule tcr on tcr.id = tctr.check_rule_id
        inner join t_check_template tct on tctr.check_template_id = tct.id
        <where>
            state = 0
            <if test="ruleName != null  and ruleName != ''"> and tcr.rule_name like concat(#{ruleName}, '%')</if>
            <if test="ruleCategory != null "> and tcr.rule_category = #{ruleCategory}</if>
            <if test="examineCategory != null "> and tcr.examine_category = #{examineCategory}</if>
            <if test="auditState != null "> and tctr.audit_state = #{auditState}</if>
            <if test="templateId != null "> and tctr.check_template_id = #{templateId}</if>
    <select id="selectCheckRuleList" resultMap="CheckRuleResult">
        select cr.id, cr.rule_name, cr.rule_index, cr.rule_category, cr.rule_condition, cr.rule_description,
        cr.update_time, cr.state, cr.deleted
        from t_check_rule cr
        <where>
            <if test="ruleName != null  and ruleName != ''"> and rule_name like concat('%', #{ruleName}, '%')</if>
            <if test="ruleIndex != null  and ruleIndex != ''"> and rule_index = #{ruleIndex}</if>
            <if test="ruleCategory != null "> and rule_category = #{ruleCategory}</if>
            <if test="ruleCondition != null  and ruleCondition != ''"> and rule_condition = #{ruleCondition}</if>
            <if test="ruleDescription != null  and ruleDescription != ''"> and rule_description = #{ruleDescription}</if>
            <if test="state != null "> and state = #{state}</if>
            <if test="deleted != null  and deleted != ''"> and deleted = #{deleted}</if>
        </where>
    </select>
    
    <select id="selectCheckRuleById" resultType="com.ycl.platform.domain.vo.CheckRuleVO">
        select tcr.id, tcr.rule_name, tcr.rule_index, tcr.rule_category, tcr.examine_category, tcr.rule_description, tctr.weight, tctr.audit_state,tctr.check_template_id as templateId
        from t_check_rule tcr inner join t_check_template_rule tctr on tcr.id = tctr.check_rule_id
        where tcr.id = #{id} and tcr.state = 0
    <select id="selectCheckRuleById"  resultMap="CheckRuleResult">
        <include refid="selectCheckRuleVo"/>
        where id = #{id}
    </select>
        
    <insert id="insertCheckRule" useGeneratedKeys="true" keyProperty="id">
        insert into t_check_rule
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="ruleName != null and ruleName != ''">rule_name,</if>
            <if test="ruleDetail != null">rule_detail,</if>
            <if test="ruleIndex != null">rule_index,</if>
            <if test="ruleCategory != null">rule_category,</if>
            <if test="examineCategory != null">examine_category,</if>
            <if test="ruleCondition != null">rule_condition,</if>
            <if test="ruleDescription != null">rule_description,</if>
            <if test="state != null">state,</if>
            <if test="createTime != null">create_time,</if>
            <if test="updateTime != null">update_time,</if>
            <if test="state != null">state,</if>
            <if test="deleted != null">deleted,</if>
         </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            <if test="ruleName != null and ruleName != ''">#{ruleName},</if>
            <if test="ruleIndex != null">#{ruleIndex},</if>
            <if test="ruleCategory != null">#{ruleCategory},</if>
            <if test="examineCategory != null">#{examineCategory},</if>
            <if test="ruleCondition != null">#{ruleCondition},</if>
            <if test="ruleDescription != null">#{ruleDescription},</if>
            <if test="state != null">#{state},</if>
            <if test="createTime != null">#{createTime},</if>
            <if test="updateTime != null">#{updateTime},</if>
            <if test="state != null">#{state},</if>
            <if test="deleted != null">#{deleted},</if>
         </trim>
    </insert>
@@ -74,11 +72,10 @@
            <if test="ruleName != null and ruleName != ''">rule_name = #{ruleName},</if>
            <if test="ruleIndex != null">rule_index = #{ruleIndex},</if>
            <if test="ruleCategory != null">rule_category = #{ruleCategory},</if>
            <if test="examineCategory != null">examine_category = #{examineCategory},</if>
            <if test="ruleCondition != null">rule_condition = #{ruleCondition},</if>
            <if test="ruleDescription != null">rule_description = #{ruleDescription},</if>
            <if test="state != null">state = #{state},</if>
            <if test="createTime != null">create_time = #{createTime},</if>
            <if test="updateTime != null">update_time = #{updateTime},</if>
            <if test="state != null">state = #{state},</if>
            <if test="deleted != null">deleted = #{deleted},</if>
        </trim>
        where id = #{id}
ycl-server/src/main/resources/mapper/zgyw/CheckTemplateMapper.xml
@@ -10,8 +10,13 @@
        <result property="adjustCoefficient"    column="adjust_coefficient"    />
        <result property="adjustWay"    column="adjust_way"    />
        <result property="examineCategory"    column="examine_category"    />
        <result property="examineTag"    column="examine_tag"    />
        <result property="jobId"    column="job_id"    />
        <result property="status"    column="status"    />
        <result property="deptId"    column="dept_id"    />
        <result property="frequency"    column="frequency"    />
        <result property="alarmScore"    column="alarm_score"    />
        <result property="description"    column="description"    />
        <result property="createTime"    column="create_time"    />
        <result property="updateTime"    column="update_time"    />
        <result property="createUser"    column="create_user"    />
@@ -22,16 +27,20 @@
    </resultMap>
    <sql id="selectCheckTemplateVo">
        select id, template_name, adjust_coefficient, adjust_way, examine_category, status, dept_id, create_time, update_time, create_user, create_user_name, update_user, update_user_name, deleted from t_check_template
        select id, template_name, adjust_coefficient, adjust_way, examine_category,examine_tag, status, dept_id, create_time, update_time, create_user, create_user_name, update_user, update_user_name,
               description,frequency,alarm_score,job_id,deleted from t_check_template
    </sql>
    <select id="selectCheckTemplateList" resultMap="CheckTemplateResult">
        <include refid="selectCheckTemplateVo"/>
        <where>
        <where>
            deleted =0
            <if test="templateName != null  and templateName != ''"> and template_name like concat('%', #{templateName}, '%')</if>
            <if test="examineCategory != null "> and examine_category = #{examineCategory}</if>
            <if test="examineTag != null "> and examine_tag = #{examineTag}</if>
            <if test="status != null  and status != ''"> and status = #{status}</if>
        </where>
        order by examine_tag DESC, examine_category , create_time
    </select>
    
    <select id="selectCheckTemplateById" resultMap="CheckTemplateResult">
@@ -46,8 +55,13 @@
            <if test="adjustCoefficient != null">adjust_coefficient,</if>
            <if test="adjustWay != null and adjustWay != ''">adjust_way,</if>
            <if test="examineCategory != null">examine_category,</if>
            <if test="examineTag != null">examine_tag,</if>
            <if test="status != null">status,</if>
            <if test="deptId != null">dept_id,</if>
            <if test="frequency != null">frequency,</if>
            <if test="alarmScore != null">alarm_score,</if>
            <if test="description != null">description,</if>
            <if test="jobId != null">job_id,</if>
            <if test="createTime != null">create_time,</if>
            <if test="updateTime != null">update_time,</if>
            <if test="createUser != null">create_user,</if>
@@ -61,8 +75,13 @@
            <if test="adjustCoefficient != null">#{adjustCoefficient},</if>
            <if test="adjustWay != null and adjustWay != ''">#{adjustWay},</if>
            <if test="examineCategory != null">#{examineCategory},</if>
            <if test="examineTag != null">#{examineTag},</if>
            <if test="status != null">#{status},</if>
            <if test="deptId != null">#{deptId},</if>
            <if test="frequency != null">#{frequency},</if>
            <if test="alarmScore != null">#{alarmScore},</if>
            <if test="description != null">#{description},</if>
            <if test="jobId != null">#{jobId},</if>
            <if test="createTime != null">#{createTime},</if>
            <if test="updateTime != null">#{updateTime},</if>
            <if test="createUser != null">#{createUser},</if>
@@ -80,8 +99,13 @@
            <if test="adjustCoefficient != null">adjust_coefficient = #{adjustCoefficient},</if>
            <if test="adjustWay != null and adjustWay != ''">adjust_way = #{adjustWay},</if>
            <if test="examineCategory != null">examine_category = #{examineCategory},</if>
            <if test="examineTag != null">examine_tag = #{examineTag},</if>
            <if test="status != null">status = #{status},</if>
            <if test="deptId != null">dept_id = #{deptId},</if>
            <if test="jobId != null">job_id = #{jobId},</if>
            <if test="frequency != null">frequency = #{frequency},</if>
            <if test="alarmScore != null">alarm_score = #{alarmScore},</if>
            <if test="description != null">description = #{description},</if>
            <if test="createTime != null">create_time = #{createTime},</if>
            <if test="updateTime != null">update_time = #{updateTime},</if>
            <if test="createUser != null">create_user = #{createUser},</if>
@@ -98,9 +122,11 @@
    </delete>
    <delete id="deleteCheckTemplateByIds" parameterType="String">
        delete from t_check_template where id in
        delete from t_check_template where id in
        <foreach item="id" collection="array" open="(" separator="," close=")">
            #{id}
        </foreach>
    </delete>
</mapper>
ycl-server/src/main/resources/mapper/zgyw/CheckTemplateRuleMapper.xml
@@ -5,16 +5,14 @@
<mapper namespace="com.ycl.platform.mapper.CheckTemplateRuleMapper">
    
    <resultMap type="com.ycl.platform.domain.entity.CheckTemplateRule" id="CheckTemplateRuleResult">
        <result property="id"    column="id"    />
        <result property="id"    column="id" />
        <result property="checkTemplateId"    column="check_template_id"    />
        <result property="checkRuleId"    column="check_rule_id"    />
        <result property="weight"    column="weight"    />
        <result property="maxScore"    column="max_score"    />
        <result property="auditState"    column="audit_state"    />
    </resultMap>
    <sql id="selectCheckTemplateRuleVo">
        select id, check_template_id, check_rule_id, weight, max_score, audit_state from t_check_template_rule
        select id, check_template_id, check_rule_id, weight from t_check_template_rule
    </sql>
    <select id="selectCheckTemplateRuleList" resultMap="CheckTemplateRuleResult">
@@ -22,7 +20,6 @@
        <where>  
            <if test="checkTemplateId != null "> and check_template_id = #{checkTemplateId}</if>
            <if test="checkRuleId != null "> and check_rule_id = #{checkRuleId}</if>
            <if test="auditState != null "> and audit_state = #{auditState}</if>
        </where>
    </select>
    
@@ -37,15 +34,11 @@
            <if test="checkTemplateId != null">check_template_id,</if>
            <if test="checkRuleId != null">check_rule_id,</if>
            <if test="weight != null">weight,</if>
            <if test="maxScore != null">max_score,</if>
            <if test="auditState != null">audit_state,</if>
         </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            <if test="checkTemplateId != null">#{checkTemplateId},</if>
            <if test="checkRuleId != null">#{checkRuleId},</if>
            <if test="weight != null">#{weight},</if>
            <if test="maxScore != null">#{maxScore},</if>
            <if test="auditState != null">#{auditState},</if>
         </trim>
    </insert>
@@ -55,8 +48,6 @@
            <if test="checkTemplateId != null">check_template_id = #{checkTemplateId},</if>
            <if test="checkRuleId != null">check_rule_id = #{checkRuleId},</if>
            <if test="weight != null">weight = #{weight},</if>
            <if test="maxScore != null">max_score = #{maxScore},</if>
            <if test="auditState != null">audit_state = #{auditState},</if>
        </trim>
        where id = #{id}
    </update>
@@ -71,4 +62,11 @@
            #{id}
        </foreach>
    </delete>
    <delete id="deleteByTemplateId">
        delete from t_check_template_rule where check_template_id = #{templateId}
    </delete>
    <select id="selectListByTemplateId" resultType="com.ycl.platform.domain.entity.CheckTemplateRule">
        select * from t_check_template_rule where check_template_id = #{checkTemplateId}
    </select>
</mapper>