chore: drop leaudit_evaluation_points and leaudit_evaluation_point_groups tables
No code references these tables — they were from an earlier design superseded by DSL YAML rule evaluation via leaudit_rule_results.
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
-- ============================================================================
|
-- ============================================================================
|
||||||
-- LeAudit Platform — 补充评查点规则组、规则点、文档类型、入口模块表
|
-- LeAudit Platform — 补充文档类型、入口模块表
|
||||||
-- + 全部表中文注释补充
|
-- + 全部表中文注释补充
|
||||||
-- 数据库: leaudit_platform @ nas.7bm.co:54302
|
-- 数据库: leaudit_platform @ nas.7bm.co:54302
|
||||||
-- ============================================================================
|
-- ============================================================================
|
||||||
@@ -74,98 +74,6 @@ COMMENT ON COLUMN leaudit_document_types.update_time IS '更新时间';
|
|||||||
COMMENT ON COLUMN leaudit_document_types.delete_time IS '软删除时间,NULL表示未删除';
|
COMMENT ON COLUMN leaudit_document_types.delete_time IS '软删除时间,NULL表示未删除';
|
||||||
|
|
||||||
|
|
||||||
-- ============================================================================
|
|
||||||
-- 3. 新表:评查点规则组 (leaudit_evaluation_point_groups)
|
|
||||||
-- ============================================================================
|
|
||||||
CREATE TABLE IF NOT EXISTS leaudit_evaluation_point_groups (
|
|
||||||
id BIGINT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
|
|
||||||
pid BIGINT,
|
|
||||||
code VARCHAR(50) NOT NULL UNIQUE,
|
|
||||||
name VARCHAR(100) NOT NULL,
|
|
||||||
description TEXT,
|
|
||||||
rule_set_id BIGINT,
|
|
||||||
sort_order INTEGER NOT NULL DEFAULT 0,
|
|
||||||
is_enabled BOOLEAN NOT NULL DEFAULT true,
|
|
||||||
create_time TIMESTAMPTZ NOT NULL DEFAULT now(),
|
|
||||||
update_time TIMESTAMPTZ NOT NULL DEFAULT now(),
|
|
||||||
delete_time TIMESTAMPTZ
|
|
||||||
);
|
|
||||||
|
|
||||||
COMMENT ON TABLE leaudit_evaluation_point_groups IS '评查点规则组表 — 评查点的树形分组结构,支持PID层级嵌套';
|
|
||||||
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_point_groups.id IS '主键,自增';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_point_groups.pid IS '父级分组ID,NULL表示根节点,自引用外键';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_point_groups.code IS '分组编码,全局唯一,用于前后端识别';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_point_groups.name IS '分组名称';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_point_groups.description IS '分组描述';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_point_groups.rule_set_id IS '关联的规则集ID,外键引用 leaudit_rule_sets.id';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_point_groups.sort_order IS '同级排序序号';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_point_groups.is_enabled IS '是否启用';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_point_groups.create_time IS '创建时间';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_point_groups.update_time IS '更新时间';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_point_groups.delete_time IS '软删除时间,NULL表示未删除';
|
|
||||||
|
|
||||||
|
|
||||||
-- ============================================================================
|
|
||||||
-- 4. 新表:规则点/评查点 (leaudit_evaluation_points)
|
|
||||||
-- ============================================================================
|
|
||||||
CREATE TABLE IF NOT EXISTS leaudit_evaluation_points (
|
|
||||||
id BIGINT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
|
|
||||||
group_id BIGINT NOT NULL,
|
|
||||||
code VARCHAR(100) NOT NULL UNIQUE,
|
|
||||||
name VARCHAR(200) NOT NULL,
|
|
||||||
rule_set_id BIGINT,
|
|
||||||
rule_id VARCHAR(100),
|
|
||||||
risk VARCHAR(10) NOT NULL DEFAULT 'medium',
|
|
||||||
score NUMERIC(5,2) NOT NULL DEFAULT 0,
|
|
||||||
description TEXT,
|
|
||||||
is_enabled BOOLEAN NOT NULL DEFAULT true,
|
|
||||||
is_system BOOLEAN NOT NULL DEFAULT false,
|
|
||||||
evaluation_type VARCHAR(20) NOT NULL DEFAULT 'boolean',
|
|
||||||
pass_threshold INTEGER DEFAULT 60,
|
|
||||||
scoring_config JSONB,
|
|
||||||
pass_message TEXT,
|
|
||||||
fail_message TEXT,
|
|
||||||
suggestion_message TEXT,
|
|
||||||
suggestion_message_type VARCHAR(20) DEFAULT 'warning',
|
|
||||||
references_laws JSONB,
|
|
||||||
post_action VARCHAR(50),
|
|
||||||
action_config TEXT,
|
|
||||||
document_attribute_type VARCHAR(20) DEFAULT 'ALL',
|
|
||||||
sort_order INTEGER NOT NULL DEFAULT 0,
|
|
||||||
create_time TIMESTAMPTZ NOT NULL DEFAULT now(),
|
|
||||||
update_time TIMESTAMPTZ NOT NULL DEFAULT now(),
|
|
||||||
delete_time TIMESTAMPTZ
|
|
||||||
);
|
|
||||||
|
|
||||||
COMMENT ON TABLE leaudit_evaluation_points IS '规则点(评查点)表 — 评查点的完整元数据定义,与DSL YAML中的rule一一对应';
|
|
||||||
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_points.id IS '主键,自增';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_points.group_id IS '所属分组ID,外键引用 leaudit_evaluation_point_groups.id';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_points.code IS '规则点编码,全局唯一(对应DSL YAML中的 rule_id)';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_points.name IS '规则点名称';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_points.rule_set_id IS '所属规则集ID,外键引用 leaudit_rule_sets.id';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_points.rule_id IS 'DSL YAML文件中的原始 rule_id,用于跨系统关联';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_points.risk IS '风险等级: high(高) | medium(中) | low(低)';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_points.score IS '评查点分值权重';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_points.description IS '规则点详细描述';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_points.is_enabled IS '是否启用,禁用后该规则在所有评查中被跳过';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_points.is_system IS '是否为系统级规则点,系统级对用户隐藏,仅用于内部逻辑判断';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_points.evaluation_type IS '评查类型: boolean(传统PASS/FAIL判定) | scored(权重积分制)';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_points.pass_threshold IS '通过阈值(百分比),仅scored类型使用,默认60';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_points.scoring_config IS '分数配置JSON,仅scored类型使用。结构: {field_weights: {字段名: {weight: 分值, section: 分组}}, pass_threshold: 60}';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_points.pass_message IS '通过时的反馈文案';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_points.fail_message IS '不通过时的反馈文案';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_points.suggestion_message IS '修正建议文案';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_points.suggestion_message_type IS '建议类型: info(信息) | warning(警告) | error(错误)';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_points.references_laws IS '引用法典列表JSON,如 ["《民法典》第467条","《民法典》第470条"]';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_points.post_action IS '评查后动作: none(无) | manual(人工复核) | replace(自动替换)';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_points.action_config IS '动作配置文本,配合 post_action 使用';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_points.document_attribute_type IS '适用文档属性: ALL(通用) | SALE(买卖) | LEASE(租赁) | SERVICE(服务) | MANDATE(委托) | CONSTRUCTION(建设工程) | TRAINING(培训) | TECHNOLOGY(技术) | DONATION(赠与) | TRANSPORT(运输) | STORAGE(仓储) | COOPERATION(合作) | UNDERTAKING(承揽)';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_points.sort_order IS '排序序号';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_points.create_time IS '创建时间';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_points.update_time IS '更新时间';
|
|
||||||
COMMENT ON COLUMN leaudit_evaluation_points.delete_time IS '软删除时间,NULL表示未删除';
|
|
||||||
|
|
||||||
|
|
||||||
-- ============================================================================
|
-- ============================================================================
|
||||||
@@ -486,26 +394,6 @@ COMMENT ON COLUMN leaudit_rule_type_bindings.update_time IS '记录更新时间'
|
|||||||
-- 6. 外键约束 (新表)
|
-- 6. 外键约束 (新表)
|
||||||
-- ============================================================================
|
-- ============================================================================
|
||||||
|
|
||||||
-- leaudit_evaluation_point_groups 自引用 (pid → id)
|
|
||||||
ALTER TABLE leaudit_evaluation_point_groups
|
|
||||||
ADD CONSTRAINT fk_eval_point_groups_pid
|
|
||||||
FOREIGN KEY (pid) REFERENCES leaudit_evaluation_point_groups(id)
|
|
||||||
ON UPDATE CASCADE ON DELETE SET NULL;
|
|
||||||
|
|
||||||
-- leaudit_evaluation_point_groups → leaudit_rule_sets
|
|
||||||
ALTER TABLE leaudit_evaluation_point_groups
|
|
||||||
ADD CONSTRAINT fk_eval_point_groups_rule_set
|
|
||||||
FOREIGN KEY (rule_set_id) REFERENCES leaudit_rule_sets(id)
|
|
||||||
ON UPDATE CASCADE ON DELETE SET NULL;
|
|
||||||
|
|
||||||
-- leaudit_evaluation_points → leaudit_evaluation_point_groups
|
|
||||||
ALTER TABLE leaudit_evaluation_points
|
|
||||||
ADD CONSTRAINT fk_eval_points_group
|
|
||||||
FOREIGN KEY (group_id) REFERENCES leaudit_evaluation_point_groups(id)
|
|
||||||
ON UPDATE CASCADE ON DELETE CASCADE;
|
|
||||||
|
|
||||||
-- leaudit_evaluation_points → leaudit_rule_sets
|
|
||||||
ALTER TABLE leaudit_evaluation_points
|
|
||||||
ADD CONSTRAINT fk_eval_points_rule_set
|
ADD CONSTRAINT fk_eval_points_rule_set
|
||||||
FOREIGN KEY (rule_set_id) REFERENCES leaudit_rule_sets(id)
|
FOREIGN KEY (rule_set_id) REFERENCES leaudit_rule_sets(id)
|
||||||
ON UPDATE CASCADE ON DELETE SET NULL;
|
ON UPDATE CASCADE ON DELETE SET NULL;
|
||||||
@@ -540,18 +428,5 @@ CREATE INDEX IF NOT EXISTS idx_entry_modules_sort ON leaudit_entry_modules(sort_
|
|||||||
CREATE INDEX IF NOT EXISTS idx_doc_types_code ON leaudit_document_types(code);
|
CREATE INDEX IF NOT EXISTS idx_doc_types_code ON leaudit_document_types(code);
|
||||||
CREATE INDEX IF NOT EXISTS idx_doc_types_entry ON leaudit_document_types(entry_module_id);
|
CREATE INDEX IF NOT EXISTS idx_doc_types_entry ON leaudit_document_types(entry_module_id);
|
||||||
|
|
||||||
-- 评查点规则组
|
|
||||||
CREATE INDEX IF NOT EXISTS idx_eval_point_groups_pid ON leaudit_evaluation_point_groups(pid);
|
|
||||||
CREATE INDEX IF NOT EXISTS idx_eval_point_groups_code ON leaudit_evaluation_point_groups(code);
|
|
||||||
CREATE INDEX IF NOT EXISTS idx_eval_point_groups_rule_set ON leaudit_evaluation_point_groups(rule_set_id);
|
|
||||||
CREATE INDEX IF NOT EXISTS idx_eval_point_groups_sort ON leaudit_evaluation_point_groups(pid, sort_order);
|
|
||||||
|
|
||||||
-- 评查点
|
|
||||||
CREATE INDEX IF NOT EXISTS idx_eval_points_code ON leaudit_evaluation_points(code);
|
|
||||||
CREATE INDEX IF NOT EXISTS idx_eval_points_group ON leaudit_evaluation_points(group_id);
|
|
||||||
CREATE INDEX IF NOT EXISTS idx_eval_points_rule_set ON leaudit_evaluation_points(rule_set_id);
|
|
||||||
CREATE INDEX IF NOT EXISTS idx_eval_points_rule_id ON leaudit_evaluation_points(rule_id);
|
|
||||||
CREATE INDEX IF NOT EXISTS idx_eval_points_enabled ON leaudit_evaluation_points(group_id, is_enabled);
|
|
||||||
CREATE INDEX IF NOT EXISTS idx_eval_points_risk ON leaudit_evaluation_points(risk);
|
|
||||||
|
|
||||||
COMMIT;
|
COMMIT;
|
||||||
|
|||||||
Reference in New Issue
Block a user