27 lines
875 B
SQL
27 lines
875 B
SQL
-- prc_billing_task add customer_code for customer filter / rebill
|
|
SET NAMES utf8mb4;
|
|
|
|
SET @col := (
|
|
SELECT COLUMN_NAME FROM information_schema.COLUMNS
|
|
WHERE TABLE_SCHEMA = DATABASE()
|
|
AND TABLE_NAME = 'prc_billing_task'
|
|
AND COLUMN_NAME = 'customer_code'
|
|
LIMIT 1
|
|
);
|
|
SET @sql := IF(
|
|
@col IS NULL,
|
|
CONCAT(
|
|
'ALTER TABLE prc_billing_task ADD COLUMN customer_code varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT ',
|
|
CHAR(39), '客户代码', CHAR(39),
|
|
' AFTER order_no, ADD KEY idx_billing_task_customer (customer_code)'
|
|
),
|
|
'SELECT 1'
|
|
);
|
|
PREPARE stmt FROM @sql; EXECUTE stmt; DEALLOCATE PREPARE stmt;
|
|
|
|
UPDATE prc_billing_task t
|
|
INNER JOIN prc_order_bill b ON b.bill_id = t.bill_id
|
|
SET t.customer_code = b.customer_code
|
|
WHERE (t.customer_code IS NULL OR t.customer_code = '')
|
|
AND b.customer_code IS NOT NULL AND b.customer_code <> '';
|