-- Phase 4 补丁: adm 表增加 outer_item_id 列，用于按商家统一编码聚合
-- 原因: 有赞连锁模式下，同一个商品在不同门店有不同的 item_id，
--       只有 outer_item_id (商家编码) 才是全门店统一的商品标识

-- 1. 复购表增加 outer_item_id
ALTER TABLE `adm_item_repurchase`
  ADD COLUMN `outer_item_id` VARCHAR(64) DEFAULT NULL COMMENT '商家统一商品编码' AFTER `sku_id`,
  ADD COLUMN `item_name` VARCHAR(128) DEFAULT NULL COMMENT '商品名称' AFTER `outer_item_id`,
  DROP INDEX `uk_repurchase_date`,
  ADD UNIQUE KEY `uk_repurchase_date` (`stat_date`, `outer_item_id`);

-- 2. 购物篮表增加 outer_item_id
ALTER TABLE `adm_item_basket`
  ADD COLUMN `outer_item_id_a` VARCHAR(64) DEFAULT NULL COMMENT '商品A商家编码' AFTER `item_id_a`,
  ADD COLUMN `outer_item_id_b` VARCHAR(64) DEFAULT NULL COMMENT '商品B商家编码' AFTER `item_id_b`,
  DROP INDEX `uk_item_pair`,
  ADD UNIQUE KEY `uk_item_pair` (`outer_item_id_a`, `outer_item_id_b`);

-- 3. 销售趋势表增加 outer_item_id
ALTER TABLE `adm_item_sales_trend`
  ADD COLUMN `outer_item_id` VARCHAR(64) DEFAULT NULL COMMENT '商家统一商品编码' AFTER `sku_id`,
  DROP INDEX `uk_trend_date`,
  ADD UNIQUE KEY `uk_trend_date` (`stat_date`, `outer_item_id`);
