From a2fd96da9d4396a1dea2acb569cc9f9a32c93ebf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E6=B3=89=E4=BD=B3?= <1107186916@qq.com> Date: Thu, 24 Sep 2026 19:47:54 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=BC=80=E7=A5=A8=E7=94=B3=E8=AF=B7?= =?UTF-8?q?=E5=90=8C=E6=AD=A5=E9=87=91=E8=9D=B6=E6=8C=89=E5=8F=91=E7=A5=A8?= =?UTF-8?q?=E5=BC=A0=E6=AC=A1=E6=8B=86=E5=88=86=E5=BC=80=E7=A5=A8=EF=BC=8C?= =?UTF-8?q?=E6=8F=90=E4=BA=A4sql?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...ication_sheet_kingdee_bill_no_20260924.sql | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 doc/sql/transport/blade_invoice_application_sheet_kingdee_bill_no_20260924.sql diff --git a/doc/sql/transport/blade_invoice_application_sheet_kingdee_bill_no_20260924.sql b/doc/sql/transport/blade_invoice_application_sheet_kingdee_bill_no_20260924.sql new file mode 100644 index 00000000..ec7bf6f3 --- /dev/null +++ b/doc/sql/transport/blade_invoice_application_sheet_kingdee_bill_no_20260924.sql @@ -0,0 +1,50 @@ +-- ============================================================ +-- blade_invoice_application_sheet_kingdee_bill_no_20260924.sql +-- ============================================================ +-- 开票申请同步金蝶按发票张次拆分开票(A303-1 一张发票张次一张开票申请单) +-- blade_invoice_application_sheet.kingdee_bill_no 本张发票对应的金蝶开票申请单编号(A303-1 返回,A303-5 serialNo 查询入口) +-- blade_invoice_application.kingdee_bill_no 多张发票时逗号拼接全部金蝶单号,列加宽至 varchar(500) 防溢出 +-- blade_invoice_application_record.kingdee_bill_no 操作记录的同一字段同步加宽,避免多张单号拼接超长导致插入失败 +-- 以下结构升级支持重复执行 + +-- ① blade_invoice_application_sheet.kingdee_bill_no +SET @ddl_sql = ( + SELECT IF(COUNT(*) = 0, + 'ALTER TABLE `blade_invoice_application_sheet` ADD COLUMN `kingdee_bill_no` varchar(100) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT ''金蝶开票申请单编号(本张发票对应)'' AFTER `invoice_amount`', + 'SELECT 1') + FROM information_schema.COLUMNS + WHERE TABLE_SCHEMA = DATABASE() + AND TABLE_NAME = 'blade_invoice_application_sheet' + AND COLUMN_NAME = 'kingdee_bill_no' +); +PREPARE ddl_stmt FROM @ddl_sql; +EXECUTE ddl_stmt; +DEALLOCATE PREPARE ddl_stmt; + +-- ② blade_invoice_application.kingdee_bill_no 加宽 +SET @ddl_sql = ( + SELECT IF(CHARACTER_MAXIMUM_LENGTH < 500, + 'ALTER TABLE `blade_invoice_application` MODIFY COLUMN `kingdee_bill_no` varchar(500) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT ''金蝶开票申请单编号(多张发票逗号拼接)''', + 'SELECT 1') + FROM information_schema.COLUMNS + WHERE TABLE_SCHEMA = DATABASE() + AND TABLE_NAME = 'blade_invoice_application' + AND COLUMN_NAME = 'kingdee_bill_no' +); +PREPARE ddl_stmt FROM @ddl_sql; +EXECUTE ddl_stmt; +DEALLOCATE PREPARE ddl_stmt; + +-- ③ blade_invoice_application_record.kingdee_bill_no 加宽 +SET @ddl_sql = ( + SELECT IF(CHARACTER_MAXIMUM_LENGTH < 500, + 'ALTER TABLE `blade_invoice_application_record` MODIFY COLUMN `kingdee_bill_no` varchar(500) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT ''金蝶开票申请单编号(多张发票逗号拼接)''', + 'SELECT 1') + FROM information_schema.COLUMNS + WHERE TABLE_SCHEMA = DATABASE() + AND TABLE_NAME = 'blade_invoice_application_record' + AND COLUMN_NAME = 'kingdee_bill_no' +); +PREPARE ddl_stmt FROM @ddl_sql; +EXECUTE ddl_stmt; +DEALLOCATE PREPARE ddl_stmt; \ No newline at end of file