# dwd_assistant_service_log_ex 助教服务流水扩展表

> 生成时间：2026-01-28

## 表信息

| 属性 | 值 |
|------|-----|
| Schema | dwd |
| 表名 | dwd_assistant_service_log_ex |
| 主键 | assistant_service_id |
| 主表 | dwd_assistant_service_log |
| 记录数 | 5003 |
| 说明 | 助教服务流水扩展表，包含台桌、折扣、评分、废单等详细信息 |

## 字段说明

| 序号 | 字段名 | 类型 | 可空 | 主键 | 说明 |
|------|--------|------|------|------|------|
| 1 | assistant_service_id | BIGINT | NO | PK | 服务流水 ID → dwd_assistant_service_log |
| 2 | table_name | VARCHAR(64) | YES | | 台桌名称。**样本值**: "888", "TV", "VIP5", "666", "C1", "VIP1", "S1", "M1", "A1" |
| 3 | assistant_name | VARCHAR(64) | YES | | 助教真实姓名。**样本值**: "陈嘉怡", "张永英", "邹绮", "胡敏" |
| 4 | ledger_name | VARCHAR(128) | YES | | 账本名称（工号-昵称）。**样本值**: "2-佳怡", "23-婉婉", "15-七七" |
| 5 | ledger_group_name | VARCHAR(128) | YES | | 账本分组名称（当前数据全为空） |
| 6 | ledger_count | INTEGER | YES | | 计费时长（秒，与主表 income_seconds 类似） |
| 7 | member_discount_amount | NUMERIC(10,2) | YES | | 会员折扣金额 |
| 8 | manual_discount_amount | NUMERIC(10,2) | YES | | 手动折扣金额 |
| 9 | service_money | NUMERIC(10,2) | YES | | 服务费金额 |
| 10 | returns_clock | INTEGER | YES | | 退时长（当前数据全为 0） |
| 11 | ledger_start_time | TIMESTAMPTZ | YES | | 账本开始时间 |
| 12 | ledger_end_time | TIMESTAMPTZ | YES | | 账本结束时间 |
| 13 | ledger_status | INTEGER | YES | | 账本状态。**枚举值**: 1(5003)=已结算 |
| 14 | is_confirm | INTEGER | YES | | 是否确认。**枚举值**: 2(5003)=**[待确认]** |
| 15 | is_single_order | INTEGER | YES | | 是否独立订单。**枚举值**: 1(5003)=是 |
| 16 | is_not_responding | INTEGER | YES | | 无响应。**枚举值**: 0(5003)=正常 |
| 17 | is_trash | INTEGER | YES | | 是否废单。**枚举值**: 0=正常, 1=已作废。⚠️ 此字段是判断助教服务是否作废的唯一依据，替代已废弃的 `dwd_assistant_trash_event` 表（2026-02-22 DROP）。DWS 层助教日报等任务通过此字段过滤废单统计。 |
| 18 | trash_applicant_id | BIGINT | YES | | 废单申请人 ID（当前数据全为 0） |
| 19 | trash_applicant_name | VARCHAR(64) | YES | | 废单申请人姓名（当前数据全为空） |
| 20 | trash_reason | VARCHAR(255) | YES | | 废单原因（当前数据全为空） |
| 21 | salesman_user_id | BIGINT | YES | | 销售员用户 ID（当前数据全为 0） |
| 22 | salesman_name | VARCHAR(64) | YES | | 销售员姓名（当前数据全为空） |
| 23 | salesman_org_id | BIGINT | YES | | 销售员组织 ID（当前数据全为 0） |
| 24 | skill_grade | INTEGER | YES | | 技能评分（当前数据全为 0） |
| 25 | service_grade | INTEGER | YES | | 服务评分（当前数据全为 0） |
| 26 | composite_grade | NUMERIC(5,2) | YES | | 综合评分 |
| 27 | sum_grade | NUMERIC(10,2) | YES | | 累计评分 |
| 28 | get_grade_times | INTEGER | YES | | 评分次数（当前数据全为 0） |
| 29 | grade_status | INTEGER | YES | | 评分状态。**枚举值**: 0(216)=未评分, 1(4787)=已评分 **[待确认]** |
| 30 | composite_grade_time | TIMESTAMPTZ | YES | | 评分时间 |
| 31 | assistant_team_name | TEXT | YES | | 助教团队名称 |

## 使用说明

**版本与最新值**
本表为事实表，无 SCD2 版本字段。

- 可用时间字段：ledger_start_time, ledger_end_time, composite_grade_time

```sql
-- 取最新一条（按时间字段倒序）
SELECT *
FROM dwd.dwd_assistant_service_log_ex
ORDER BY ledger_start_time DESC NULLS LAST
LIMIT 1;
```
**使用示例**
```sql
-- 关联主表与扩展表
SELECT m.nickname, m.ledger_amount, e.table_name, e.assistant_name, e.grade_status
FROM dwd.dwd_assistant_service_log m
JOIN dwd.dwd_assistant_service_log_ex e
  ON m.assistant_service_id = e.assistant_service_id
WHERE m.is_delete = 0;
```
