This commit is contained in:
27
migrations/000137_add_package_usage_traffic_snapshots.up.sql
Normal file
27
migrations/000137_add_package_usage_traffic_snapshots.up.sql
Normal file
@@ -0,0 +1,27 @@
|
||||
-- 为 tb_package_usage 增加流量语义快照字段,并按当前套餐模板回填历史数据。
|
||||
|
||||
ALTER TABLE tb_package_usage
|
||||
ADD COLUMN virtual_total_mb_snapshot BIGINT NOT NULL DEFAULT 0,
|
||||
ADD COLUMN display_gain_ratio_snapshot DECIMAL(18,6) NOT NULL DEFAULT 1.0,
|
||||
ADD COLUMN enable_virtual_data_snapshot BOOLEAN NOT NULL DEFAULT FALSE;
|
||||
|
||||
COMMENT ON COLUMN tb_package_usage.virtual_total_mb_snapshot IS '虚总量快照(业务停机阈值)';
|
||||
COMMENT ON COLUMN tb_package_usage.display_gain_ratio_snapshot IS '展示倍率快照(real_total_mb / virtual_total_mb)';
|
||||
COMMENT ON COLUMN tb_package_usage.enable_virtual_data_snapshot IS '是否启用虚流量快照';
|
||||
|
||||
UPDATE tb_package_usage pu
|
||||
SET
|
||||
virtual_total_mb_snapshot = CASE
|
||||
WHEN p.enable_virtual_data = TRUE AND p.virtual_data_mb > 0 THEN p.virtual_data_mb
|
||||
ELSE pu.data_limit_mb
|
||||
END,
|
||||
display_gain_ratio_snapshot = CASE
|
||||
WHEN p.enable_virtual_data = TRUE AND p.virtual_data_mb > 0 THEN ROUND((pu.data_limit_mb::NUMERIC / p.virtual_data_mb::NUMERIC), 6)
|
||||
ELSE 1.0
|
||||
END,
|
||||
enable_virtual_data_snapshot = CASE
|
||||
WHEN p.enable_virtual_data = TRUE AND p.virtual_data_mb > 0 THEN TRUE
|
||||
ELSE FALSE
|
||||
END
|
||||
FROM tb_package p
|
||||
WHERE p.id = pu.package_id;
|
||||
Reference in New Issue
Block a user