1. 新增 api 调用日志记录,历史版本回滚

2. 新增用户角色权限监督功能
This commit is contained in:
chenbowen
2025-10-31 09:28:59 +08:00
parent b618f833d1
commit ddee4da72a
43 changed files with 2454 additions and 65 deletions

View File

@@ -0,0 +1,52 @@
-- =============================================
-- 数据总线 API 版本历史表(备忘录模式)
-- 功能说明:
-- 1. 每次保存 API 配置时自动创建版本记录
-- 2. 版本号自动递增v1, v2, v3...
-- 3. 保留完整历史链,不可删除
-- 4. 支持一键回滚到任意历史版本
-- 5. 支持版本对比功能
-- =============================================
-- 如果表已存在则删除
DROP TABLE IF EXISTS databus_api_version;
-- 创建版本历史表DM8 语法)
CREATE TABLE databus_api_version (
id BIGINT NOT NULL,
api_id BIGINT NOT NULL,
version_number INTEGER NOT NULL,
snapshot_data CLOB NOT NULL,
description VARCHAR(500),
is_current NUMBER(1) DEFAULT 0 NOT NULL,
operator VARCHAR(64),
creator VARCHAR(64) DEFAULT '' NOT NULL,
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL,
updater VARCHAR(64) DEFAULT '' NOT NULL,
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL,
deleted NUMBER(1) DEFAULT 0 NOT NULL,
tenant_id BIGINT DEFAULT 0 NOT NULL,
CONSTRAINT pk_databus_api_version PRIMARY KEY (id)
);
-- 创建索引
CREATE INDEX idx_databus_api_version_api_id ON databus_api_version (api_id);
CREATE INDEX idx_databus_api_version_version_number ON databus_api_version (api_id, version_number);
CREATE INDEX idx_databus_api_version_is_current ON databus_api_version (api_id, is_current);
CREATE INDEX idx_databus_api_version_create_time ON databus_api_version (create_time);
CREATE INDEX idx_databus_api_version_operator ON databus_api_version (operator);
COMMENT ON TABLE databus_api_version IS '数据总线API版本历史表采用备忘录模式每次保存API时自动创建版本快照支持完整的版本历史追溯和回滚';
COMMENT ON COLUMN databus_api_version.id IS '主键ID';
COMMENT ON COLUMN databus_api_version.api_id IS 'API定义ID关联databus_api_definition表';
COMMENT ON COLUMN databus_api_version.version_number IS '版本号同一API下自动递增1,2,3...';
COMMENT ON COLUMN databus_api_version.snapshot_data IS 'API完整配置快照JSON格式包含definition、steps、transforms等所有信息';
COMMENT ON COLUMN databus_api_version.description IS '变更说明,记录本次修改的内容';
COMMENT ON COLUMN databus_api_version.is_current IS '是否为当前版本1=是0=否同一API只有一个当前版本';
COMMENT ON COLUMN databus_api_version.operator IS '操作人,记录谁创建了这个版本';
COMMENT ON COLUMN databus_api_version.creator IS '创建者';
COMMENT ON COLUMN databus_api_version.create_time IS '创建时间(版本创建时间)';
COMMENT ON COLUMN databus_api_version.updater IS '更新者';
COMMENT ON COLUMN databus_api_version.update_time IS '更新时间';
COMMENT ON COLUMN databus_api_version.deleted IS '是否删除(逻辑删除,实际不删除版本历史)';
COMMENT ON COLUMN databus_api_version.tenant_id IS '租户ID';