-- =====================================================
-- V2026_01_24_01__add_variable_category.sql
-- 
-- 为 variables 表添加 category 字段
-- 用于前端显示分类（与原型 HTML 适配）
-- 
-- 变量类别:
--   entity   - 核心实体（蓝色）
--   concept  - 概念/技术（紫色）
--   data     - 数据/指标（绿色）
--   location - 地点/组织（橙色）
--   asset    - 资源模板（粉色）
-- =====================================================

-- 添加 category 列
ALTER TABLE variables ADD COLUMN IF NOT EXISTS category VARCHAR(32);

-- 创建索引
CREATE INDEX IF NOT EXISTS idx_variables_category ON variables(category);

-- 添加注释
COMMENT ON COLUMN variables.category IS '变量类别（前端显示用）: entity-核心实体, concept-概念/技术, data-数据/指标, location-地点/组织, asset-资源模板';

-- 基于现有数据自动推断 category（可选）
-- 根据 value_type 和 source_type 推断
UPDATE variables 
SET category = CASE 
    WHEN value_type = 'number' THEN 'data'
    WHEN value_type = 'date' THEN 'data'
    WHEN source_type = 'fixed' THEN 'asset'
    WHEN source_type = 'reference' THEN 'concept'
    ELSE 'entity'
END
WHERE category IS NULL;
