数据库 数据校验写入等逻辑更新。
This commit is contained in:
118
etl_billiards/docs/bd_manual/main/BD_manual_billiards_dwd.md
Normal file
118
etl_billiards/docs/bd_manual/main/BD_manual_billiards_dwd.md
Normal file
@@ -0,0 +1,118 @@
|
||||
# billiards_dwd Schema 数据字典
|
||||
|
||||
> 生成时间:2026-01-28
|
||||
> 数据来源:数据库实时查询 + 500行样本数据分析
|
||||
> 不确定内容已使用 **[待确认]** 标记
|
||||
|
||||
## 概述
|
||||
|
||||
`billiards_dwd` 是台球门店数据仓库的明细层(DWD),包含维度表(DIM)和事实表(DWD)。本 Schema 基于 SCD2 缓慢变化维度设计,支持历史数据追溯。
|
||||
|
||||
---
|
||||
|
||||
## 维度表 (Dimension Tables)
|
||||
|
||||
| 序号 | 表名 | 说明 | 主键 | 扩展表 | 文档链接 |
|
||||
|------|------|------|------|--------|----------|
|
||||
| 1 | dim_assistant | 助教信息 | assistant_id | dim_assistant_ex | [主表](BD_manual_dim_assistant.md) / [扩展表](BD_manual_dim_assistant_ex.md) |
|
||||
| 2 | dim_goods_category | 商品分类 | goods_category_id | 无 | [主表](BD_manual_dim_goods_category.md) |
|
||||
| 3 | dim_groupbuy_package | 团购套餐 | groupbuy_package_id | dim_groupbuy_package_ex | [主表](BD_manual_dim_groupbuy_package.md) / [扩展表](BD_manual_dim_groupbuy_package_ex.md) |
|
||||
| 4 | dim_member | 会员信息 | member_id | dim_member_ex | [主表](BD_manual_dim_member.md) / [扩展表](BD_manual_dim_member_ex.md) |
|
||||
| 5 | dim_member_card_account | 会员卡账户 | member_card_account_id | dim_member_card_account_ex | [主表](BD_manual_dim_member_card_account.md) / [扩展表](BD_manual_dim_member_card_account_ex.md) |
|
||||
| 6 | dim_site | 门店信息 | site_id | dim_site_ex | [主表](BD_manual_dim_site.md) / [扩展表](BD_manual_dim_site_ex.md) |
|
||||
| 7 | dim_store_goods | 门店商品 | store_goods_id | dim_store_goods_ex | [主表](BD_manual_dim_store_goods.md) / [扩展表](BD_manual_dim_store_goods_ex.md) |
|
||||
| 8 | dim_table | 台桌信息 | table_id | dim_table_ex | [主表](BD_manual_dim_table.md) / [扩展表](BD_manual_dim_table_ex.md) |
|
||||
| 9 | dim_tenant_goods | 租户商品 | tenant_goods_id | dim_tenant_goods_ex | [主表](BD_manual_dim_tenant_goods.md) / [扩展表](BD_manual_dim_tenant_goods_ex.md) |
|
||||
|
||||
---
|
||||
|
||||
## 事实表 (Fact Tables)
|
||||
|
||||
| 序号 | 表名 | 说明 | 主键 | 扩展表 | 文档链接 |
|
||||
|------|------|------|------|--------|----------|
|
||||
| 1 | dwd_assistant_service_log | 助教服务流水 | assistant_service_log_id | dwd_assistant_service_log_ex | [主表](BD_manual_dwd_assistant_service_log.md) / [扩展表](BD_manual_dwd_assistant_service_log_ex.md) |
|
||||
| 2 | dwd_assistant_trash_event | 助教服务作废 | assistant_trash_event_id | dwd_assistant_trash_event_ex | [主表](BD_manual_dwd_assistant_trash_event.md) / [扩展表](BD_manual_dwd_assistant_trash_event_ex.md) |
|
||||
| 3 | dwd_groupbuy_redemption | 团购券核销 | redemption_id | dwd_groupbuy_redemption_ex | [主表](BD_manual_dwd_groupbuy_redemption.md) / [扩展表](BD_manual_dwd_groupbuy_redemption_ex.md) |
|
||||
| 4 | dwd_member_balance_change | 会员余额变动 | balance_change_id | dwd_member_balance_change_ex | [主表](BD_manual_dwd_member_balance_change.md) / [扩展表](BD_manual_dwd_member_balance_change_ex.md) |
|
||||
| 5 | dwd_payment | 支付流水 | payment_id | 无 | [主表](BD_manual_dwd_payment.md) |
|
||||
| 6 | dwd_platform_coupon_redemption | 平台券核销 | platform_coupon_redemption_id | dwd_platform_coupon_redemption_ex | [主表](BD_manual_dwd_platform_coupon_redemption.md) / [扩展表](BD_manual_dwd_platform_coupon_redemption_ex.md) |
|
||||
| 7 | dwd_recharge_order | 充值订单 | recharge_order_id | dwd_recharge_order_ex | [主表](BD_manual_dwd_recharge_order.md) / [扩展表](BD_manual_dwd_recharge_order_ex.md) |
|
||||
| 8 | dwd_refund | 退款流水 | refund_id | dwd_refund_ex | [主表](BD_manual_dwd_refund.md) / [扩展表](BD_manual_dwd_refund_ex.md) |
|
||||
| 9 | dwd_settlement_head | 结账单 | settlement_head_id | dwd_settlement_head_ex | [主表](BD_manual_dwd_settlement_head.md) / [扩展表](BD_manual_dwd_settlement_head_ex.md) |
|
||||
| 10 | dwd_store_goods_sale | 商品销售流水 | store_goods_sale_id | dwd_store_goods_sale_ex | [主表](BD_manual_dwd_store_goods_sale.md) / [扩展表](BD_manual_dwd_store_goods_sale_ex.md) |
|
||||
| 11 | dwd_table_fee_adjust | 台费调整 | table_fee_adjust_id | dwd_table_fee_adjust_ex | [主表](BD_manual_dwd_table_fee_adjust.md) / [扩展表](BD_manual_dwd_table_fee_adjust_ex.md) |
|
||||
| 12 | dwd_table_fee_log | 台费计费流水 | table_fee_log_id | dwd_table_fee_log_ex | [主表](BD_manual_dwd_table_fee_log.md) / [扩展表](BD_manual_dwd_table_fee_log_ex.md) |
|
||||
|
||||
---
|
||||
|
||||
## SCD2 公共字段
|
||||
|
||||
所有维度表都实现了 SCD2(缓慢变化维度类型2),包含以下公共字段:
|
||||
|
||||
| 字段名 | 类型 | 说明 |
|
||||
|--------|------|------|
|
||||
| scd2_start_time | TIMESTAMPTZ | 版本生效开始时间 |
|
||||
| scd2_end_time | TIMESTAMPTZ | 版本生效结束时间(NULL 或 9999-12-31 表示当前有效) |
|
||||
| scd2_is_current | INTEGER | 是否当前版本(1=是, 0=否) |
|
||||
| scd2_version | INTEGER | 版本号 |
|
||||
|
||||
---
|
||||
|
||||
## 常见 ID 关联说明
|
||||
|
||||
| ID 字段 | 关联表 | 说明 |
|
||||
|---------|--------|------|
|
||||
| tenant_id | - | 租户 ID,标识所属租户 |
|
||||
| site_id | dim_site | 门店 ID |
|
||||
| member_id | dim_member | 会员 ID(0=散客) |
|
||||
| tenant_member_card_id | dim_member_card_account | 会员卡账户 ID |
|
||||
| assistant_id | dim_assistant | 助教 ID |
|
||||
| table_id / site_table_id | dim_table | 台桌 ID |
|
||||
| tenant_goods_id | dim_tenant_goods | 租户商品 ID |
|
||||
| site_goods_id | dim_store_goods | 门店商品 ID |
|
||||
| order_settle_id | dwd_settlement_head | 结账单 ID |
|
||||
|
||||
---
|
||||
|
||||
## 表设计模式
|
||||
|
||||
### 主表 + 扩展表模式
|
||||
|
||||
大部分表采用"主表 + 扩展表"的设计模式:
|
||||
- **主表**:包含核心业务字段(如金额、状态、关键 ID)
|
||||
- **扩展表**:包含附属信息(如操作员、门店名称快照、各类详细字段)
|
||||
- 两表通过主键一对一关联
|
||||
|
||||
### 枚举值说明
|
||||
|
||||
文档中的枚举值格式为 `值(数量)=含义`,例如:
|
||||
- `1(100)=有效` 表示值为 1 的记录有 100 条,含义为"有效"
|
||||
- **[待确认]** 表示该值的含义无法从数据中确定
|
||||
|
||||
---
|
||||
|
||||
## 数据量统计
|
||||
|
||||
| 表名 | 记录数 |
|
||||
|------|--------|
|
||||
| dwd_payment | 22,949 |
|
||||
| dwd_settlement_head | 22,475 |
|
||||
| dwd_table_fee_log | 18,386 |
|
||||
| dwd_store_goods_sale | 17,563 |
|
||||
| dwd_platform_coupon_redemption | 16,977 |
|
||||
| dwd_groupbuy_redemption | 11,420 |
|
||||
| dwd_member_balance_change | 4,745 |
|
||||
| dwd_table_fee_adjust | 2,849 |
|
||||
| dwd_assistant_service_log | 1,090 |
|
||||
| dwd_recharge_order | 455 |
|
||||
| dwd_assistant_trash_event | 98 |
|
||||
| dwd_refund | 45 |
|
||||
|
||||
---
|
||||
|
||||
## 注意事项
|
||||
|
||||
1. **枚举值推断**:文档中的枚举值含义基于 500 行样本数据推断,可能不完整
|
||||
2. **[待确认] 标记**:不确定的字段含义或枚举值已明确标记
|
||||
3. **数据时效性**:文档基于 2026-01-28 的数据库快照生成
|
||||
4. **扩展表样本数据**:部分扩展表因日期解析问题无法获取样本数据
|
||||
47
etl_billiards/docs/bd_manual/main/BD_manual_dim_assistant.md
Normal file
47
etl_billiards/docs/bd_manual/main/BD_manual_dim_assistant.md
Normal file
@@ -0,0 +1,47 @@
|
||||
# dim_assistant 助教档案主表
|
||||
|
||||
> 生成时间:2026-01-28
|
||||
|
||||
|
||||
## 表信息
|
||||
|
||||
| 属性 | 值 |
|
||||
|------|-----|
|
||||
| Schema | billiards_dwd |
|
||||
| 表名 | dim_assistant |
|
||||
| 主键 | assistant_id, scd2_start_time |
|
||||
| 扩展表 | dim_assistant_ex |
|
||||
| 记录数 | 69 |
|
||||
| 说明 | 助教人员档案的核心信息,包括工号、姓名、联系方式、团队归属、等级等 |
|
||||
|
||||
## 字段说明
|
||||
|
||||
| 序号 | 字段名 | 类型 | 可空 | 主键 | 说明 |
|
||||
|------|--------|------|------|------|------|
|
||||
| 1 | assistant_id | BIGINT | NO | PK | 助教唯一标识 ID |
|
||||
| 2 | user_id | BIGINT | YES | | 关联用户 ID(当前数据全为 0,**[作用待确认]**) |
|
||||
| 3 | assistant_no | TEXT | YES | | 助教工号,如 "11"、"27" |
|
||||
| 4 | real_name | TEXT | YES | | 真实姓名,如 "梁婷婷"、"周佳怡" |
|
||||
| 5 | nickname | TEXT | YES | | 昵称/花名,如 "柚子"、"周周"、"Amy" |
|
||||
| 6 | mobile | TEXT | YES | | 手机号码 |
|
||||
| 7 | tenant_id | BIGINT | YES | | 租户 ID(当前值: 2790683160709957) |
|
||||
| 8 | site_id | BIGINT | YES | | 门店 ID → dim_site(当前值: 2790685415443269) |
|
||||
| 9 | team_id | BIGINT | YES | | 团队 ID |
|
||||
| 10 | team_name | TEXT | YES | | 团队名称。**枚举值**: "1组"(对应 team_id = 2792011585884037), "2组"(对应 team_id = 2959085810992645) |
|
||||
| 11 | level | INTEGER | YES | | 助教等级。**枚举值**: 8 = 助教管理, 10 = 初级, 20 = 中级, 30 = 高级, 40 =专家 |
|
||||
| 12 | entry_time | TIMESTAMPTZ | YES | | 入职时间 |
|
||||
| 13 | resign_time | TIMESTAMPTZ | YES | | 离职时间(远未来日期如 2225-xx-xx 表示在职) |
|
||||
| 14 | leave_status | INTEGER | YES | | 在职状态。**枚举值**: 0 = 在职, 1 = 已离职 |
|
||||
| 15 | assistant_status | INTEGER | YES | | 观察者状态。**枚举值**: 1 = 为非观察者, 2 = 为观察者。 |
|
||||
| 16 | scd2_start_time | TIMESTAMPTZ | NO | PK | SCD2 版本生效时间 |
|
||||
| 17 | scd2_end_time | TIMESTAMPTZ | YES | | SCD2 版本失效时间 |
|
||||
| 18 | scd2_is_current | INTEGER | YES | | 当前版本标记 |
|
||||
| 19 | scd2_version | INTEGER | YES | | 版本号 |
|
||||
|
||||
## 使用说明
|
||||
|
||||
```sql
|
||||
-- 查询当前在职助教
|
||||
SELECT * FROM billiards_dwd.dim_assistant
|
||||
WHERE scd2_is_current = 1 AND leave_status = 0;
|
||||
```
|
||||
@@ -0,0 +1,68 @@
|
||||
# dim_goods_category 商品分类维度表
|
||||
|
||||
> 生成时间:2026-01-28
|
||||
|
||||
|
||||
## 表信息
|
||||
|
||||
| 属性 | 值 |
|
||||
|------|-----|
|
||||
| Schema | billiards_dwd |
|
||||
| 表名 | dim_goods_category |
|
||||
| 主键 | category_id, scd2_start_time |
|
||||
| 扩展表 | 无 |
|
||||
| 记录数 | 26 |
|
||||
| 说明 | 商品分类树结构表,支持一级/二级分类层次 |
|
||||
|
||||
## 字段说明
|
||||
|
||||
| 序号 | 字段名 | 类型 | 可空 | 主键 | 说明 |
|
||||
|------|--------|------|------|------|------|
|
||||
| 1 | category_id | BIGINT | NO | PK | 分类唯一标识 |
|
||||
| 2 | tenant_id | BIGINT | YES | | 租户 ID(当前值: 2790683160709957) |
|
||||
| 3 | category_name | VARCHAR | YES | | 分类名称。**样本值**: "槟榔", "皮头" 等 |
|
||||
| 4 | alias_name | VARCHAR | YES | | 分类别名(当前数据大部分为空) |
|
||||
| 5 | parent_category_id | BIGINT | YES | | 父级分类 ID(0=一级分类)→ 自关联 |
|
||||
| 6 | business_name | VARCHAR | YES | | 业务大类名称。**样本值**: "酒水", "器材" 等 |
|
||||
| 7 | tenant_goods_business_id | BIGINT | YES | | 业务大类 ID |
|
||||
| 8 | category_level | INTEGER | YES | | 分类层级。**枚举值**: 1=一级大类, 2=二级子类 |
|
||||
| 9 | is_leaf | INTEGER | YES | | 是否叶子节点。**枚举值**: 0=非叶子, 1=叶子 |
|
||||
| 10 | open_salesman | INTEGER | YES | | 营业员开关。 |
|
||||
| 11 | sort_order | INTEGER | YES | | 排序序号 |
|
||||
| 12 | is_warehousing | INTEGER | YES | | 是否库存管理。**枚举值**: 1=参与库存管理 |
|
||||
| 13 | scd2_start_time | TIMESTAMPTZ | NO | PK | SCD2 版本生效时间 |
|
||||
| 14 | scd2_end_time | TIMESTAMPTZ | YES | | SCD2 版本失效时间 |
|
||||
| 15 | scd2_is_current | INTEGER | YES | | 当前版本标记 |
|
||||
| 16 | scd2_version | INTEGER | YES | | 版本号 |
|
||||
|
||||
## 分类树结构示例
|
||||
|
||||
```
|
||||
槟榔(一级)
|
||||
├── 槟榔(二级)
|
||||
|
||||
器材(一级)
|
||||
├── 皮头
|
||||
├── 球杆
|
||||
├── 其他
|
||||
|
||||
酒水(一级)
|
||||
├── 饮料
|
||||
├── 酒水
|
||||
├── 茶水
|
||||
├── 咖啡
|
||||
├── 加料
|
||||
├── 洋酒
|
||||
```
|
||||
|
||||
## 使用说明
|
||||
|
||||
```sql
|
||||
-- 查询一级分类
|
||||
SELECT * FROM billiards_dwd.dim_goods_category
|
||||
WHERE scd2_is_current = 1 AND parent_category_id = 0;
|
||||
|
||||
-- 查询某一级分类下的二级分类
|
||||
SELECT * FROM billiards_dwd.dim_goods_category
|
||||
WHERE scd2_is_current = 1 AND parent_category_id = <一级分类ID>;
|
||||
```
|
||||
@@ -0,0 +1,49 @@
|
||||
# dim_groupbuy_package 团购套餐主表
|
||||
|
||||
> 生成时间:2026-01-28
|
||||
|
||||
|
||||
## 表信息
|
||||
|
||||
| 属性 | 值 |
|
||||
|------|-----|
|
||||
| Schema | billiards_dwd |
|
||||
| 表名 | dim_groupbuy_package |
|
||||
| 主键 | groupbuy_package_id, scd2_start_time |
|
||||
| 扩展表 | dim_groupbuy_package_ex |
|
||||
| 记录数 | 34 |
|
||||
| 说明 | 内部团购/套餐定义,记录套餐名称、价格、时长、适用台区等核心信息 |
|
||||
|
||||
## 字段说明
|
||||
|
||||
| 序号 | 字段名 | 类型 | 可空 | 主键 | 说明 |
|
||||
|------|--------|------|------|------|------|
|
||||
| 1 | groupbuy_package_id | BIGINT | NO | PK | 团购套餐 ID |
|
||||
| 2 | tenant_id | BIGINT | YES | | 租户 ID(当前值: 2790683160709957) |
|
||||
| 3 | site_id | BIGINT | YES | | 门店 ID → dim_site(当前值: 2790685415443269) |
|
||||
| 4 | package_name | VARCHAR | YES | | 套餐名称。**样本值**: "中八、斯诺克包厢两小时", "斯诺克两小时"等 |
|
||||
| 5 | package_template_id | BIGINT | YES | | 套餐模板 ID |
|
||||
| 6 | selling_price | NUMERIC(10,2) | YES | | 售卖价格(每笔订单不同,从核销记录中dwd_groupbuy_redemption获取) |
|
||||
| 7 | coupon_face_value | NUMERIC(10,2) | YES | | 券面值(每笔订单不同,从核销记录中dwd_groupbuy_redemption获取) |
|
||||
| 8 | duration_seconds | INTEGER | YES | | 套餐时长(秒)。**样本值**: 3600=1小时, 7200=2小时, 14400=4小时 等 |
|
||||
| 9 | start_time | TIMESTAMPTZ | YES | | 套餐生效开始时间 |
|
||||
| 10 | end_time | TIMESTAMPTZ | YES | | 套餐生效结束时间 |
|
||||
| 11 | table_area_name | VARCHAR | YES | | 适用台区名称。**枚举值**: "A区", "VIP包厢", "斯诺克区", "B区", "麻将房", "888" |
|
||||
| 12 | is_enabled | INTEGER | YES | | 启用状态。**枚举值**: 1=启用, 2=停用 |
|
||||
| 13 | is_delete | INTEGER | YES | | 删除标记。**枚举值**: 0=未删除 |
|
||||
| 14 | create_time | TIMESTAMPTZ | YES | | 创建时间 |
|
||||
| 15 | tenant_table_area_id_list | VARCHAR | YES | | 租户级台区 ID 列表 |
|
||||
| 16 | card_type_ids | VARCHAR | YES | | 允许使用的卡类型 ID 列表(当前数据为 "0") |
|
||||
| 17 | scd2_start_time | TIMESTAMPTZ | NO | PK | SCD2 版本生效时间 |
|
||||
| 18 | scd2_end_time | TIMESTAMPTZ | YES | | SCD2 版本失效时间 |
|
||||
| 19 | scd2_is_current | INTEGER | YES | | 当前版本标记 |
|
||||
| 20 | scd2_version | INTEGER | YES | | 版本号 |
|
||||
|
||||
## 使用说明
|
||||
|
||||
```sql
|
||||
-- 查询当前启用的套餐
|
||||
SELECT * FROM billiards_dwd.dim_groupbuy_package
|
||||
WHERE scd2_is_current = 1 AND is_delete = 0 AND is_enabled = 1;
|
||||
|
||||
```
|
||||
49
etl_billiards/docs/bd_manual/main/BD_manual_dim_member.md
Normal file
49
etl_billiards/docs/bd_manual/main/BD_manual_dim_member.md
Normal file
@@ -0,0 +1,49 @@
|
||||
# dim_member 会员档案主表
|
||||
|
||||
> 生成时间:2026-01-28
|
||||
|
||||
## 表信息
|
||||
|
||||
| 属性 | 值 |
|
||||
|------|-----|
|
||||
| Schema | billiards_dwd |
|
||||
| 表名 | dim_member |
|
||||
| 主键 | member_id, scd2_start_time |
|
||||
| 扩展表 | dim_member_ex |
|
||||
| 记录数 | 556 |
|
||||
| 说明 | 租户会员档案主表,记录会员基本信息和卡种等级 |
|
||||
|
||||
## 字段说明
|
||||
|
||||
| 序号 | 字段名 | 类型 | 可空 | 主键 | 说明 |
|
||||
|------|--------|------|------|------|------|
|
||||
| 1 | member_id | BIGINT | NO | PK | 租户内会员 ID(tenant_member_id) |
|
||||
| 2 | system_member_id | BIGINT | YES | | 系统级会员 ID |
|
||||
| 3 | tenant_id | BIGINT | YES | | 租户 ID(当前值: 2790683160709957) |
|
||||
| 4 | register_site_id | BIGINT | YES | | 注册门店 ID → dim_site(当前值: 2790685415443269) |
|
||||
| 5 | mobile | TEXT | YES | | 手机号码 |
|
||||
| 6 | nickname | TEXT | YES | | 昵称。**样本值**: "陈先生", "张先生", "李先生",等 |
|
||||
| 7 | member_card_grade_code | BIGINT | YES | | 卡等级代码 |
|
||||
| 8 | member_card_grade_name | TEXT | YES | | 卡等级名称。**枚举值**: "储值卡", "台费卡", "年卡", "活动抵用券", "月卡" |
|
||||
| 9 | create_time | TIMESTAMPTZ | YES | | 创建时间 |
|
||||
| 10 | update_time | TIMESTAMPTZ | YES | | 更新时间 |
|
||||
| 11 | scd2_start_time | TIMESTAMPTZ | NO | PK | SCD2 版本生效时间 |
|
||||
| 12 | scd2_end_time | TIMESTAMPTZ | YES | | SCD2 版本失效时间 |
|
||||
| 13 | scd2_is_current | INTEGER | YES | | 当前版本标记 |
|
||||
| 14 | scd2_version | INTEGER | YES | | 版本号 |
|
||||
|
||||
|
||||
|
||||
## 使用说明
|
||||
|
||||
```sql
|
||||
-- 查询当前有效会员
|
||||
SELECT * FROM billiards_dwd.dim_member
|
||||
WHERE scd2_is_current = 1;
|
||||
|
||||
-- 按卡类型统计会员数
|
||||
SELECT member_card_grade_name, COUNT(*)
|
||||
FROM billiards_dwd.dim_member
|
||||
WHERE scd2_is_current = 1
|
||||
GROUP BY member_card_grade_name;
|
||||
```
|
||||
@@ -0,0 +1,63 @@
|
||||
# dim_member_card_account 会员卡账户主表
|
||||
|
||||
> 生成时间:2026-01-28
|
||||
|
||||
## 表信息
|
||||
|
||||
| 属性 | 值 |
|
||||
|------|-----|
|
||||
| Schema | billiards_dwd |
|
||||
| 表名 | dim_member_card_account |
|
||||
| 主键 | member_card_id, scd2_start_time |
|
||||
| 扩展表 | dim_member_card_account_ex |
|
||||
| 记录数 | 945 |
|
||||
| 说明 | 会员卡账户主表,记录卡种、余额、有效期等核心信息。一个会员可持有多张卡。 |
|
||||
|
||||
## 字段说明
|
||||
|
||||
| 序号 | 字段名 | 类型 | 可空 | 主键 | 说明 |
|
||||
|------|--------|------|------|------|------|
|
||||
| 1 | member_card_id | BIGINT | NO | PK | 会员卡账户 ID |
|
||||
| 2 | tenant_id | BIGINT | YES | | 租户 ID |
|
||||
| 3 | register_site_id | BIGINT | YES | | 开卡门店 ID → dim_site |
|
||||
| 4 | tenant_member_id | BIGINT | YES | | 持卡会员 ID → dim_member(0=未绑定会员) |
|
||||
| 5 | system_member_id | BIGINT | YES | | 系统级会员 ID |
|
||||
| 6 | card_type_id | BIGINT | YES | | 卡种 ID |
|
||||
| 7 | member_card_grade_code | BIGINT | YES | | 卡等级代码 |
|
||||
| 8 | member_card_grade_code_name | TEXT | YES | | 卡等级名称。**枚举值**: "储值卡", "台费卡", "活动抵用券", "酒水卡", "月卡", "年卡" |
|
||||
| 9 | member_card_type_name | TEXT | YES | | 卡类型名称(与 grade_code_name 相同) |
|
||||
| 10 | member_name | TEXT | YES | | 持卡人姓名快照 |
|
||||
| 11 | member_mobile | TEXT | YES | | 持卡人手机号快照 |
|
||||
| 12 | balance | NUMERIC(18,2) | YES | | 当前余额(元) |
|
||||
| 13 | start_time | TIMESTAMPTZ | YES | | 卡生效时间 |
|
||||
| 14 | end_time | TIMESTAMPTZ | YES | | 卡失效时间(2225-01-01=长期有效) |
|
||||
| 15 | last_consume_time | TIMESTAMPTZ | YES | | 最近消费时间 |
|
||||
| 16 | status | INTEGER | YES | | 卡状态。**枚举值**: 1=正常, 4=过期 |
|
||||
| 17 | is_delete | INTEGER | YES | | 删除标记。**枚举值**: 0=未删除 |
|
||||
| 18 | scd2_start_time | TIMESTAMPTZ | NO | PK | SCD2 版本生效时间 |
|
||||
| 19 | scd2_end_time | TIMESTAMPTZ | YES | | SCD2 版本失效时间 |
|
||||
| 20 | scd2_is_current | INTEGER | YES | | 当前版本标记 |
|
||||
| 21 | scd2_version | INTEGER | YES | | 版本号 |
|
||||
|
||||
## 卡种分布
|
||||
|
||||
| card_type_id | 卡类型 | 说明 |
|
||||
|--------------|--------|------|
|
||||
| 2793249295533893 | 储值卡 | 充值获得,可抵扣任意费用 |
|
||||
| 2791990152417157 | 台费卡 | 充值赠送,即可抵扣台费 |
|
||||
| 2793266846533445 | 活动抵用券 | 充值赠送,不可抵扣助教费 |
|
||||
| 2794699703437125 | 酒水卡 | 充值赠送,仅可抵扣酒水饮料食品商品 |
|
||||
| 2793306611533637 | 月卡 | 充值获得,时长卡,仅可抵扣台费 |
|
||||
| 2791987095408517 | 年卡 | 充值获得,时长卡,仅可抵扣台费 |
|
||||
|
||||
|
||||
## 使用说明
|
||||
|
||||
```sql
|
||||
-- 查询有效的储值卡
|
||||
SELECT * FROM billiards_dwd.dim_member_card_account
|
||||
WHERE scd2_is_current = 1
|
||||
AND is_delete = 0
|
||||
AND status = 1
|
||||
AND member_card_type_name = '储值卡';
|
||||
```
|
||||
51
etl_billiards/docs/bd_manual/main/BD_manual_dim_site.md
Normal file
51
etl_billiards/docs/bd_manual/main/BD_manual_dim_site.md
Normal file
@@ -0,0 +1,51 @@
|
||||
# dim_site 门店主表
|
||||
|
||||
> 生成时间:2026-01-28
|
||||
|
||||
|
||||
## 表信息
|
||||
|
||||
| 属性 | 值 |
|
||||
|------|-----|
|
||||
| Schema | billiards_dwd |
|
||||
| 表名 | dim_site |
|
||||
| 主键 | site_id, scd2_start_time |
|
||||
| 扩展表 | dim_site_ex |
|
||||
| 记录数 | 1 |
|
||||
| 说明 | 门店维度主表,记录门店基本信息(地址、联系方式等) |
|
||||
|
||||
## 字段说明
|
||||
|
||||
| 序号 | 字段名 | 类型 | 可空 | 主键 | 说明 |
|
||||
|------|--------|------|------|------|------|
|
||||
| 1 | site_id | BIGINT | NO | PK | 门店 ID |
|
||||
| 2 | org_id | BIGINT | YES | | 组织机构 ID |
|
||||
| 3 | tenant_id | BIGINT | YES | | 租户 ID(当前值: 2790683160709957) |
|
||||
| 4 | shop_name | TEXT | YES | | 门店名称。**当前值**: "朗朗桌球" |
|
||||
| 5 | site_label | TEXT | YES | | 门店标签。**当前值**: "A" |
|
||||
| 6 | full_address | TEXT | YES | | 详细地址。**当前值**: "广东省广州市天河区丽阳街12号" |
|
||||
| 7 | address | TEXT | YES | | 地址描述。**当前值**: "广东省广州市天河区天园街道朗朗桌球" |
|
||||
| 8 | longitude | NUMERIC(10,6) | YES | | 经度。**当前值**: 113.360321 |
|
||||
| 9 | latitude | NUMERIC(10,6) | YES | | 纬度。**当前值**: 23.133629 |
|
||||
| 10 | tenant_site_region_id | BIGINT | YES | | 区域 ID。**当前值**: 156440100 |
|
||||
| 11 | business_tel | TEXT | YES | | 联系电话。**当前值**: "13316068642" |
|
||||
| 12 | site_type | INTEGER | YES | | 门店类型。**枚举值**: 1(1)=**[待确认]** |
|
||||
| 13 | shop_status | INTEGER | YES | | 营业状态。**枚举值**: 1(1)=营业中 **[待确认]** |
|
||||
| 14 | scd2_start_time | TIMESTAMPTZ | NO | PK | SCD2 版本生效时间 |
|
||||
| 15 | scd2_end_time | TIMESTAMPTZ | YES | | SCD2 版本失效时间 |
|
||||
| 16 | scd2_is_current | INTEGER | YES | | 当前版本标记 |
|
||||
| 17 | scd2_version | INTEGER | YES | | 版本号 |
|
||||
|
||||
## 当前门店数据
|
||||
|
||||
| site_id | shop_name | full_address | longitude | latitude |
|
||||
|---------|-----------|--------------|-----------|----------|
|
||||
| 2790685415443269 | 朗朗桌球 | 广东省广州市天河区丽阳街12号 | 113.360321 | 23.133629 |
|
||||
|
||||
## 使用说明
|
||||
|
||||
```sql
|
||||
-- 查询当前有效门店
|
||||
SELECT * FROM billiards_dwd.dim_site
|
||||
WHERE scd2_is_current = 1;
|
||||
```
|
||||
@@ -0,0 +1,61 @@
|
||||
# dim_store_goods 门店商品主表
|
||||
|
||||
> 生成时间:2026-01-28
|
||||
|
||||
|
||||
## 表信息
|
||||
|
||||
| 属性 | 值 |
|
||||
|------|-----|
|
||||
| Schema | billiards_dwd |
|
||||
| 表名 | dim_store_goods |
|
||||
| 主键 | site_goods_id, scd2_start_time |
|
||||
| 扩展表 | dim_store_goods_ex |
|
||||
| 记录数 | 170 |
|
||||
| 说明 | 门店级商品库存维度表,记录门店的商品库存、价格、销量等信息 |
|
||||
|
||||
## 字段说明
|
||||
|
||||
| 序号 | 字段名 | 类型 | 可空 | 主键 | 说明 |
|
||||
|------|--------|------|------|------|------|
|
||||
| 1 | site_goods_id | BIGINT | NO | PK | 门店商品 ID |
|
||||
| 2 | tenant_id | BIGINT | YES | | 租户 ID |
|
||||
| 3 | site_id | BIGINT | YES | | 门店 ID → dim_site |
|
||||
| 4 | tenant_goods_id | BIGINT | YES | | 租户商品 ID → dim_tenant_goods |
|
||||
| 5 | goods_name | TEXT | YES | | 商品名称。**样本值**: "双中支中华", "炫赫门小南京"等 |
|
||||
| 6 | goods_category_id | BIGINT | YES | | 一级分类 ID → dim_goods_category |
|
||||
| 7 | goods_second_category_id | BIGINT | YES | | 二级分类 ID → dim_goods_category |
|
||||
| 8 | category_level1_name | TEXT | YES | | 一级分类名称。**样本值**: "零食", "酒水", "其他", "香烟" 等 |
|
||||
| 9 | category_level2_name | TEXT | YES | | 二级分类名称。**样本值**: "零食", "饮料", "其他2", "香烟", "雪糕", "酒水", "球杆", "槟榔" 等 |
|
||||
| 10 | batch_stock_qty | INTEGER | YES | | 批次库存数量 |
|
||||
| 11 | sale_qty | INTEGER | YES | | 销售数量 |
|
||||
| 12 | total_sales_qty | INTEGER | YES | | 累计销售数量 |
|
||||
| 13 | sale_price | NUMERIC(18,2) | YES | | 销售价格(元) |
|
||||
| 14 | created_at | TIMESTAMPTZ | YES | | 创建时间 |
|
||||
| 15 | updated_at | TIMESTAMPTZ | YES | | 更新时间 |
|
||||
| 16 | avg_monthly_sales | NUMERIC(18,4) | YES | | 月均销量 |
|
||||
| 17 | goods_state | INTEGER | YES | | 商品状态。**枚举值**: 1=上架, 2=下架 |
|
||||
| 18 | enable_status | INTEGER | YES | | 启用状态。**枚举值**: 1=启用 |
|
||||
| 19 | send_state | INTEGER | YES | | 配送状态。暂无作用 |
|
||||
| 20 | is_delete | INTEGER | YES | | 删除标记。**枚举值**: 0=未删除 |
|
||||
| 21 | scd2_start_time | TIMESTAMPTZ | NO | PK | SCD2 版本生效时间 |
|
||||
| 22 | scd2_end_time | TIMESTAMPTZ | YES | | SCD2 版本失效时间 |
|
||||
| 23 | scd2_is_current | INTEGER | YES | | 当前版本标记 |
|
||||
| 24 | scd2_version | INTEGER | YES | | 版本号 |
|
||||
|
||||
## 样本数据
|
||||
|
||||
| goods_name | category_level1_name | sale_price | sale_qty | goods_state |
|
||||
|------------|----------------------|------------|----------|-------------|
|
||||
| 双中支中华 | 香烟 | 72.00 | 94 | 1 |
|
||||
| 炫赫门小南京 | 香烟 | 28.00 | 110 | 1 |
|
||||
| 细荷花 | 香烟 | 55.00 | 184 | 1 |
|
||||
| 可乐 | 酒水 | 5.00 | 78 | 1 |
|
||||
|
||||
## 使用说明
|
||||
|
||||
```sql
|
||||
-- 查询当前上架商品
|
||||
SELECT * FROM billiards_dwd.dim_store_goods
|
||||
WHERE scd2_is_current = 1 AND goods_state = 1 AND is_delete = 0;
|
||||
```
|
||||
66
etl_billiards/docs/bd_manual/main/BD_manual_dim_table.md
Normal file
66
etl_billiards/docs/bd_manual/main/BD_manual_dim_table.md
Normal file
@@ -0,0 +1,66 @@
|
||||
# dim_table 台桌主表
|
||||
|
||||
> 生成时间:2026-01-28
|
||||
|
||||
|
||||
## 表信息
|
||||
|
||||
| 属性 | 值 |
|
||||
|------|-----|
|
||||
| Schema | billiards_dwd |
|
||||
| 表名 | dim_table |
|
||||
| 主键 | table_id, scd2_start_time |
|
||||
| 扩展表 | dim_table_ex |
|
||||
| 记录数 | 74 |
|
||||
| 说明 | 台桌维度主表,记录台桌名称、所属台区、单价等核心信息 |
|
||||
|
||||
## 字段说明
|
||||
|
||||
| 序号 | 字段名 | 类型 | 可空 | 主键 | 说明 |
|
||||
|------|--------|------|------|------|------|
|
||||
| 1 | table_id | BIGINT | NO | PK | 台桌 ID |
|
||||
| 2 | site_id | BIGINT | YES | | 门店 ID → dim_site |
|
||||
| 3 | table_name | TEXT | YES | | 台桌名称。**样本值**: "A1", "A2", "B1", "B2", "S1", "C1", "VIP1", "M3", "666" 等 |
|
||||
| 4 | site_table_area_id | BIGINT | YES | | 台区 ID |
|
||||
| 5 | site_table_area_name | TEXT | YES | | 台区名称。**样本值**: "A区", "B区", "补时长", "C区", "麻将房", "K包", "VIP包厢", "斯诺克区", "666", "k包活动区", "M7" 等 |
|
||||
| 6 | tenant_table_area_id | BIGINT | YES | | 租户级台区 ID |
|
||||
| 7 | table_price | NUMERIC(18,2) | YES | | 台桌单价(当前数据全为 0.00) |
|
||||
| 8 | scd2_start_time | TIMESTAMPTZ | NO | PK | SCD2 版本生效时间 |
|
||||
| 9 | scd2_end_time | TIMESTAMPTZ | YES | | SCD2 版本失效时间 |
|
||||
| 10 | scd2_is_current | INTEGER | YES | | 当前版本标记 |
|
||||
| 11 | scd2_version | INTEGER | YES | | 版本号 |
|
||||
|
||||
## 台区分布
|
||||
|
||||
| 台区名称 | 台桌数量 | 大类/索引 |
|
||||
|----------|----------|----------|
|
||||
| A区 | 18 | 台球/打球/中八/追分 |
|
||||
| B区 | 15 | 台球/打球/中八/追分 |
|
||||
| 补时长 | 7 | 补时长 |
|
||||
| C区 | 6 | 台球/打球/中八/追分 |
|
||||
| 麻将房 | 5 | 麻将/麻将棋牌 |
|
||||
| M7 | 2 | 麻将/麻将棋牌 |
|
||||
| M8 | 1 | 麻将/麻将棋牌 |
|
||||
| K包 | 4 | K包/K歌/KTV |
|
||||
| VIP包厢 | 4 | 台球/打球/中八/追分 (V5为 台球/打球/斯诺克) |
|
||||
| 斯诺克区 | 4 | 台球/打球/斯诺克 |
|
||||
| 666 | 2 | 麻将/麻将棋牌 |
|
||||
| TV台 | 1 | 台球/打球/中八/追分 |
|
||||
| k包活动区 | 2 | K包/K歌/KTV |
|
||||
| 幸会158 | 2 | K包/K歌/KTV |
|
||||
| 发财 | 1 | 麻将/麻将棋牌 |
|
||||
|
||||
## 使用说明
|
||||
|
||||
```sql
|
||||
-- 查询当前有效台桌
|
||||
SELECT * FROM billiards_dwd.dim_table
|
||||
WHERE scd2_is_current = 1;
|
||||
|
||||
-- 按台区统计台桌数
|
||||
SELECT site_table_area_name, COUNT(*)
|
||||
FROM billiards_dwd.dim_table
|
||||
WHERE scd2_is_current = 1
|
||||
GROUP BY site_table_area_name
|
||||
ORDER BY COUNT(*) DESC;
|
||||
```
|
||||
@@ -0,0 +1,47 @@
|
||||
# dim_tenant_goods 租户商品主表
|
||||
|
||||
> 生成时间:2026-01-28
|
||||
|
||||
|
||||
## 表信息
|
||||
|
||||
| 属性 | 值 |
|
||||
|------|-----|
|
||||
| Schema | billiards_dwd |
|
||||
| 表名 | dim_tenant_goods |
|
||||
| 主键 | tenant_goods_id, scd2_start_time |
|
||||
| 扩展表 | dim_tenant_goods_ex |
|
||||
| 记录数 | 171 |
|
||||
| 说明 | 租户级商品档案主表(SKU 定义),被门店商品表引用 |
|
||||
|
||||
## 字段说明
|
||||
|
||||
| 序号 | 字段名 | 类型 | 可空 | 主键 | 说明 |
|
||||
|------|--------|------|------|------|------|
|
||||
| 1 | tenant_goods_id | BIGINT | NO | PK | 租户商品 ID(SKU) |
|
||||
| 2 | tenant_id | BIGINT | YES | | 租户 ID |
|
||||
| 3 | supplier_id | BIGINT | YES | | 供应商 ID(当前数据全为 0) |
|
||||
| 4 | category_name | VARCHAR | YES | | 分类名称(二级分类)。**样本值**: "零食", "饮料", "香烟"等 |
|
||||
| 5 | goods_category_id | BIGINT | YES | | 一级分类 ID |
|
||||
| 6 | goods_second_category_id | BIGINT | YES | | 二级分类 ID |
|
||||
| 7 | goods_name | VARCHAR | YES | | 商品名称。**样本值**: "海之言", "西梅多多饮品", "美汁源果粒橙", "三诺橙汁"等 |
|
||||
| 8 | goods_number | VARCHAR | YES | | 商品编号(序号) |
|
||||
| 9 | unit | VARCHAR | YES | | 商品单位。**枚举值**: "包", "瓶", "个", "份"等 |
|
||||
| 10 | market_price | NUMERIC(18,2) | YES | | 市场价/吊牌价(元) |
|
||||
| 11 | goods_state | INTEGER | YES | | 商品状态。**枚举值**: 1=上架, 2=下架 |
|
||||
| 12 | create_time | TIMESTAMPTZ | YES | | 创建时间 |
|
||||
| 13 | update_time | TIMESTAMPTZ | YES | | 更新时间 |
|
||||
| 14 | is_delete | INTEGER | YES | | 删除标记。**枚举值**: 0=未删除 |
|
||||
| 15 | scd2_start_time | TIMESTAMPTZ | NO | PK | SCD2 版本生效时间 |
|
||||
| 16 | scd2_end_time | TIMESTAMPTZ | YES | | SCD2 版本失效时间 |
|
||||
| 17 | scd2_is_current | INTEGER | YES | | 当前版本标记 |
|
||||
| 18 | scd2_version | INTEGER | YES | | 版本号 |
|
||||
|
||||
|
||||
## 使用说明
|
||||
|
||||
```sql
|
||||
-- 查询当前有效的租户商品
|
||||
SELECT * FROM billiards_dwd.dim_tenant_goods
|
||||
WHERE scd2_is_current = 1 AND is_delete = 0;
|
||||
```
|
||||
@@ -0,0 +1,67 @@
|
||||
# dwd_assistant_service_log 助教服务流水主表
|
||||
|
||||
> 生成时间:2026-01-28
|
||||
|
||||
## 表信息
|
||||
|
||||
| 属性 | 值 |
|
||||
|------|-----|
|
||||
| Schema | billiards_dwd |
|
||||
| 表名 | dwd_assistant_service_log |
|
||||
| 主键 | assistant_service_id |
|
||||
| 扩展表 | dwd_assistant_service_log_ex |
|
||||
| 记录数 | 5003 |
|
||||
| 说明 | 助教服务计费流水事实表,记录每次陪打/教学服务的详细信息 |
|
||||
|
||||
## 字段说明
|
||||
|
||||
| 序号 | 字段名 | 类型 | 可空 | 主键 | 说明 |
|
||||
|------|--------|------|------|------|------|
|
||||
| 1 | assistant_service_id | BIGINT | NO | PK | 服务流水 ID |
|
||||
| 2 | order_trade_no | BIGINT | YES | | 订单号 → dwd_settlement_head |
|
||||
| 3 | order_settle_id | BIGINT | YES | | 结账单 ID → dwd_settlement_head |
|
||||
| 4 | order_pay_id | BIGINT | YES | | 支付单 ID(当前数据全为 0) |
|
||||
| 5 | order_assistant_id | BIGINT | YES | | 订单助教 ID |
|
||||
| 6 | order_assistant_type | INTEGER | YES | | 服务类型。**枚举值**: 1=基础课 或 包厢课, 2=附加课/激励课 |
|
||||
| 7 | tenant_id | BIGINT | YES | | 租户 ID |
|
||||
| 8 | site_id | BIGINT | YES | | 门店 ID |
|
||||
| 9 | site_table_id | BIGINT | YES | | 台桌 ID → dim_table(0=非台桌服务) |
|
||||
| 10 | tenant_member_id | BIGINT | YES | | 会员 ID → dim_member(0=散客) |
|
||||
| 11 | system_member_id | BIGINT | YES | | 系统会员 ID(0=散客) |
|
||||
| 12 | assistant_no | VARCHAR | YES | | 助教工号。**样本值**: "2", "9"等 |
|
||||
| 13 | nickname | VARCHAR | YES | | 助教昵称。**样本值**: "佳怡", "婉婉", "七七"等 |
|
||||
| 14 | site_assistant_id | BIGINT | YES | | 助教 ID → dim_assistant |
|
||||
| 15 | user_id | BIGINT | YES | | 助教用户 ID |
|
||||
| 16 | assistant_team_id | BIGINT | YES | | 助教团队 ID。**枚举值**: 2792011585884037=1组, 2959085810992645=2组 |
|
||||
| 17 | person_org_id | BIGINT | YES | | 人事组织 ID |
|
||||
| 18 | assistant_level | INTEGER | YES | | 助教等级。**枚举值**: 8=助教管理, 10=初级, 20=中级, 30=高级, 40=星级 |
|
||||
| 19 | level_name | VARCHAR | YES | | 等级名称。**枚举值**: "助教管理", "初级", "中级", "高级", "星级" |
|
||||
| 20 | skill_id | BIGINT | YES | | 技能 ID |
|
||||
| 21 | skill_name | VARCHAR | YES | | 技能名称。**枚举值**: "基础课", "附加课/激励课", "包厢课" |
|
||||
| 22 | ledger_unit_price | NUMERIC(10,2) | YES | | 单价(元/小时),**样本值**: 98.00/108.00/190.00 等 |
|
||||
| 23 | ledger_amount | NUMERIC(10,2) | YES | | 计费金额 |
|
||||
| 24 | projected_income | NUMERIC(10,2) | YES | | 预估收入 |
|
||||
| 25 | coupon_deduct_money | NUMERIC(10,2) | YES | | 券抵扣金额 |
|
||||
| 26 | income_seconds | INTEGER | YES | | 计费时长(秒)。常见值: 3600=1h, 7200=2h, 10800=3h |
|
||||
| 27 | real_use_seconds | INTEGER | YES | | 实际使用时长(秒) |
|
||||
| 28 | add_clock | INTEGER | YES | | 加时时长(秒),大多为 0 |
|
||||
| 29 | create_time | TIMESTAMPTZ | YES | | 创建时间 |
|
||||
| 30 | start_use_time | TIMESTAMPTZ | YES | | 服务开始时间 |
|
||||
| 31 | last_use_time | TIMESTAMPTZ | YES | | 服务结束时间 |
|
||||
| 32 | is_delete | INTEGER | YES | | 删除标记。**枚举值**: 0=未删除 |
|
||||
|
||||
|
||||
## 使用说明
|
||||
|
||||
```sql
|
||||
-- 统计助教服务收入
|
||||
SELECT
|
||||
nickname, level_name,
|
||||
COUNT(*) AS service_count,
|
||||
SUM(ledger_amount) AS total_amount,
|
||||
SUM(income_seconds)/3600.0 AS total_hours
|
||||
FROM billiards_dwd.dwd_assistant_service_log
|
||||
WHERE is_delete = 0
|
||||
GROUP BY nickname, level_name
|
||||
ORDER BY total_amount DESC;
|
||||
```
|
||||
@@ -0,0 +1,43 @@
|
||||
# dwd_assistant_trash_event 助教服务作废主表
|
||||
|
||||
> 生成时间:2026-01-28
|
||||
|
||||
## 表信息
|
||||
|
||||
| 属性 | 值 |
|
||||
|------|-----|
|
||||
| Schema | billiards_dwd |
|
||||
| 表名 | dwd_assistant_trash_event |
|
||||
| 主键 | assistant_trash_event_id |
|
||||
| 扩展表 | dwd_assistant_trash_event_ex |
|
||||
| 记录数 | 98 |
|
||||
| 说明 | 助教服务作废事实表,记录被取消/作废的助教服务记录 |
|
||||
|
||||
## 字段说明
|
||||
|
||||
| 序号 | 字段名 | 类型 | 可空 | 主键 | 说明 |
|
||||
|------|--------|------|------|------|------|
|
||||
| 1 | assistant_trash_event_id | BIGINT | NO | PK | 作废事件 ID |
|
||||
| 2 | site_id | BIGINT | YES | | 门店 ID |
|
||||
| 3 | table_id | BIGINT | YES | | 台桌 ID → dim_table |
|
||||
| 4 | table_area_id | BIGINT | YES | | 台区 ID |
|
||||
| 5 | assistant_no | VARCHAR | YES | | 助教工号/昵称。**样本值**: "七七", "乔西", "球球"等 |
|
||||
| 6 | assistant_name | VARCHAR | YES | | 助教名称,与 assistant_no 相同 |
|
||||
| 7 | charge_minutes_raw | INTEGER | YES | | 原计费时长(秒)。**样本值**: 0, 3600=1h, 10800=3h 等 |
|
||||
| 8 | abolish_amount | NUMERIC(18,2) | YES | | 作废金额(元)。**样本值**: 0.00, 190.00, 570.00 等 |
|
||||
| 9 | trash_reason | VARCHAR | YES | | 作废原因(当前数据全为 NULL) |
|
||||
| 10 | create_time | TIMESTAMPTZ | YES | | 创建时间 |
|
||||
|
||||
|
||||
## 使用说明
|
||||
|
||||
```sql
|
||||
-- 助教作废金额统计
|
||||
SELECT
|
||||
assistant_name,
|
||||
COUNT(*) AS trash_count,
|
||||
SUM(abolish_amount) AS total_abolished
|
||||
FROM billiards_dwd.dwd_assistant_trash_event
|
||||
GROUP BY assistant_name
|
||||
ORDER BY total_abolished DESC;
|
||||
```
|
||||
@@ -0,0 +1,57 @@
|
||||
# dwd_groupbuy_redemption 团购核销主表
|
||||
|
||||
> 生成时间:2026-01-28
|
||||
|
||||
|
||||
## 表信息
|
||||
|
||||
| 属性 | 值 |
|
||||
|------|-----|
|
||||
| Schema | billiards_dwd |
|
||||
| 表名 | dwd_groupbuy_redemption |
|
||||
| 主键 | redemption_id |
|
||||
| 扩展表 | dwd_groupbuy_redemption_ex |
|
||||
| 记录数 | 11420 |
|
||||
| 说明 | 团购券核销事实表,记录团购券的核销使用明细 |
|
||||
|
||||
## 字段说明
|
||||
|
||||
| 序号 | 字段名 | 类型 | 可空 | 主键 | 说明 |
|
||||
|------|--------|------|------|------|------|
|
||||
| 1 | redemption_id | BIGINT | NO | PK | 核销 ID |
|
||||
| 2 | tenant_id | BIGINT | YES | | 租户 ID |
|
||||
| 3 | site_id | BIGINT | YES | | 门店 ID |
|
||||
| 4 | table_id | BIGINT | YES | | 台桌 ID → dim_table |
|
||||
| 5 | tenant_table_area_id | BIGINT | YES | | 台区 ID |
|
||||
| 6 | table_charge_seconds | INTEGER | YES | | 台费计费时长(秒)。**样本值**: 3600=1h, 7200=2h, 10800=3h 等 |
|
||||
| 7 | order_trade_no | BIGINT | YES | | 订单号 |
|
||||
| 8 | order_settle_id | BIGINT | YES | | 结账单 ID → dwd_settlement_head |
|
||||
| 9 | order_coupon_id | BIGINT | YES | | 订单券 ID |
|
||||
| 10 | coupon_origin_id | BIGINT | YES | | 券来源 ID |
|
||||
| 11 | promotion_activity_id | BIGINT | YES | | 促销活动 ID |
|
||||
| 12 | promotion_coupon_id | BIGINT | YES | | 促销券 ID → dim_groupbuy_package |
|
||||
| 13 | order_coupon_channel | INTEGER | YES | | 券渠道。**枚举值**: 1=美团, 2=抖音 |
|
||||
| 14 | ledger_unit_price | NUMERIC(18,2) | YES | | 单价(元)。**样本值**: 29.90, 12.12, 11.11, 39.90 等 |
|
||||
| 15 | ledger_count | INTEGER | YES | | 计费数量(秒)。**样本值**: 3600=1h, 7200=2h 等 |
|
||||
| 16 | ledger_amount | NUMERIC(18,2) | YES | | 账本金额(元)。**样本值**: 48.00, 96.00, 68.00 等 |
|
||||
| 17 | coupon_money | NUMERIC(18,2) | YES | | 券面额(元)。**样本值**: 48.00, 116.00, 96.00, 68.00 等 |
|
||||
| 18 | promotion_seconds | INTEGER | YES | | 促销时长(秒)。**样本值**: 3600=1h, 7200=2h, 14400=4h 等 |
|
||||
| 19 | coupon_code | VARCHAR | YES | | 券码 |
|
||||
| 20 | is_single_order | INTEGER | YES | | 是否独立订单。**枚举值**: 0=否, 1=是 |
|
||||
| 21 | is_delete | INTEGER | YES | | 删除标记。**枚举值**: 0=未删除 |
|
||||
| 22 | ledger_name | VARCHAR | YES | | 套餐名称。**样本值**: "全天A区中八一小时", "中八A区新人特惠一小时" 等 |
|
||||
| 23 | create_time | TIMESTAMPTZ | YES | | 创建时间 |
|
||||
|
||||
## 使用说明
|
||||
|
||||
```sql
|
||||
-- 各套餐核销统计
|
||||
SELECT
|
||||
ledger_name,
|
||||
COUNT(*) AS redemption_count,
|
||||
SUM(ledger_amount) AS total_amount
|
||||
FROM billiards_dwd.dwd_groupbuy_redemption
|
||||
WHERE is_delete = 0
|
||||
GROUP BY ledger_name
|
||||
ORDER BY redemption_count DESC;
|
||||
```
|
||||
@@ -0,0 +1,72 @@
|
||||
# dwd_member_balance_change 会员余额变动主表
|
||||
|
||||
> 生成时间:2026-01-28
|
||||
|
||||
|
||||
## 表信息
|
||||
|
||||
| 属性 | 值 |
|
||||
|------|-----|
|
||||
| Schema | billiards_dwd |
|
||||
| 表名 | dwd_member_balance_change |
|
||||
| 主键 | balance_change_id |
|
||||
| 扩展表 | dwd_member_balance_change_ex |
|
||||
| 记录数 | 4745 |
|
||||
| 说明 | 会员卡余额变动流水事实表,记录每次余额变动的金额和原因 |
|
||||
|
||||
## 字段说明
|
||||
|
||||
| 序号 | 字段名 | 类型 | 可空 | 主键 | 说明 |
|
||||
|------|--------|------|------|------|------|
|
||||
| 1 | balance_change_id | BIGINT | NO | PK | 变动流水 ID |
|
||||
| 2 | tenant_id | BIGINT | YES | | 租户 ID |
|
||||
| 3 | site_id | BIGINT | YES | | 门店 ID |
|
||||
| 4 | register_site_id | BIGINT | YES | | 注册门店 ID |
|
||||
| 5 | tenant_member_id | BIGINT | YES | | 会员 ID → dim_member |
|
||||
| 6 | system_member_id | BIGINT | YES | | 系统会员 ID |
|
||||
| 7 | tenant_member_card_id | BIGINT | YES | | 会员卡 ID → dim_member_card_account |
|
||||
| 8 | card_type_id | BIGINT | YES | | 卡类型 ID |
|
||||
| 9 | card_type_name | VARCHAR | YES | | 卡类型名称。**枚举值**: "储值卡", "活动抵用券", "台费卡", "酒水卡", "年卡", "月卡" |
|
||||
| 10 | member_name | VARCHAR | YES | | 会员名称快照 |
|
||||
| 11 | member_mobile | VARCHAR | YES | | 会员手机号快照 |
|
||||
| 12 | balance_before | NUMERIC(18,2) | YES | | 变动前余额 |
|
||||
| 13 | change_amount | NUMERIC(18,2) | YES | | 变动金额(正=充值/赠送,负=消费) |
|
||||
| 14 | balance_after | NUMERIC(18,2) | YES | | 变动后余额 |
|
||||
| 15 | from_type | INTEGER | YES | | 变动来源。**枚举值**: 1=结账/消费, 2=结账撤销, 3=现付充值, 4=活动赠送, 7=充值撤销/退款, 9=手动调整 |
|
||||
| 16 | payment_method | INTEGER | YES | | 支付方式,暂未启用。 |
|
||||
| 17 | change_time | TIMESTAMPTZ | YES | | 变动时间 |
|
||||
| 18 | is_delete | INTEGER | YES | | 删除标记 |
|
||||
| 19 | remark | VARCHAR | YES | | 备注。**样本值**: "注销会员", "充值退款" 等 |
|
||||
|
||||
## 卡类型余额变动分布
|
||||
|
||||
| 卡类型 | 变动次数 | 说明 |
|
||||
|--------|----------|------|
|
||||
| 储值卡 | 2825 | 最主要的消费卡种 |
|
||||
| 活动抵用券 | 1275 | 营销活动赠送 |
|
||||
| 台费卡 | 482 | 台费专用卡 |
|
||||
| 酒水卡 | 149 | 酒水专用卡 |
|
||||
|
||||
## 样本数据
|
||||
|
||||
| member_name | card_type_name | balance_before | change_amount | balance_after | from_type |
|
||||
|-------------|----------------|----------------|---------------|---------------|-----------|
|
||||
| 曾丹烨 | 储值卡 | 816.30 | -120.00 | 696.30 | 1 |
|
||||
| 葛先生 | 储值卡 | 6745.27 | -144.00 | 6601.27 | 1 |
|
||||
| 陈腾鑫 | 储值卡 | 293.20 | -114.61 | 178.59 | 1 |
|
||||
| 轩哥 | 酒水卡 | 532.00 | -41.00 | 491.00 | 1 |
|
||||
|
||||
## 使用说明
|
||||
|
||||
```sql
|
||||
-- 会员消费总额排行
|
||||
SELECT
|
||||
member_name,
|
||||
member_mobile,
|
||||
card_type_name,
|
||||
SUM(CASE WHEN change_amount < 0 THEN ABS(change_amount) ELSE 0 END) AS total_consume
|
||||
FROM billiards_dwd.dwd_member_balance_change
|
||||
WHERE is_delete = 0
|
||||
GROUP BY member_name, member_mobile, card_type_name
|
||||
ORDER BY total_consume DESC;
|
||||
```
|
||||
47
etl_billiards/docs/bd_manual/main/BD_manual_dwd_payment.md
Normal file
47
etl_billiards/docs/bd_manual/main/BD_manual_dwd_payment.md
Normal file
@@ -0,0 +1,47 @@
|
||||
# dwd_payment 支付流水表
|
||||
|
||||
> 生成时间:2026-01-28
|
||||
|
||||
|
||||
## 表信息
|
||||
|
||||
| 属性 | 值 |
|
||||
|------|-----|
|
||||
| Schema | billiards_dwd |
|
||||
| 表名 | dwd_payment |
|
||||
| 主键 | payment_id |
|
||||
| 扩展表 | 无 |
|
||||
| 记录数 | 22949 |
|
||||
| 说明 | 支付流水事实表,记录每笔支付的方式、金额、时间等信息 |
|
||||
|
||||
## 字段说明
|
||||
|
||||
| 序号 | 字段名 | 类型 | 可空 | 主键 | 说明 |
|
||||
|------|--------|------|------|------|------|
|
||||
| 1 | payment_id | BIGINT | NO | PK | 支付流水 ID |
|
||||
| 2 | site_id | BIGINT | YES | | 门店 ID |
|
||||
| 3 | relate_type | INTEGER | YES | | 关联业务类型。**枚举值**: 1=预付, 2=结账, 5=充值, 6=线上商城 |
|
||||
| 4 | relate_id | BIGINT | YES | | 关联业务 ID |
|
||||
| 5 | pay_amount | NUMERIC(18,2) | YES | | 支付金额(元) |
|
||||
| 6 | pay_status | INTEGER | YES | | 支付状态。**枚举值**: 2=已支付 |
|
||||
| 7 | payment_method | INTEGER | YES | | 支付方式。**枚举值**: 2=现金支付 , 4=离线支付 |
|
||||
| 8 | online_pay_channel | INTEGER | YES | | 在线支付渠道(当前数据全为 0) |
|
||||
| 9 | create_time | TIMESTAMPTZ | YES | | 创建时间 |
|
||||
| 10 | pay_time | TIMESTAMPTZ | YES | | 支付时间 |
|
||||
| 11 | pay_date | DATE | YES | | 支付日期 |
|
||||
|
||||
|
||||
|
||||
## 使用说明
|
||||
|
||||
```sql
|
||||
-- 每日支付金额统计
|
||||
SELECT
|
||||
pay_date,
|
||||
COUNT(*) AS pay_count,
|
||||
SUM(pay_amount) AS total_amount
|
||||
FROM billiards_dwd.dwd_payment
|
||||
WHERE pay_status = 2
|
||||
GROUP BY pay_date
|
||||
ORDER BY pay_date DESC;
|
||||
```
|
||||
@@ -0,0 +1,57 @@
|
||||
# dwd_platform_coupon_redemption 平台券核销主表
|
||||
|
||||
> 生成时间:2026-01-28
|
||||
|
||||
## 表信息
|
||||
|
||||
| 属性 | 值 |
|
||||
|------|-----|
|
||||
| Schema | billiards_dwd |
|
||||
| 表名 | dwd_platform_coupon_redemption |
|
||||
| 主键 | platform_coupon_redemption_id |
|
||||
| 扩展表 | dwd_platform_coupon_redemption_ex |
|
||||
| 记录数 | 16977 |
|
||||
| 说明 | 平台优惠券核销事实表,记录美团/抖音等平台券的核销明细 |
|
||||
|
||||
## 字段说明
|
||||
|
||||
| 序号 | 字段名 | 类型 | 可空 | 主键 | 说明 |
|
||||
|------|--------|------|------|------|------|
|
||||
| 1 | platform_coupon_redemption_id | BIGINT | NO | PK | 核销 ID |
|
||||
| 2 | tenant_id | BIGINT | YES | | 租户 ID |
|
||||
| 3 | site_id | BIGINT | YES | | 门店 ID |
|
||||
| 4 | coupon_code | VARCHAR | YES | | 券码 |
|
||||
| 5 | coupon_channel | INTEGER | YES | | 券渠道。**枚举值**: 1=美团, 2=抖音 |
|
||||
| 6 | coupon_name | VARCHAR | YES | | 券名称。**样本值**: "【全天可用】中八桌球一小时(A区)", "【全天可用】中八桌球两小时(A区)" 等 |
|
||||
| 7 | sale_price | NUMERIC(10,2) | YES | | 售卖价(元)。**样本值**: 29.90, 69.90, 59.90, 39.90, 19.90 等 |
|
||||
| 8 | coupon_money | NUMERIC(10,2) | YES | | 券面额(元)。**样本值**: 48.00, 96.00, 116.00, 68.00 等 |
|
||||
| 9 | coupon_free_time | INTEGER | YES | | 券赠送时长(当前数据全为 0) |
|
||||
| 10 | channel_deal_id | BIGINT | YES | | 渠道交易 ID |
|
||||
| 11 | deal_id | BIGINT | YES | | 交易 ID |
|
||||
| 12 | group_package_id | BIGINT | YES | | 团购套餐 ID(当前数据全为 0) |
|
||||
| 13 | site_order_id | BIGINT | YES | | 门店订单 ID |
|
||||
| 14 | table_id | BIGINT | YES | | 台桌 ID → dim_table |
|
||||
| 15 | certificate_id | VARCHAR | YES | | 凭证 ID |
|
||||
| 16 | verify_id | VARCHAR | YES | | 核验 ID(仅抖音券有值) |
|
||||
| 17 | use_status | INTEGER | YES | | 使用状态。**枚举值**: 1=已使用, 2=已撤销 |
|
||||
| 18 | is_delete | INTEGER | YES | | 删除标记。**枚举值**: 0=未删除 |
|
||||
| 19 | create_time | TIMESTAMPTZ | YES | | 创建时间 |
|
||||
| 20 | consume_time | TIMESTAMPTZ | YES | | 核销时间 |
|
||||
|
||||
## 使用说明
|
||||
|
||||
```sql
|
||||
-- 各渠道核销统计
|
||||
SELECT
|
||||
CASE coupon_channel
|
||||
WHEN 1 THEN '美团'
|
||||
WHEN 2 THEN '抖音'
|
||||
ELSE '其他'
|
||||
END AS channel,
|
||||
COUNT(*) AS redemption_count,
|
||||
SUM(coupon_money) AS total_coupon_value,
|
||||
SUM(sale_price) AS total_sale_price
|
||||
FROM billiards_dwd.dwd_platform_coupon_redemption
|
||||
WHERE is_delete = 0 AND use_status = 1
|
||||
GROUP BY coupon_channel;
|
||||
```
|
||||
@@ -0,0 +1,53 @@
|
||||
# dwd_recharge_order 充值订单主表
|
||||
|
||||
> 生成时间:2026-01-28
|
||||
|
||||
|
||||
## 表信息
|
||||
|
||||
| 属性 | 值 |
|
||||
|------|-----|
|
||||
| Schema | billiards_dwd |
|
||||
| 表名 | dwd_recharge_order |
|
||||
| 主键 | recharge_order_id |
|
||||
| 扩展表 | dwd_recharge_order_ex |
|
||||
| 记录数 | 455 |
|
||||
| 说明 | 会员充值订单事实表,记录会员卡充值的金额、方式等信息 |
|
||||
|
||||
## 字段说明
|
||||
|
||||
| 序号 | 字段名 | 类型 | 可空 | 主键 | 说明 |
|
||||
|------|--------|------|------|------|------|
|
||||
| 1 | recharge_order_id | BIGINT | NO | PK | 充值订单 ID |
|
||||
| 2 | tenant_id | BIGINT | YES | | 租户 ID |
|
||||
| 3 | site_id | BIGINT | YES | | 门店 ID |
|
||||
| 4 | member_id | BIGINT | YES | | 会员 ID → dim_member |
|
||||
| 5 | member_name_snapshot | TEXT | YES | | 会员名称快照 |
|
||||
| 6 | member_phone_snapshot | TEXT | YES | | 会员电话快照 |
|
||||
| 7 | tenant_member_card_id | BIGINT | YES | | 会员卡账户 ID → dim_member_card_account |
|
||||
| 8 | member_card_type_name | TEXT | YES | | 卡类型名称。**枚举值**: "储值卡", "月卡" |
|
||||
| 9 | settle_relate_id | BIGINT | YES | | 结算关联 ID |
|
||||
| 10 | settle_type | INTEGER | YES | | 结算类型。**枚举值**: 5=充值订单, 7=充值退款 |
|
||||
| 11 | settle_name | TEXT | YES | | 结算名称。**枚举值**: "充值订单", "充值退款" |
|
||||
| 12 | is_first | INTEGER | YES | | 是否首充。**枚举值**: 1=是, 2=否 |
|
||||
| 13 | pay_amount | NUMERIC(18,2) | YES | | 充值金额(元,撤销为负数) |
|
||||
| 14 | refund_amount | NUMERIC(18,2) | YES | | 退款金额 |
|
||||
| 15 | point_amount | NUMERIC(18,2) | YES | | 积分金额 |
|
||||
| 16 | cash_amount | NUMERIC(18,2) | YES | | 现金金额 |
|
||||
| 17 | payment_method | INTEGER | YES | | 支付方式,暂未启用。 |
|
||||
| 18 | create_time | TIMESTAMPTZ | YES | | 创建时间 |
|
||||
| 19 | pay_time | TIMESTAMPTZ | YES | | 支付时间 |
|
||||
|
||||
|
||||
## 使用说明
|
||||
|
||||
```sql
|
||||
-- 充值总额统计(不含撤销)
|
||||
SELECT
|
||||
member_card_type_name,
|
||||
COUNT(*) AS order_count,
|
||||
SUM(pay_amount) AS total_recharge
|
||||
FROM billiards_dwd.dwd_recharge_order
|
||||
WHERE settle_type = 5
|
||||
GROUP BY member_card_type_name;
|
||||
```
|
||||
45
etl_billiards/docs/bd_manual/main/BD_manual_dwd_refund.md
Normal file
45
etl_billiards/docs/bd_manual/main/BD_manual_dwd_refund.md
Normal file
@@ -0,0 +1,45 @@
|
||||
# dwd_refund 退款流水主表
|
||||
|
||||
> 生成时间:2026-01-28
|
||||
|
||||
|
||||
## 表信息
|
||||
|
||||
| 属性 | 值 |
|
||||
|------|-----|
|
||||
| Schema | billiards_dwd |
|
||||
| 表名 | dwd_refund |
|
||||
| 主键 | refund_id |
|
||||
| 扩展表 | dwd_refund_ex |
|
||||
| 记录数 | 45 |
|
||||
| 说明 | 退款流水事实表,记录退款的金额、关联业务等信息 |
|
||||
|
||||
## 字段说明
|
||||
|
||||
| 序号 | 字段名 | 类型 | 可空 | 主键 | 说明 |
|
||||
|------|--------|------|------|------|------|
|
||||
| 1 | refund_id | BIGINT | NO | PK | 退款流水 ID |
|
||||
| 2 | tenant_id | BIGINT | YES | | 租户 ID |
|
||||
| 3 | site_id | BIGINT | YES | | 门店 ID |
|
||||
| 4 | relate_type | INTEGER | YES | | 关联业务类型。**枚举值**: 1(7)=预付退款 , 2(31)=结账退款, 5(7)=充值退款 |
|
||||
| 5 | relate_id | BIGINT | YES | | 关联业务 ID |
|
||||
| 6 | pay_amount | NUMERIC(18,2) | YES | | 退款金额(元,负数) |
|
||||
| 7 | channel_fee | NUMERIC(18,2) | YES | | 渠道手续费 |
|
||||
| 8 | pay_time | TIMESTAMPTZ | YES | | 退款时间 |
|
||||
| 9 | create_time | TIMESTAMPTZ | YES | | 创建时间 |
|
||||
| 10 | payment_method | INTEGER | YES | | 支付方式,暂无用途。 |
|
||||
| 11 | member_id | BIGINT | YES | | 会员 ID(当前数据全为 0) |
|
||||
| 12 | member_card_id | BIGINT | YES | | 会员卡 ID(当前数据全为 0) |
|
||||
|
||||
|
||||
## 使用说明
|
||||
|
||||
```sql
|
||||
-- 退款统计
|
||||
SELECT
|
||||
relate_type,
|
||||
COUNT(*) AS refund_count,
|
||||
SUM(ABS(pay_amount)) AS total_refund
|
||||
FROM billiards_dwd.dwd_refund
|
||||
GROUP BY relate_type;
|
||||
```
|
||||
@@ -0,0 +1,74 @@
|
||||
# dwd_settlement_head 结账头表主表
|
||||
|
||||
> 生成时间:2026-01-28
|
||||
|
||||
|
||||
## 表信息
|
||||
|
||||
| 属性 | 值 |
|
||||
|------|-----|
|
||||
| Schema | billiards_dwd |
|
||||
| 表名 | dwd_settlement_head |
|
||||
| 主键 | order_settle_id |
|
||||
| 扩展表 | dwd_settlement_head_ex |
|
||||
| 记录数 | 23366 |
|
||||
| 说明 | 结账单头表事实表,是核心交易表,记录每笔结账的消费金额、支付方式、折扣等汇总信息 |
|
||||
|
||||
## 字段说明
|
||||
|
||||
| 序号 | 字段名 | 类型 | 可空 | 主键 | 说明 |
|
||||
|------|--------|------|------|------|------|
|
||||
| 1 | order_settle_id | BIGINT | NO | PK | 结账单 ID |
|
||||
| 2 | tenant_id | BIGINT | YES | | 租户 ID |
|
||||
| 3 | site_id | BIGINT | YES | | 门店 ID → dim_site |
|
||||
| 4 | site_name | VARCHAR | YES | | 门店名称。**当前值**: "朗朗桌球" |
|
||||
| 5 | table_id | BIGINT | YES | | 台桌 ID → dim_table(0=非台桌订单,如商城订单) |
|
||||
| 6 | settle_name | VARCHAR | YES | | 结账名称。**样本值**: "商城订单", "A区 A3", "A区 A4", "斯诺克区 S1" |
|
||||
| 7 | order_trade_no | BIGINT | YES | | 订单号 |
|
||||
| 8 | create_time | TIMESTAMPTZ | YES | | 创建时间 |
|
||||
| 9 | pay_time | TIMESTAMPTZ | YES | | 支付时间 |
|
||||
| 10 | settle_type | INTEGER | YES | | 结账类型。**枚举值**: 1=台桌结账, 3=商城订单, 6=退货订单, 7=退款订单 |
|
||||
| 11 | revoke_order_id | BIGINT | YES | | 撤销订单 ID(当前数据全为 0) |
|
||||
| 12 | member_id | BIGINT | YES | | 会员 ID → dim_member(0=散客,占比约 82.8%) |
|
||||
| 13 | member_name | VARCHAR | YES | | 会员名称 |
|
||||
| 14 | member_phone | VARCHAR | YES | | 会员电话 |
|
||||
| 15 | member_card_account_id | BIGINT | YES | | 会员卡账户 ID(当前数据全为 0) |
|
||||
| 16 | member_card_type_name | VARCHAR | YES | | 卡类型名称(当前数据全为空) |
|
||||
| 17 | is_bind_member | BOOLEAN | YES | | 是否绑定会员。**枚举值**: False=否 |
|
||||
| 18 | member_discount_amount | NUMERIC(18,2) | YES | | 会员折扣金额 |
|
||||
| 19 | consume_money | NUMERIC(18,2) | YES | | 消费总金额(元) |
|
||||
| 20 | table_charge_money | NUMERIC(18,2) | YES | | 台费金额 |
|
||||
| 21 | goods_money | NUMERIC(18,2) | YES | | 商品金额 |
|
||||
| 22 | real_goods_money | NUMERIC(18,2) | YES | | 实收商品金额 |
|
||||
| 23 | assistant_pd_money | NUMERIC(18,2) | YES | | 助教陪打费用 |
|
||||
| 24 | assistant_cx_money | NUMERIC(18,2) | YES | | 助教促销费用 |
|
||||
| 25 | adjust_amount | NUMERIC(18,2) | YES | | 调整金额 |
|
||||
| 26 | pay_amount | NUMERIC(18,2) | YES | | 实付金额 |
|
||||
| 27 | balance_amount | NUMERIC(18,2) | YES | | 余额支付金额 |
|
||||
| 28 | recharge_card_amount | NUMERIC(18,2) | YES | | 储值卡支付金额 |
|
||||
| 29 | gift_card_amount | NUMERIC(18,2) | YES | | 礼品卡支付金额 |
|
||||
| 30 | coupon_amount | NUMERIC(18,2) | YES | | 券抵扣金额 |
|
||||
| 31 | rounding_amount | NUMERIC(18,2) | YES | | 抹零金额 |
|
||||
| 32 | point_amount | NUMERIC(18,2) | YES | | 积分抵扣等值金额 |
|
||||
|
||||
|
||||
## 使用说明
|
||||
|
||||
```sql
|
||||
-- 每日营收统计
|
||||
SELECT
|
||||
DATE(pay_time) AS pay_date,
|
||||
COUNT(*) AS order_count,
|
||||
SUM(consume_money) AS total_consume,
|
||||
SUM(pay_amount) AS total_pay
|
||||
FROM billiards_dwd.dwd_settlement_head
|
||||
GROUP BY DATE(pay_time)
|
||||
ORDER BY pay_date DESC;
|
||||
|
||||
-- 台费 vs 商品 vs 助教收入
|
||||
SELECT
|
||||
SUM(table_charge_money) AS table_revenue,
|
||||
SUM(goods_money) AS goods_revenue,
|
||||
SUM(assistant_pd_money + assistant_cx_money) AS assistant_revenue
|
||||
FROM billiards_dwd.dwd_settlement_head;
|
||||
```
|
||||
@@ -0,0 +1,61 @@
|
||||
# dwd_store_goods_sale 商品销售主表
|
||||
|
||||
> 生成时间:2026-01-28
|
||||
|
||||
|
||||
## 表信息
|
||||
|
||||
| 属性 | 值 |
|
||||
|------|-----|
|
||||
| Schema | billiards_dwd |
|
||||
| 表名 | dwd_store_goods_sale |
|
||||
| 主键 | store_goods_sale_id |
|
||||
| 扩展表 | dwd_store_goods_sale_ex |
|
||||
| 记录数 | 17563 |
|
||||
| 说明 | 商品销售流水事实表,记录每笔商品销售明细 |
|
||||
|
||||
## 字段说明
|
||||
|
||||
| 序号 | 字段名 | 类型 | 可空 | 主键 | 说明 |
|
||||
|------|--------|------|------|------|------|
|
||||
| 1 | store_goods_sale_id | BIGINT | NO | PK | 销售流水 ID |
|
||||
| 2 | order_trade_no | BIGINT | YES | | 订单号 |
|
||||
| 3 | order_settle_id | BIGINT | YES | | 结账单 ID → dwd_settlement_head |
|
||||
| 4 | order_pay_id | BIGINT | YES | | 支付单 ID(当前数据全为 0) |
|
||||
| 5 | order_goods_id | BIGINT | YES | | 订单商品 ID(0=商城订单) |
|
||||
| 6 | site_id | BIGINT | YES | | 门店 ID |
|
||||
| 7 | tenant_id | BIGINT | YES | | 租户 ID |
|
||||
| 8 | site_goods_id | BIGINT | YES | | 门店商品 ID → dim_store_goods |
|
||||
| 9 | tenant_goods_id | BIGINT | YES | | 租户商品 ID → dim_tenant_goods |
|
||||
| 10 | tenant_goods_category_id | BIGINT | YES | | 商品分类 ID |
|
||||
| 11 | tenant_goods_business_id | BIGINT | YES | | 业务大类 ID |
|
||||
| 12 | site_table_id | BIGINT | YES | | 台桌 ID(0=商城订单,非台桌消费) |
|
||||
| 13 | ledger_name | VARCHAR | YES | | 商品名称。**样本值**: "哇哈哈矿泉水", "东方树叶", "可乐" 等 |
|
||||
| 14 | ledger_group_name | VARCHAR | YES | | 商品分类。**样本值**: "酒水", "零食", "香烟" 等 |
|
||||
| 15 | ledger_unit_price | NUMERIC(18,2) | YES | | 单价(元) |
|
||||
| 16 | ledger_count | INTEGER | YES | | 购买数量。**样本值**: 1, 2, 3, 4 等 |
|
||||
| 17 | ledger_amount | NUMERIC(18,2) | YES | | 销售金额(元) |
|
||||
| 18 | discount_price | NUMERIC(18,2) | YES | | 折扣金额 |
|
||||
| 19 | real_goods_money | NUMERIC(18,2) | YES | | 实收金额 |
|
||||
| 20 | cost_money | NUMERIC(18,2) | YES | | 成本金额 |
|
||||
| 21 | ledger_status | INTEGER | YES | | 账本状态。**枚举值**: 1=已结算 |
|
||||
| 22 | is_delete | INTEGER | YES | | 删除标记。**枚举值**: 0=未删除 |
|
||||
| 23 | create_time | TIMESTAMPTZ | YES | | 创建时间 |
|
||||
|
||||
|
||||
## 使用说明
|
||||
|
||||
```sql
|
||||
-- 热销商品排行
|
||||
SELECT
|
||||
ledger_name,
|
||||
ledger_group_name,
|
||||
COUNT(*) AS sale_count,
|
||||
SUM(ledger_count) AS total_qty,
|
||||
SUM(real_goods_money) AS total_revenue
|
||||
FROM billiards_dwd.dwd_store_goods_sale
|
||||
WHERE is_delete = 0
|
||||
GROUP BY ledger_name, ledger_group_name
|
||||
ORDER BY total_revenue DESC
|
||||
LIMIT 20;
|
||||
```
|
||||
@@ -0,0 +1,43 @@
|
||||
# dwd_table_fee_adjust 台费调整主表
|
||||
|
||||
> 生成时间:2026-01-28
|
||||
|
||||
|
||||
## 表信息
|
||||
|
||||
| 属性 | 值 |
|
||||
|------|-----|
|
||||
| Schema | billiards_dwd |
|
||||
| 表名 | dwd_table_fee_adjust |
|
||||
| 主键 | table_fee_adjust_id |
|
||||
| 扩展表 | dwd_table_fee_adjust_ex |
|
||||
| 记录数 | 2849 |
|
||||
| 说明 | 台费调整事实表,记录台费调整的金额和时间 |
|
||||
|
||||
## 字段说明
|
||||
|
||||
| 序号 | 字段名 | 类型 | 可空 | 主键 | 说明 |
|
||||
|------|--------|------|------|------|------|
|
||||
| 1 | table_fee_adjust_id | BIGINT | NO | PK | 台费调整 ID |
|
||||
| 2 | order_trade_no | BIGINT | YES | | 订单号 |
|
||||
| 3 | order_settle_id | BIGINT | YES | | 结账单 ID → dwd_settlement_head |
|
||||
| 4 | tenant_id | BIGINT | YES | | 租户 ID |
|
||||
| 5 | site_id | BIGINT | YES | | 门店 ID |
|
||||
| 6 | table_id | BIGINT | YES | | 台桌 ID → dim_table |
|
||||
| 7 | table_area_id | BIGINT | YES | | 台区 ID |
|
||||
| 8 | table_area_name | VARCHAR | YES | | 台区名称(当前数据全为 NULL) |
|
||||
| 9 | tenant_table_area_id | BIGINT | YES | | 租户台区 ID |
|
||||
| 10 | ledger_amount | NUMERIC(18,2) | YES | | 调整金额(元) |
|
||||
| 11 | ledger_status | INTEGER | YES | | 账本状态。**枚举值**: 0=待确认, 1=已确认 |
|
||||
| 12 | is_delete | INTEGER | YES | | 删除标记。**枚举值**: 0=未删除 |
|
||||
|
||||
## 使用说明
|
||||
|
||||
```sql
|
||||
-- 台费调整统计
|
||||
SELECT
|
||||
COUNT(*) AS adjust_count,
|
||||
SUM(ledger_amount) AS total_adjust
|
||||
FROM billiards_dwd.dwd_table_fee_adjust
|
||||
WHERE is_delete = 0 AND ledger_status = 1;
|
||||
```
|
||||
@@ -0,0 +1,64 @@
|
||||
# dwd_table_fee_log 台费流水主表
|
||||
|
||||
> 生成时间:2026-01-28
|
||||
|
||||
|
||||
## 表信息
|
||||
|
||||
| 属性 | 值 |
|
||||
|------|-----|
|
||||
| Schema | billiards_dwd |
|
||||
| 表名 | dwd_table_fee_log |
|
||||
| 主键 | table_fee_log_id |
|
||||
| 扩展表 | dwd_table_fee_log_ex |
|
||||
| 记录数 | 18386 |
|
||||
| 说明 | 台费计费流水事实表,记录每次台桌使用的计费明细 |
|
||||
|
||||
## 字段说明
|
||||
|
||||
| 序号 | 字段名 | 类型 | 可空 | 主键 | 说明 |
|
||||
|------|--------|------|------|------|------|
|
||||
| 1 | table_fee_log_id | BIGINT | NO | PK | 台费流水 ID |
|
||||
| 2 | order_trade_no | BIGINT | YES | | 订单号 |
|
||||
| 3 | order_settle_id | BIGINT | YES | | 结账单 ID → dwd_settlement_head |
|
||||
| 4 | order_pay_id | BIGINT | YES | | 支付单 ID(当前数据全为 0) |
|
||||
| 5 | tenant_id | BIGINT | YES | | 租户 ID |
|
||||
| 6 | site_id | BIGINT | YES | | 门店 ID |
|
||||
| 7 | site_table_id | BIGINT | YES | | 台桌 ID → dim_table |
|
||||
| 8 | site_table_area_id | BIGINT | YES | | 台区 ID |
|
||||
| 9 | site_table_area_name | VARCHAR | YES | | 台区名称。**枚举值**: "A区", "B区", "斯诺克区", "麻将房", "C区", "补时长", "VIP包厢" 等 |
|
||||
| 10 | tenant_table_area_id | BIGINT | YES | | 租户级台区 ID |
|
||||
| 11 | member_id | BIGINT | YES | | 会员 ID(0=散客,占比约 82.4%) |
|
||||
| 12 | ledger_name | VARCHAR | YES | | 台桌名称。**样本值**: "A3", "A5", "A4", "S1", "B5", "M3" 等 |
|
||||
| 13 | ledger_unit_price | NUMERIC(18,2) | YES | | 单价(元/小时),如 48.00/58.00/68.00 |
|
||||
| 14 | ledger_count | INTEGER | YES | | 计费时长(秒)。**样本值**: 3600=1h, 7200=2h, 10800=3h 等 |
|
||||
| 15 | ledger_amount | NUMERIC(18,2) | YES | | 计费金额(元) |
|
||||
| 16 | real_table_charge_money | NUMERIC(18,2) | YES | | 实收台费金额 |
|
||||
| 17 | coupon_promotion_amount | NUMERIC(18,2) | YES | | 券促销金额 |
|
||||
| 18 | member_discount_amount | NUMERIC(18,2) | YES | | 会员折扣金额 |
|
||||
| 19 | adjust_amount | NUMERIC(18,2) | YES | | 调整金额 |
|
||||
| 20 | real_table_use_seconds | INTEGER | YES | | 实际使用时长(秒) |
|
||||
| 21 | add_clock_seconds | INTEGER | YES | | 加时时长(秒),大多为 0 |
|
||||
| 22 | start_use_time | TIMESTAMPTZ | YES | | 开台时间 |
|
||||
| 23 | ledger_end_time | TIMESTAMPTZ | YES | | 结账时间 |
|
||||
| 24 | create_time | TIMESTAMPTZ | YES | | 记录创建时间 |
|
||||
| 25 | ledger_status | INTEGER | YES | | 账本状态。**枚举值**: 1=已结算 |
|
||||
| 26 | is_single_order | INTEGER | YES | | 是否独立订单。**枚举值**: 0=合并订单, 1=独立订单 |
|
||||
| 27 | is_delete | INTEGER | YES | | 删除标记。**枚举值**: 0=未删除 |
|
||||
|
||||
|
||||
## 使用说明
|
||||
|
||||
```sql
|
||||
-- 各台区台费收入统计
|
||||
SELECT
|
||||
site_table_area_name,
|
||||
COUNT(*) AS usage_count,
|
||||
SUM(ledger_amount) AS total_fee,
|
||||
SUM(real_table_charge_money) AS real_fee,
|
||||
SUM(coupon_promotion_amount) AS coupon_fee
|
||||
FROM billiards_dwd.dwd_table_fee_log
|
||||
WHERE is_delete = 0
|
||||
GROUP BY site_table_area_name
|
||||
ORDER BY total_fee DESC;
|
||||
```
|
||||
Reference in New Issue
Block a user