✨ 应收账单保存计费失败状态并导出说明及黄色标注

This commit is contained in:
caojia
2026-10-14 17:50:03 +08:00
parent 996d854492
commit e4438d6f01
8 changed files with 157 additions and 51 deletions
@@ -0,0 +1,21 @@
-- 应收账单明细保存生成时的计费失败状态,导出说明和黄色标注均读取此快照。
-- 历史账单首次补齐为来源订单的当前状态;已有快照不覆盖,找不到来源时保留 NULL。
SET @column_exists := (
SELECT COUNT(1) FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA = DATABASE()
AND TABLE_NAME = 'ar_bill_detail'
AND COLUMN_NAME = 'billing_fail_status'
);
SET @sql := IF(@column_exists = 0,
'ALTER TABLE `ar_bill_detail` ADD COLUMN `billing_fail_status` tinyint DEFAULT NULL COMMENT ''计费失败状态快照:0成功/1未匹配产品/2未匹配国家/3未匹配重量段'' AFTER `redline_amount`',
'SELECT 1'
);
PREPARE stmt FROM @sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
UPDATE `ar_bill_detail` d
INNER JOIN `prc_order_bill` p ON p.`bill_id` = d.`prc_order_bill_id`
SET d.`billing_fail_status` = p.`billing_fail_status`
WHERE d.`billing_fail_status` IS NULL AND p.`billing_fail_status` IS NOT NULL;
+1
View File
@@ -128,6 +128,7 @@ CREATE TABLE `ar_bill_detail` (
`total_amount` decimal(18,2) NOT NULL DEFAULT '0.00' COMMENT '订单费用合计',
`product_amount` decimal(18,4) DEFAULT NULL COMMENT '产品价合计快照',
`redline_amount` decimal(18,4) DEFAULT NULL COMMENT '红线价合计快照',
`billing_fail_status` tinyint DEFAULT NULL COMMENT '计费失败状态快照:0成功/1未匹配产品/2未匹配国家/3未匹配重量段',
`remark` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '订单账单备注',
`create_by` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '创建人',
`create_time` datetime NOT NULL COMMENT '创建时间',