# dwd_settlement_head_ex 结账头表扩展表

> 生成时间：2026-01-28

## 表信息

| 属性 | 值 |
|------|-----|
| Schema | billiards_dwd |
| 表名 | dwd_settlement_head_ex |
| 主键 | order_settle_id |
| 主表 | dwd_settlement_head |
| 记录数 | 23366 |
| 说明 | 结账单扩展表，包含支付明细、撤销信息、操作员、活动标记等详细信息 |

## 字段说明

| 序号 | 字段名 | 类型 | 可空 | 主键 | 说明 |
|------|--------|------|------|------|------|
| 1 | order_settle_id | BIGINT | NO | PK | 结账单 ID → dwd_settlement_head |
| 2 | serial_number | INTEGER | YES | | 流水号（当前数据全为 0） |
| 3 | settle_status | INTEGER | YES | | 结账状态。**枚举值**: 2(23366)=已完成 **[待确认]** |
| 4 | can_be_revoked | BOOLEAN | YES | | 可否撤销。**枚举值**: False(23366)=不可撤销 |
| 5 | revoke_order_name | VARCHAR(100) | YES | | 撤销订单名称（当前数据全为空） |
| 6 | revoke_time | TIMESTAMPTZ | YES | | 撤销时间 |
| 7 | is_first_order | BOOLEAN | YES | | 是否首单。**枚举值**: False(23366)=否 |
| 8 | service_money | NUMERIC(18,2) | YES | | 服务费金额 |
| 9 | cash_amount | NUMERIC(18,2) | YES | | 现金支付金额 |
| 10 | card_amount | NUMERIC(18,2) | YES | | 刷卡支付金额 |
| 11 | online_amount | NUMERIC(18,2) | YES | | 在线支付金额 |
| 12 | refund_amount | NUMERIC(18,2) | YES | | 退款金额 |
| 13 | prepay_money | NUMERIC(18,2) | YES | | 预付金额 |
| 14 | payment_method | INTEGER | YES | | 支付方式（当前数据全为 0） |
| 15 | coupon_sale_amount | NUMERIC(18,2) | YES | | 券销售金额 |
| 16 | all_coupon_discount | NUMERIC(18,2) | YES | | 全部券折扣 |
| 17 | goods_promotion_money | NUMERIC(18,2) | YES | | 商品促销金额 |
| 18 | assistant_promotion_money | NUMERIC(18,2) | YES | | 助教促销金额 |
| 19 | activity_discount | NUMERIC(18,2) | YES | | 活动折扣 |
| 20 | assistant_manual_discount | NUMERIC(18,2) | YES | | 助教手动折扣 |
| 21 | point_discount_price | NUMERIC(18,2) | YES | | 积分抵扣金额 |
| 22 | point_discount_cost | NUMERIC(18,2) | YES | | 积分抵扣成本 |
| 23 | is_use_coupon | BOOLEAN | YES | | 是否使用优惠券。**枚举值**: False(23366)=否 |
| 24 | is_use_discount | BOOLEAN | YES | | 是否使用折扣。**枚举值**: False(23366)=否 |
| 25 | is_activity | BOOLEAN | YES | | 是否活动订单。**枚举值**: False(23366)=否 |
| 26 | operator_name | VARCHAR(100) | YES | | 操作员姓名。**枚举值**: "收银员:郑丽珊"(23361), "收银员:郑丽珍"(2), "教练:周蒙"(2), "店长:郑丽珊"(1) |
| 27 | salesman_name | VARCHAR(100) | YES | | 销售员姓名（当前数据全为空） |
| 28 | order_remark | VARCHAR(255) | YES | | 订单备注。**样本值**: "五折"(42), "轩哥"(24), "陈德韩"(7), "免台费"(3) |
| 29 | operator_id | BIGINT | YES | | 操作员 ID |
| 30 | salesman_user_id | BIGINT | YES | | 销售员用户 ID（当前数据全为 0） |

## 使用说明

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

- 可用时间字段：revoke_time

```sql
-- 取最新一条（按时间字段倒序）
SELECT *
FROM billiards_dwd.dwd_settlement_head_ex
ORDER BY revoke_time DESC NULLS LAST
LIMIT 1;
```
**使用示例**
```sql
-- 关联主表与扩展表
SELECT 
  m.settle_name, m.consume_money, m.pay_amount,
  e.operator_name, e.order_remark, e.settle_status
FROM billiards_dwd.dwd_settlement_head m
JOIN billiards_dwd.dwd_settlement_head_ex e
  ON m.order_settle_id = e.order_settle_id;
-- 统计备注订单
SELECT order_remark, COUNT(*) 
FROM billiards_dwd.dwd_settlement_head_ex
WHERE order_remark IS NOT NULL
GROUP BY order_remark
ORDER BY COUNT(*) DESC;
```
