# cfg_assistant_level_price 助教等级定价表

> 生成时间：2026-02-03

## 表信息

| 属性 | 值 |
|------|-----|
| Schema | dws |
| 表名 | cfg_assistant_level_price |
| 主键 | price_id |
| 数据来源 | 手工维护/seed脚本 |
| 说明 | 助教等级对应的基础课和附加课单价配置 |

## 字段说明

| 序号 | 字段名 | 类型 | 可空 | 主键 | 说明 |
|------|--------|------|------|------|------|
| 1 | price_id | SERIAL | NO | PK | 定价ID（自增） |
| 2 | level_code | INTEGER | NO | | 等级代码。**枚举值**: 8=助教管理, 10=初级, 20=中级, 30=高级, 40=星级 |
| 3 | level_name | VARCHAR(20) | NO | | 等级名称 |
| 4 | base_course_price | NUMERIC(10,2) | NO | | 基础课单价（元/小时） |
| 5 | bonus_course_price | NUMERIC(10,2) | NO | | 附加课单价（元/小时），固定190元 |
| 6 | effective_from | DATE | NO | | 生效起始日期（含） |
| 7 | effective_to | DATE | NO | | 生效截止日期（含） |
| 8 | description | TEXT | YES | | 说明 |
| 9 | created_at | TIMESTAMPTZ | NO | | 创建时间 |
| 10 | updated_at | TIMESTAMPTZ | NO | | 更新时间 |

## 定价配置示例

| 等级代码 | 等级名称 | 基础课单价 | 附加课单价 |
|----------|----------|------------|------------|
| 8 | 助教管理 | 98元/小时 | 190元/小时 |
| 10 | 初级 | 98元/小时 | 190元/小时 |
| 20 | 中级 | 108元/小时 | 190元/小时 |
| 30 | 高级 | 118元/小时 | 190元/小时 |
| 40 | 星级 | 138元/小时 | 190元/小时 |

## 使用说明

**取值方式**

SCD2口径：助教等级来自dim_assistant，取数时需按有效期as-of join

**说明**
- 包厢课（基础课）统一按138元/小时计价，不随等级变化

```sql
-- 获取助教在指定日期的等级定价
SELECT p.* 
FROM dws.cfg_assistant_level_price p
JOIN dwd.dim_assistant a ON p.level_code = a.level
WHERE a.assistant_id = 123
  AND a.scd2_start_time <= '2026-01-15'
  AND (a.scd2_end_time IS NULL OR a.scd2_end_time > '2026-01-15')
  AND p.effective_from <= '2026-01-15'
  AND p.effective_to >= '2026-01-15';
```
