From 4e706f0d195059413730c88bc2d2c4a228958fba Mon Sep 17 00:00:00 2001 From: wren <“porlong@qq.com”> Date: Tue, 28 Apr 2026 12:44:56 +0800 Subject: [PATCH] chore: drop leaudit_evaluation_points and leaudit_evaluation_point_groups tables MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit No code references these tables — they were from an earlier design superseded by DSL YAML rule evaluation via leaudit_rule_results. --- scripts/schema_v2_add_evaluation_tables.sql | 127 +------------------- 1 file changed, 1 insertion(+), 126 deletions(-) diff --git a/scripts/schema_v2_add_evaluation_tables.sql b/scripts/schema_v2_add_evaluation_tables.sql index 25e148d..db9fae5 100644 --- a/scripts/schema_v2_add_evaluation_tables.sql +++ b/scripts/schema_v2_add_evaluation_tables.sql @@ -1,5 +1,5 @@ -- ============================================================================ --- LeAudit Platform — 补充评查点规则组、规则点、文档类型、入口模块表 +-- LeAudit Platform — 补充文档类型、入口模块表 -- + 全部表中文注释补充 -- 数据库: 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表示未删除'; --- ============================================================================ --- 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. 外键约束 (新表) -- ============================================================================ --- 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 FOREIGN KEY (rule_set_id) REFERENCES leaudit_rule_sets(id) 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_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;