112 KiB
DWD 主表(非 Ex)表格说明书
-
来源:
etl_billiards/database/schema_dwd_doc.sql -
范围:仅包含“主表”(表名不含
_Ex/_EX的CREATE TABLE);扩展字段见同名_Ex表 -
目的:二次数据清洗/建模的字段口径、来源与可连接关系参考
-
关联(推断)列规则:仅按“字段名 = 其他表主键字段名”推断可 join 关系;DWD 未声明外键,需结合业务确认
表清单
| 表名 | 类型 | 主键 | 表说明 |
|---|---|---|---|
| dim_assistant | 维度 | assistant_id | DWD 维度表:dim_assistant。ODS 来源表:billiards_ods.assistant_accounts_master(对应 JSON:assistant_accounts_master.json;分析:assistant_accounts_master-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。 |
| dim_goods_category | 维度 | category_id | DWD 维度表:dim_goods_category。ODS 来源表:billiards_ods.stock_goods_category_tree(对应 JSON:stock_goods_category_tree.json;分析:stock_goods_category_tree-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。 |
| dim_groupbuy_package | 维度 | groupbuy_package_id | DWD 维度表:dim_groupbuy_package。ODS 来源表:billiards_ods.group_buy_packages(对应 JSON:group_buy_packages.json;分析:group_buy_packages-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。 |
| dim_member | 维度 | member_id | DWD 维度表:dim_member。ODS 来源表:billiards_ods.member_profiles(对应 JSON:member_profiles.json;分析:member_profiles-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。 |
| dim_member_card_account | 维度 | member_card_id | DWD 维度表:dim_member_card_account。ODS 来源表:billiards_ods.member_stored_value_cards(对应 JSON:member_stored_value_cards.json;分析:member_stored_value_cards-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。 |
| dim_site | 维度 | site_id | DWD 维度表:dim_site。ODS 来源表:billiards_ods.table_fee_transactions(对应 JSON:table_fee_transactions.json;分析:table_fee_transactions-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。 |
| dim_store_goods | 维度 | site_goods_id | DWD 维度表:dim_store_goods。ODS 来源表:billiards_ods.store_goods_master(对应 JSON:store_goods_master.json;分析:store_goods_master-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。 |
| dim_table | 维度 | table_id | DWD 维度表:dim_table。ODS 来源表:billiards_ods.site_tables_master(对应 JSON:site_tables_master.json;分析:site_tables_master-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。 |
| dim_tenant_goods | 维度 | tenant_goods_id | DWD 维度表:dim_tenant_goods。ODS 来源表:billiards_ods.tenant_goods_master(对应 JSON:tenant_goods_master.json;分析:tenant_goods_master-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。 |
| dwd_assistant_service_log | 事实/明细 | assistant_service_id | DWD 明细事实表:dwd_assistant_service_log。ODS 来源表:billiards_ods.assistant_service_records(对应 JSON:assistant_service_records.json;分析:assistant_service_records-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。 |
| dwd_assistant_trash_event | 事实/明细 | assistant_trash_event_id | DWD 明细事实表:dwd_assistant_trash_event。ODS 来源表:billiards_ods.assistant_cancellation_records(对应 JSON:assistant_cancellation_records.json;分析:assistant_cancellation_records-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。 |
| dwd_groupbuy_redemption | 事实/明细 | redemption_id | DWD 明细事实表:dwd_groupbuy_redemption。ODS 来源表:billiards_ods.group_buy_redemption_records(对应 JSON:group_buy_redemption_records.json;分析:group_buy_redemption_records-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。 |
| dwd_member_balance_change | 事实/明细 | balance_change_id | DWD 明细事实表:dwd_member_balance_change。ODS 来源表:billiards_ods.member_balance_changes(对应 JSON:member_balance_changes.json;分析:member_balance_changes-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。 |
| dwd_payment | 事实/明细 | payment_id | DWD 明细事实表:dwd_payment。ODS 来源表:billiards_ods.payment_transactions(对应 JSON:payment_transactions.json;分析:payment_transactions-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。 |
| dwd_platform_coupon_redemption | 事实/明细 | platform_coupon_redemption_id | DWD 明细事实表:dwd_platform_coupon_redemption。ODS 来源表:billiards_ods.platform_coupon_redemption_records(对应 JSON:platform_coupon_redemption_records.json;分析:platform_coupon_redemption_records-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。 |
| dwd_recharge_order | 事实/明细 | recharge_order_id | DWD 明细事实表:dwd_recharge_order。ODS 来源表:billiards_ods.recharge_settlements(对应 JSON:recharge_settlements.json;分析:recharge_settlements-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。 |
| dwd_refund | 事实/明细 | refund_id | DWD 明细事实表:dwd_refund。ODS 来源表:billiards_ods.refund_transactions(对应 JSON:refund_transactions.json;分析:refund_transactions-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。 |
| dwd_settlement_head | 事实/明细 | order_settle_id | DWD 明细事实表:dwd_settlement_head。ODS 来源表:billiards_ods.settlement_records(对应 JSON:settlement_records.json;分析:settlement_records-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。 |
| dwd_store_goods_sale | 事实/明细 | store_goods_sale_id | DWD 明细事实表:dwd_store_goods_sale。ODS 来源表:billiards_ods.store_goods_sales_records(对应 JSON:store_goods_sales_records.json;分析:store_goods_sales_records-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。 |
| dwd_table_fee_adjust | 事实/明细 | table_fee_adjust_id | DWD 明细事实表:dwd_table_fee_adjust。ODS 来源表:billiards_ods.table_fee_discount_records(对应 JSON:table_fee_discount_records.json;分析:table_fee_discount_records-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。 |
| dwd_table_fee_log | 事实/明细 | table_fee_log_id | DWD 明细事实表:dwd_table_fee_log。ODS 来源表:billiards_ods.table_fee_transactions(对应 JSON:table_fee_transactions.json;分析:table_fee_transactions-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。 |
dim_assistant
-
表说明:DWD 维度表:dim_assistant。ODS 来源表:billiards_ods.assistant_accounts_master(对应 JSON:assistant_accounts_master.json;分析:assistant_accounts_master-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。
-
主键:assistant_id
-
类型:维度
| 字段 | 类型 | 主键 | 关联(推断) | 字段用途(说明) | ODS来源 | JSON字段 |
|---|---|---:|---|---|---|---|
| assistant_id | BIGINT | Y | | 助教账号主键 ID,在“助教流水.json”中对应 site_assistant_id。;用途:所有与助教相关的事实表(助教流水、助教排班等)都会通过这个 ID 关联到该维表;用于跨表关联与去重。 | assistant_accounts_master - id。 | assistant_accounts_master.json - data.assistantInfos - id。 |
| user_id | BIGINT | | | 预留给“人事系统员工 ID”的字段,目前未接入或未启用;用于跨表关联与去重。 | assistant_accounts_master - staff_id。 | assistant_accounts_master.json - data.assistantInfos - staff_id。 |
| assistant_no | TEXT | | | 助教工号 / 编号,便于业务侧识别。;关联:在“助教流水.json”中有 assistantNo,与此字段对应。 | assistant_accounts_master - assistant_no。 | assistant_accounts_master.json - data.assistantInfos - assistant_no。 |
| real_name | TEXT | | | 助教真实姓名,如“何海婷”“梁婷婷”等。;关联:在“助教流水.json”的 assistantName 与此一致。 | assistant_accounts_master - real_name。 | assistant_accounts_master.json - data.assistantInfos - real_name。 |
| nickname | TEXT | | | 助教在前台展示的昵称,如“佳怡”“周周”“球球”等。 | assistant_accounts_master - nickname。 | assistant_accounts_master.json - data.assistantInfos - nickname。 |
| mobile | TEXT | | | 助教手机号,用于登录绑定、通知、钉钉同步等。 | assistant_accounts_master - mobile。 | assistant_accounts_master.json - data.assistantInfos - mobile。 |
| tenant_id | BIGINT | | | 品牌/租户 ID,对应“非球科技”系统中该商户的唯一标识;用途:多租户数据隔离与按租户汇总。 | assistant_accounts_master - tenant_id。 | assistant_accounts_master.json - data.assistantInfos - tenant_id。 |
| site_id | BIGINT | | dim_site(site_id) | 门店 ID,对应本次数据的这家球房(朗朗桌球)。;关联:与其它 JSON(台费流水、库存、销售等)中的 site_id 一致;用途:门店维度分组、计营业额、与门店档案关联。 | assistant_accounts_master - site_id。 | assistant_accounts_master.json - data.assistantInfos - site_id。 |
| team_id | BIGINT | | | 助教所属团队 ID。;关联:在“助教流水.json”中 assistant_team_id 与此一致;用于跨表关联与去重。 | assistant_accounts_master - team_id。 | assistant_accounts_master.json - data.assistantInfos - team_id。 |
| team_name | TEXT | | | 团队名称,展示用,和 team_id 一一对应。 | assistant_accounts_master - team_name。 | assistant_accounts_master.json - data.assistantInfos - team_name。 |
| level | INTEGER | | | 8:助教管理/管理员(和流水里的 "助教管理" 对应);关联:在“助教流水.json”里以 assistant_level+levelName 体现。 | assistant_accounts_master - level。 | assistant_accounts_master.json - data.assistantInfos - level。 |
| entry_time | TIMESTAMPTZ | | | 入职时间。 | assistant_accounts_master - entry_time。 | assistant_accounts_master.json - data.assistantInfos - entry_time。 |
| resign_time | TIMESTAMPTZ | | | 离职日期;使用“远未来日期”作为“未离职”的占位。 | assistant_accounts_master - resign_time。 | assistant_accounts_master.json - data.assistantInfos - resign_time。 |
| leave_status | INTEGER | | | 业务状态/类型字段,用于过滤、分类与统计口径区分。 | assistant_accounts_master - leave_status。 | assistant_accounts_master.json - data.assistantInfos - leave_status。 |
| assistant_status | INTEGER | | | 账号启用状态:。 | assistant_accounts_master - assistant_status。 | assistant_accounts_master.json - data.assistantInfos - assistant_status。 |
| SCD2_start_time | TIMESTAMPTZ | | | 维度慢变(SCD2)版本生效起始时间,用于历史追踪。 | | |
| SCD2_end_time | TIMESTAMPTZ | | | 维度慢变(SCD2)版本失效时间(默认 9999-12-31 表示当前版本),用于历史追踪。 | | |
| SCD2_is_current | INT | | | 维度慢变(SCD2)当前版本标记(1=当前),用于筛选最新维度记录。 | | |
| SCD2_version | INT | | | 维度慢变(SCD2)版本号(自增),用于区分历史版本。 | | |
dim_goods_category
-
表说明:DWD 维度表:dim_goods_category。ODS 来源表:billiards_ods.stock_goods_category_tree(对应 JSON:stock_goods_category_tree.json;分析:stock_goods_category_tree-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。
-
主键:category_id
-
类型:维度
| 字段 | 类型 | 主键 | 关联(推断) | 字段用途(说明) | ODS来源 | JSON字段 |
|---|---|---:|---|---|---|---|
| category_id | BIGINT | Y | | 分类节点主键 ID(在商品分类维度中的唯一标识);用于跨表关联与去重。 | stock_goods_category_tree - id。 | stock_goods_category_tree.json - data.goodsCategoryList - id。 |
| tenant_id | BIGINT | | | 租户 ID(品牌/商户 ID);用途:多租户数据隔离与按租户汇总。 | stock_goods_category_tree - tenant_id。 | stock_goods_category_tree.json - data.goodsCategoryList - tenant_id。 |
| category_name | VARCHAR(50) | | | 分类名称(实际业务分类名称)。 | stock_goods_category_tree - category_name。 | stock_goods_category_tree.json - data.goodsCategoryList - category_name。 |
| alias_name | VARCHAR(50) | | | 预留的“别名”字段,可用于:。 | stock_goods_category_tree - alias_name。 | stock_goods_category_tree.json - data.goodsCategoryList - alias_name。 |
| parent_category_id | BIGINT | | | 父级分类 ID;用于跨表关联与去重。 | stock_goods_category_tree - pid。 | stock_goods_category_tree.json - data.goodsCategoryList - pid。 |
| business_name | VARCHAR(50) | | | 业务大类名称。 | stock_goods_category_tree - business_name。 | stock_goods_category_tree.json - data.goodsCategoryList - business_name。 |
| tenant_goods_business_id | BIGINT | | | 业务大类 ID;用于跨表关联与去重。 | stock_goods_category_tree - tenant_goods_business_id。 | stock_goods_category_tree.json - data.goodsCategoryList - tenant_goods_business_id。 |
| category_level | INTEGER | | | 业务明细字段,用于补充该记录的业务属性。 | stock_goods_category_tree - CASE WHEN pid = 0 THEN 1 ELSE 2 END。 | stock_goods_category_tree.json - data.goodsCategoryList - CASE WHEN pid = 0 THEN 1 ELSE 2 END。 |
| is_leaf | INTEGER | | | 业务状态/类型字段,用于过滤、分类与统计口径区分。 | stock_goods_category_tree - CASE WHEN categoryboxes IS NULL OR jsonb_array_length(categoryboxes)=0 THEN 1 ELSE 0 END。 | stock_goods_category_tree.json - data.goodsCategoryList - CASE WHEN categoryboxes IS NULL OR jsonb_array_length(categoryboxes)=0 THEN 1 ELSE 0 END。 |
| open_salesman | INTEGER | | | 是否启用“营业员”或“导购提成”相关的功能开关。 | stock_goods_category_tree - open_salesman。 | stock_goods_category_tree.json - data.goodsCategoryList - open_salesman。 |
| sort_order | INTEGER | | | 分类的排序序号,用于前端展示顺序的控制。 | stock_goods_category_tree - sort。 | stock_goods_category_tree.json - data.goodsCategoryList - sort。 |
| is_warehousing | INTEGER | | | 是否“走库存 / 参与仓储管理”:。 | stock_goods_category_tree - is_warehousing。 | stock_goods_category_tree.json - data.goodsCategoryList - is_warehousing。 |
| SCD2_start_time | TIMESTAMPTZ | | | 维度慢变(SCD2)版本生效起始时间,用于历史追踪。 | | |
| SCD2_end_time | TIMESTAMPTZ | | | 维度慢变(SCD2)版本失效时间(默认 9999-12-31 表示当前版本),用于历史追踪。 | | |
| SCD2_is_current | INT | | | 维度慢变(SCD2)当前版本标记(1=当前),用于筛选最新维度记录。 | | |
| SCD2_version | INT | | | 维度慢变(SCD2)版本号(自增),用于区分历史版本。 | | |
dim_groupbuy_package
-
表说明:DWD 维度表:dim_groupbuy_package。ODS 来源表:billiards_ods.group_buy_packages(对应 JSON:group_buy_packages.json;分析:group_buy_packages-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。
-
主键:groupbuy_package_id
-
类型:维度
| 字段 | 类型 | 主键 | 关联(推断) | 字段用途(说明) | ODS来源 | JSON字段 |
|---|---|---:|---|---|---|---|
| groupbuy_package_id | BIGINT | Y | | 门店侧套餐 ID,本文件内部的主键。;关联:平台验券记录表中常见 group_package_id 字段,通常会指向这里的 id,即:平台券核销记录指向哪一个团购套餐配置;用于跨表关联与去重。 | group_buy_packages - id。 | group_buy_packages.json - data.packageCouponList - id。 |
| tenant_id | BIGINT | | | 租户 ID(品牌/商户 ID);用途:多租户数据隔离与按租户汇总。 | group_buy_packages - tenant_id。 | group_buy_packages.json - data.packageCouponList - tenant_id。 |
| site_id | BIGINT | | dim_site(site_id) | 门店 ID;用途:门店维度分组、计营业额、与门店档案关联。 | group_buy_packages - site_id。 | group_buy_packages.json - data.packageCouponList - site_id。 |
| package_name | VARCHAR(200) | | | 团购套餐名称,用于前台展示和核销界面。 | group_buy_packages - package_name。 | group_buy_packages.json - data.packageCouponList - package_name。 |
| package_template_id | BIGINT | | | “上层套餐 ID” 或“总部/系统级套餐 ID”;用于跨表关联与去重。 | group_buy_packages - package_id。 | group_buy_packages.json - data.packageCouponList - package_id。 |
| selling_price | NUMERIC(10,2) | | | 语义上应该是“团购售卖价”(顾客在平台购买券时的成交价格)。 | group_buy_packages - selling_price。 | group_buy_packages.json - data.packageCouponList - selling_price。 |
| coupon_face_value | NUMERIC(10,2) | | | 券面值或内部结算面值,表示该套餐在门店侧对应的金额额度。 | group_buy_packages - coupon_money。 | group_buy_packages.json - data.packageCouponList - coupon_money。 |
| duration_seconds | INTEGER | | | 套餐内包含的时长(秒)。 | group_buy_packages - duration。 | group_buy_packages.json - data.packageCouponList - duration。 |
| start_time | TIMESTAMPTZ | | | 套餐开始生效的日期时间。 | group_buy_packages - start_time。 | group_buy_packages.json - data.packageCouponList - start_time。 |
| end_time | TIMESTAMPTZ | | | 套餐失效的日期时间(到这个时间点后不可使用)。 | group_buy_packages - end_time。 | group_buy_packages.json - data.packageCouponList - end_time。 |
| table_area_name | VARCHAR(100) | | | 套餐适用的“门店台区名称”,用于显示和筛选。 | group_buy_packages - table_area_name。 | group_buy_packages.json - data.packageCouponList - table_area_name。 |
| is_enabled | INTEGER | | | 启用状态。 | group_buy_packages - is_enabled。 | group_buy_packages.json - data.packageCouponList - is_enabled。 |
| is_delete | INTEGER | | | 逻辑删除标志;软删除/作废标记,分析通常需过滤为有效记录。 | group_buy_packages - is_delete。 | group_buy_packages.json - data.packageCouponList - is_delete。 |
| create_time | TIMESTAMPTZ | | | 该套餐在系统中创建的时间;记录源系统创建时间,用于增量同步和口径对齐。 | group_buy_packages - create_time。 | group_buy_packages.json - data.packageCouponList - create_time。 |
| tenant_table_area_id_list | VARCHAR(512) | | | 实际代表“台区集合 ID”或“租户台区配置 ID”,用来限制套餐可用的台区范围。 | group_buy_packages - tenant_table_area_id_list。 | group_buy_packages.json - data.packageCouponList - tenant_table_area_id_list。 |
| card_type_ids | VARCHAR(255) | | | 原意是“适用会员卡类型 ID 列表”,例如某套餐只允许某几种会员卡使用,可以在此配置。 | group_buy_packages - card_type_ids。 | group_buy_packages.json - data.packageCouponList - card_type_ids。 |
| SCD2_start_time | TIMESTAMPTZ | | | 维度慢变(SCD2)版本生效起始时间,用于历史追踪。 | | |
| SCD2_end_time | TIMESTAMPTZ | | | 维度慢变(SCD2)版本失效时间(默认 9999-12-31 表示当前版本),用于历史追踪。 | | |
| SCD2_is_current | INT | | | 维度慢变(SCD2)当前版本标记(1=当前),用于筛选最新维度记录。 | | |
| SCD2_version | INT | | | 维度慢变(SCD2)版本号(自增),用于区分历史版本。 | | |
dim_member
-
表说明:DWD 维度表:dim_member。ODS 来源表:billiards_ods.member_profiles(对应 JSON:member_profiles.json;分析:member_profiles-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。
-
主键:member_id
-
类型:维度
| 字段 | 类型 | 主键 | 关联(推断) | 字段用途(说明) | ODS来源 | JSON字段 |
|---|---|---:|---|---|---|---|
| member_id | BIGINT | Y | | 这是“租户内会员账户”的主键 ID;用于跨表关联与去重。 | member_profiles - id。 | member_profiles.json - data.tenantMemberInfos - id。 |
| system_member_id | BIGINT | | | 这是“系统级会员 ID”,在全平台唯一,用来把一个会员在不同门店/不同卡类型下的账户统一到一个“人”的维度上;用于跨表关联与去重。 | member_profiles - system_member_id。 | member_profiles.json - data.tenantMemberInfos - system_member_id。 |
| tenant_id | BIGINT | | | 租户/品牌 ID;用途:多租户数据隔离与按租户汇总。 | member_profiles - tenant_id。 | member_profiles.json - data.tenantMemberInfos - tenant_id。 |
| register_site_id | BIGINT | | | 会员的注册门店 ID;用于跨表关联与去重。 | member_profiles - register_site_id。 | member_profiles.json - data.tenantMemberInfos - register_site_id。 |
| mobile | TEXT | | | 会员绑定的手机号码;手机号码,用于账户/会员识别、查询与联系。 | member_profiles - mobile。 | member_profiles.json - data.tenantMemberInfos - mobile。 |
| nickname | TEXT | | | 会员在当前租户下的显示名称(可以是姓名,也可以是昵称)。 | member_profiles - nickname。 | member_profiles.json - data.tenantMemberInfos - nickname。 |
| member_card_grade_code | BIGINT | | | 业务明细字段,用于补充该记录的业务属性。 | member_profiles - member_card_grade_code。 | member_profiles.json - data.tenantMemberInfos - member_card_grade_code。 |
| member_card_grade_name | TEXT | | | 这是“会员卡种类/等级”的定义字段。 | member_profiles - member_card_grade_name。 | member_profiles.json - data.tenantMemberInfos - member_card_grade_name。 |
| create_time | TIMESTAMPTZ | | | 会员账户的创建时间(即这条档案/这张卡在系统中被创建的时间);记录源系统创建时间,用于增量同步和口径对齐。 | member_profiles - create_time。 | member_profiles.json - data.tenantMemberInfos - create_time。 |
| update_time | TIMESTAMPTZ | | | 记录源系统更新时间,用于增量同步与变更追踪。 | member_profiles - update_time。 | member_profiles.json - data.tenantMemberInfos - update_time。 |
| SCD2_start_time | TIMESTAMPTZ | | | 维度慢变(SCD2)版本生效起始时间,用于历史追踪。 | | |
| SCD2_end_time | TIMESTAMPTZ | | | 维度慢变(SCD2)版本失效时间(默认 9999-12-31 表示当前版本),用于历史追踪。 | | |
| SCD2_is_current | INT | | | 维度慢变(SCD2)当前版本标记(1=当前),用于筛选最新维度记录。 | | |
| SCD2_version | INT | | | 维度慢变(SCD2)版本号(自增),用于区分历史版本。 | | |
dim_member_card_account
-
表说明:DWD 维度表:dim_member_card_account。ODS 来源表:billiards_ods.member_stored_value_cards(对应 JSON:member_stored_value_cards.json;分析:member_stored_value_cards-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。
-
主键:member_card_id
-
类型:维度
| 字段 | 类型 | 主键 | 关联(推断) | 字段用途(说明) | ODS来源 | JSON字段 |
|---|---|---:|---|---|---|---|
| member_card_id | BIGINT | Y | | 会员卡 ID(源系统唯一标识),用于跨表关联、去重与维度汇总。 | member_stored_value_cards - id。 | member_stored_value_cards.json - data.tenantMemberCards - id。 |
| tenant_id | BIGINT | | | 租户/品牌 ID,与其他 JSON 中 tenant_id 一致;用途:多租户数据隔离与按租户汇总。 | member_stored_value_cards - tenant_id。 | member_stored_value_cards.json - data.tenantMemberCards - tenant_id。 |
| register_site_id | BIGINT | | | 卡首次办理的门店 ID;用于跨表关联与去重。 | member_stored_value_cards - register_site_id。 | member_stored_value_cards.json - data.tenantMemberCards - register_site_id。 |
| tenant_member_id | BIGINT | | | 当前商户(品牌/租户)中会员的主键 ID;用于跨表关联与去重。 | member_stored_value_cards - tenant_member_id。 | member_stored_value_cards.json - data.tenantMemberCards - tenant_member_id。 |
| system_member_id | BIGINT | | | 系统级会员 ID(跨门店统一主键);用于跨表关联与去重。 | member_stored_value_cards - system_member_id。 | member_stored_value_cards.json - data.tenantMemberCards - system_member_id。 |
| card_type_id | BIGINT | | | 卡种 ID(定义“这是哪一种卡”);用于跨表关联与去重。 | member_stored_value_cards - card_type_id。 | member_stored_value_cards.json - data.tenantMemberCards - card_type_id。 |
| member_card_grade_code | BIGINT | | | 卡等级/卡类代码,和下面两个名称字段一一对应。 | member_stored_value_cards - member_card_grade_code。 | member_stored_value_cards.json - data.tenantMemberCards - member_card_grade_code。 |
| member_card_grade_code_name | TEXT | | | 卡等级/卡类名称。 | member_stored_value_cards - member_card_grade_code_name。 | member_stored_value_cards.json - data.tenantMemberCards - member_card_grade_code_name。 |
| member_card_type_name | TEXT | | | 卡类型名称,实际与 member_card_grade_code_name 一致。 | member_stored_value_cards - member_card_type_name。 | member_stored_value_cards.json - data.tenantMemberCards - member_card_type_name。 |
| member_name | TEXT | | | 持卡会员姓名快照。 | member_stored_value_cards - member_name。 | member_stored_value_cards.json - data.tenantMemberCards - member_name。 |
| member_mobile | TEXT | | | 持卡会员手机号快照;手机号码,用于账户/会员识别、查询与联系。 | member_stored_value_cards - member_mobile。 | member_stored_value_cards.json - data.tenantMemberCards - member_mobile。 |
| balance | NUMERIC(18,2) | | | 当前卡内余额(主要针对储值卡、部分券卡)。 | member_stored_value_cards - balance。 | member_stored_value_cards.json - data.tenantMemberCards - balance。 |
| start_time | TIMESTAMPTZ | | | 卡片生效开始时间(有效期起始)。 | member_stored_value_cards - start_time。 | member_stored_value_cards.json - data.tenantMemberCards - start_time。 |
| end_time | TIMESTAMPTZ | | | 卡片有效期结束时间。 | member_stored_value_cards - end_time。 | member_stored_value_cards.json - data.tenantMemberCards - end_time。 |
| last_consume_time | TIMESTAMPTZ | | | 最近一次消费时间。 | member_stored_value_cards - last_consume_time。 | member_stored_value_cards.json - data.tenantMemberCards - last_consume_time。 |
| status | INTEGER | | | 1:正常可用。 | member_stored_value_cards - status。 | member_stored_value_cards.json - data.tenantMemberCards - status。 |
| is_delete | INTEGER | | | 逻辑删除标志;软删除/作废标记,分析通常需过滤为有效记录。 | member_stored_value_cards - is_delete。 | member_stored_value_cards.json - data.tenantMemberCards - is_delete。 |
| SCD2_start_time | TIMESTAMPTZ | | | 维度慢变(SCD2)版本生效起始时间,用于历史追踪。 | | |
| SCD2_end_time | TIMESTAMPTZ | | | 维度慢变(SCD2)版本失效时间(默认 9999-12-31 表示当前版本),用于历史追踪。 | | |
| SCD2_is_current | INT | | | 维度慢变(SCD2)当前版本标记(1=当前),用于筛选最新维度记录。 | | |
| SCD2_version | INT | | | 维度慢变(SCD2)版本号(自增),用于区分历史版本。 | | |
dim_site
-
表说明:DWD 维度表:dim_site。ODS 来源表:billiards_ods.table_fee_transactions(对应 JSON:table_fee_transactions.json;分析:table_fee_transactions-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。
-
主键:site_id
-
类型:维度
| 字段 | 类型 | 主键 | 关联(推断) | 字段用途(说明) | ODS来源 | JSON字段 |
|---|---|---:|---|---|---|---|
| site_id | BIGINT | Y | | 门店 ID,本次数据全部来自同一门店(朗朗桌球)。;关联:与 siteProfile.id 一致;用途:门店维度分组、计营业额、与门店档案关联。 | table_fee_transactions - site_id。 | table_fee_transactions.json - data.siteTableUseDetailsList - site_id。 |
| org_id | BIGINT | | | 组织/机构 ID,用于组织维度归属和管理聚合。 | table_fee_transactions - siteProfile.org_id。 | table_fee_transactions.json - data.siteTableUseDetailsList.siteProfile - org_id。 |
| tenant_id | BIGINT | | | 租户/品牌 ID。本文件所有记录都属于同一租户。;关联:与所有其它 JSON 中的 tenant_id 一致,用于跨表做“商户维度”的过滤。 | table_fee_transactions - siteProfile.tenant_id。 | table_fee_transactions.json - data.siteTableUseDetailsList.siteProfile - tenant_id。 |
| shop_name | TEXT | | | 名称字段,用于展示、检索与分组。 | table_fee_transactions - siteProfile.shop_name。 | table_fee_transactions.json - data.siteTableUseDetailsList.siteProfile - shop_name。 |
| site_label | TEXT | | | 业务明细字段,用于补充该记录的业务属性。 | table_fee_transactions - siteProfile.site_label。 | table_fee_transactions.json - data.siteTableUseDetailsList.siteProfile - site_label。 |
| full_address | TEXT | | | 业务明细字段,用于补充该记录的业务属性。 | table_fee_transactions - siteProfile.full_address。 | table_fee_transactions.json - data.siteTableUseDetailsList.siteProfile - full_address。 |
| address | TEXT | | | 业务明细字段,用于补充该记录的业务属性。 | table_fee_transactions - siteProfile.address。 | table_fee_transactions.json - data.siteTableUseDetailsList.siteProfile - address。 |
| longitude | NUMERIC(10,6) | | | 业务明细字段,用于补充该记录的业务属性。 | table_fee_transactions - siteProfile.longitude。 | table_fee_transactions.json - data.siteTableUseDetailsList.siteProfile - longitude(派生:CAST(longitude AS numeric))。 |
| latitude | NUMERIC(10,6) | | | 业务明细字段,用于补充该记录的业务属性。 | table_fee_transactions - siteProfile.latitude。 | table_fee_transactions.json - data.siteTableUseDetailsList.siteProfile - latitude(派生:CAST(latitude AS numeric))。 |
| tenant_site_region_id | BIGINT | | | 租户/品牌门店区域 ID(源系统唯一标识),用于跨表关联、去重与维度汇总。 | table_fee_transactions - siteProfile.tenant_site_region_id。 | table_fee_transactions.json - data.siteTableUseDetailsList.siteProfile - tenant_site_region_id。 |
| business_tel | TEXT | | | 业务明细字段,用于补充该记录的业务属性。 | table_fee_transactions - siteProfile.business_tel。 | table_fee_transactions.json - data.siteTableUseDetailsList.siteProfile - business_tel。 |
| site_type | INTEGER | | | 业务状态/类型字段,用于过滤、分类与统计口径区分。 | table_fee_transactions - siteProfile.site_type。 | table_fee_transactions.json - data.siteTableUseDetailsList.siteProfile - site_type。 |
| shop_status | INTEGER | | | 业务状态/类型字段,用于过滤、分类与统计口径区分。 | table_fee_transactions - siteProfile.shop_status。 | table_fee_transactions.json - data.siteTableUseDetailsList.siteProfile - shop_status。 |
| SCD2_start_time | TIMESTAMPTZ | | | 维度慢变(SCD2)版本生效起始时间,用于历史追踪。 | | |
| SCD2_end_time | TIMESTAMPTZ | | | 维度慢变(SCD2)版本失效时间(默认 9999-12-31 表示当前版本),用于历史追踪。 | | |
| SCD2_is_current | INT | | | 维度慢变(SCD2)当前版本标记(1=当前),用于筛选最新维度记录。 | | |
| SCD2_version | INT | | | 维度慢变(SCD2)版本号(自增),用于区分历史版本。 | | |
dim_store_goods
-
表说明:DWD 维度表:dim_store_goods。ODS 来源表:billiards_ods.store_goods_master(对应 JSON:store_goods_master.json;分析:store_goods_master-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。
-
主键:site_goods_id
-
类型:维度
| 字段 | 类型 | 主键 | 关联(推断) | 字段用途(说明) | ODS来源 | JSON字段 |
|---|---|---:|---|---|---|---|
| site_goods_id | BIGINT | Y | | 门店商品 ID,门店维度的商品主键;用于跨表关联与去重。 | store_goods_master - id。 | store_goods_master.json - data.orderGoodsList - id。 |
| tenant_id | BIGINT | | | 租户/品牌 ID。同一品牌下多个门店共享一个 tenant_id;用途:多租户数据隔离与按租户汇总。 | store_goods_master - tenant_id。 | store_goods_master.json - data.orderGoodsList - tenant_id。 |
| site_id | BIGINT | | dim_site(site_id) | 门店 ID;用途:门店维度分组、计营业额、与门店档案关联。 | store_goods_master - site_id。 | store_goods_master.json - data.orderGoodsList - site_id。 |
| tenant_goods_id | BIGINT | | dim_tenant_goods(tenant_goods_id) | 租户/品牌维度的商品 ID,相当于“全局商品 ID”;用于跨表关联与去重。 | store_goods_master - tenant_goods_id。 | store_goods_master.json - data.orderGoodsList - tenant_goods_id。 |
| goods_name | TEXT | | | 商品名称,例如“合味道泡面”“地道肠”“麻将房茶位费”等。 | store_goods_master - goods_name。 | store_goods_master.json - data.orderGoodsList - goods_name。 |
| goods_category_id | BIGINT | | | 商品一级分类 ID;用于跨表关联与去重。 | store_goods_master - goods_category_id。 | store_goods_master.json - data.orderGoodsList - goods_category_id。 |
| goods_second_category_id | BIGINT | | | 商品二级分类 ID;用于跨表关联与去重。 | store_goods_master - goods_second_category_id。 | store_goods_master.json - data.orderGoodsList - goods_second_category_id。 |
| category_level1_name | TEXT | | | 一级分类名称,如“零食”“酒水”“服务费”等。 | store_goods_master - oneCategoryName。 | store_goods_master.json - data.orderGoodsList - oneCategoryName。 |
| category_level2_name | TEXT | | | 二级分类名称,如“面”“洋酒”“纸巾”等。 | store_goods_master - twoCategoryName。 | store_goods_master.json - data.orderGoodsList - twoCategoryName。 |
| batch_stock_qty | INTEGER | | | 当前可用库存数量(以 unit 为单位)。 | store_goods_master - stock。 | store_goods_master.json - data.orderGoodsList - stock。 |
| sale_qty | INTEGER | | | 在当前统计口径下的销售数量(总销量,单位同 unit)。 | store_goods_master - sale_num。 | store_goods_master.json - data.orderGoodsList - sale_num。 |
| total_sales_qty | INTEGER | | | 累计销售数量。 | store_goods_master - total_sales。 | store_goods_master.json - data.orderGoodsList - total_sales。 |
| sale_price | NUMERIC(18,2) | | | 商品标准销售价(挂牌价),单位为元。 | store_goods_master - sale_price。 | store_goods_master.json - data.orderGoodsList - sale_price。 |
| created_at | TIMESTAMPTZ | | | 门店商品档案创建时间(商品在门店建立档案的时间点)。 | store_goods_master - create_time。 | store_goods_master.json - data.orderGoodsList - create_time。 |
| updated_at | TIMESTAMPTZ | | | 最后一次修改该商品档案的时间(包括价格调整、状态变更等)。 | store_goods_master - update_time。 | store_goods_master.json - data.orderGoodsList - update_time。 |
| avg_monthly_sales | NUMERIC(18,4) | | | 平均月销量(件/月),根据某个统计周期内的销售数据折算而来。 | store_goods_master - average_monthly_sales。 | store_goods_master.json - data.orderGoodsList - average_monthly_sales。 |
| goods_state | INTEGER | | | 业务状态/类型字段,用于过滤、分类与统计口径区分。 | store_goods_master - goods_state。 | store_goods_master.json - data.orderGoodsList - goods_state。 |
| enable_status | INTEGER | | | 1:启用。;用途:控制商品档案是否参与任何业务(库存、销售等)。 | store_goods_master - enable_status。 | store_goods_master.json - data.orderGoodsList - enable_status。 |
| send_state | INTEGER | | | 1:可销售/可下单。 | store_goods_master - send_state。 | store_goods_master.json - data.orderGoodsList - send_state。 |
| is_delete | INTEGER | | | 逻辑删除标志;软删除/作废标记,分析通常需过滤为有效记录。 | store_goods_master - is_delete。 | store_goods_master.json - data.orderGoodsList - is_delete。 |
| SCD2_start_time | TIMESTAMPTZ | | | 维度慢变(SCD2)版本生效起始时间,用于历史追踪。 | | |
| SCD2_end_time | TIMESTAMPTZ | | | 维度慢变(SCD2)版本失效时间(默认 9999-12-31 表示当前版本),用于历史追踪。 | | |
| SCD2_is_current | INT | | | 维度慢变(SCD2)当前版本标记(1=当前),用于筛选最新维度记录。 | | |
| SCD2_version | INT | | | 维度慢变(SCD2)版本号(自增),用于区分历史版本。 | | |
dim_table
-
表说明:DWD 维度表:dim_table。ODS 来源表:billiards_ods.site_tables_master(对应 JSON:site_tables_master.json;分析:site_tables_master-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。
-
主键:table_id
-
类型:维度
| 字段 | 类型 | 主键 | 关联(推断) | 字段用途(说明) | ODS来源 | JSON字段 |
|---|---|---:|---|---|---|---|
| table_id | BIGINT | Y | | 台桌主键 ID。;用途:这是“台”的全系统唯一标识,是各类流水表引用的核心外键。;关联:与 台费流水.json 中的 site_table_id 一致;用于跨表关联与去重。 | site_tables_master - id。 | site_tables_master.json - data.siteTables - id。 |
| site_id | BIGINT | | dim_site(site_id) | 门店 ID。;关联:与各个流水表、siteProfile.id 一致,本数据全部属于“朗朗桌球”这一家门店;用途:门店维度分组、计营业额、与门店档案关联。 | site_tables_master - site_id。 | site_tables_master.json - data.siteTables - site_id。 |
| table_name | TEXT | | | 台号/台名称,用于前台操作界面展示,也出现在小票和各种流水中的 ledger_name 或 tableName 字段。 | site_tables_master - table_name。 | site_tables_master.json - data.siteTables - table_name。 |
| site_table_area_id | BIGINT | | | 门店维度的“台桌区域 ID”;用于跨表关联与去重。 | site_tables_master - site_table_area_id。 | site_tables_master.json - data.siteTables - site_table_area_id。 |
| site_table_area_name | TEXT | | | 区域名称,用于前台展示和区域维度管理。 | site_tables_master - areaName。 | site_tables_master.json - data.siteTables - areaName。 |
| tenant_table_area_id | BIGINT | | | 门店维度的“台桌区域 ID”;用于跨表关联与去重。 | site_tables_master - site_table_area_id。 | site_tables_master.json - data.siteTables - site_table_area_id。 |
| table_price | NUMERIC(18,2) | | | 设计上应为“台的基础单价”字段(例如按小时或按局单价)。 | site_tables_master - table_price。 | site_tables_master.json - data.siteTables - table_price。 |
| SCD2_start_time | TIMESTAMPTZ | | | 维度慢变(SCD2)版本生效起始时间,用于历史追踪。 | | |
| SCD2_end_time | TIMESTAMPTZ | | | 维度慢变(SCD2)版本失效时间(默认 9999-12-31 表示当前版本),用于历史追踪。 | | |
| SCD2_is_current | INT | | | 维度慢变(SCD2)当前版本标记(1=当前),用于筛选最新维度记录。 | | |
| SCD2_version | INT | | | 维度慢变(SCD2)版本号(自增),用于区分历史版本。 | | |
dim_tenant_goods
-
表说明:DWD 维度表:dim_tenant_goods。ODS 来源表:billiards_ods.tenant_goods_master(对应 JSON:tenant_goods_master.json;分析:tenant_goods_master-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。
-
主键:tenant_goods_id
-
类型:维度
| 字段 | 类型 | 主键 | 关联(推断) | 字段用途(说明) | ODS来源 | JSON字段 |
|---|---|---:|---|---|---|---|
| tenant_goods_id | BIGINT | Y | | 商品档案主键 ID,唯一标识一条商品。;用途:作为其他业务表(销售明细、库存流水、门店商品表等)的外键,通常以 tenant_goods_id 或类似字段出现;用于跨表关联与去重。 | tenant_goods_master - id。 | tenant_goods_master.json - data.tenantGoodsList - id。 |
| tenant_id | BIGINT | | | 租户/品牌 ID。;用途:和其它 JSON 中的 tenant_id / tenantId 一致,用于区分不同商户(本次数据只包含同一租户)。 | tenant_goods_master - tenant_id。 | tenant_goods_master.json - data.tenantGoodsList - tenant_id。 |
| supplier_id | BIGINT | | | 供应商 ID,用于关联到供应商档案。 | tenant_goods_master - supplier_id。 | tenant_goods_master.json - data.tenantGoodsList - supplier_id。 |
| category_name | VARCHAR(64) | | | 商品一级分类名称(业务可读)。 | tenant_goods_master - categoryName。 | tenant_goods_master.json - data.tenantGoodsList - categoryName。 |
| goods_category_id | BIGINT | | | 商品一级分类 ID;用于跨表关联与去重。 | tenant_goods_master - goods_category_id。 | tenant_goods_master.json - data.tenantGoodsList - goods_category_id。 |
| goods_second_category_id | BIGINT | | | 商品二级分类 ID;用于跨表关联与去重。 | tenant_goods_master - goods_second_category_id。 | tenant_goods_master.json - data.tenantGoodsList - goods_second_category_id。 |
| goods_name | VARCHAR(128) | | | 商品名称(前台展示名称)。 | tenant_goods_master - goods_name。 | tenant_goods_master.json - data.tenantGoodsList - goods_name。 |
| goods_number | VARCHAR(64) | | | 商品内部编码(自定义货号/系统货号)。 | tenant_goods_master - goods_number。 | tenant_goods_master.json - data.tenantGoodsList - goods_number。 |
| unit | VARCHAR(16) | | | 计量单位。 | tenant_goods_master - unit。 | tenant_goods_master.json - data.tenantGoodsList - unit。 |
| market_price | NUMERIC(18,2) | | | 商品标价 / 售价(标准销售单价)。 | tenant_goods_master - market_price。 | tenant_goods_master.json - data.tenantGoodsList - market_price。 |
| goods_state | INTEGER | | | 商品状态(上架/下架等)。 | tenant_goods_master - goods_state。 | tenant_goods_master.json - data.tenantGoodsList - goods_state。 |
| create_time | TIMESTAMPTZ | | | 商品档案创建时间;记录源系统创建时间,用于增量同步和口径对齐。 | tenant_goods_master - create_time。 | tenant_goods_master.json - data.tenantGoodsList - create_time。 |
| update_time | TIMESTAMPTZ | | | 商品档案最近一次修改时间;记录源系统更新时间,用于增量同步与变更追踪。 | tenant_goods_master - update_time。 | tenant_goods_master.json - data.tenantGoodsList - update_time。 |
| is_delete | INTEGER | | | 逻辑删除标志;软删除/作废标记,分析通常需过滤为有效记录。 | tenant_goods_master - is_delete。 | tenant_goods_master.json - data.tenantGoodsList - is_delete。 |
| SCD2_start_time | TIMESTAMPTZ | | | 维度慢变(SCD2)版本生效起始时间,用于历史追踪。 | | |
| SCD2_end_time | TIMESTAMPTZ | | | 维度慢变(SCD2)版本失效时间(默认 9999-12-31 表示当前版本),用于历史追踪。 | | |
| SCD2_is_current | INT | | | 维度慢变(SCD2)当前版本标记(1=当前),用于筛选最新维度记录。 | | |
| SCD2_version | INT | | | 维度慢变(SCD2)版本号(自增),用于区分历史版本。 | | |
dwd_assistant_service_log
-
表说明:DWD 明细事实表:dwd_assistant_service_log。ODS 来源表:billiards_ods.assistant_service_records(对应 JSON:assistant_service_records.json;分析:assistant_service_records-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。
-
主键:assistant_service_id
-
类型:事实/明细
| 字段 | 类型 | 主键 | 关联(推断) | 字段用途(说明) | ODS来源 | JSON字段 |
|---|---|---:|---|---|---|---|
| assistant_service_id | BIGINT | Y | | 本条助教流水记录的主键 ID(流水唯一标识)。;用途:在系统内部唯一定位这一条助教服务记录;用于跨表关联与去重。 | assistant_service_records - id。 | assistant_service_records.json - data.orderAssistantDetails - id。 |
| order_trade_no | BIGINT | | | 订单交易号,整个订单层面的编号。;关联:与台费流水、门店销售记录、团购套餐流水等表中的同名字段是一致的,用于把 同一笔订单下的各类消费明细(台费/商品/助教/套餐)串起来。 | assistant_service_records - order_trade_no。 | assistant_service_records.json - data.orderAssistantDetails - order_trade_no。 |
| order_settle_id | BIGINT | | dwd_settlement_head(order_settle_id) | 订单结算 ID,相当于“结账单号”的内部主键。;关联:与小票详情中的 orderSettleId 对应;用于跨表关联与去重。 | assistant_service_records - order_settle_id。 | assistant_service_records.json - data.orderAssistantDetails - order_settle_id。 |
| order_pay_id | BIGINT | | | 关联到“支付记录”的主键 ID。;用途:可以和支付记录中的 id / relate_id 等字段对应,找到这条助教服务对应的支付流水;用于跨表关联与去重。 | assistant_service_records - order_pay_id。 | assistant_service_records.json - data.orderAssistantDetails - order_pay_id。 |
| order_assistant_id | BIGINT | | | 订单中“助教项目明细”的内部 ID。;用途:如果订单里有多条助教项目(比如换助教、多个时间段),此字段唯一标识这一条助教明细;用于跨表关联与去重。 | assistant_service_records - order_assistant_id。 | assistant_service_records.json - data.orderAssistantDetails - order_assistant_id。 |
| order_assistant_type | INTEGER | | | 1:常规助教服务(主课/基础课)。 | assistant_service_records - order_assistant_type。 | assistant_service_records.json - data.orderAssistantDetails - order_assistant_type。 |
| tenant_id | BIGINT | | | 租户/品牌 ID;你这份数据中是固定值(同一个商户)。;关联:全库所有表都有,作为“商户维度”的过滤键;用途:多租户数据隔离与按租户汇总。 | assistant_service_records - tenant_id。 | assistant_service_records.json - data.orderAssistantDetails - tenant_id。 |
| site_id | BIGINT | | dim_site(site_id) | 门店 ID,本数据中指“朗朗桌球”这一家门店。;关联:与其他所有 JSON 中的 site_id 一致,用于判断记录属于哪家门店。 | assistant_service_records - site_id。 | assistant_service_records.json - data.orderAssistantDetails - site_id。 |
| site_table_id | BIGINT | | | 球台 ID。;关联:对应台桌列表中的 id 字段,表示具体是哪一张桌;用于跨表关联与去重。 | assistant_service_records - site_table_id。 | assistant_service_records.json - data.orderAssistantDetails - site_table_id。 |
| tenant_member_id | BIGINT | | | 商户维度会员 ID(门店/品牌内的会员主键)。;关联:**会员档案(tenantMemberInfos)**中的 id = 此处的 tenant_member_id;用于跨表关联与去重。 | assistant_service_records - tenant_member_id。 | assistant_service_records.json - data.orderAssistantDetails - tenant_member_id。 |
| system_member_id | BIGINT | | | 系统级会员 ID(全集团统一 ID)。;关联:会员档案中的 system_member_id 字段;用于跨表关联与去重。 | assistant_service_records - system_member_id。 | assistant_service_records.json - data.orderAssistantDetails - system_member_id。 |
| assistant_no | VARCHAR(64) | | | 助教编号,例如 "27"。;关联:在助教账号表里也有 assistant_no 字段,对应工号/编号。 | assistant_service_records - assistantNo。 | assistant_service_records.json - data.orderAssistantDetails - assistantNo。 |
| nickname | VARCHAR(64) | | | 助教对外昵称,如“佳怡”“周周”“球球”等。;关联:在很多小票、商品名里,会把 “编号-昵称” 组合使用(如 ledger_name = "2-佳怡")。 | assistant_service_records - nickname。 | assistant_service_records.json - data.orderAssistantDetails - nickname。 |
| site_assistant_id | BIGINT | | | 订单中“助教项目明细”的内部 ID。;用途:如果订单里有多条助教项目(比如换助教、多个时间段),此字段唯一标识这一条助教明细;用于跨表关联与去重。 | assistant_service_records - order_assistant_id。 | assistant_service_records.json - data.orderAssistantDetails - order_assistant_id。 |
| user_id | BIGINT | | | 助教对应的“用户账号 ID”(系统级用户)。;关联:在助教账号表中有同名字段 user_id,与这里完全一致;用于跨表关联与去重。 | assistant_service_records - user_id。 | assistant_service_records.json - data.orderAssistantDetails - user_id。 |
| assistant_team_id | BIGINT | | | 助教所属团队 ID。;关联:在助教账号表中有 team_id 字段,对应相同值;用于跨表关联与去重。 | assistant_service_records - assistant_team_id。 | assistant_service_records.json - data.orderAssistantDetails - assistant_team_id。 |
| person_org_id | BIGINT | | | 助教所属“人事组织/部门 ID”。;关联:在助教账号表中同样存在 person_org_id 字段,值完全一致;用于跨表关联与去重。 | assistant_service_records - person_org_id。 | assistant_service_records.json - data.orderAssistantDetails - person_org_id。 |
| assistant_level | INTEGER | | | 业务明细字段,用于补充该记录的业务属性。 | assistant_service_records - assistant_level。 | assistant_service_records.json - data.orderAssistantDetails - assistant_level。 |
| level_name | VARCHAR(64) | | | 助教等级名称,与 assistant_level 一一对应(初级/中级/高级/助教管理)。 | assistant_service_records - levelName。 | assistant_service_records.json - data.orderAssistantDetails - levelName。 |
| skill_id | BIGINT | | | 助教服务“课程/技能”ID。;关联:应对应某个“课程/技能配置表”的主键(你这次导出里没见那个表);用于跨表关联与去重。 | assistant_service_records - skill_id。 | assistant_service_records.json - data.orderAssistantDetails - skill_id。 |
| skill_name | VARCHAR(64) | | | 当前这条助教服务所对应的“课程/技能名称”。 | assistant_service_records - skillName。 | assistant_service_records.json - data.orderAssistantDetails - skillName。 |
| ledger_unit_price | NUMERIC(10,2) | | | 助教服务 标准单价(通常是标价:每小时、每节课的单价)。 | assistant_service_records - ledger_unit_price。 | assistant_service_records.json - data.orderAssistantDetails - ledger_unit_price。 |
| ledger_amount | NUMERIC(10,2) | | | 按标准单价计算出来的应收金额(近似 = ledger_unit_price × income_seconds / 3600)。 | assistant_service_records - ledger_amount。 | assistant_service_records.json - data.orderAssistantDetails - ledger_amount。 |
| projected_income | NUMERIC(10,2) | | | 实际结算计入门店的金额(已经考虑折扣、卡权益、券等后的结果)。 | assistant_service_records - projected_income。 | assistant_service_records.json - data.orderAssistantDetails - projected_income。 |
| coupon_deduct_money | NUMERIC(10,2) | | | 由“优惠券/代金券/团购券”等 直接抵扣到这条助教服务上的金额。 | assistant_service_records - coupon_deduct_money。 | assistant_service_records.json - data.orderAssistantDetails - coupon_deduct_money。 |
| income_seconds | INTEGER | | | 计费秒数 / 应计收入对应的时间。 | assistant_service_records - income_seconds。 | assistant_service_records.json - data.orderAssistantDetails - income_seconds。 |
| real_use_seconds | INTEGER | | | 实际使用时长(秒)。 | assistant_service_records - real_use_seconds。 | assistant_service_records.json - data.orderAssistantDetails - real_use_seconds。 |
| add_clock | INTEGER | | | 加钟秒数,即在原有预约/服务基础上临时追加的时长。 | assistant_service_records - add_clock。 | assistant_service_records.json - data.orderAssistantDetails - add_clock。 |
| create_time | TIMESTAMPTZ | | | 这条助教流水记录创建时间(一般接近结算/下单时间);记录源系统创建时间,用于增量同步和口径对齐。 | assistant_service_records - create_time。 | assistant_service_records.json - data.orderAssistantDetails - create_time。 |
| start_use_time | TIMESTAMPTZ | | | 助教实际开始服务时间。 | assistant_service_records - start_use_time。 | assistant_service_records.json - data.orderAssistantDetails - start_use_time。 |
| last_use_time | TIMESTAMPTZ | | | 最后一次使用(实际服务)时间。 | assistant_service_records - last_use_time。 | assistant_service_records.json - data.orderAssistantDetails - last_use_time。 |
| is_delete | INTEGER | | | 逻辑删除标志。;注意:这份助教流水里没有直接出现“顾客姓名”字段,只通过这两个 ID 与会员档案、储值卡等表关联;软删除/作废标记,分析通常需过滤为有效记录。 | assistant_service_records - is_delete。 | assistant_service_records.json - data.orderAssistantDetails - is_delete。 |
dwd_assistant_trash_event
-
表说明:DWD 明细事实表:dwd_assistant_trash_event。ODS 来源表:billiards_ods.assistant_cancellation_records(对应 JSON:assistant_cancellation_records.json;分析:assistant_cancellation_records-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。
-
主键:assistant_trash_event_id
-
类型:事实/明细
| 字段 | 类型 | 主键 | 关联(推断) | 字段用途(说明) | ODS来源 | JSON字段 |
|---|---|---:|---|---|---|---|
| assistant_trash_event_id | BIGINT | Y | | 助教trashevent ID(源系统唯一标识),用于跨表关联、去重与维度汇总。 | assistant_cancellation_records - id。 | assistant_cancellation_records.json - data.abolitionAssistants - id。 |
| site_id | BIGINT | | dim_site(site_id) | 门店 ID,即该废除记录所在门店。;关联:与 siteProfile.id 一致;用途:门店维度分组、计营业额、与门店档案关联。 | assistant_cancellation_records - siteId。 | assistant_cancellation_records.json - data.abolitionAssistants - siteId。 |
| table_id | BIGINT | | dim_table(table_id) | 球台/桌子的 ID。;关联:对应 “台桌列表.json” 中的 id 字段;用于跨表关联与去重。 | assistant_cancellation_records - tableId。 | assistant_cancellation_records.json - data.abolitionAssistants - tableId。 |
| table_area_id | BIGINT | | | 台桌所在区域 ID。;关联:应对应“区域配置表”的主键(本次导出未包含该表);用于跨表关联与去重。 | assistant_cancellation_records - tableAreaId。 | assistant_cancellation_records.json - data.abolitionAssistants - tableAreaId。 |
| assistant_no | VARCHAR(32) | | | 助教姓名/对外展示名称。;注意:这是被废除的那位助教,不是顾客姓名。 | assistant_cancellation_records - assistantName。 | assistant_cancellation_records.json - data.abolitionAssistants - assistantName。 |
| assistant_name | VARCHAR(64) | | | 助教姓名/对外展示名称。;注意:这是被废除的那位助教,不是顾客姓名。 | assistant_cancellation_records - assistantName。 | assistant_cancellation_records.json - data.abolitionAssistants - assistantName。 |
| charge_minutes_raw | INTEGER | | | “已发生的计费时长(分钟)”,即这次助教服务在被废除前已经累计了多少分钟。 | assistant_cancellation_records - pdChargeMinutes。 | assistant_cancellation_records.json - data.abolitionAssistants - pdChargeMinutes。 |
| abolish_amount | NUMERIC(18,2) | | | 与“助教废除”关联的金额字段。字面上是“助教废除金额”。 | assistant_cancellation_records - assistantAbolishAmount。 | assistant_cancellation_records.json - data.abolitionAssistants - assistantAbolishAmount。 |
| trash_reason | VARCHAR(255) | | | 用于记录“废除原因”的文本描述,例如“顾客临时有事取消”“录入错误”“更换助教”等。 | assistant_cancellation_records - trashReason。 | assistant_cancellation_records.json - data.abolitionAssistants - trashReason。 |
| create_time | TIMESTAMPTZ | | | 这条“助教废除记录”被创建的时间,即系统正式记录“废除”操作的时刻;记录源系统创建时间,用于增量同步和口径对齐。 | assistant_cancellation_records - createTime。 | assistant_cancellation_records.json - data.abolitionAssistants - createTime。 |
dwd_groupbuy_redemption
-
表说明:DWD 明细事实表:dwd_groupbuy_redemption。ODS 来源表:billiards_ods.group_buy_redemption_records(对应 JSON:group_buy_redemption_records.json;分析:group_buy_redemption_records-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。
-
主键:redemption_id
-
类型:事实/明细
| 字段 | 类型 | 主键 | 关联(推断) | 字段用途(说明) | ODS来源 | JSON字段 |
|---|---|---:|---|---|---|---|
| redemption_id | BIGINT | Y | | 本条“团购套餐流水”记录的 主键 ID。;用途:唯一标识一条券使用到台费上的记录;用于跨表关联与去重。 | group_buy_redemption_records - id。 | group_buy_redemption_records.json - data.siteTableUseDetailsList - id。 |
| tenant_id | BIGINT | | | 租户/品牌 ID;用途:多租户数据隔离与按租户汇总。 | group_buy_redemption_records - tenant_id。 | group_buy_redemption_records.json - data.siteTableUseDetailsList - tenant_id。 |
| site_id | BIGINT | | dim_site(site_id) | 门店 ID,与其它 JSON 中一致。;关联:与“团购套餐定义”、“助教流水”、“台费流水”、“门店销售记录”等文件中的 site_id 完全一致,用于统一按门店过滤。 | group_buy_redemption_records - site_id。 | group_buy_redemption_records.json - data.siteTableUseDetailsList - site_id。 |
| table_id | BIGINT | | dim_table(table_id) | 球台 ID。;关联:对应“台桌列表”表中的 id 字段;用于跨表关联与去重。 | group_buy_redemption_records - table_id。 | group_buy_redemption_records.json - data.siteTableUseDetailsList - table_id。 |
| tenant_table_area_id | BIGINT | | | 租户级台区分组 ID,表示当前使用券的台桌所属的区域组合。;关联:与“团购套餐定义”中的 tenant_table_area_id_list 对应(那边是字符串形态,这里是数值形态),表明该券只能在某些台区组合上使用;用于跨表关联与去重。 | group_buy_redemption_records - tenant_table_area_id。 | group_buy_redemption_records.json - data.siteTableUseDetailsList - tenant_table_area_id。 |
| table_charge_seconds | INTEGER | | | 本次结算中该球台总计计费的秒数(整台的台费计费时间)。 | group_buy_redemption_records - table_charge_seconds。 | group_buy_redemption_records.json - data.siteTableUseDetailsList - table_charge_seconds。 |
| order_trade_no | BIGINT | | | 订单交易号,和其它消费明细(台费、商品、助教、团购)共用的订单主键。;关联:与“小票详情”、“台费流水”、“助教流水”等的 order_trade_no 一致,用于将同一笔结账中的所有子项目关联起来。 | group_buy_redemption_records - order_trade_no。 | group_buy_redemption_records.json - data.siteTableUseDetailsList - order_trade_no。 |
| order_settle_id | BIGINT | | dwd_settlement_head(order_settle_id) | 结算单 ID(小票结账主键)。;关联:与“小票详情”中的 orderSettleId 相对应;用于跨表关联与去重。 | group_buy_redemption_records - order_settle_id。 | group_buy_redemption_records.json - data.siteTableUseDetailsList - order_settle_id。 |
| order_coupon_id | BIGINT | | | 订单中“券使用记录”的 ID;用于跨表关联与去重。 | group_buy_redemption_records - order_coupon_id。 | group_buy_redemption_records.json - data.siteTableUseDetailsList - order_coupon_id。 |
| coupon_origin_id | BIGINT | | | 平台/上游系统中的券记录主键 ID,“券来源 ID”;用于跨表关联与去重。 | group_buy_redemption_records - coupon_origin_id。 | group_buy_redemption_records.json - data.siteTableUseDetailsList - coupon_origin_id。 |
| promotion_activity_id | BIGINT | | | 团购/促销活动 ID;用于跨表关联与去重。 | group_buy_redemption_records - promotion_activity_id。 | group_buy_redemption_records.json - data.siteTableUseDetailsList - promotion_activity_id。 |
| promotion_coupon_id | BIGINT | | | 团购套餐定义 ID。;关联:与 20251110_043255_团购套餐.json 中的 id 字段一一对应,即:;用于跨表关联与去重。 | group_buy_redemption_records - promotion_coupon_id。 | group_buy_redemption_records.json - data.siteTableUseDetailsList - promotion_coupon_id。 |
| order_coupon_channel | INTEGER | | | 券渠道类型,例如:。 | group_buy_redemption_records - order_coupon_channel。 | group_buy_redemption_records.json - data.siteTableUseDetailsList - order_coupon_channel。 |
| ledger_unit_price | NUMERIC(18,2) | | | 对应台费的标准单价,单位元/小时(从数值来看是类似29.9/小时这种定价)。;用途:配合 ledger_count 用于计算这一条券在台费层面对应的金额(理论上应接近 = 单价 × 秒数/3600)。 | group_buy_redemption_records - ledger_unit_price。 | group_buy_redemption_records.json - data.siteTableUseDetailsList - ledger_unit_price。 |
| ledger_count | INTEGER | | | 按此次优惠实际计算的“核销秒数”。 | group_buy_redemption_records - ledger_count。 | group_buy_redemption_records.json - data.siteTableUseDetailsList - ledger_count。 |
| ledger_amount | NUMERIC(18,2) | | | 本次券实际冲抵台费的金额。 | group_buy_redemption_records - ledger_amount。 | group_buy_redemption_records.json - data.siteTableUseDetailsList - ledger_amount。 |
| coupon_money | NUMERIC(18,2) | | | 本次核销时,这张券在门店侧对应的金额额度(“可抵扣金额”)。 | group_buy_redemption_records - coupon_money。 | group_buy_redemption_records.json - data.siteTableUseDetailsList - coupon_money。 |
| promotion_seconds | INTEGER | | | 团购套餐定义的“标准时长”(券本身标称的可用时长)。 | group_buy_redemption_records - promotion_seconds。 | group_buy_redemption_records.json - data.siteTableUseDetailsList - promotion_seconds。 |
| coupon_code | VARCHAR(64) | | | 团购券券码,核销时扫描/录入的字符串。;关联:与平台验券记录表中的 coupon_code 完全一致,通过该字段可以串起“平台 → 核销 → 台费流水”全链路。 | group_buy_redemption_records - coupon_code。 | group_buy_redemption_records.json - data.siteTableUseDetailsList - coupon_code。 |
| is_single_order | INTEGER | | | 是否单独作为一条订单行。 | group_buy_redemption_records - is_single_order。 | group_buy_redemption_records.json - data.siteTableUseDetailsList - is_single_order。 |
| is_delete | INTEGER | | | 逻辑删除标志:;软删除/作废标记,分析通常需过滤为有效记录。 | group_buy_redemption_records - is_delete。 | group_buy_redemption_records.json - data.siteTableUseDetailsList - is_delete。 |
| ledger_name | VARCHAR(128) | | | 台费侧关联的“团购项目名称”(记账名)。 | group_buy_redemption_records - ledger_name。 | group_buy_redemption_records.json - data.siteTableUseDetailsList - ledger_name。 |
| create_time | TIMESTAMPTZ | | | 本条团购套餐使用流水创建时间(即券核销时间,或与结账时间接近);记录源系统创建时间,用于增量同步和口径对齐。 | group_buy_redemption_records - create_time。 | group_buy_redemption_records.json - data.siteTableUseDetailsList - create_time。 |
dwd_member_balance_change
-
表说明:DWD 明细事实表:dwd_member_balance_change。ODS 来源表:billiards_ods.member_balance_changes(对应 JSON:member_balance_changes.json;分析:member_balance_changes-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。
-
主键:balance_change_id
-
类型:事实/明细
| 字段 | 类型 | 主键 | 关联(推断) | 字段用途(说明) | ODS来源 | JSON字段 |
|---|---|---:|---|---|---|---|
| balance_change_id | BIGINT | Y | | 余额变更记录的主键 ID,唯一标识这一条“账户余额变化事件”;用于跨表关联与去重。 | member_balance_changes - id。 | member_balance_changes.json - data.tenantMemberCardLogs - id。 |
| tenant_id | BIGINT | | | 租户/商户 ID,本数据中是固定值(同一品牌/商户);用途:多租户数据隔离与按租户汇总。 | member_balance_changes - tenant_id。 | member_balance_changes.json - data.tenantMemberCardLogs - tenant_id。 |
| site_id | BIGINT | | dim_site(site_id) | 非 0:记录所属的具体门店 ID(与其他 JSON 内的 site_id 一致)。;关联:可与门店档案(siteProfile.id)对应;用途:门店维度分组、计营业额、与门店档案关联。 | member_balance_changes - site_id。 | member_balance_changes.json - data.tenantMemberCardLogs - site_id。 |
| register_site_id | BIGINT | | | 会员卡的“注册门店 ID”,即办卡所在门店;用于跨表关联与去重。 | member_balance_changes - register_site_id。 | member_balance_changes.json - data.tenantMemberCardLogs - register_site_id。 |
| tenant_member_id | BIGINT | | | 商户维度的会员 ID(租户内会员主键)。;用途:在本表与会员档案之间形成外键关系: 余额变更记录.tenant_member_id = 会员档案.id;关联:对应“会员档案(20251110_043209_…)”中的 id 字段,即同一个租户下的会员主键;用于跨表关联与去重。 | member_balance_changes - tenant_member_id。 | member_balance_changes.json - data.tenantMemberCardLogs - tenant_member_id。 |
| system_member_id | BIGINT | | | 系统级(全局)会员 ID。;关联:对应会员档案中的 system_member_id 字段;用于跨表关联与去重。 | member_balance_changes - system_member_id。 | member_balance_changes.json - data.tenantMemberCardLogs - system_member_id。 |
| tenant_member_card_id | BIGINT | | | 会员卡账户 ID,在租户内唯一标识某张卡。;用途:一名会员可以有多张卡(储值卡、台费卡、酒水卡、活动券等),tenant_member_card_id 指明这条余额变更是针对哪一张卡。;关联:对应“会员档案/储值卡列表”中的 id(卡账户 ID);用于跨表关联与去重。 | member_balance_changes - tenant_member_card_id。 | member_balance_changes.json - data.tenantMemberCardLogs - tenant_member_card_id。 |
| card_type_id | BIGINT | | | 卡种类型 ID,用于区分不同卡种。 | member_balance_changes - card_type_id。 | member_balance_changes.json - data.tenantMemberCardLogs - card_type_id。 |
| card_type_name | VARCHAR(32) | | | 卡种名称,与 card_type_id 一一对应,是一个 卡种枚举名称。 | member_balance_changes - memberCardTypeName。 | member_balance_changes.json - data.tenantMemberCardLogs - memberCardTypeName。 |
| member_name | VARCHAR(64) | | | 会员姓名或称呼(非昵称字段)。 | member_balance_changes - memberName。 | member_balance_changes.json - data.tenantMemberCardLogs - memberName。 |
| member_mobile | VARCHAR(20) | | | 会员手机号;手机号码,用于账户/会员识别、查询与联系。 | member_balance_changes - memberMobile。 | member_balance_changes.json - data.tenantMemberCardLogs - memberMobile。 |
| balance_before | NUMERIC(18,2) | | | 本次变动前,该卡账户的余额(元)。 | member_balance_changes - before。 | member_balance_changes.json - data.tenantMemberCardLogs - before。 |
| change_amount | NUMERIC(18,2) | | | 本次变动的金额(元),正数表示增加,负数表示减少。 | member_balance_changes - account_data。 | member_balance_changes.json - data.tenantMemberCardLogs - account_data。 |
| balance_after | NUMERIC(18,2) | | | 本次变动后,该卡账户的余额(元)。 | member_balance_changes - after。 | member_balance_changes.json - data.tenantMemberCardLogs - after。 |
| from_type | INTEGER | | | 1:日常消费扣款。 | member_balance_changes - from_type。 | member_balance_changes.json - data.tenantMemberCardLogs - from_type。 |
| payment_method | INTEGER | | | 业务状态/类型字段,用于过滤、分类与统计口径区分。 | member_balance_changes - payment_method。 | member_balance_changes.json - data.tenantMemberCardLogs - payment_method。 |
| change_time | TIMESTAMPTZ | | | 本条余额变更记录的创建时间,通常接近交易发生时间。 | member_balance_changes - create_time。 | member_balance_changes.json - data.tenantMemberCardLogs - create_time。 |
| is_delete | INTEGER | | | 逻辑删除标记:;软删除/作废标记,分析通常需过滤为有效记录。 | member_balance_changes - is_delete。 | member_balance_changes.json - data.tenantMemberCardLogs - is_delete。 |
| remark | VARCHAR(255) | | | 当为空时,说明这条变动没有额外备注说明。 | member_balance_changes - remark。 | member_balance_changes.json - data.tenantMemberCardLogs - remark。 |
dwd_payment
-
表说明:DWD 明细事实表:dwd_payment。ODS 来源表:billiards_ods.payment_transactions(对应 JSON:payment_transactions.json;分析:payment_transactions-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。
-
主键:payment_id
-
类型:事实/明细
| 字段 | 类型 | 主键 | 关联(推断) | 字段用途(说明) | ODS来源 | JSON字段 |
|---|---|---:|---|---|---|---|
| payment_id | BIGINT | Y | | 支付流水记录的主键 ID。;用途:在“支付记录”这个表内部,唯一标识一条支付流水(包括金额为 0 的记录);用于跨表关联与去重。 | payment_transactions - id。 | payment_transactions.json - $ - id。 |
| site_id | BIGINT | | dim_site(site_id) | 支付记录所属的门店 ID;用途:门店维度分组、计营业额、与门店档案关联。 | payment_transactions - site_id。 | payment_transactions.json - $ - site_id。 |
| relate_type | INTEGER | | | 表示“这条支付记录关联的业务类型”。 | payment_transactions - relate_type。 | payment_transactions.json - $ - relate_type。 |
| relate_id | BIGINT | | | 关联业务记录的主键 ID(按 relate_type 不同指向不同表);用于跨表关联与去重。 | payment_transactions - relate_id。 | payment_transactions.json - $ - relate_id。 |
| pay_amount | NUMERIC(18,2) | | | 本条支付流水的“支付金额”,单位为元。 | payment_transactions - pay_amount。 | payment_transactions.json - $ - pay_amount。 |
| pay_status | INTEGER | | | 支付状态枚举字段。 | payment_transactions - pay_status。 | payment_transactions.json - $ - pay_status。 |
| payment_method | INTEGER | | | 支付方式枚举,例如微信、支付宝、现金、银行卡、储值卡等某一种。 | payment_transactions - payment_method。 | payment_transactions.json - $ - payment_method。 |
| online_pay_channel | INTEGER | | | 线上支付渠道枚举,例如:。 | payment_transactions - online_pay_channel。 | payment_transactions.json - $ - online_pay_channel。 |
| create_time | TIMESTAMPTZ | | | 支付记录创建时间,通常与发起支付请求的时间一致(创建支付流水的时间戳);记录源系统创建时间,用于增量同步和口径对齐。 | payment_transactions - create_time。 | payment_transactions.json - $ - create_time。 |
| pay_time | TIMESTAMPTZ | | | 实际支付完成时间(支付状态变为成功的时间戳)。 | payment_transactions - pay_time。 | payment_transactions.json - $ - pay_time。 |
| pay_date | DATE | | | 业务明细字段,用于补充该记录的业务属性。 | payment_transactions - pay_time(派生:DATE(pay_time))。 | payment_transactions.json - $ - pay_time(派生:DATE(pay_time))。 |
dwd_platform_coupon_redemption
-
表说明:DWD 明细事实表:dwd_platform_coupon_redemption。ODS 来源表:billiards_ods.platform_coupon_redemption_records(对应 JSON:platform_coupon_redemption_records.json;分析:platform_coupon_redemption_records-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。
-
主键:platform_coupon_redemption_id
-
类型:事实/明细
| 字段 | 类型 | 主键 | 关联(推断) | 字段用途(说明) | ODS来源 | JSON字段 |
|---|---|---:|---|---|---|---|
| platform_coupon_redemption_id | BIGINT | Y | | 本条平台验券记录在本系统内的主键 ID;用于跨表关联与去重。 | platform_coupon_redemption_records - id。 | platform_coupon_redemption_records.json - $ - id。 |
| tenant_id | BIGINT | | | 商户/租户 ID(品牌级别)。;关联:与其他所有 JSON 中的 tenant_id 一致,用于区分不同品牌/商户的数据域。 | platform_coupon_redemption_records - tenant_id。 | platform_coupon_redemption_records.json - $ - tenant_id。 |
| site_id | BIGINT | | dim_site(site_id) | 门店 ID。;关联:对应 siteProfile.id;用途:门店维度分组、计营业额、与门店档案关联。 | platform_coupon_redemption_records - site_id。 | platform_coupon_redemption_records.json - $ - site_id。 |
| coupon_code | VARCHAR(64) | | | 券码,顾客出示的团购券密码/编号。 | platform_coupon_redemption_records - coupon_code。 | platform_coupon_redemption_records.json - $ - coupon_code。 |
| coupon_channel | INTEGER | | | 券来源渠道(第三方平台渠道编号)。 | platform_coupon_redemption_records - coupon_channel。 | platform_coupon_redemption_records.json - $ - coupon_channel。 |
| coupon_name | VARCHAR(200) | | | 团购券产品名称(即第三方平台上向顾客展示的名称)。 | platform_coupon_redemption_records - coupon_name。 | platform_coupon_redemption_records.json - $ - coupon_name。 |
| sale_price | NUMERIC(10,2) | | | 顾客在第三方平台上实际支付的价格(团购售价)。 | platform_coupon_redemption_records - sale_price。 | platform_coupon_redemption_records.json - $ - sale_price。 |
| coupon_money | NUMERIC(10,2) | | | 券面值 / 套餐价值(系统层面的“可抵扣金额或对应套餐价值”)。 | platform_coupon_redemption_records - coupon_money。 | platform_coupon_redemption_records.json - $ - coupon_money。 |
| coupon_free_time | INTEGER | | | 券附带的“免费时长”字段(例如送多少分钟台费)。 | platform_coupon_redemption_records - coupon_free_time。 | platform_coupon_redemption_records.json - $ - coupon_free_time。 |
| channel_deal_id | BIGINT | | | 渠道侧 dealId / 产品 ID,一般是第三方平台给该团购商品定义的主键;用于跨表关联与去重。 | platform_coupon_redemption_records - channel_deal_id。 | platform_coupon_redemption_records.json - $ - channel_deal_id。 |
| deal_id | BIGINT | | | 另一个层次的团购产品 ID;用于跨表关联与去重。 | platform_coupon_redemption_records - deal_id。 | platform_coupon_redemption_records.json - $ - deal_id。 |
| group_package_id | BIGINT | | | group套餐 ID(源系统唯一标识),用于跨表关联、去重与维度汇总。 | platform_coupon_redemption_records - group_package_id。 | platform_coupon_redemption_records.json - $ - group_package_id。 |
| site_order_id | BIGINT | | | 门店内部的订单 ID(平台券核销时对应的店内订单)。;关联:与台费流水、门店销售记录、助教流水等中出现的订单 ID 字段对应,用于把“平台券核销记录”挂到一笔本地订单上。 | platform_coupon_redemption_records - site_order_id。 | platform_coupon_redemption_records.json - $ - site_order_id。 |
| table_id | BIGINT | | dim_table(table_id) | 使用券的球台 ID。;关联:与“台桌列表”中的 id 对应;用于跨表关联与去重。 | platform_coupon_redemption_records - table_id。 | platform_coupon_redemption_records.json - $ - table_id。 |
| certificate_id | VARCHAR(64) | | | 平台侧的凭证 ID(通常由第三方团购平台生成的券实例 ID);用于跨表关联与去重。 | platform_coupon_redemption_records - certificate_id。 | platform_coupon_redemption_records.json - $ - certificate_id。 |
| verify_id | VARCHAR(64) | | | 平台核销记录 ID(某些平台会为每一次核销生成一个唯一 ID);用于跨表关联与去重。 | platform_coupon_redemption_records - verify_id。 | platform_coupon_redemption_records.json - $ - verify_id。 |
| use_status | INTEGER | | | 1:已使用 / 已核销(正常消耗)。 | platform_coupon_redemption_records - use_status。 | platform_coupon_redemption_records.json - $ - use_status。 |
| is_delete | INTEGER | | | 0:未删除;用途:把平台验券记录挂到本门店的一条订单上;软删除/作废标记,分析通常需过滤为有效记录。 | platform_coupon_redemption_records - is_delete。 | platform_coupon_redemption_records.json - $ - is_delete。 |
| create_time | TIMESTAMPTZ | | | 验券记录在本系统中创建的时间(记录入库时间);记录源系统创建时间,用于增量同步和口径对齐。 | platform_coupon_redemption_records - create_time。 | platform_coupon_redemption_records.json - $ - create_time。 |
| consume_time | TIMESTAMPTZ | | | 券被核销/使用的业务时间。 | platform_coupon_redemption_records - consume_time。 | platform_coupon_redemption_records.json - $ - consume_time。 |
dwd_recharge_order
-
表说明:DWD 明细事实表:dwd_recharge_order。ODS 来源表:billiards_ods.recharge_settlements(对应 JSON:recharge_settlements.json;分析:recharge_settlements-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。
-
主键:recharge_order_id
-
类型:事实/明细
| 字段 | 类型 | 主键 | 关联(推断) | 字段用途(说明) | ODS来源 | JSON字段 |
|---|---|---:|---|---|---|---|
| recharge_order_id | BIGINT | Y | | 门店 ID;用于跨表关联与去重。 | recharge_settlements - id。 | recharge_settlements.json - $ - id。 |
| tenant_id | BIGINT | | | 租户/品牌 ID,和 siteProfile.tenant_id 一致;用途:多租户数据隔离与按租户汇总。 | recharge_settlements - tenantid。 | recharge_settlements.json - $ - tenantid。 |
| site_id | BIGINT | | dim_site(site_id) | 门店 ID,和 siteProfile.id 一致;用途:门店维度分组、计营业额、与门店档案关联。 | recharge_settlements - siteid。 | recharge_settlements.json - $ - siteid。 |
| member_id | BIGINT | | dim_member(member_id) | 会员档案的主键 ID。;关联:对应“会员档案.json”中 tenantMemberInfos 的 id 字段(部分成员能直接匹配);用于跨表关联与去重。 | recharge_settlements - memberid。 | recharge_settlements.json - $ - memberid。 |
| member_name_snapshot | TEXT | | | 会员名称/昵称快照。 | recharge_settlements - membername。 | recharge_settlements.json - $ - membername。 |
| member_phone_snapshot | TEXT | | | 会员手机号快照,用于查找和展示。 | recharge_settlements - memberphone。 | recharge_settlements.json - $ - memberphone。 |
| tenant_member_card_id | BIGINT | | | 会员卡实例 ID(某张具体卡);用于跨表关联与去重。 | recharge_settlements - tenantmembercardid。 | recharge_settlements.json - $ - tenantmembercardid。 |
| member_card_type_name | TEXT | | | 本次充值针对的会员卡类型名称。 | recharge_settlements - membercardtypename。 | recharge_settlements.json - $ - membercardtypename。 |
| settle_relate_id | BIGINT | | | 关联的“结算单/业务单”ID;用于跨表关联与去重。 | recharge_settlements - settlerelateid。 | recharge_settlements.json - $ - settlerelateid。 |
| settle_type | INTEGER | | | 业务状态/类型字段,用于过滤、分类与统计口径区分。 | recharge_settlements - settletype。 | recharge_settlements.json - $ - settletype。 |
| settle_name | TEXT | | | 业务类型名称,用于前端展示。 | recharge_settlements - settlename。 | recharge_settlements.json - $ - settlename。 |
| is_first | INTEGER | | | 业务状态/类型字段,用于过滤、分类与统计口径区分。 | recharge_settlements - isfirst。 | recharge_settlements.json - $ - isfirst。 |
| pay_amount | NUMERIC(18,2) | | | 本次记录对应的充值金额(含正负)。 | recharge_settlements - payamount。 | recharge_settlements.json - $ - payamount。 |
| refund_amount | NUMERIC(18,2) | | | 针对本条充值订单所做的退款金额(通常为正数)。 | recharge_settlements - refundamount。 | recharge_settlements.json - $ - refundamount。 |
| point_amount | NUMERIC(18,2) | | | 计入会员账户的“储值金额”或“积分型金额”。 | recharge_settlements - pointamount。 | recharge_settlements.json - $ - pointamount。 |
| cash_amount | NUMERIC(18,2) | | | 现金收款金额。 | recharge_settlements - cashamount。 | recharge_settlements.json - $ - cashamount。 |
| payment_method | INTEGER | | | 支付方式编码。 | recharge_settlements - paymentmethod。 | recharge_settlements.json - $ - paymentmethod。 |
| create_time | TIMESTAMPTZ | | | 充值记录创建时间,一般即收银完成时间;记录源系统创建时间,用于增量同步和口径对齐。 | recharge_settlements - createtime。 | recharge_settlements.json - $ - createtime。 |
| pay_time | TIMESTAMPTZ | | | 支付完成时间。 | recharge_settlements - paytime。 | recharge_settlements.json - $ - paytime。 |
dwd_refund
-
表说明:DWD 明细事实表:dwd_refund。ODS 来源表:billiards_ods.refund_transactions(对应 JSON:refund_transactions.json;分析:refund_transactions-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。
-
主键:refund_id
-
类型:事实/明细
| 字段 | 类型 | 主键 | 关联(推断) | 字段用途(说明) | ODS来源 | JSON字段 |
|---|---|---:|---|---|---|---|
| refund_id | BIGINT | Y | | 本条 退款流水 的唯一 ID。;用途:作为退款记录表主键,内部检索用;用于跨表关联与去重。 | refund_transactions - id。 | refund_transactions.json - $ - id。 |
| tenant_id | BIGINT | | | 租户/品牌 ID,全系统维度标识该商户。;用途:作为所有门店数据的“租户分区键”;用途:多租户数据隔离与按租户汇总。 | refund_transactions - tenant_id。 | refund_transactions.json - $ - tenant_id。 |
| site_id | BIGINT | | dim_site(site_id) | 门店 ID。;用途:关联其他数据表中同一门店的数据;用途:门店维度分组、计营业额、与门店档案关联。 | refund_transactions - site_id。 | refund_transactions.json - $ - site_id。 |
| relate_type | INTEGER | | | 本退款对应的“业务类型”。 | refund_transactions - relate_type。 | refund_transactions.json - $ - relate_type。 |
| relate_id | BIGINT | | | 本次退款关联的业务 ID;用于跨表关联与去重。 | refund_transactions - relate_id。 | refund_transactions.json - $ - relate_id。 |
| pay_amount | NUMERIC(18,2) | | | 本次退款的 资金变动金额。 | refund_transactions - pay_amount。 | refund_transactions.json - $ - pay_amount。 |
| channel_fee | NUMERIC(18,2) | | | 第三方支付渠道对本次退款收取的手续费。 | refund_transactions - channel_fee。 | refund_transactions.json - $ - channel_fee。 |
| pay_time | TIMESTAMPTZ | | | 退款在支付渠道层面实际发生的时间。 | refund_transactions - pay_time。 | refund_transactions.json - $ - pay_time。 |
| create_time | TIMESTAMPTZ | | | 本条退款流水在系统内创建时间;记录源系统创建时间,用于增量同步和口径对齐。 | refund_transactions - create_time。 | refund_transactions.json - $ - create_time。 |
| payment_method | INTEGER | | | 支付/退款的 方式类型:。 | refund_transactions - payment_method。 | refund_transactions.json - $ - payment_method。 |
| member_id | BIGINT | | dim_member(member_id) | 租户内部的会员 ID(对应会员档案中的某个主键);用于跨表关联与去重。 | refund_transactions - member_id。 | refund_transactions.json - $ - member_id。 |
| member_card_id | BIGINT | | dim_member_card_account(member_card_id) | 关联的会员卡账户 ID(对应“储值卡列表”或“会员档案”中的某一张卡);用于跨表关联与去重。 | refund_transactions - member_card_id。 | refund_transactions.json - $ - member_card_id。 |
dwd_settlement_head
-
表说明:DWD 明细事实表:dwd_settlement_head。ODS 来源表:billiards_ods.settlement_records(对应 JSON:settlement_records.json;分析:settlement_records-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。
-
主键:order_settle_id
-
类型:事实/明细
| 字段 | 类型 | 主键 | 关联(推断) | 字段用途(说明) | ODS来源 | JSON字段 |
|---|---|---:|---|---|---|---|
| order_settle_id | BIGINT | Y | | 结账记录主键 ID(订单结算 ID)。;关联:与台费流水(siteTableUseDetailsList)中的 order_settle_id 一致;用于跨表关联与去重。 | settlement_records - id。 | settlement_records.json - $ - id。 |
| tenant_id | BIGINT | | | 租户/商户 ID(品牌维度);用途:多租户数据隔离与按租户汇总。 | settlement_records - tenantid。 | settlement_records.json - $ - tenantid。 |
| site_id | BIGINT | | dim_site(site_id) | 门店 ID。;关联:与其他所有 JSON 中的 site_id 对应;用途:门店维度分组、计营业额、与门店档案关联。 | settlement_records - siteid。 | settlement_records.json - $ - siteid。 |
| site_name | VARCHAR(100) | | | 门店名称,冗余展示字段。 | settlement_records - sitename。 | settlement_records.json - $ - sitename。 |
| table_id | BIGINT | | dim_table(table_id) | 本次结账对应的桌台 ID。;关联:对应台桌维表或台费流水中的 site_table_id;用于跨表关联与去重。 | settlement_records - tableid。 | settlement_records.json - $ - tableid。 |
| settle_name | VARCHAR(100) | | | 结账对象名称,一般是“区域 + 桌号”的组合。 | settlement_records - settlename。 | settlement_records.json - $ - settlename。 |
| order_trade_no | BIGINT | | | 关联订单的“交易号”(order_trade_no)。;关联:与台费流水(order_trade_no)、助教流水(order_trade_no)中的该字段完全一致。 | settlement_records - settlerelateid。 | settlement_records.json - $ - settlerelateid。 |
| create_time | TIMESTAMPTZ | | | 结账记录创建时间,一般对应收银端点“确认结账”的时间;记录源系统创建时间,用于增量同步和口径对齐。 | settlement_records - createtime。 | settlement_records.json - $ - createtime。 |
| pay_time | TIMESTAMPTZ | | | 实际支付完成时间。通常晚于 createTime(比如多支付场景)。 | settlement_records - paytime。 | settlement_records.json - $ - paytime。 |
| settle_type | INTEGER | | | 代表结账类型,比如:。 | settlement_records - settletype。 | settlement_records.json - $ - settletype。 |
| revoke_order_id | BIGINT | | | 若当前记录是“被撤销的单”,则记录对应的“撤销单 ID”;或反过来记录“原单 ID”;用于跨表关联与去重。 | settlement_records - revokeorderid。 | settlement_records.json - $ - revokeorderid。 |
| member_id | BIGINT | | dim_member(member_id) | 会员主键 ID。;关联:与“会员卡列表(tenantMemberCards)”中的 tenant_member_id 一致;用于跨表关联与去重。 | settlement_records - memberid。 | settlement_records.json - $ - memberid。 |
| member_name | VARCHAR(100) | | | 会员姓名快照。 | settlement_records - membername。 | settlement_records.json - $ - membername。 |
| member_phone | VARCHAR(50) | | | 会员手机号快照;手机号码,用于账户/会员识别、查询与联系。 | settlement_records - memberphone。 | settlement_records.json - $ - memberphone。 |
| member_card_account_id | BIGINT | | | 会员卡账户 ID(与 memberId、会员卡表的 id 之间存在映射);用于跨表关联与去重。 | settlement_records - tenantmembercardid。 | settlement_records.json - $ - tenantmembercardid。 |
| member_card_type_name | VARCHAR(100) | | | 会员卡类型名称,如“储值卡”“次卡”“活动抵用券”等。 | settlement_records - membercardtypename。 | settlement_records.json - $ - membercardtypename。 |
| is_bind_member | BOOLEAN | | | 本次结账是否绑定了会员。 | settlement_records - isbindmember。 | settlement_records.json - $ - isbindmember。 |
| member_discount_amount | NUMERIC(18,2) | | | 会员折扣产生的优惠金额(元)。 | settlement_records - memberdiscountamount。 | settlement_records.json - $ - memberdiscountamount。 |
| consume_money | NUMERIC(18,2) | | | 本次结账消费总额(不考虑支付方式/优惠结构的前后顺序,单纯汇总项目金额)。 | settlement_records - consumemoney。 | settlement_records.json - $ - consumemoney。 |
| table_charge_money | NUMERIC(18,2) | | | 台费(桌台计费部分)的金额。 | settlement_records - tablechargemoney。 | settlement_records.json - $ - tablechargemoney。 |
| goods_money | NUMERIC(18,2) | | | 商品销售金额(原始商品金额)。 | settlement_records - goodsmoney。 | settlement_records.json - $ - goodsmoney。 |
| real_goods_money | NUMERIC(18,2) | | | 商品实际计入金额(可能已扣除某些折扣、促销)。 | settlement_records - realgoodsmoney。 | settlement_records.json - $ - realgoodsmoney。 |
| assistant_pd_money | NUMERIC(18,2) | | | 助教“排钟/上课”应计金额(原价)。;关联:与 助教流水.json 中对应订单的 ledger_amount 一致(应收金额)。 | settlement_records - assistantpdmoney。 | settlement_records.json - $ - assistantpdmoney。 |
| assistant_cx_money | NUMERIC(18,2) | | | 助教“次课/套餐/持续课”等另一类助教项目的金额。 | settlement_records - assistantcxmoney。 | settlement_records.json - $ - assistantcxmoney。 |
| adjust_amount | NUMERIC(18,2) | | | 人工调价金额(总和),包括整单减免、特殊调整等。 | settlement_records - adjustamount。 | settlement_records.json - $ - adjustamount。 |
| pay_amount | NUMERIC(18,2) | | | 本次结账“实付金额”(顾客实际支付的总金额),不包括券面值、积分等非现金部分。 | settlement_records - payamount。 | settlement_records.json - $ - payamount。 |
| balance_amount | NUMERIC(18,2) | | | 从会员余额账户扣除的金额(储值卡余额消费)。 | settlement_records - balanceamount。 | settlement_records.json - $ - balanceamount。 |
| recharge_card_amount | NUMERIC(18,2) | | | 与“充值卡”相关的支付额,可能表示本次使用充值卡抵扣的金额。 | settlement_records - rechargecardamount。 | settlement_records.json - $ - rechargecardamount。 |
| gift_card_amount | NUMERIC(18,2) | | | 礼品卡/代金卡的支付金额。 | settlement_records - giftcardamount。 | settlement_records.json - $ - giftcardamount。 |
| coupon_amount | NUMERIC(18,2) | | | 本单实际由优惠券(代金券/团购券等)抵扣的金额。 | settlement_records - couponamount。 | settlement_records.json - $ - couponamount。 |
| rounding_amount | NUMERIC(18,2) | | | 抹零金额/舍入差值。如四舍五入或按角、分抹零产生的调整。 | settlement_records - roundingamount。 | settlement_records.json - $ - roundingamount。 |
| point_amount | NUMERIC(18,2) | | | 代表与积分相关的一个金额或数量指标。结合字段命名,可能有两种用途:。 | settlement_records - pointamount。 | settlement_records.json - $ - pointamount。 |
dwd_store_goods_sale
-
表说明:DWD 明细事实表:dwd_store_goods_sale。ODS 来源表:billiards_ods.store_goods_sales_records(对应 JSON:store_goods_sales_records.json;分析:store_goods_sales_records-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。
-
主键:store_goods_sale_id
-
类型:事实/明细
| 字段 | 类型 | 主键 | 关联(推断) | 字段用途(说明) | ODS来源 | JSON字段 |
|---|---|---:|---|---|---|---|
| store_goods_sale_id | BIGINT | Y | | 本条「门店销售流水」记录的主键 ID;用于跨表关联与去重。 | store_goods_sales_records - id。 | store_goods_sales_records.json - data.orderGoodsLedgers - id。 |
| order_trade_no | BIGINT | | | 订单交易号(业务单号)。 | store_goods_sales_records - order_trade_no。 | store_goods_sales_records.json - data.orderGoodsLedgers - order_trade_no。 |
| order_settle_id | BIGINT | | dwd_settlement_head(order_settle_id) | 订单结算 ID(结账单主键);用于跨表关联与去重。 | store_goods_sales_records - order_settle_id。 | store_goods_sales_records.json - data.orderGoodsLedgers - order_settle_id。 |
| order_pay_id | BIGINT | | | 关联支付记录的 ID;用于跨表关联与去重。 | store_goods_sales_records - order_pay_id。 | store_goods_sales_records.json - data.orderGoodsLedgers - order_pay_id。 |
| order_goods_id | BIGINT | | | 订单商品明细 ID(订单内部的商品行主键);用于跨表关联与去重。 | store_goods_sales_records - order_goods_id。 | store_goods_sales_records.json - data.orderGoodsLedgers - order_goods_id。 |
| site_id | BIGINT | | dim_site(site_id) | 门店 ID(系统主键);用途:门店维度分组、计营业额、与门店档案关联。 | store_goods_sales_records - site_id。 | store_goods_sales_records.json - data.orderGoodsLedgers - site_id。 |
| tenant_id | BIGINT | | | 租户/品牌 ID;用途:多租户数据隔离与按租户汇总。 | store_goods_sales_records - tenant_id。 | store_goods_sales_records.json - data.orderGoodsLedgers - tenant_id。 |
| site_goods_id | BIGINT | | dim_store_goods(site_goods_id) | 门店商品 ID;用于跨表关联与去重。 | store_goods_sales_records - site_goods_id。 | store_goods_sales_records.json - data.orderGoodsLedgers - site_goods_id。 |
| tenant_goods_id | BIGINT | | dim_tenant_goods(tenant_goods_id) | 租户(品牌)级商品 ID(全局商品 ID);用于跨表关联与去重。 | store_goods_sales_records - tenant_goods_id。 | store_goods_sales_records.json - data.orderGoodsLedgers - tenant_goods_id。 |
| tenant_goods_category_id | BIGINT | | | 租户级商品一级分类 ID;用于跨表关联与去重。 | store_goods_sales_records - tenant_goods_category_id。 | store_goods_sales_records.json - data.orderGoodsLedgers - tenant_goods_category_id。 |
| tenant_goods_business_id | BIGINT | | | 租户级商品「业务大类」ID(例如“零食类”“酒水类”等更高维度);用于跨表关联与去重。 | store_goods_sales_records - tenant_goods_business_id。 | store_goods_sales_records.json - data.orderGoodsLedgers - tenant_goods_business_id。 |
| site_table_id | BIGINT | | | 球台 ID;用于跨表关联与去重。 | store_goods_sales_records - site_table_id。 | store_goods_sales_records.json - data.orderGoodsLedgers - site_table_id。 |
| ledger_name | VARCHAR(200) | | | 销售项目名称(商品名称),例如 “哇哈哈矿泉水”“地道肠”“东方树叶”等。 | store_goods_sales_records - ledger_name。 | store_goods_sales_records.json - data.orderGoodsLedgers - ledger_name。 |
| ledger_group_name | VARCHAR(100) | | | 销售项目所属的「门店内部分组名称」,类似前台菜单分组或大类标签。 | store_goods_sales_records - ledger_group_name。 | store_goods_sales_records.json - data.orderGoodsLedgers - ledger_group_name。 |
| ledger_unit_price | NUMERIC(18,2) | | | 商品在该次销售中的「结算单价」(元/单位)。 | store_goods_sales_records - ledger_unit_price。 | store_goods_sales_records.json - data.orderGoodsLedgers - ledger_unit_price。 |
| ledger_count | INTEGER | | | 销售数量(以 unit 为单位,unit 字段在门店商品档案中)。 | store_goods_sales_records - ledger_count。 | store_goods_sales_records.json - data.orderGoodsLedgers - ledger_count。 |
| ledger_amount | NUMERIC(18,2) | | | 原始应收金额,公式上接近 ledger_unit_price × ledger_count。 | store_goods_sales_records - ledger_amount。 | store_goods_sales_records.json - data.orderGoodsLedgers - ledger_amount。 |
| discount_price | NUMERIC(18,2) | | | 本条销售明细的「价格优惠金额」,即原价部分被减免掉的金额。 | store_goods_sales_records - discount_money。 | store_goods_sales_records.json - data.orderGoodsLedgers - discount_money。 |
| real_goods_money | NUMERIC(18,2) | | | 商品实际入账金额(考虑折扣、可能还会考虑其它抵扣后的实际销售金额)。 | store_goods_sales_records - real_goods_money。 | store_goods_sales_records.json - data.orderGoodsLedgers - real_goods_money。 |
| cost_money | NUMERIC(18,2) | | | 本条销售对应的成本金额(以元计)。 | store_goods_sales_records - cost_money。 | store_goods_sales_records.json - data.orderGoodsLedgers - cost_money。 |
| ledger_status | INTEGER | | | 销售流水状态。 | store_goods_sales_records - ledger_status。 | store_goods_sales_records.json - data.orderGoodsLedgers - ledger_status。 |
| is_delete | INTEGER | | | 逻辑删除标志;软删除/作废标记,分析通常需过滤为有效记录。 | store_goods_sales_records - is_delete。 | store_goods_sales_records.json - data.orderGoodsLedgers - is_delete。 |
| create_time | TIMESTAMPTZ | | | 销售记录创建时间,通常就是结账时间或录入时间;记录源系统创建时间,用于增量同步和口径对齐。 | store_goods_sales_records - create_time。 | store_goods_sales_records.json - data.orderGoodsLedgers - create_time。 |
dwd_table_fee_adjust
-
表说明:DWD 明细事实表:dwd_table_fee_adjust。ODS 来源表:billiards_ods.table_fee_discount_records(对应 JSON:table_fee_discount_records.json;分析:table_fee_discount_records-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。
-
主键:table_fee_adjust_id
-
类型:事实/明细
| 字段 | 类型 | 主键 | 关联(推断) | 字段用途(说明) | ODS来源 | JSON字段 |
|---|---|---:|---|---|---|---|
| table_fee_adjust_id | BIGINT | Y | | 台费打折 / 调整流水主键 ID。;用途:在“台费调账表”中唯一标识一条折扣/调账操作;用于跨表关联与去重。 | table_fee_discount_records - id。 | table_fee_discount_records.json - data.taiFeeAdjustInfos - id。 |
| order_trade_no | BIGINT | | | 订单交易号。;关联:与 台费流水.json、助教流水.json、小票详情.json 中的同名字段一致,用于把这一条“台费调整”挂接到某笔订单上。 | table_fee_discount_records - order_trade_no。 | table_fee_discount_records.json - data.taiFeeAdjustInfos - order_trade_no。 |
| order_settle_id | BIGINT | | dwd_settlement_head(order_settle_id) | 结算单/小票 ID。;关联:与“小票详情.json”中的 orderSettleId 对应;用于跨表关联与去重。 | table_fee_discount_records - order_settle_id。 | table_fee_discount_records.json - data.taiFeeAdjustInfos - order_settle_id。 |
| tenant_id | BIGINT | | | 租户/品牌 ID。;用途:标识记录属于哪一个商户(同一个“非球科技”租户);用途:多租户数据隔离与按租户汇总。 | table_fee_discount_records - tenant_id。 | table_fee_discount_records.json - data.taiFeeAdjustInfos - tenant_id。 |
| site_id | BIGINT | | dim_site(site_id) | 门店 ID,本批数据全部为同一家门店(朗朗桌球)。;关联:与 siteProfile.id 一致;用途:门店维度分组、计营业额、与门店档案关联。 | table_fee_discount_records - site_id。 | table_fee_discount_records.json - data.taiFeeAdjustInfos - site_id。 |
| table_id | BIGINT | | dim_table(table_id) | 台桌 ID。;关联:与 台费流水.json 中的 site_table_id 一致;用于跨表关联与去重。 | table_fee_discount_records - site_table_id。 | table_fee_discount_records.json - data.taiFeeAdjustInfos - site_table_id。 |
| table_area_id | BIGINT | | | 租户维度的“台桌区域 ID”。;关联:与台桌区域配置表对应,帮助从区域维度分析打折分布(结构上可用);用于跨表关联与去重。 | table_fee_discount_records - tenant_table_area_id。 | table_fee_discount_records.json - data.taiFeeAdjustInfos - tenant_table_area_id。 |
| table_area_name | VARCHAR(64) | | | 名称字段,用于展示、检索与分组。 | table_fee_discount_records - tableprofile.table_area_name。 | table_fee_discount_records.json - data.taiFeeAdjustInfos - tableprofile.table_area_name。 |
| tenant_table_area_id | BIGINT | | | 租户维度的“台桌区域 ID”。;关联:与台桌区域配置表对应,帮助从区域维度分析打折分布(结构上可用);用于跨表关联与去重。 | table_fee_discount_records - tenant_table_area_id。 | table_fee_discount_records.json - data.taiFeeAdjustInfos - tenant_table_area_id。 |
| ledger_amount | NUMERIC(18,2) | | | 通过与 台费流水.json 做对比,可以明确:。 | table_fee_discount_records - ledger_amount。 | table_fee_discount_records.json - data.taiFeeAdjustInfos - ledger_amount。 |
| ledger_status | INTEGER | | | 业务状态/类型字段,用于过滤、分类与统计口径区分。 | table_fee_discount_records - ledger_status。 | table_fee_discount_records.json - data.taiFeeAdjustInfos - ledger_status。 |
| is_delete | INTEGER | | | 逻辑删除标志:;软删除/作废标记,分析通常需过滤为有效记录。 | table_fee_discount_records - is_delete。 | table_fee_discount_records.json - data.taiFeeAdjustInfos - is_delete。 |
| adjust_time | TIMESTAMPTZ | | | 台费调整记录的创建时间,即打折操作被执行的时间戳。 | table_fee_discount_records - create_time。 | table_fee_discount_records.json - data.taiFeeAdjustInfos - create_time。 |
dwd_table_fee_log
-
表说明:DWD 明细事实表:dwd_table_fee_log。ODS 来源表:billiards_ods.table_fee_transactions(对应 JSON:table_fee_transactions.json;分析:table_fee_transactions-Analysis.md)。装载/清洗逻辑参考:etl_billiards/tasks/dwd_load_task.py(DwdLoadTask)。
-
主键:table_fee_log_id
-
类型:事实/明细
| 字段 | 类型 | 主键 | 关联(推断) | 字段用途(说明) | ODS来源 | JSON字段 |
|---|---|---:|---|---|---|---|
| table_fee_log_id | BIGINT | Y | | 台费流水记录主键(事实表主键);用于跨表关联与去重。 | table_fee_transactions - id。 | table_fee_transactions.json - data.siteTableUseDetailsList - id。 |
| order_trade_no | BIGINT | | | 订单交易号,是整笔订单的主编号。;关联:与其它 JSON(如 助教流水、小票详情、门店销售记录)中的同名字段一致,用于把 同一订单下的台费、助教、商品等多条明细串联。 | table_fee_transactions - order_trade_no。 | table_fee_transactions.json - data.siteTableUseDetailsList - order_trade_no。 |
| order_settle_id | BIGINT | | dwd_settlement_head(order_settle_id) | 结算单号/结账 ID,对应一次结账操作。;关联:与“小票详情.json”中的 orderSettleId 对应;用于跨表关联与去重。 | table_fee_transactions - order_settle_id。 | table_fee_transactions.json - data.siteTableUseDetailsList - order_settle_id。 |
| order_pay_id | BIGINT | | | 订单支付记录 ID。;关联:对应“支付记录.json”中的 id 或 relate_id(视模型而定),用于追踪这条台费最终对应哪一条支付流水。 | table_fee_transactions - order_pay_id。 | table_fee_transactions.json - data.siteTableUseDetailsList - order_pay_id。 |
| tenant_id | BIGINT | | | 租户/品牌 ID。本文件所有记录都属于同一租户。;关联:与所有其它 JSON 中的 tenant_id 一致,用于跨表做“商户维度”的过滤。 | table_fee_transactions - tenant_id。 | table_fee_transactions.json - data.siteTableUseDetailsList - tenant_id。 |
| site_id | BIGINT | | dim_site(site_id) | 门店 ID,本次数据全部来自同一门店(朗朗桌球)。;关联:与 siteProfile.id 一致;用途:门店维度分组、计营业额、与门店档案关联。 | table_fee_transactions - site_id。 | table_fee_transactions.json - data.siteTableUseDetailsList - site_id。 |
| site_table_id | BIGINT | | | 球台 ID。;关联:对应“台桌列表”中的 id(当前导出文件中有一类与之对应的台桌配置表);用于跨表关联与去重。 | table_fee_transactions - site_table_id。 | table_fee_transactions.json - data.siteTableUseDetailsList - site_table_id。 |
| site_table_area_id | BIGINT | | | 门店内“台桌区域” ID(站在门店物理布局的角度)。;关联:对应“门店台桌区域配置表”的主键;用于跨表关联与去重。 | table_fee_transactions - site_table_area_id。 | table_fee_transactions.json - data.siteTableUseDetailsList - site_table_area_id。 |
| site_table_area_name | VARCHAR(64) | | | 台桌区域的名称,用于门店表现和区域统计。 | table_fee_transactions - site_table_area_name。 | table_fee_transactions.json - data.siteTableUseDetailsList - site_table_area_name。 |
| tenant_table_area_id | BIGINT | | | 租户维度的台桌区域 ID(品牌层面的同一类区域)。;关联:对应租户层面的“区域维表”,支持多门店共享同一套区域配置;用于跨表关联与去重。 | table_fee_transactions - tenant_table_area_id。 | table_fee_transactions.json - data.siteTableUseDetailsList - tenant_table_area_id。 |
| member_id | BIGINT | | dim_member(member_id) | 门店/租户内的会员 ID。;关联:与“会员档案.json(tenantMemberInfos)”内的 id 对应(有部分 ID 完全匹配,部分会员可能不在当前导出页);用于跨表关联与去重。 | table_fee_transactions - member_id。 | table_fee_transactions.json - data.siteTableUseDetailsList - member_id。 |
| ledger_name | VARCHAR(64) | | | 台号名称,实际展示给员工/顾客看的桌台编号。 | table_fee_transactions - ledger_name。 | table_fee_transactions.json - data.siteTableUseDetailsList - ledger_name。 |
| ledger_unit_price | NUMERIC(18,2) | | | 台费结算时设置的 每小时单价/计费单价。 | table_fee_transactions - ledger_unit_price。 | table_fee_transactions.json - data.siteTableUseDetailsList - ledger_unit_price。 |
| ledger_count | INTEGER | | | 台账记录的计费秒数,计费用秒数(应收时长)。 | table_fee_transactions - ledger_count。 | table_fee_transactions.json - data.siteTableUseDetailsList - ledger_count。 |
| ledger_amount | NUMERIC(18,2) | | | 按单价与计费时长计算出的原始应收台费金额。 | table_fee_transactions - ledger_amount。 | table_fee_transactions.json - data.siteTableUseDetailsList - ledger_amount。 |
| real_table_charge_money | NUMERIC(18,2) | | | 台费中实际向顾客收取的金额(现金/实付维度,未含券方承担或内部调账的那一部分)。 | table_fee_transactions - real_table_charge_money。 | table_fee_transactions.json - data.siteTableUseDetailsList - real_table_charge_money。 |
| coupon_promotion_amount | NUMERIC(18,2) | | | 由优惠券/活动/团购(平台/门店促销)承担的优惠金额,直接抵扣在台费上。 | table_fee_transactions - coupon_promotion_amount。 | table_fee_transactions.json - data.siteTableUseDetailsList - coupon_promotion_amount。 |
| member_discount_amount | NUMERIC(18,2) | | | 由会员权益产生的优惠金额,例如会员折扣、会员价等。 | table_fee_transactions - member_discount_amount。 | table_fee_transactions.json - data.siteTableUseDetailsList - member_discount_amount。 |
| adjust_amount | NUMERIC(18,2) | | | 调整金额/调账金额,用于将台费金额转移或冲减到其它项目,或手工调整。 | table_fee_transactions - adjust_amount。 | table_fee_transactions.json - data.siteTableUseDetailsList - adjust_amount。 |
| real_table_use_seconds | INTEGER | | | 实际使用的总秒数(系统真实统计的使用时长)。 | table_fee_transactions - real_table_use_seconds。 | table_fee_transactions.json - data.siteTableUseDetailsList - real_table_use_seconds。 |
| add_clock_seconds | INTEGER | | | 加钟秒数,在原有使用基础上追加的时长。 | table_fee_transactions - add_clock_seconds。 | table_fee_transactions.json - data.siteTableUseDetailsList - add_clock_seconds。 |
| start_use_time | TIMESTAMPTZ | | | 台开始使用的时间(实际开台时间)。 | table_fee_transactions - start_use_time。 | table_fee_transactions.json - data.siteTableUseDetailsList - start_use_time。 |
| ledger_end_time | TIMESTAMPTZ | | | 台账上的计费结束时间。 | table_fee_transactions - ledger_end_time。 | table_fee_transactions.json - data.siteTableUseDetailsList - ledger_end_time。 |
| create_time | TIMESTAMPTZ | | | 这条台费流水记录的创建时间,通常接近结账时间;记录源系统创建时间,用于增量同步和口径对齐。 | table_fee_transactions - create_time。 | table_fee_transactions.json - data.siteTableUseDetailsList - create_time。 |
| ledger_status | INTEGER | | | 1:正常已结算台费。 | table_fee_transactions - ledger_status。 | table_fee_transactions.json - data.siteTableUseDetailsList - ledger_status。 |
| is_single_order | INTEGER | | | 1:该台费记录对应的是一个独立计费单元(单独结算的桌费)。 | table_fee_transactions - is_single_order。 | table_fee_transactions.json - data.siteTableUseDetailsList - is_single_order。 |
| is_delete | INTEGER | | | 逻辑删除标志:;软删除/作废标记,分析通常需过滤为有效记录。 | table_fee_transactions - is_delete。 | table_fee_transactions.json - data.siteTableUseDetailsList - is_delete。 |
生成时间:2025-12-15 19:35:55