-- 采购台账产品添加库位字段（设备选择）
-- 日期: 2026-06-29
-- 说明: 原材料采购入库需要从IoT设备台账选择库位，通过流程带入到库存记录

-- 为采购台账产品表添加设备ID和库位字段
ALTER TABLE sales_ledger_product ADD COLUMN device_id BIGINT DEFAULT NULL COMMENT '设备ID（关联设备台账，筛选is_iot_device=1）';
ALTER TABLE sales_ledger_product ADD COLUMN storage_location VARCHAR(100) DEFAULT NULL COMMENT '库位（来源于设备的storage_location）';

-- 为质检单表添加库位字段（采购质检入库时使用）
ALTER TABLE quality_inspect ADD COLUMN warehouse VARCHAR(100) DEFAULT NULL COMMENT '库位（来源于采购产品明细的storage_location）';

-- 注意事项:
-- 1. 此字段仅用于采购台账(type=2)的原材料产品
-- 2. 销售台账的成品库存不需要此字段
-- 3. 前端选择设备时，需调用 GET /device/ledger/iotDeviceList 接口获取 is_iot_device=1 的设备列表
-- 4. 选择设备后，自动获取设备的 storage_location 字段值
-- 5. 库位信息流转路径：
--    设备(storage_location) → 采购产品明细(storage_location) → 质检单(warehouse) → 入库记录(warehouse) → 库存(warehouse)
--    或：设备(storage_location) → 采购产品明细(storage_location) → 入库记录(warehouse) → 库存(warehouse)（直接入库）