-- 设备标识符模型重构
-- 新增 imei 和 sn 字段，将 device_no 定位为虚拟号/别名
-- imei: 设备 IMEI（有蜂窝网络的设备），用于调用 Gateway API
-- sn: 设备序列号（厂商唯一标识），预留字段

-- 新增 imei 字段（可空，有索引）
ALTER TABLE tb_device
ADD COLUMN imei VARCHAR(20);

COMMENT ON COLUMN tb_device.imei IS '设备IMEI(有蜂窝网络的设备标识,用于Gateway API调用)';

CREATE INDEX idx_device_imei ON tb_device(imei) WHERE deleted_at IS NULL AND imei IS NOT NULL;

-- 新增 sn 字段（可空）
ALTER TABLE tb_device
ADD COLUMN sn VARCHAR(100);

COMMENT ON COLUMN tb_device.sn IS '设备序列号(厂商唯一标识,预留字段)';

CREATE INDEX idx_device_sn ON tb_device(sn) WHERE deleted_at IS NULL AND sn IS NOT NULL;

-- 更新 device_no 字段注释，明确其虚拟号定位
COMMENT ON COLUMN tb_device.device_no IS '设备虚拟号/别名(用户友好的短标识,业务方自定义格式)';
