Revert "feat(风控引擎): RiskRuleService/RiskRuleController 权限控制及需求对齐"

This reverts commit a259b745ce.
This commit is contained in:
张名锐
2026-07-02 16:14:04 +08:00
parent d01253a5da
commit d5a4eab2ec
41 changed files with 110 additions and 2873 deletions
@@ -1,9 +0,0 @@
namespace YLErp.DBModels
{
public enum RiskControlStrategy
{
Block = 1,
Approval = 2,
ShowTip = 3
}
}
@@ -1,9 +0,0 @@
namespace YLErp.DBModels
{
public enum RiskRuleStatus
{
Active = 1,
Disabled = 2,
Deleted = 3
}
}
@@ -1,10 +0,0 @@
namespace YLErp.DBModels
{
public enum RiskVariableCategory
{
BookingElement = 1,
MarketData = 2,
SystemCalc = 3,
BooleanCheck = 4
}
}
@@ -1,9 +0,0 @@
namespace YLErp.DBModels
{
public enum RiskVariableDataType
{
Numeric = 1,
Date = 2,
Boolean = 3
}
}
@@ -1,19 +0,0 @@
using System.ComponentModel.DataAnnotations.Schema;
namespace YLErp.DBModels
{
[Table("glms_risk_rule")]
public class glms_risk_rule : DBModelWithOperator
{
public string RuleCode { get; set; }
public string RuleName { get; set; }
public string RuleDescription { get; set; }
public string FormulaJson { get; set; }
public string FormulaText { get; set; }
public RiskRuleStatus Status { get; set; } = RiskRuleStatus.Active;
public int Version { get; set; } = 1;
public int? UpdateOptId { get; set; }
public string UpdateOptName { get; set; }
public DateTime? UpdateDate { get; set; }
}
}
@@ -1,23 +0,0 @@
using System.ComponentModel.DataAnnotations.Schema;
namespace YLErp.DBModels
{
[Table("glms_risk_rule_application")]
public class glms_risk_rule_application : DBModelWithOperator
{
public string ApplicationCode { get; set; }
public long RuleId { get; set; }
public RiskRuleStatus Status { get; set; } = RiskRuleStatus.Active;
public RiskControlStrategy ControlStrategy { get; set; }
public string TriggerPoints { get; set; }
public string ScopeAssetBookIds { get; set; }
public string ScopeClientIds { get; set; }
public string ScopeUnderlyingTypes { get; set; }
public string ScopeTradeTypes { get; set; }
public bool ScopeIsGlobal { get; set; }
public int Version { get; set; } = 1;
public int? UpdateOptId { get; set; }
public string UpdateOptName { get; set; }
public DateTime? UpdateDate { get; set; }
}
}
@@ -1,20 +0,0 @@
using System.ComponentModel.DataAnnotations.Schema;
namespace YLErp.DBModels
{
[Table("glms_risk_rule_audit_log")]
public class glms_risk_rule_audit_log : DBModelBase
{
public string OperationType { get; set; }
public string TargetType { get; set; }
public long TargetId { get; set; }
public string TargetName { get; set; }
public string TargetCode { get; set; }
public string OperationDetail { get; set; }
public string Result { get; set; }
public string SnapshotData { get; set; }
public long OptId { get; set; }
public string OptName { get; set; }
public DateTime OptDate { get; set; }
}
}
@@ -1,24 +0,0 @@
using System.ComponentModel.DataAnnotations.Schema;
namespace YLErp.DBModels
{
[Table("glms_risk_variable")]
public class glms_risk_variable : DBModelWithOperator
{
public string VariableCode { get; set; }
public string VariableName { get; set; }
public RiskVariableCategory Category { get; set; }
public RiskVariableDataType DataType { get; set; }
public string Unit { get; set; }
public string ValueDomain { get; set; }
public string Description { get; set; }
public string ImplementationScript { get; set; }
public string SourceExpression { get; set; }
public bool IsImplemented { get; set; }
public int Version { get; set; } = 1;
public int SortOrder { get; set; }
public int? UpdateOptId { get; set; }
public string UpdateOptName { get; set; }
public DateTime? UpdateDate { get; set; }
}
}
@@ -1,92 +0,0 @@
SET FOREIGN_KEY_CHECKS=0;
CREATE TABLE `glms_risk_rule` (
`id` int NOT NULL AUTO_INCREMENT COMMENT '主键Id',
`RuleCode` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '规则编码(RISK-YYYYMMDD-NNNN)',
`RuleName` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '规则名称',
`RuleDescription` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '规则描述',
`FormulaJson` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '公式JSON表达式',
`FormulaText` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '公式可读文本',
`Status` tinyint NOT NULL DEFAULT 1 COMMENT '状态: 1=Active, 2=Disabled, 3=Deleted',
`Version` int NOT NULL DEFAULT 1 COMMENT '版本号(乐观锁)',
`OptId` int NULL DEFAULT NULL COMMENT '创建人Id',
`OptName` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '创建人名称',
`OptDate` datetime NULL DEFAULT NULL COMMENT '创建时间',
`UpdateOptId` int NULL DEFAULT NULL COMMENT '最后修改人Id',
`UpdateOptName` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '最后修改人名称',
`UpdateDate` datetime NULL DEFAULT NULL COMMENT '最后修改时间',
PRIMARY KEY (`id`) USING BTREE,
UNIQUE INDEX `uk_rule_code`(`RuleCode` ASC) USING BTREE,
INDEX `idx_status`(`Status` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '风控规则定义表' ROW_FORMAT = Dynamic;
CREATE TABLE `glms_risk_rule_application` (
`id` int NOT NULL AUTO_INCREMENT COMMENT '主键Id',
`ApplicationCode` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '应用编码(APP-YYYYMMDD-NNNN)',
`RuleId` bigint NOT NULL COMMENT '关联规则Id',
`Status` tinyint NOT NULL DEFAULT 1 COMMENT '状态: 1=Active, 2=Disabled, 3=Deleted',
`ControlStrategy` tinyint NOT NULL COMMENT '控制策略: 1=Block, 2=Approval, 3=Warning',
`TriggerPoints` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '触发时点(逗号分隔)',
`ScopeAssetBookIds` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '适用账户Id列表',
`ScopeClientIds` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '适用对手方Id列表',
`ScopeUnderlyingTypes` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '适用标的类型',
`ScopeTradeTypes` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '适用合约类型',
`ScopeIsGlobal` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否全局适用: 0=否, 1=是',
`Version` int NOT NULL DEFAULT 1 COMMENT '版本号(乐观锁)',
`OptId` int NULL DEFAULT NULL COMMENT '创建人Id',
`OptName` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '创建人名称',
`OptDate` datetime NULL DEFAULT NULL COMMENT '创建时间',
`UpdateOptId` int NULL DEFAULT NULL COMMENT '最后修改人Id',
`UpdateOptName` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '最后修改人名称',
`UpdateDate` datetime NULL DEFAULT NULL COMMENT '最后修改时间',
PRIMARY KEY (`id`) USING BTREE,
UNIQUE INDEX `uk_application_code`(`ApplicationCode` ASC) USING BTREE,
INDEX `idx_rule_id`(`RuleId` ASC) USING BTREE,
INDEX `idx_status`(`Status` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '风控规则应用配置表' ROW_FORMAT = Dynamic;
CREATE TABLE `glms_risk_rule_audit_log` (
`id` int NOT NULL AUTO_INCREMENT COMMENT '主键Id',
`OperationType` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '操作类型(RULE_CREATE/RULE_UPDATE等)',
`TargetType` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '目标类型(RULE/APPLICATION/VARIABLE)',
`TargetId` bigint NOT NULL COMMENT '目标记录Id',
`TargetName` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '目标名称',
`TargetCode` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '目标编码',
`OperationDetail` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '操作详情',
`Result` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '操作结果',
`SnapshotData` longtext CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '快照数据(JSON)',
`OptId` bigint NOT NULL COMMENT '操作人Id',
`OptName` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '操作人名称',
`OptDate` datetime NOT NULL COMMENT '操作时间',
PRIMARY KEY (`id`) USING BTREE,
INDEX `idx_opt_date`(`OptDate` ASC) USING BTREE,
INDEX `idx_operation_type`(`OperationType` ASC) USING BTREE,
INDEX `idx_target_type`(`TargetType` ASC) USING BTREE,
INDEX `idx_target_id`(`TargetId` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '风控规则操作审计日志表' ROW_FORMAT = Dynamic;
CREATE TABLE `glms_risk_variable` (
`id` int NOT NULL AUTO_INCREMENT COMMENT '主键Id',
`VariableCode` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '变量编码',
`VariableName` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '变量名称',
`Category` tinyint NOT NULL COMMENT '分类: 1=BookingElement, 2=MarketData, 3=SystemCalc, 4=BooleanCheck',
`DataType` tinyint NOT NULL COMMENT '数据类型: 1=Numeric, 2=Date, 3=Boolean',
`Unit` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '单位',
`ValueDomain` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '值域描述',
`Description` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '描述',
`ImplementationScript` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '实现脚本(C#表达式)',
`SourceExpression` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '来源表达式',
`IsImplemented` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否已实现: 0=否, 1=是',
`Version` int NOT NULL DEFAULT 1 COMMENT '版本号(乐观锁)',
`SortOrder` int NOT NULL DEFAULT 0 COMMENT '排序',
`OptId` int NULL DEFAULT NULL COMMENT '创建人Id',
`OptName` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '创建人名称',
`OptDate` datetime NULL DEFAULT NULL COMMENT '创建时间',
`UpdateOptId` int NULL DEFAULT NULL COMMENT '最后修改人Id',
`UpdateOptName` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '最后修改人名称',
`UpdateDate` datetime NULL DEFAULT NULL COMMENT '最后修改时间',
PRIMARY KEY (`id`) USING BTREE,
UNIQUE INDEX `uk_variable_code`(`VariableCode` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '风控变量池定义表' ROW_FORMAT = Dynamic;
SET FOREIGN_KEY_CHECKS=1;