fix: 修正任务1 - 严格按照规格文档重新实施数据库设计与实体类
## 修正内容 ### 1. 数据库表结构修正 - 添加字段: project_id, param_desc - 删除字段: param_type, min_value, max_value, description, status - 修正唯一索引: uk_project_model_param (project_id, model_code, param_code) - 添加普通索引: idx_project_id, idx_model_code ### 2. 初始化数据修正 - 删除错误模型: ASSET_CHANGE, RISK_SCORE, RELATED_TRANSACTION - 添加正确模型: * 大额交易模型 (LARGE_TRANSACTION) - 6个参数 * 可疑兼职模型 (SUSPICIOUS_PART_TIME) - 3个参数 * 可疑外汇交易模型 (SUSPICIOUS_FOREIGN_EXCHANGE) - 6个参数 - 共15条参数配置,project_id=0(系统默认参数) ### 3. Entity类修正 (CcdiModelParam.java) - 添加: projectId, paramDesc - 删除: paramType, minValue, maxValue, description, status - 删除: Serializable接口,serialVersionUID - 简化注释风格 ### 4. DTO类修正 **ModelParamQueryDTO:** - 只保留: projectId, modelCode - 添加@NotBlank验证 **ModelParamSaveDTO:** - 改为批量保存结构 - 包含: projectId, modelCode, modelName, params(List) - 内部类ParamItem包含参数明细 - 只允许修改paramValue字段 ### 5. VO类修正 **ModelParamVO:** - 只保留核心展示字段: id, modelCode, modelName, paramCode, paramName, paramDesc, paramValue, paramUnit, sortOrder - 删除审计字段 **ModelListVO:** - 只保留: modelCode, modelName - 删除paramCount字段 ## 验证结果 ✅ 数据库表创建成功 ✅ 15条初始化数据插入成功 ✅ 项目编译通过 (mvn clean compile) ✅ 严格符合规格文档要求
This commit is contained in:
@@ -5,109 +5,58 @@ import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 模型参数配置实体类
|
||||
*
|
||||
* @author ruoyi
|
||||
* 模型参数配置 ccdi_model_param
|
||||
*/
|
||||
@Data
|
||||
@TableName("ccdi_model_param")
|
||||
public class CcdiModelParam implements Serializable {
|
||||
public class CcdiModelParam {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
/** 主键ID */
|
||||
@TableId(type = IdType.AUTO)
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 模型代码
|
||||
*/
|
||||
/** 项目ID(0表示默认参数) */
|
||||
private Long projectId;
|
||||
|
||||
/** 模型编码 */
|
||||
private String modelCode;
|
||||
|
||||
/**
|
||||
* 模型名称
|
||||
*/
|
||||
/** 模型名称 */
|
||||
private String modelName;
|
||||
|
||||
/**
|
||||
* 参数代码
|
||||
*/
|
||||
/** 参数编码 */
|
||||
private String paramCode;
|
||||
|
||||
/**
|
||||
* 参数名称
|
||||
*/
|
||||
/** 监测项名称 */
|
||||
private String paramName;
|
||||
|
||||
/**
|
||||
* 参数值
|
||||
*/
|
||||
/** 参数描述 */
|
||||
private String paramDesc;
|
||||
|
||||
/** 参数值 */
|
||||
private String paramValue;
|
||||
|
||||
/**
|
||||
* 参数单位
|
||||
*/
|
||||
/** 参数单位 */
|
||||
private String paramUnit;
|
||||
|
||||
/**
|
||||
* 参数类型(number-数值,string-字符串,boolean-布尔)
|
||||
*/
|
||||
private String paramType;
|
||||
|
||||
/**
|
||||
* 最小值(数值类型)
|
||||
*/
|
||||
private BigDecimal minValue;
|
||||
|
||||
/**
|
||||
* 最大值(数值类型)
|
||||
*/
|
||||
private BigDecimal maxValue;
|
||||
|
||||
/**
|
||||
* 参数描述
|
||||
*/
|
||||
private String description;
|
||||
|
||||
/**
|
||||
* 排序号
|
||||
*/
|
||||
/** 排序号 */
|
||||
private Integer sortOrder;
|
||||
|
||||
/**
|
||||
* 状态(0-正常,1-停用)
|
||||
*/
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 创建者
|
||||
*/
|
||||
/** 创建者 */
|
||||
private String createBy;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
/** 创建时间 */
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 更新者
|
||||
*/
|
||||
/** 更新者 */
|
||||
private String updateBy;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
/** 更新时间 */
|
||||
private Date updateTime;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
/** 备注 */
|
||||
private String remark;
|
||||
}
|
||||
|
||||
@@ -1,46 +1,18 @@
|
||||
package com.ruoyi.ccdi.project.domain.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
|
||||
/**
|
||||
* 模型参数查询DTO
|
||||
*
|
||||
* @author ruoyi
|
||||
*/
|
||||
@Data
|
||||
public class ModelParamQueryDTO implements Serializable {
|
||||
public class ModelParamQueryDTO {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
/** 项目ID */
|
||||
private Long projectId;
|
||||
|
||||
/**
|
||||
* 模型代码
|
||||
*/
|
||||
/** 模型编码 */
|
||||
@NotBlank(message = "模型编码不能为空")
|
||||
private String modelCode;
|
||||
|
||||
/**
|
||||
* 模型名称
|
||||
*/
|
||||
private String modelName;
|
||||
|
||||
/**
|
||||
* 参数代码
|
||||
*/
|
||||
private String paramCode;
|
||||
|
||||
/**
|
||||
* 参数名称
|
||||
*/
|
||||
private String paramName;
|
||||
|
||||
/**
|
||||
* 参数类型(number-数值,string-字符串,boolean-布尔)
|
||||
*/
|
||||
private String paramType;
|
||||
|
||||
/**
|
||||
* 状态(0-正常,1-停用)
|
||||
*/
|
||||
private String status;
|
||||
}
|
||||
|
||||
@@ -1,96 +1,52 @@
|
||||
package com.ruoyi.ccdi.project.domain.dto;
|
||||
|
||||
import lombok.Data;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 模型参数保存DTO
|
||||
*
|
||||
* @author ruoyi
|
||||
*/
|
||||
@Data
|
||||
public class ModelParamSaveDTO implements Serializable {
|
||||
public class ModelParamSaveDTO {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
/** 项目ID */
|
||||
private Long projectId;
|
||||
|
||||
/**
|
||||
* 主键ID(更新时必填)
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 模型代码
|
||||
*/
|
||||
@NotBlank(message = "模型代码不能为空")
|
||||
/** 模型编码 */
|
||||
@NotBlank(message = "模型编码不能为空")
|
||||
private String modelCode;
|
||||
|
||||
/**
|
||||
* 模型名称
|
||||
*/
|
||||
/** 模型名称 */
|
||||
@NotBlank(message = "模型名称不能为空")
|
||||
private String modelName;
|
||||
|
||||
/**
|
||||
* 参数代码
|
||||
*/
|
||||
@NotBlank(message = "参数代码不能为空")
|
||||
private String paramCode;
|
||||
/** 参数列表 */
|
||||
@NotNull(message = "参数列表不能为空")
|
||||
private List<ParamItem> params;
|
||||
|
||||
/**
|
||||
* 参数名称
|
||||
*/
|
||||
@NotBlank(message = "参数名称不能为空")
|
||||
private String paramName;
|
||||
@Data
|
||||
public static class ParamItem {
|
||||
|
||||
/**
|
||||
* 参数值
|
||||
*/
|
||||
@NotBlank(message = "参数值不能为空")
|
||||
private String paramValue;
|
||||
/** 参数编码 */
|
||||
@NotBlank(message = "参数编码不能为空")
|
||||
private String paramCode;
|
||||
|
||||
/**
|
||||
* 参数单位
|
||||
*/
|
||||
private String paramUnit;
|
||||
/** 监测项名称 */
|
||||
private String paramName;
|
||||
|
||||
/**
|
||||
* 参数类型(number-数值,string-字符串,boolean-布尔)
|
||||
*/
|
||||
@NotBlank(message = "参数类型不能为空")
|
||||
private String paramType;
|
||||
/** 参数描述 */
|
||||
private String paramDesc;
|
||||
|
||||
/**
|
||||
* 最小值(数值类型)
|
||||
*/
|
||||
private BigDecimal minValue;
|
||||
/** 参数值 - 唯一可修改字段 */
|
||||
@NotBlank(message = "参数值不能为空")
|
||||
private String paramValue;
|
||||
|
||||
/**
|
||||
* 最大值(数值类型)
|
||||
*/
|
||||
private BigDecimal maxValue;
|
||||
/** 参数单位 */
|
||||
private String paramUnit;
|
||||
|
||||
/**
|
||||
* 参数描述
|
||||
*/
|
||||
private String description;
|
||||
|
||||
/**
|
||||
* 排序号
|
||||
*/
|
||||
@NotNull(message = "排序号不能为空")
|
||||
private Integer sortOrder;
|
||||
|
||||
/**
|
||||
* 状态(0-正常,1-停用)
|
||||
*/
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
/** 排序号 */
|
||||
private Integer sortOrder;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,30 +2,15 @@ package com.ruoyi.ccdi.project.domain.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 模型列表VO
|
||||
*
|
||||
* @author ruoyi
|
||||
*/
|
||||
@Data
|
||||
public class ModelListVO implements Serializable {
|
||||
public class ModelListVO {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 模型代码
|
||||
*/
|
||||
/** 模型编码 */
|
||||
private String modelCode;
|
||||
|
||||
/**
|
||||
* 模型名称
|
||||
*/
|
||||
/** 模型名称 */
|
||||
private String modelName;
|
||||
|
||||
/**
|
||||
* 参数数量
|
||||
*/
|
||||
private Integer paramCount;
|
||||
}
|
||||
|
||||
@@ -2,107 +2,36 @@ package com.ruoyi.ccdi.project.domain.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 模型参数VO
|
||||
*
|
||||
* @author ruoyi
|
||||
*/
|
||||
@Data
|
||||
public class ModelParamVO implements Serializable {
|
||||
public class ModelParamVO {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
/** 主键ID */
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 模型代码
|
||||
*/
|
||||
/** 模型编码 */
|
||||
private String modelCode;
|
||||
|
||||
/**
|
||||
* 模型名称
|
||||
*/
|
||||
/** 模型名称 */
|
||||
private String modelName;
|
||||
|
||||
/**
|
||||
* 参数代码
|
||||
*/
|
||||
/** 参数编码 */
|
||||
private String paramCode;
|
||||
|
||||
/**
|
||||
* 参数名称
|
||||
*/
|
||||
/** 监测项名称 */
|
||||
private String paramName;
|
||||
|
||||
/**
|
||||
* 参数值
|
||||
*/
|
||||
/** 参数描述 */
|
||||
private String paramDesc;
|
||||
|
||||
/** 参数值 */
|
||||
private String paramValue;
|
||||
|
||||
/**
|
||||
* 参数单位
|
||||
*/
|
||||
/** 参数单位 */
|
||||
private String paramUnit;
|
||||
|
||||
/**
|
||||
* 参数类型(number-数值,string-字符串,boolean-布尔)
|
||||
*/
|
||||
private String paramType;
|
||||
|
||||
/**
|
||||
* 最小值(数值类型)
|
||||
*/
|
||||
private BigDecimal minValue;
|
||||
|
||||
/**
|
||||
* 最大值(数值类型)
|
||||
*/
|
||||
private BigDecimal maxValue;
|
||||
|
||||
/**
|
||||
* 参数描述
|
||||
*/
|
||||
private String description;
|
||||
|
||||
/**
|
||||
* 排序号
|
||||
*/
|
||||
/** 排序号 */
|
||||
private Integer sortOrder;
|
||||
|
||||
/**
|
||||
* 状态(0-正常,1-停用)
|
||||
*/
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 创建者
|
||||
*/
|
||||
private String createBy;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 更新者
|
||||
*/
|
||||
private String updateBy;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
private Date updateTime;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user