调整结算

This commit is contained in:
2026-09-05 23:26:00 +08:00
parent 14a3c23c9d
commit 397e9f3b62
11 changed files with 213 additions and 19 deletions
@@ -182,6 +182,8 @@ CREATE TABLE IF NOT EXISTS `blade_pre_settlement_change_record` (
`line_no` int(11) DEFAULT NULL COMMENT '行号',
`operation_type` varchar(30) COLLATE utf8mb4_general_ci NOT NULL COMMENT '操作类型',
`change_content` text COLLATE utf8mb4_general_ci NOT NULL COMMENT '变更内容',
`before_data` longtext COLLATE utf8mb4_general_ci COMMENT '变更前数据JSON',
`after_data` longtext COLLATE utf8mb4_general_ci COMMENT '变更后数据JSON',
`operator_name` varchar(100) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '操作人',
`change_reason` varchar(200) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '变更原因',
`change_time` datetime NOT NULL COMMENT '变更时间',
@@ -0,0 +1,33 @@
-- 预结算变更记录补充前后值明细,供调整弹窗“查看详情”展示。
-- 兼容 MySQL 5.7ADD COLUMN 不支持 IF NOT EXISTS),并支持重复执行。
SET @before_data_exists := (
SELECT COUNT(*)
FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA = DATABASE()
AND TABLE_NAME = 'blade_pre_settlement_change_record'
AND COLUMN_NAME = 'before_data'
);
SET @before_data_sql := IF(
@before_data_exists = 0,
'ALTER TABLE `blade_pre_settlement_change_record` ADD COLUMN `before_data` longtext COLLATE utf8mb4_general_ci COMMENT ''变更前数据JSON'' AFTER `change_content`',
'SELECT 1'
);
PREPARE before_data_stmt FROM @before_data_sql;
EXECUTE before_data_stmt;
DEALLOCATE PREPARE before_data_stmt;
SET @after_data_exists := (
SELECT COUNT(*)
FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA = DATABASE()
AND TABLE_NAME = 'blade_pre_settlement_change_record'
AND COLUMN_NAME = 'after_data'
);
SET @after_data_sql := IF(
@after_data_exists = 0,
'ALTER TABLE `blade_pre_settlement_change_record` ADD COLUMN `after_data` longtext COLLATE utf8mb4_general_ci COMMENT ''变更后数据JSON'' AFTER `before_data`',
'SELECT 1'
);
PREPARE after_data_stmt FROM @after_data_sql;
EXECUTE after_data_stmt;
DEALLOCATE PREPARE after_data_stmt;