Refactor billing options retrieval to include data permissions and add effective date handling for product imports

This commit is contained in:
wuweihua
2026-10-09 09:27:28 +08:00
parent fea34d1d10
commit c95a9861cc
42 changed files with 984 additions and 219 deletions
@@ -0,0 +1,15 @@
-- prc_income_bill_fee: product / redline amounts (run once on existing DB)
SET @col_exists := (
SELECT COUNT(1) FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 'prc_income_bill_fee' AND COLUMN_NAME = 'product_amount'
);
SET @sql := IF(@col_exists = 0,
CONCAT(
'ALTER TABLE `prc_income_bill_fee` ',
'ADD COLUMN `product_amount` decimal(18,4) DEFAULT NULL COMMENT ''产品价'' AFTER `amount`, ',
'ADD COLUMN `redline_amount` decimal(18,4) DEFAULT NULL COMMENT ''红线价'' AFTER `product_amount`'
),
'SELECT 1');
PREPARE stmt FROM @sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
@@ -0,0 +1,11 @@
-- prc_order_bill: service_man_code (run once on existing DB)
SET @col_exists := (
SELECT COUNT(1) FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 'prc_order_bill' AND COLUMN_NAME = 'service_man_code'
);
SET @sql := IF(@col_exists = 0,
'ALTER TABLE `prc_order_bill` ADD COLUMN `service_man_code` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT ''客服员编码'' AFTER `service_man`',
'SELECT 1');
PREPARE stmt FROM @sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
@@ -0,0 +1,8 @@
-- product / product_country: effective_date & expire_date support hour precision
ALTER TABLE product
MODIFY COLUMN effective_date datetime DEFAULT NULL COMMENT '目录生效时间(到小时)',
MODIFY COLUMN expire_date datetime DEFAULT NULL COMMENT '产品失效时间(空=长期;下一版生效时间=本版失效时间)';
ALTER TABLE product_country
MODIFY COLUMN effective_date datetime DEFAULT NULL COMMENT '产品价表生效时间(到小时)',
MODIFY COLUMN expire_date datetime DEFAULT NULL COMMENT '失效时间(空=开放;下一版导入生效时间=本版失效时间)';