You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

45 lines
1.9 KiB

CREATE TABLE `business_customer` (
`id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
`customer_id` VARCHAR(32) NOT NULL,
`business_customer_id` VARCHAR(32) NOT NULL,
`name` VARCHAR(128) NOT NULL,
`external_code` VARCHAR(64) NULL,
`status` VARCHAR(16) NOT NULL DEFAULT 'active',
`remark` VARCHAR(255) NULL,
`is_deleted` BOOLEAN NOT NULL DEFAULT false,
`created_at` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
`updated_at` DATETIME(3) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE INDEX `uq_business_customer_tenant_code`(`customer_id`, `business_customer_id`),
INDEX `idx_business_customer_tenant_status`(`customer_id`, `status`, `is_deleted`),
CONSTRAINT `business_customer_customer_id_fkey`
FOREIGN KEY (`customer_id`) REFERENCES `host_customer`(`customer_id`)
ON DELETE RESTRICT ON UPDATE CASCADE
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE `markup_config`
ADD COLUMN `business_customer_id` VARCHAR(32) NULL AFTER `customer_id`;
ALTER TABLE `quote_record`
ADD COLUMN `business_customer_id` VARCHAR(32) NULL AFTER `customer_id`;
ALTER TABLE `idempotency_record`
ADD COLUMN `business_customer_id` VARCHAR(32) NULL AFTER `customer_id`;
ALTER TABLE `quote_query_log`
ADD COLUMN `business_customer_id` VARCHAR(32) NULL AFTER `customer_id`;
ALTER TABLE `markup_config`
DROP INDEX `markup_config_customer_id_key`,
ADD UNIQUE INDEX `uq_markup_tenant_business`(`customer_id`, `business_customer_id`),
ADD INDEX `idx_markup_tenant_deleted`(`customer_id`, `is_deleted`);
ALTER TABLE `quote_record`
ADD INDEX `idx_quote_tenant_business_created`(`customer_id`, `business_customer_id`, `created_at`);
ALTER TABLE `idempotency_record`
ADD INDEX `idx_idem_tenant_business`(`customer_id`, `business_customer_id`);
ALTER TABLE `quote_query_log`
ADD INDEX `idx_query_log_tenant_business`(`customer_id`, `business_customer_id`, `created_at`);