-- =============================================
-- CRM 与 ERP 销售一体化改造 - SQL 执行记录
-- =============================================
--
-- 执行状态：
-- Phase 1: 客户数据统一 - 已完成（无新增表）
-- Phase 2: 产品数据统一 - 已完成（MDM 物料表已存在）
-- Phase 3: 合同订单关联 - SQL 已执行 ✓
-- Phase 4: 商机订单关联 - SQL 已执行 ✓
-- Phase 5: 营销报表 - 无需新增表
-- Phase 6: 数据迁移清理 - 用户手动执行完成 ✓
--
-- =============================================

-- =============================================
-- Phase 1 SQL
-- 客户数据统一：ERP 销售模块使用 CRM 客户
-- =============================================

-- 1. 创建 CRM 客户 API 模块相关表（无新增表，使用现有 crm_customer）

-- 2. 数据迁移：将 ERP 客户数据迁移到 CRM 客户（可选，根据实际情况执行）
-- 注意：此步骤需要根据实际数据情况进行调整

-- 2.1 查看 ERP 客户数据
-- SELECT * FROM erp_customer WHERE deleted = 0;

-- 2.2 迁移 ERP 客户到 CRM 客户（示例脚本，需根据实际情况调整）
-- INSERT INTO crm_customer (id, name, mobile, telephone, email, detail_address,
--     follow_up_status, lock_status, deal_status, owner_user_id, owner_time,
--     creator, create_time, updater, update_time, deleted, tenant_id)
-- SELECT
--     id,
--     name,
--     mobile,
--     telephone,
--     email,
--     NULL as detail_address,
--     0 as follow_up_status,
--     0 as lock_status,
--     0 as deal_status,
--     NULL as owner_user_id,
--     NOW() as owner_time,
--     creator,
--     create_time,
--     updater,
--     update_time,
--     deleted,
--     tenant_id
-- FROM erp_customer WHERE deleted = 0;

-- 3. 废弃 ERP 客户表（保留表结构，仅标记说明）
-- 注意：erp_customer 表保留，但不再作为主数据使用
-- 后续可删除或归档

-- =============================================
-- Phase 3 SQL（预告）
-- 合同生成销售订单相关
-- =============================================

-- 4. ERP 销售订单增加关联合同字段
ALTER TABLE `erp_sale_order`
ADD COLUMN `contract_id` bigint DEFAULT NULL COMMENT '关联 CRM 合同编号' AFTER `customer_id`,
ADD COLUMN `contract_no` varchar(32) DEFAULT NULL COMMENT 'CRM 合同单号' AFTER `contract_id`;

-- 5. CRM 合同增加关联订单字段
ALTER TABLE `crm_contract`
ADD COLUMN `order_id` bigint DEFAULT NULL COMMENT '关联 ERP 销售订单编号' AFTER `total_price`,
ADD COLUMN `order_no` varchar(32) DEFAULT NULL COMMENT 'ERP 销售订单单号' AFTER `order_id`;

-- =============================================
-- Phase 4 SQL（预告）
-- 商机关联销售订单
-- =============================================

-- 6. CRM 商机增加关联订单字段
ALTER TABLE `crm_business`
ADD COLUMN `order_id` bigint DEFAULT NULL COMMENT '关联 ERP 销售订单编号' AFTER `total_price`,
ADD COLUMN `order_no` varchar(32) DEFAULT NULL COMMENT 'ERP 销售订单单号' AFTER `order_id`;

-- =============================================
-- 注意事项
-- =============================================
-- 1. 执行 SQL 前请备份数据
-- 2. 数据迁移脚本需要根据实际数据情况调整
-- 3. 废弃的 ERP 客户表建议保留一段时间后再删除
-- 4. 合同和商机关联订单字段可先添加，后续功能实现时再使用