✨ 收票管理金蝶全票池同步:镜像表新增票池字段(幂等脚本)与实体字段备注
This commit is contained in:
@@ -0,0 +1,61 @@
|
||||
-- 收票管理:金蝶全票池发票同步(A801-1 查询 + 批量同步 + 定时绑定关联)
|
||||
-- 票据池镜像表新增金蝶票池字段:
|
||||
-- serial_no 发票流水号(票池唯一标识,A801-1 serialNo,同步回填 kingdee_bill_no)
|
||||
-- buyer_tax_no 购方税号(A801-1 buyerTaxNo)
|
||||
-- saler_tax_no 销方税号(A801-1 salerTaxNo)
|
||||
-- check_status 查验状态(A801-1 checkStatus,0 未查验 / 1 通过 / 2 不通过)
|
||||
-- 由手动批量同步与定时绑定任务按 tenant_id + invoice_no upsert 回填;
|
||||
-- 发票号码唯一索引 uk_kingdee_invoice_pool_no(tenant_id, invoice_no)建表时已存在,无需新增
|
||||
|
||||
-- 以下结构升级支持重复执行
|
||||
SET @ddl_sql = (
|
||||
SELECT IF(COUNT(*) = 0,
|
||||
'ALTER TABLE `blade_kingdee_invoice_pool` ADD COLUMN `serial_no` varchar(64) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT ''金蝶发票流水号(票池唯一标识)'' AFTER `invoice_no`',
|
||||
'SELECT 1')
|
||||
FROM information_schema.COLUMNS
|
||||
WHERE TABLE_SCHEMA = DATABASE()
|
||||
AND TABLE_NAME = 'blade_kingdee_invoice_pool'
|
||||
AND COLUMN_NAME = 'serial_no'
|
||||
);
|
||||
PREPARE ddl_stmt FROM @ddl_sql;
|
||||
EXECUTE ddl_stmt;
|
||||
DEALLOCATE PREPARE ddl_stmt;
|
||||
|
||||
SET @ddl_sql = (
|
||||
SELECT IF(COUNT(*) = 0,
|
||||
'ALTER TABLE `blade_kingdee_invoice_pool` ADD COLUMN `buyer_tax_no` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT ''购方税号'' AFTER `receiver_name`',
|
||||
'SELECT 1')
|
||||
FROM information_schema.COLUMNS
|
||||
WHERE TABLE_SCHEMA = DATABASE()
|
||||
AND TABLE_NAME = 'blade_kingdee_invoice_pool'
|
||||
AND COLUMN_NAME = 'buyer_tax_no'
|
||||
);
|
||||
PREPARE ddl_stmt FROM @ddl_sql;
|
||||
EXECUTE ddl_stmt;
|
||||
DEALLOCATE PREPARE ddl_stmt;
|
||||
|
||||
SET @ddl_sql = (
|
||||
SELECT IF(COUNT(*) = 0,
|
||||
'ALTER TABLE `blade_kingdee_invoice_pool` ADD COLUMN `saler_tax_no` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT ''销方税号'' AFTER `issuer_name`',
|
||||
'SELECT 1')
|
||||
FROM information_schema.COLUMNS
|
||||
WHERE TABLE_SCHEMA = DATABASE()
|
||||
AND TABLE_NAME = 'blade_kingdee_invoice_pool'
|
||||
AND COLUMN_NAME = 'saler_tax_no'
|
||||
);
|
||||
PREPARE ddl_stmt FROM @ddl_sql;
|
||||
EXECUTE ddl_stmt;
|
||||
DEALLOCATE PREPARE ddl_stmt;
|
||||
|
||||
SET @ddl_sql = (
|
||||
SELECT IF(COUNT(*) = 0,
|
||||
'ALTER TABLE `blade_kingdee_invoice_pool` ADD COLUMN `check_status` varchar(8) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT ''查验状态(0未查验/1通过/2不通过)'' AFTER `kingdee_status`',
|
||||
'SELECT 1')
|
||||
FROM information_schema.COLUMNS
|
||||
WHERE TABLE_SCHEMA = DATABASE()
|
||||
AND TABLE_NAME = 'blade_kingdee_invoice_pool'
|
||||
AND COLUMN_NAME = 'check_status'
|
||||
);
|
||||
PREPARE ddl_stmt FROM @ddl_sql;
|
||||
EXECUTE ddl_stmt;
|
||||
DEALLOCATE PREPARE ddl_stmt;
|
||||
Reference in New Issue
Block a user