-- ============================================================================
-- 酒店职位名称数据表 DDL
-- 基于文件: 酒店职位名称20250519.xlsx - 汇总版 sheet
-- 创建时间: 2025-01-19
-- 数据规模: 150条记录，9个部门，144个不同职位
-- ============================================================================

CREATE TABLE hotel_positions (
    -- 主键ID，自增序列
    id SERIAL PRIMARY KEY,
    
    -- 部门信息
    department_zh VARCHAR(10) NOT NULL,
    
    department_en VARCHAR(50) NOT NULL,
    
    -- 职位信息  
    position_zh VARCHAR(20) NOT NULL,
    
    position_en VARCHAR(100) NOT NULL,
    
    position_abbr VARCHAR(20) NULL,
    
    -- 职级信息
    level_zh VARCHAR(10) NOT NULL,
    
    level_en VARCHAR(30) NOT NULL,
    
    -- 审计字段
    created_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP,
    
    updated_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP,
    
    created_by VARCHAR(50) DEFAULT 'system',
    
    updated_by VARCHAR(50) DEFAULT 'system',
    
    status VARCHAR(20) DEFAULT 'active'
);

-- ============================================================================
-- 索引定义
-- ============================================================================

-- 职位索引
CREATE INDEX idx_hotel_positions_position_zh 
    ON hotel_positions(position_zh);

-- ============================================================================
-- 表注释
-- ============================================================================

COMMENT ON TABLE hotel_positions IS '酒店职位名称标准数据表
用途：存储酒店行业标准化的部门和职位信息
数据来源：酒店职位名称20250519.xlsx
包含内容：9个部门，144个不同职位，3个职级
维护说明：定期更新以保持与行业标准一致';

-- ============================================================================
-- 字段详细注释
-- ============================================================================

COMMENT ON COLUMN hotel_positions.id IS '主键ID，系统自动生成';
COMMENT ON COLUMN hotel_positions.department_zh IS '部门中文名称，最大长度5个字符，如：餐饮部、房务部、市场销售部等。共9个部门：餐饮部(61)、房务部(23)、市场销售部(17)、人力资源部(13)、财务部(13)、行政办公室(8)、工程部(8)、水疗部(4)、保安部(3)';
COMMENT ON COLUMN hotel_positions.department_en IS '部门英文名称，最大长度28个字符，如：Food & Beverage Department';
COMMENT ON COLUMN hotel_positions.position_zh IS '职位中文名称，最大长度13个字符，如：总经理、行政助理经理等。共144个不同职位';
COMMENT ON COLUMN hotel_positions.position_en IS '职位英文名称，最大长度57个字符，如：General Manager, Executive Assistant Manager。共143个不同英文职位名称';
COMMENT ON COLUMN hotel_positions.position_abbr IS '职位英文缩写，最大长度11个字符，如：GM、EAM、DGM等，允许为空。共33个不同缩写，115条记录为空值';
COMMENT ON COLUMN hotel_positions.level_zh IS '职级中文名称，最大长度4个字符，包含：经理级(120人)、总监级(23人)、总经理级(7人)';
COMMENT ON COLUMN hotel_positions.level_en IS '职级英文名称，最大长度22个字符，如：Manager Level、Director Level、General Manager Level';
COMMENT ON COLUMN hotel_positions.created_at IS '记录创建时间，带时区';
COMMENT ON COLUMN hotel_positions.updated_at IS '记录最后更新时间，带时区';
COMMENT ON COLUMN hotel_positions.created_by IS '记录创建者用户标识';
COMMENT ON COLUMN hotel_positions.updated_by IS '记录最后更新者用户标识';
COMMENT ON COLUMN hotel_positions.status IS '记录状态，active=有效，inactive=无效';