-- ==================== 客户信息表重建脚本 ====================
-- 说明：原表列名与 Java DO 不匹配，重建以对齐
-- 日期：2026-03-13
-- 注意：如果 asset_customer 已有数据，请先备份！

-- 1. 备份旧表（如果存在）
-- CREATE TABLE asset_customer_bak AS SELECT * FROM asset_customer;

-- 2. 删除旧表
DROP TABLE IF EXISTS asset_customer;

-- 3. 创建新表（与 CustomerDO 字段完全对齐）
CREATE TABLE `asset_customer` (
    `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
    `customer_code` varchar(50) DEFAULT NULL COMMENT '客户编号',
    `coop_status` varchar(20) DEFAULT NULL COMMENT '合作状态',
    `customer_name` varchar(100) NOT NULL COMMENT '客户名称',
    `province` varchar(50) DEFAULT NULL COMMENT '省份',
    `city` varchar(50) DEFAULT NULL COMMENT '城市',
    `address` varchar(255) DEFAULT NULL COMMENT '地址',
    `region` varchar(20) DEFAULT NULL COMMENT '区域',
    `contact` varchar(50) DEFAULT NULL COMMENT '联系人',
    `contact_mobile` varchar(20) DEFAULT NULL COMMENT '联系人手机',
    `contact_phone` varchar(20) DEFAULT NULL COMMENT '联系人座机',
    `email` varchar(100) DEFAULT NULL COMMENT '电子邮箱',
    `credit_code_or_id` varchar(50) DEFAULT NULL COMMENT '统一社会信用代码/身份证',
    `remark` varchar(500) DEFAULT NULL COMMENT '备注',
    `tax_id` varchar(50) DEFAULT NULL COMMENT '纳税人识别号',
    `invoice_address` varchar(255) DEFAULT NULL COMMENT '发票地址',
    `invoice_phone` varchar(20) DEFAULT NULL COMMENT '发票电话',
    `account` varchar(50) DEFAULT NULL COMMENT '银行账号',
    `opening_bank` varchar(100) DEFAULT NULL COMMENT '开户行',
    `mailing_address` varchar(255) DEFAULT NULL COMMENT '邮寄地址',
    `creator` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '创建者',
    `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
    `updater` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '更新者',
    `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
    `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除（0=未删除 1=已删除）',
    `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
    PRIMARY KEY (`id`) USING BTREE,
    KEY `idx_customer_code` (`customer_code`) USING BTREE COMMENT '客户编号查询',
    KEY `idx_customer_name` (`customer_name`) USING BTREE COMMENT '客户名称查询',
    KEY `idx_tenant_deleted` (`tenant_id`, `deleted`) USING BTREE COMMENT '租户隔离 + 逻辑删除'
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='客户信息表';
