feat(config): 增强配置历史管理并统一数据库时间

- 新增 dao.Now() 函数获取数据库毫秒精度时间,避免多实例时钟偏差
- 增量同步查询增加上界(updated_at <= upperBound)防止竞态条件
- 配置创建、更新、删除、回滚统一使用数据库时间替代 time.Now()
- 配置历史新增 operate 字段记录操作类型(update/delete/rollback)
- 删除配置和回滚操作前增加历史快照记录
- 新增 DeleteHistory 接口支持手动删除单条历史记录
- 移除 GetHistory 的 Limit(5) 限制,返回完整历史列表
- 删除应用时同步更新关联配置的 updated_at 以便增量同步识别
- version 字段改为必填,前后端同步增加校验规则
- 前端历史列表增加操作类型列、删除按钮及表格最大高度限制
- 数据库表结构 datetime 升级为 datetime(3) 支持毫秒精度
This commit is contained in:
2026-09-06 21:04:25 +08:00
parent c0a7631d5c
commit 92c09df103
12 changed files with 224 additions and 63 deletions
+3 -2
View File
@@ -99,9 +99,9 @@ CREATE TABLE `app_config` (
`type` smallint DEFAULT NULL,
`contents` text,
`enabled` tinyint(1) DEFAULT '1',
`created_at` datetime DEFAULT NULL,
`created_at` datetime(3) DEFAULT NULL,
`created_by` varchar(32) DEFAULT NULL,
`updated_at` datetime DEFAULT NULL,
`updated_at` datetime(3) DEFAULT NULL,
`updated_by` varchar(32) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=18 DEFAULT CHARSET=utf8mb3;
@@ -150,6 +150,7 @@ CREATE TABLE `app_config_history` (
`version` varchar(32) DEFAULT NULL,
`name` varchar(32) DEFAULT NULL,
`type` smallint DEFAULT NULL,
`operate` varchar(16) DEFAULT NULL,
`contents` text,
`created_at` datetime DEFAULT NULL,
`created_by` varchar(32) DEFAULT NULL,