Files
feiqiu-ETL/tmp/doc_extracted.txt
2025-11-30 07:19:05 +08:00

2 lines
133 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
台球厅数仓 DWD 层数据库说明书本说明书详细列出了台球厅经营系统的 DWD 层表结构。每张表都包含字段名称、数据类型、来源、含义、是否属于主键/外键、业务重要性、未知作用标记,以及枚举值解释。说明书依据《*-Analysis.md》中提供的字段说明整理完成未出现省略号确保字段信息完整可追溯。因业务需求将一个表拆成主数据表和扩展数据表Ex为后缀维度表的门店数据表分为主表dim_site 和扩展表dim_site_Ex主键相同作为唯一关联标识。在业务代码处理的读和写时使用统一处理方式将数据视为一个表格。注意极少数表没有扩展表。注意考虑到后期分布式部署以及测试的便利性。所有的“外键”的处理使用业务处理不在数据库中强制约束。维度表DIMdim_site门店维度表提取自各 ODS 中的 siteProfile 对象如table_fee_transactions。记录门店的基本信息和配置是其他事实表的外键。字段名类型来源字段说明关键角色site_idbigintsiteProfile.id门店主键 ID唯一标识一家门店。与所有事实表中的 site_id 对应。主键org_idbigintsiteProfile.org_id上级组织 ID用于区域组织划分。外键shop_namestringsiteProfile.shop_name门店名称展示用。-business_telstringsiteProfile.business_tel门店电话。-full_addressstringsiteProfile.full_address门店完整地址。-tenant_idbigintsiteProfile.tenant_id租户 ID。与其它表 tenant_id 对应。外键dim_site_Ex字段名类型来源字段说明关键角色site_idbigintsiteProfile.id门店主键 ID唯一标识一家门店。与所有事实表中的 site_id 对应。主键avatarstringsiteProfile.avatar门店头像 URL。-addressstringsiteProfile.address地址简写。-longitudedecimalsiteProfile.longitude经度。-latitudedecimalsiteProfile.latitude纬度。-tenant_site_region_idbigintsiteProfile.tenant_site_region_id地区编码。-auto_lightintsiteProfile.auto_light是否自动控制灯光1=是2=否(根据系统约定)。-light_statusintsiteProfile.light_status灯光状态系统预留字段。-light_typeintsiteProfile.light_type灯光类型预留字段。-light_tokenstringsiteProfile.light_token灯光控制令牌。-site_typeintsiteProfile.site_type门店类型枚举未在导出中说明视系统配置。-site_labelstringsiteProfile.site_label门店标签展示用。-attendance_enabledintsiteProfile.attendance_enabled门店是否启用考勤功能1=启用2=不启用。-attendance_distanceintsiteProfile.attendance_distance考勤打卡距离限制。-customer_service_qrcodestringsiteProfile.customer_service_qrcode客服二维码 URL。-customer_service_wechatstringsiteProfile.customer_service_wechat客服微信号。-fixed_pay_qrCodestringsiteProfile.fixed_pay_qrCode固定收款二维码。-prod_envstringsiteProfile.prod_env环境标记生产/测试)。-shop_statusintsiteProfile.shop_status门店状态未在文档解释。-create_timedatetimesiteProfile.create_time门店创建时间。-update_timedatetimesiteProfile.update_time门店最近更新时间。-dim_table台桌维度表来自 site_tables_master。每行代表一张球台或包厢包含区域和业务角色信息。字段名类型来源字段说明关键角色table_idbigintid台桌主键唯一标识一张台或包厢。主键tenant_idbiginttenantId租户 ID。外键site_idbigintsiteId门店 ID。外键table_namestringtableName台桌名称/编号,如 A17、888。-site_table_area_idbigintsiteTableAreaId门店区 ID用于区分 A区/B区/补时区等。外键site_table_area_namestringsiteTableAreaName区域名称如 “A区”“补时长”。-tenant_table_area_idbiginttenantTableAreaId租户级区域 ID。外键table_pricedecimal-台桌基础单价从table_fee_transactions取值。方法对应本表idtable_fee_transactions表的site_table_id。-dim_table_Ex字段名类型来源字段说明关键角色table_idbigintid台桌主键唯一标识一张台或包厢。主键show_statusintshowStatus显示状态1=正常台;其他值=特殊用途(包厢、补时长等)。-is_online_reservationintisOnlineReservation是否可线上预约1=是2=否。-table_cloth_use_timeinttableClothUseTime已使用台呢时长。-table_cloth_use_cycleinttableClothUseCycle台呢更换周期阈值。-table_statusinttableStatus当前台桌状态1=空闲2=使用中3=暂停中4=锁定。-last_maintenance_timedatetimelastMaintenanceTime最近保养时间未在 JSON 中出现)。-remarkstringremark备注信息。-dim_assistant助教档案维表对应 assistant_accounts_master。每行代表一位助教账号及其人事/账号状态。字段名类型来源字段说明关键角色assistant_idbigintid助教账号 ID关联助教服务流水表。主键user_idbigintuser_id系统用户 ID用于统一跨模块身份。外键assistant_nostringassistant_no助教工号/编号,业务识别用。-real_namestringreal_name助教真实姓名。-nicknamestringnickname前台展示昵称。-mobilestringmobile手机号码。-tenant_idbiginttenant_id租户 ID。外键site_idbigintsite_id门店 ID。外键team_idbigintteam_id助教团队 ID。外键team_namestringteam_name团队名称。-levelintlevel助教等级8=管理员、10=初级、20=中级、30=高级、40=专家。-entry_timedatetimeentry_time入职时间。-resign_timedatetimeresign_time离职时间远未来日期表示在职。-leave_statusintleave_status在职状态0=在职1=已离职。-assistant_statusintassistant_status账号启用状态1=启用2=停用/冻结。-dim_assistant_Ex字段名类型来源字段说明关键角色assistant_idbigintid助教账号 ID关联助教服务流水表。主键genderintgender性别枚举0=未填/保密1=男2=女。-birth_datedatetimebirth_date出生日期默认为 0001-01-01 表示未设置。-avatarstringavatar头像 URL。-introducestringintroduce个人简介文案目前为空。-video_introduction_urlstringvideo_introduction_url视频介绍 URL。-heightfloatheight身高厘米0 表示未填。-weightfloatweight体重公斤0 表示未填。-shop_namestringshop_name门店名称。-group_idbigintgroup_id上级分组 ID未使用。-group_namestringgroup_name上级分组名称空。-person_org_idbigintperson_org_id人事组织 ID用于权限和报表分组。-staff_idbigintstaff_id预留员工 ID全部为0。-staff_profile_idbigintstaff_profile_id外部人事档案 ID全部为0。-assistant_gradefloatassistant_grade平均评分0 表示暂无)。-sum_gradefloatsum_grade总评分累加值。-get_grade_timesintget_grade_times累计评分次数。-charge_wayintcharge_way计费方式2=计时,其他未出现。-allow_cxintallow_cx是否允许促销计费1=允许。-is_guaranteedintis_guaranteed是否有保底1=是。-salary_grant_enabledintsalary_grant_enabled薪资发放开关值2具体含义未知。-entry_typeintentry_type入职类型1=正式;其他未出现。-entry_sign_statusintentry_sign_status入职签约状态0=未签约1=已签约(未出现)。-resign_sign_statusintresign_sign_status离职签约状态未出现非 0。-work_statusintwork_status工作状态1=在岗2=离岗。与 leave_status 呼应。-show_statusintshow_status前台展示状态1=显示;其他值未出现。-show_sortintshow_sort前端排序序号。-online_statusintonline_status在线状态1=在线。-is_deleteintis_delete逻辑删除标记0=未删除1=已删除。-criticism_statusintcriticism_status投诉状态1=正常2=有投诉。-create_timedatetimecreate_time账号创建时间。-update_timedatetimeupdate_time账号最近修改时间。-start_timedatetimestart_time配置生效开始时间。-end_timedatetimeend_time配置生效结束时间。-last_table_idbigintlast_table_id最近服务的台桌 ID未必存在。-last_table_namestringlast_table_name最近服务球台名称。-last_update_namestringlast_update_name最近更新该账号的管理员。-order_trade_nobigintorder_trade_no最近关联的订单号非外键仅做展示。-ding_talk_syncedintding_talk_synced是否同步钉钉1=已同步。-site_light_cfg_idbigintsite_light_cfg_id灯控配置 ID未启用。-light_equipment_idstringlight_equipment_id灯控设备 ID未启用。-light_statusintlight_status灯控状态值2具体含义未知。-is_team_leaderintis_team_leader是否团队长0=否1=是。-serial_numberbigintserial_numberdim_member会员档案维表对应 member_profiles。每行记录租户内某会员的主档信息包括等级、状态、注册信息等。字段名类型来源字段说明关键角色member_idbigintid租户内会员主键。主键system_member_idbigintsystem_member_id跨租户全局会员 ID。外键tenant_idbiginttenant_id租户 ID。外键register_site_idbigintregister_site_id注册门店 ID。外键mobilestringmobile会员手机号。-nicknamestringnickname昵称未必是真实姓名。-member_card_grade_codeintmember_card_grade_code会员等级代码1=金卡2=银卡3=钻石卡4=黑卡?(按照 MD 文档枚举)。-member_card_grade_namestringmember_card_grade_name等级名称中文描述。-create_timedatetimecreate_time会员档案创建时间。-update_timedatetimeupdate_time最近更新时间。-dim_member_Ex字段名类型来源字段说明关键角色member_idbigintid租户内会员主键。主键referrer_member_idbigintreferrer_member_id推荐人会员 ID营销分析用。-pointdecimalpoint积分余额暂未启用。-register_site_namestringsite_name注册门店名称。-growth_valuedecimalgrowth_value成长值暂未启用。-user_statusintuser_status会员状态枚举1=正常,其它值未出现。-statusintstatus帐户状态1=正常;其它值未出现。-dim_member_card_account已开通的会员卡账户视图来自 member_stored_value_cards。每行代表一张会员卡账户的快照记录卡种、持卡人、余额、有效期及各种折扣/扣款配置。重要说明:本视图不仅包含储值卡,还囊括活动抵用券、台费卡、酒水卡、月卡等多种卡种。大多数折扣/扣款字段在当前数据中保持默认值(如 10.0 表示不打折、100.0 表示全额抵扣、0 表示不启用业务上暂未使用但为系统预留能力。字段名类型来源字段说明关键角色member_card_idbigintid会员卡账户主键唯一标识一张具体卡。主键tenant_idbiginttenant_id租户/品牌 ID用于分隔不同业务主体。外键register_site_idbigintregister_site_id开卡门店 ID对应 dim_site.site_id。外键tenant_member_idbiginttenant_member_id对应会员档案中的 member_id本租户内。0 表示未绑定会员。外键system_member_idbigintsystem_member_id全局会员 ID用于跨租户统一会员身份。0 表示未绑定会员。外键card_type_idbigintcard_type_id卡种 ID指向卡种配置表。与下面的 grade_code 共同定义卡类别。外键member_card_grade_codebigintmember_card_grade_code卡等级/卡类代码区别不同类别卡。2790683528022853=储值卡2790683528022856=活动抵用券2790683528022855=台费卡2790683528022858=酒水卡2790683528022857=月卡-member_card_grade_code_namestringmember_card_grade_code_name卡等级中文名称与 member_card_grade_code 一一对应。-member_card_type_namestringmember_card_type_name卡类型名称通常与 grade_code_name 相同,纯展示字段。-member_namestringmember_name持卡会员姓名快照部分为空表示未绑定。-member_mobilestringmember_mobile持卡会员手机号快照。-balancedecimalbalance当前余额或额度。对储值卡表示余额对其他卡表示剩余金额或次数。-start_timedatetimestart_time卡片有效期开始时间。-end_timedatetimeend_time卡片有效期结束时间。-last_consume_timedatetimelast_consume_time最近一次消费时间若为 "1970-01-01" 表示未消费过。-statusintstatus卡状态1=正常可用4=过期/停用。其他值在数据中未出现。-is_deleteintis_delete逻辑删除标记0=未删除1=已删除。-dim_member_card_account_Ex字段名类型来源字段说明关键角色member_card_idbigintid会员卡账户主键唯一标识一张具体卡。主键site_namestringsite_name门店名称展示字段全部相同。-tenantNamestringtenantName租户名称当前导出为空。-tenantAvatarstringtenantAvatar租户头像 URL当前导出为空。-effect_site_idbiginteffect_site_id卡片限定生效门店 ID。0 表示不限门店,配合 able_cross_site=1 表示全店通用。-able_cross_siteintable_cross_site是否允许跨门店使用该卡1=允许跨店0=仅限开卡门店。-card_physics_typeintcard_physics_type物理卡类型1=实体/标准卡;其他值未出现,含义未知。-card_nostringcard_no物理卡号或条码当前全部为空。-bind_passwordstringbind_password卡绑定密码未启用。-use_scenestringuse_scene使用场景说明当前为空。-denominationdecimaldenomination面额或初始储值额度当前均为0.0,未启用)。-create_timedatetimecreate_time卡片创建时间。-disable_start_timedatetimedisable_start_time卡片禁用开始时间当前为默认值表示未禁用。-disable_end_timedatetimedisable_end_time卡片禁用结束时间当前为默认值表示未禁用。-is_allow_giveintis_allow_give是否允许转赠给他人0=不允许1=允许。-is_allow_order_deductintis_allow_order_deduct是否允许在订单层面统一扣款0=不允许1=允许。-sortintsort前端排序序号。-table_discountfloattable_discount台费折扣率折扣百分比10.0=不打折9.0=九折等)。当前全部 10.0。-goods_discountfloatgoods_discount商品折扣率当前为 10.0 表示无折扣。-assistant_discountfloatassistant_discount助教服务折扣率当前为 10.0。-assistant_reward_discountfloatassistant_reward_discount助教奖励折扣率当前为 10.0(未启用)。-table_service_discountfloattable_service_discount台费服务类折扣率当前为 10.0。-goods_service_discountfloatgoods_service_discount商品服务折扣率当前为 10.0。-assistant_service_discountfloatassistant_service_discount助教服务类折扣率当前为 10.0。-coupon_discountfloatcoupon_discount使用券的折扣比例全部 10.0,未使用)。-table_discount_sub_switchinttable_discount_sub_switch台费折扣叠加开关1=叠加其他折扣2=不叠加,仅用卡折扣。-goods_discount_sub_switchintgoods_discount_sub_switch商品折扣叠加开关意义同上。-assistant_discount_sub_switchintassistant_discount_sub_switch助教折扣叠加开关意义同上。-assistant_reward_discount_sub_switchintassistant_reward_discount_sub_switch助教奖励折扣叠加开关未启用。-goods_discount_range_typeintgoods_discount_range_type商品折扣范围类型未在文档说明具体含义。-table_deduct_radiofloattable_deduct_radio台费抵扣比例百分比。100.0 表示允许全额抵扣0=不允许。-goods_deduct_radiofloatgoods_deduct_radio商品抵扣比例意义同上。-assistant_deduct_radiofloatassistant_deduct_radio助教抵扣比例意义同上。-table_service_deduct_radiofloattable_service_deduct_radio台费服务金抵扣比例。-goods_service_deduct_radiofloatgoods_service_deduct_radio商品服务金抵扣比例。-assistant_service_deduct_radiofloatassistant_service_deduct_radio助教服务金抵扣比例。-assistant_reward_deduct_radiofloatassistant_reward_deduct_radio助教奖励金抵扣比例未启用。-coupon_deduct_radiofloatcoupon_deduct_radio券抵扣比例未启用。-cardSettleDeductfloatcardSettleDeduct结算时统一扣卡金额配置当前为 0.0,未使用)。-tableCardDeductfloattableCardDeduct台费扣卡金额配置当前 0.0。-tableServiceCardDeductfloattableServiceCardDeduct台费服务金扣卡金额配置。-goodsCarDeductfloatgoodsCarDeduct商品扣卡金额配置。-goodsServiceCardDeductfloatgoodsServiceCardDeduct商品服务金扣卡金额配置。-assistantCardDeductfloatassistantCardDeduct助教扣卡金额配置。-assistantServiceCardDeductfloatassistantServiceCardDeduct助教服务金扣卡金额配置。-assistantRewardCardDeductfloatassistantRewardCardDeduct助教奖励金扣卡金额配置未启用。-couponCardDeductfloatcouponCardDeduct使用券扣卡金额配置。-deliveryFeeDeductfloatdeliveryFeeDeduct配送费扣卡金额配置未启用。-tableAreaIdlisttableAreaId可用台区 ID 列表,空表示不限台区。-goodsCategoryIdlistgoodsCategoryId可用商品分类 ID 列表,空表示不限制商品类别。-pdAssisnatLevellistpdAssisnatLevel允许的陪打助教等级列表空表示不限。-cxAssisnatLevellistcxAssisnatLevel允许的促销助教等级列表空表示不限。-dim_tenant_goods租户级商品档案来自 tenant_goods_master。每行代表一款商品标准定义。数据库字段名字段类型来源字段说明含枚举值和取值说明角色tenant_goods_idBIGINTid租户级商品档案主键 ID唯一标识一条商品档案。所有业务事实表销售、库存等中引用租户级商品时应指向此字段。主键tenant_idBIGINTtenant_id租户/品牌 ID用于区分不同商户。当前样本中全表同一值但模型上应作为维表外键用于关联租户维度。外键supplier_idBIGINTsupplier_id供应商 ID用于关联供应商档案维度。当前样本全部为 0说明门店尚未维护供应商信息或导出视图未包含真实供应商关联但字段含义明确。外键category_nameVARCHAR(64)categoryName商品一级分类名称可读名称例如零食、饮料、香烟、雪糕、小吃、酒水、面、槟榔等。真实分类关联通过 goods_category_id 与 goods_second_category_id 实现,此字段主要用于展示和直观分析。-goods_category_idBIGINTgoods_category_id商品一级分类 ID。与分类维表例如 dim_goods_category关联构成商品分类的第一层。一个 goods_category_id 对应一个 category_name。外键goods_second_category_idBIGINTgoods_second_category_id商品二级分类 ID。与分类维表的二级节点关联用于更细粒度的品类统计。取值数目约十四种每个值属于某个一级分类之下。外键goods_nameVARCHAR(128)goods_name商品名称前台展示名如 “东方树叶”“红烧牛肉面”“百威 235 毫升”等。当前样本中基本唯一。作为用户认知的主显示名称,用于报表、前台展示、小票打印。-goods_numberVARCHAR(64)goods_number商品内部编号或自定义货号。当前样本中各记录不重复如 “1”“2”“10”“11” 等。可用于与其他系统对接或人工查找,有一定对账和排错价值。-unitVARCHAR(16)unit商品计量单位例如瓶、包、个、份、根、盒、杯、桶、盘、支等。用于解释数量含义是销售数量与库存数量的度量单位。-market_priceDECIMAL(18,2)market_price商品标价或标准销售单价。例如 2、5、6、8、10、12、15、18、20、28 元。POS 默认销售价格,结算时的基础金额字段。-goods_stateINTgoods_state商品状态枚举。当前样本全部为 1推测含义为“正常”“已上架”或“有效”。其他值数据中未出现通常表示下架、停用或草稿状态。用于控制商品是否可销售。-create_timeDATETIMEcreate_time商品档案创建时间格式为 “YYYY-MM-DD HH:MM:SS”。每条记录唯一。用于增量抽取和审计也可用于分析商品生命周期。-update_timeDATETIMEupdate_time商品档案最近一次修改时间可为空表示自创建后未修改。用于增量同步、变化跟踪和审计分析。-is_deleteINTis_delete逻辑删除标志。枚举0 表示未删除有效商品1 表示已逻辑删除(在前台不再展示)。当前样本全部为 0。用于软删除控制和历史数据保留。-dim_tenant_goods_Ex数据库字段名字段类型来源字段说明含枚举值和取值说明角色tenant_goods_idBIGINTid租户级商品档案主键 ID唯一标识一条商品档案。所有业务事实表销售、库存等中引用租户级商品时应指向此字段。主键remark_nameVARCHAR(128)remark_name商品备注名或别名目前样本中均为空。设计用途为简写名、特殊展示名或内部备注在当前门店尚未启用。-pinyin_initialVARCHAR(128)pinyin_initial商品拼音首字母或助记码用于前台按拼音检索如 “DFSY,DFSX”“HSNRM,GSNRM”“SP” 等。主要为操作便利,对经营分析影响较小。-goods_coverVARCHAR(512)goods_cover商品封面图片 URL用于前端展示商品图片。多个商品可能共用同一图片。对经营和结算逻辑无直接影响。-goods_bar_codeVARCHAR(64)goods_bar_code商品条码如 EAN 码)。当前样本全部为空。含义明确但尚未使用,未来可用于扫码收银或与第三方商品库对接。-commodity_codeVARCHAR(64)commodity_code对外商品编码或系列编码用于与外部系统或其他内部模块对接。例如 “10000”“100000”“10000028”等。一个编码在多条商品上复用说明它不是主键而是“系列标识”或“外部编码”。具体业务含义依赖上游系统定义。-commodity_code_listVARCHAR(256)commodityCode商品编码列表的序列化形式对应源 JSON 的数组字段(当前每条记录仅一个元素)。设计上支持 “一个商品多个编码” 场景,目前仅为 commodity_code 的冗余表现形式。-min_discount_priceDECIMAL(18,2)min_discount_price商品可售最低价底价。部分记录为 0.00,表示未设置底价或沿用系统默认规则。用于限制打折或手动改价的下限,防止亏损销售。-cost_priceDECIMAL(18,2)cost_price商品成本价当前大多数为 0.00,仅少数录入 2.0、2.5、3.0 等。用于成本核算与毛利分析。虽当前门店未完整维护,但字段含义清晰,属于成本分析必备结构。-cost_price_typeINTcost_price_type成本价格类型枚举用于标识成本价的来源或计算方式。已知取值1 和 2。常见推测1 表示手工录入成本2 表示按最近进货价或加权平均价生成。具体含义需结合系统枚举字典确认。-able_discountINTable_discount是否允许该商品参与折扣的标志。已知取值1。按命名推断枚举约定为1 表示允许参与打折0 表示不允许参与打折(当前样本未出现)。配合活动、整单折扣等控制哪些商品可享优惠。-sale_channelINTsale_channel销售渠道类型枚举。当前样本全部为 1推测为“线下门店正常销售渠道”。理论上可扩展为不同渠道值例如外卖、小程序、电商等用于渠道维度分析。具体枚举说明依赖系统配置。-is_warehousingINTis_warehousing是否纳入库存管理的标志。已知取值1表示纳入库存管理0 则表示不纳入库存管理(虚拟商品等,当前未出现)。本门店所有商品均启用库存管理。-is_in_siteBOOLEANisInSite是否在当前门店启用或上架。当前样本全部为 false。由于该文件是租户级商品档案视图且 isInSite 全为 false该字段在本视图的实际含义存在不确定性可能仅在门店级商品表中才有明确业务意义。-able_site_transferINTable_site_transfer是否允许门店间调拨或门店级操作的枚举。已知取值2 为绝大多数0 为少数一条。按命名推测大致含义为2 表示允许调拨或默认允许0 表示禁止调拨。实际枚举定义需查阅系统配置,当前无法完全确定具体业务规则。-common_sale_royaltyINTcommon_sale_royalty普通销售提成或佣金配置字段单位和含义需结合上游系统可能为金额或比例。当前样本全部为 0说明未启用商品级提成配置。-point_sale_royaltyINTpoint_sale_royalty积分销售相关的提成或赠送规则配置字段。当前样本全部为 0同样未启用该功能。具体数值含义百分比或固定值需结合系统定义。-out_goods_idBIGINTout_goods_id外部系统商品 ID用于对接第三方平台或统一商品库时作为映射主键。目前样本全部为 0说明尚未配置外部商品映射具体对接规则依赖上游系统。-dim_store_goods门店级商品档案来自 store_goods_master.json。每行代表门店自定义的商品 SKU包括售价和折扣。关联到 dim_tenant_goods 和分类维度。数据库字段名字段类型来源字段说明含枚举值和取值说明角色site_goods_idbigintid门店级商品 ID本表主键其它业务表中的 site_goods_id 与此对应用于库存、销售等关联。主键tenant_idbiginttenant_id租户/品牌 ID同一品牌下多个门店共享用于跨门店汇总分析。外键site_idbigintsite_id门店 ID对应门店维度表主键。外键tenant_goods_idbiginttenant_goods_id租户级品牌级商品 ID用于关联 dim_tenant_goods实现跨门店统一商品档案。外键goods_namevarchargoods_name商品名称例如“合味道泡面”“地道肠”“茶位费”。-goods_category_idbigintgoods_category_id商品一级分类 ID对应商品分类维表主键与 category_level1_name 一一对应。外键goods_second_category_idbigintgoods_second_category_id商品二级分类 ID其父分类为 goods_category_id。外键category_level1_namevarcharoneCategoryName一级分类名称如“零食”“酒水”“服务费”用于报表维度展示。-category_level2_namevarchartwoCategoryName二级分类名称如“面”“洋酒”“纸巾”用于更细粒度分类分析。-batch_stock_qtyintbatch_stock_quantity当前成本批次的库存数量用于按 cost_price 估算库存价值。-sale_qtyintsale_num截至导出时的销售数量当前数据中与 total_sales_qty 相同。-total_sales_qtyinttotal_sales累计销售数量当前导出周期下与 sale_qty 一致,为历史全量口径。-sale_pricedecimal(18,2)sale_price商品标准销售价挂牌价单位为元。实际结算可能有折扣或券抵扣。-created_atdatetimecreate_time门店商品档案创建时间在门店建立该商品档案时的时间点。-updated_atdatetimeupdate_time最近一次修改商品档案的时间包括价格调整、状态变更等。-avg_monthly_salesdecimal(18,4)average_monthly_sales平均月销量件/月),由某个统计周期内销售数据折算而来,用于补货和品类管理分析。-goods_statetinyintgoods_state商品基础状态枚举1=正常状态主流值2=特殊状态(如新建未完全启用或停售但未彻底下架,通常伴随 stock=0、days_on_shelf=0。-enable_statustinyintenable_status档案启用状态1=启用2=停用(推测,样本中未出现);控制商品档案是否参与业务处理。-send_statetinyintsend_state销售端可售状态1=可销售/可下单;其他值可能代表停售或仅内部使用(当前样本全部为 1。-is_deletedtinyintis_delete逻辑删除标志0=未删除有效档案1=已删除(逻辑删除,不再参与业务但保留历史引用)。-dim_store_goods_Ex数据库字段名字段类型来源字段说明含枚举值和取值说明角色site_goods_idbigintid门店级商品 ID本表主键其它业务表中的 site_goods_id 与此对应用于库存、销售等关联。主键site_namevarcharsiteName门店名称例如“朗朗桌球”是对 site_id 的冗余展示,方便直接阅读。-unitvarcharunit销售计量单位如“包”“瓶”“个”“份”“杯”等。-goods_barcodevarchargoods_bar_code商品条形码用于扫码销售当前样本多为空。-goods_cover_urlvarchargoods_cover商品图片 URL用于前端展示商品图片。-pinyin_initialvarcharpinyin_initial商品名称拼音首字母缩写有时多个别名用逗号分隔用于按字母快速检索和排序。-stock_qtyintstock当前主单位可用库存数量以 unit 为单位。-stock_secondary_qtyintstock_A副单位库存数量若商品存在双单位如箱/瓶),用于记录副单位库存;当前门店未启用双单位库存,样本中为 0。-safety_stock_qtyintsafe_stock安全库存阈值低于该值时系统可提示补货当前门店尚未配置样本中为 0。-cost_pricedecimal(18,4)cost_price商品单件成本价单位元部分商品为 0表示未录入或由其它模块结转成本。-cost_price_typetinyintcost_price_type成本类型枚举1=固定成本价(按 cost_price 计2=动态成本价(按采购单等方式结转,当前多数仍为暂估)。-provisional_total_costdecimal(18,2)provisional_total_cost当前库存暂估总成本单位元通常约等于 batch_stock_qty × cost_price。-total_purchase_costdecimal(18,2)total_purchase_cost当前库存总采购成本单位元当前样本中与 provisional_total_cost 相等,为后续精算成本预留。-min_discount_pricedecimal(18,2)min_discount_price最低允许成交价限价单位元收银改价时需保证成交价 ≥ 此值,为 0 时表示未设置限价或由其它规则控制。-is_discountabletinyintable_discount是否允许参与折扣的标志1=允许参与折扣0=不参与任何折扣策略。当前样本全部为 1。-days_on_shelfintdays_available商品在架天数或可售天数大致等于当前时间减去首次上架时间0 通常表示刚建档或刚启用。-audit_statustinyintaudit_status审核状态枚举2=审核通过(当前唯一值);其他值可能代表待提交、待审核、审核不通过等。-sale_channeltinyintsale_channel销售渠道枚举当前样本全部为 1 表示线下门店渠道;其他值可用于区分外卖、线上商城等渠道。-is_warehousingtinyintis_warehousing是否纳入库存管理1=参与库存管理有出入库流水0 或其他值可能表示不计库存(样本中全部为 1。-freeze_statustinyintfreeze冻结状态0=未冻结;非 0 可能表示锁定库存或禁止出库,具体业务规则需系统确认。-forbid_sell_statustinyintforbid_sell_status禁止销售状态1=未禁止允许销售2=被禁止销售,即使上架也不能卖(含义基于命名和行业惯例推测)。-able_site_transfertinyintable_site_transfer是否允许跨门店调拨或跨站点共享库存2=不允许跨店调拨当前主流值0=未配置(个别记录),含义为是否参与跨店调拨功能。-custom_label_typetinyintcustom_label_type自定义标签类型基于字段名和取值推测2=使用自定义标签1 可能表示使用系统默认标签。具体影响哪些标签功能需业务确认。-option_requiredtinyintoption_required是否需要额外选项或规格基于字段名和取值推测1=不需要额外选项,按单规格销售;其他值可能表示必须选择配料或口味。当前样本全部为 1。-remarkvarcharremark商品备注可填写口味说明、供应商信息、注意事项等当前样本全部为空。-sort_orderintsort前端展示排序权重控制商品在列表中的显示顺序具体规则数值越大还是越小排前由业务配置决定。-dim_goods_category商品分类索引树来自 stock_goods_category_tree.json。每行是一个分类节点。categoryBoxes 是“某个分类节点下面的子分类列表”,整个文件里只有两层:根节点 + 子节点两级,不存在孙节点。每个 categoryBoxes 里的元素结构与根节点完全一致(同样的 11 个字段),只是 pid 指向父节点的 idcategoryBoxes 为空。同一个分类树在 JSON 里分页返回了两次goodsCategoryList 和每个 categoryBoxes 在两个 page 中完全重复,真正的不同分类节点一共只有 26 个。从数仓角度,树结构的“真实关系”完全由 id 和 pid 就可以表达categoryBoxes 更像是前端为了直接画树而准备的冗余展开结果,在 DWD 里不需要原样存这一坨结构,只需要被“打散”成一行一个节点。下面我把完整的 categoryBoxes 结构按业务和数据的视角展开给你看。一、整体结构categoryBoxes 是子分类数组深度只有两层stock_goods_category_tree.json 顶层是一个分页数组 pages每个元素形如{ "code": 0, "data": { "total": 9, "goodsCategoryList": [ 根分类1, 根分类2, ... 共9个 ] }}每个“根分类”对象都有这些字段idtenant_idcategory_namealias_namepidbusiness_nametenant_goods_business_idopen_salesmancategoryBoxessortis_warehousing其中pid = 0 表示根分类。categoryBoxes 是一个数组里面放的是子分类节点对象。子分类对象和根分类字段完全一样只是pid = 父节点 idcategoryBoxes = []两个 page 的 goodsCategoryList 完全相同,所以你看到的 18 个“根”其实是相同的 9 个重复了两次categoryBoxes 里的子节点也重复了两次。按照去重后的真实结构:根节点 9 个。子节点 17 个。总共 26 个不同的 id。所以“完整的 categoryBoxes”其实就是9 个根节点各自带着若干子节点。二、逐个根节点把 categoryBoxes 展开给你看下面按“根分类 → categoryBoxes 子分类”的树形方式列一遍便于你直观看到完整结构。1. 根槟榔根节点id = 2790683528350533category_name = 槟榔business_name = 槟榔pid = 0categoryBoxes 只有一个子分类:子分类 1id = 2790683528350534category_name = 槟榔business_name = 槟榔pid = 2790683528350533categoryBoxes = []其它字段tenant_id、tenant_goods_business_id、is_warehousing、open_salesman、sort 与父节点一致。可以理解为业务线“槟榔”下面只有一个细分类“槟榔”。2. 根器材根节点id = 2790683528350535category_name = 器材business_name = 器材pid = 0categoryBoxes 子分类 3 个:子分类 1id = 2790683528350536category_name = 皮头pid = 2790683528350535子分类 2id = 2790683528350537category_name = 球杆pid = 2790683528350535子分类 3id = 2790683528350538category_name = 其他pid = 2790683528350535这条业务线代表所有“器材相关商品”细分为皮头、球杆、器材其他。3. 根酒水根节点id = 2790683528350539category_name = 酒水business_name = 酒水pid = 0categoryBoxes 子分类 6 个:子分类 1饮料id = 2790683528350540category_name = 饮料pid = 2790683528350539子分类 2酒水id = 2790683528350541category_name = 酒水pid = 2790683528350539子分类 3茶水id = 2790683528350542category_name = 茶水pid = 2790683528350539子分类 4咖啡id = 2790683528350543category_name = 咖啡pid = 2790683528350539子分类 5加料id = 2790683528350544category_name = 加料pid = 2790683528350539子分类 6洋酒id = 2793221553489733category_name = 洋酒pid = 2790683528350539这里是最典型的一棵分类树业务线“酒水”细分成饮料、普通酒水、茶水、咖啡、加料、洋酒。4. 根果盘业务线水果根节点id = 2790683528350545category_name = 果盘business_name = 水果pid = 0categoryBoxes 子分类 1 个子分类id = 2792050275864453category_name = 果盘business_name = 水果pid = 2790683528350545这里有个有意思的点分类名称用的是“果盘”而业务大类 business_name 是“水果”说明业务线从“水果”角度管理这个店真正卖的具体品类是“果盘”。5. 根零食根节点id = 2791941988405125category_name = 零食business_name = 零食pid = 0categoryBoxes 子分类 2 个:子分类 1id = 2791948300259205category_name = 零食pid = 2791941988405125子分类 2id = 2793236829620037category_name = 面pid = 2791941988405125这说明“面”类商品也被算在零食这条业务线里这完全是你们的门店本地习惯。6. 根雪糕根节点id = 2791942087561093category_name = 雪糕business_name = 雪糕pid = 0categoryBoxes 子分类 1 个子分类id = 2792035069284229category_name = 雪糕pid = 27919420875610937. 根香烟根节点id = 2792062778003333category_name = 香烟business_name = 香烟pid = 0categoryBoxes 子分类 1 个子分类id = 2792063209623429category_name = 香烟pid = 27920627780033338. 根其他根节点id = 2793217944864581category_name = 其他business_name = 其他pid = 0categoryBoxes 子分类 1 个子分类id = 2793218343257925category_name = 其他2pid = 2793217944864581可以理解为“杂项类商品”的一级和二级拆分。9. 根小吃根节点id = 2793220945250117category_name = 小吃business_name = 小吃pid = 0categoryBoxes 子分类 1 个子分类id = 2793221283104581category_name = 小吃pid = 2793220945250117三、categoryBoxes 元素的字段与含义无论是在 goodsCategoryList 还是 categoryBoxes 里每个分类节点的字段集合完全一致id分类节点主键唯一。tenant_id租户 ID本文件所有节点相同。category_name分类名见上面的各种名称。alias_name分类别名当前全部为空字符串。pid父级分类 ID根节点为 0子节点为父节点 id。business_name业务大类名用于业务线聚合。tenant_goods_business_id业务大类 ID对应 business_name根节点与子节点在同一业务线中取值相同。open_salesman营业员开关当前所有值为 2表示没启用分类级差异。categoryBoxes子分类数组只有根节点非空子节点都是空数组。sort排序小部分为 1大部分为 0目前排序未精细化使用。is_warehousing是否走库存本文件全部为 1。这一点很重要categoryBoxes 里的元素不是“别的结构”,就是一套完整分类节点,只是挂在父节点下面而已。四、从 DWD 建模角度怎么看 categoryBoxes结合上面的完整展开可以得出几个明确结论和建议真实树关系靠的是 id 和 pid子节点的 pid 永远等于父节点的 id。即使没有 categoryBoxes你也完全可以自下而上拼出整棵树。categoryBoxes 是前端友好的结构,不是建模必要字段。当前树只有两层根节点的 categoryBoxes 非空,子节点的 categoryBoxes 全为空。对应 DWD 可以直接用一个 category_level 字段区分 1、2 层,再配一个 is_leaf 字段。JSON 有分页重复同一套分类树出现在两个 page 中goodsCategoryList 与 categoryBoxes 内容重复。ETL 时必须按 id 去重,否则维表会重复插入相同分类。在 DWD 的 dim_goods_category 里categoryBoxes 本身不需要落列只保留每个节点一行category_id、category_name、parent_category_id、category_level、is_leaf、tenant_goods_business_id、business_name 等即可。如果你特别想保留源结构,可以另开一个 raw_json 字段存原始节点 JSON日后排错用但不建议在分析建模中依赖它。数据库字段名字段类型来源字段说明含枚举值和取值说明角色主键/外键/-category_idbigintid分类节点主键。来自分类树节点的 id在整个商品分类维度内唯一。用于在事实表中作为商品分类外键引用。主键tenant_idbiginttenant_id租户 ID商户/品牌 ID。当前所有节点取值相同表示同一个租户下的分类树。事实表可通过该字段与租户维度或门店维度间接关联。外键category_namevarchar(50)category_name分类名称。一级大类示例槟榔、器材、酒水、水果、零食、雪糕、香烟、其他、小吃。二级子类示例槟榔、皮头、球杆、其他、饮料、酒水、茶水、咖啡、加料、洋酒、果盘、面、小吃等。用于前台展示和报表按细分类统计。-alias_namevarchar(50)alias_name分类别名。当前样例数据全部为空字符串预留给业务方做简称或别名展示。对现阶段经营分析无影响。-parent_category_idbigintpid父级分类 ID。根节点取值为 0表示没有父分类子节点取值为父分类的 id。与 category_id 共同形成树形层级关系。外键business_namevarchar(50)business_name业务大类名称。将多个细分类归入同一业务线。观测值与一级大类相同槟榔、器材、酒水、水果、零食、雪糕、香烟、其他、小吃。子类的 business_name 继承所属根节点的大类名称。用于按业务线汇总库存和销售。-tenant_goods_business_idbiginttenant_goods_business_id业务大类 ID。每个 business_name 对应唯一一个 tenant_goods_business_id根节点和其下所有子节点共享同一取值。例如“酒水”大类及其子类饮料、茶水、咖啡、加料、洋酒拥有相同的业务 ID。可作为外键连接“业务线维度表”。外键category_leveltinyint由 pid 推导分类层级1 表示一级大类pid = 02 表示二级子类pid ≠ 0。方便在报表中区分大类与子类进行分组和展示层级控制。-is_leaftinyint由 categoryBoxes 推导是否叶子节点1 表示叶子分类categoryBoxes 为空列表0 表示非叶子分类(存在子分类)。当前样例数据中,一级大类是非叶子节点,二级分类是叶子节点。用于树状导航或限制只能在叶子分类建商品。-open_salesmantinyintopen_salesman营业员开关控制。枚举含义根据业务系统定义一般设计为1 表示启用营业员/导购相关功能2 表示关闭或不启用。当前样例所有分类取值为 2说明这一套分类在库存模块中统一未启用营业员逻辑。对目前的经营分析影响较小。-sort_orderintsort分类排序序号。来自 sort 字段,用于前端展示顺序控制,数值越小越靠前。当前大部分分类为 0仅少数为 1说明排序配置较为粗略。对指标统计无实质影响。-is_warehousingtinyintis_warehousing是否参与库存管理。枚举1 表示参与库存管理0 表示不参与(如服务类商品、手工费用)。当前文件中所有分类取值为 1表示这一份分类树只包含“走库存”的商品分类。可在库存报表中用作过滤条件。-dim_goods_category_Ex数据库字段名字段类型来源字段说明含枚举值和取值说明角色主键/外键/-category_idbigintid分类节点主键。来自分类树节点的 id在整个商品分类维度内唯一。用于在事实表中作为商品分类外键引用。主键tenant_idbiginttenant_id租户 ID商户/品牌 ID。当前所有节点取值相同表示同一个租户下的分类树。事实表可通过该字段与租户维度或门店维度间接关联。外键category_namevarchar(50)category_name分类名称。一级大类示例槟榔、器材、酒水、水果、零食、雪糕、香烟、其他、小吃。二级子类示例槟榔、皮头、球杆、其他、饮料、酒水、茶水、咖啡、加料、洋酒、果盘、面、小吃等。用于前台展示和报表按细分类统计。-alias_namevarchar(50)alias_name分类别名。当前样例数据全部为空字符串预留给业务方做简称或别名展示。对现阶段经营分析无影响。-parent_category_idbigintpid父级分类 ID。根节点取值为 0表示没有父分类子节点取值为父分类的 id。与 category_id 共同形成树形层级关系。外键business_namevarchar(50)business_name业务大类名称。将多个细分类归入同一业务线。观测值与一级大类相同槟榔、器材、酒水、水果、零食、雪糕、香烟、其他、小吃。子类的 business_name 继承所属根节点的大类名称。用于按业务线汇总库存和销售。-tenant_goods_business_idbiginttenant_goods_business_id业务大类 ID。每个 business_name 对应唯一一个 tenant_goods_business_id根节点和其下所有子节点共享同一取值。例如“酒水”大类及其子类饮料、茶水、咖啡、加料、洋酒拥有相同的业务 ID。可作为外键连接“业务线维度表”。外键category_leveltinyint由 pid 推导分类层级1 表示一级大类pid = 02 表示二级子类pid ≠ 0。方便在报表中区分大类与子类进行分组和展示层级控制。-is_leaftinyint由 categoryBoxes 推导是否叶子节点1 表示叶子分类categoryBoxes 为空列表0 表示非叶子分类(存在子分类)。当前样例数据中,一级大类是非叶子节点,二级分类是叶子节点。用于树状导航或限制只能在叶子分类建商品。-open_salesmantinyintopen_salesman营业员开关控制。枚举含义根据业务系统定义一般设计为1 表示启用营业员/导购相关功能2 表示关闭或不启用。当前样例所有分类取值为 2说明这一套分类在库存模块中统一未启用营业员逻辑。对目前的经营分析影响较小。-sort_orderintsort分类排序序号。来自 sort 字段,用于前端展示顺序控制,数值越小越靠前。当前大部分分类为 0仅少数为 1说明排序配置较为粗略。对指标统计无实质影响。-is_warehousingtinyintis_warehousing是否参与库存管理。枚举1 表示参与库存管理0 表示不参与(如服务类商品、手工费用)。当前文件中所有分类取值为 1表示这一份分类树只包含“走库存”的商品分类。可在库存报表中用作过滤条件。-dim_groupbuy_package团购套餐定义来自 group_buy_packages。每行代表一种团购套餐及其使用规则。数据库字段名字段类型来源字段说明含枚举与取值说明角色groupbuy_package_idbigintid门店侧团购套餐主键。每条记录一个套餐定义供团购券核销记录指向。平台验券记录中的 group_package_id 通常指向这里。主键tenant_idbiginttenant_id租户品牌/商户ID。本数据集中全表相同表示同一品牌。外键指向租户维site_idbigintsite_id门店 ID本表所有记录属于同一门店。与其他 JSON 的 site_id 一致。外键指向门店维package_namevarchar(200)package_name团购套餐名称用于前台展示及核销界面例如“早场特惠一小时”“KTV欢唱四小时”等。-package_template_idbigintpackage_id上层套餐 ID 或总部/系统级套餐 ID。多个 groupbuy_package_id 可能共享同一个 package_template_id表示同一业务套餐在不同门店或不同版本下的配置。外键指向套餐模板维后续可建selling_pricedecimal(10,2)selling_price团购售卖价面向顾客在外部平台的成交价格。当前样本全部为 0实际平台售价可能在外部系统不在本地落地。-coupon_face_valuedecimal(10,2)coupon_money券面值或内部结算面值。表示此套餐在门店侧可以抵扣的金额用于验券或套餐流水时记账。例如“早场特惠一小时”可配置为 40.00“KTV欢唱四小时”可配置为 200.00。当前样本为 0 但字段设计上非常关键。-duration_secondsintduration套餐包含的时长单位为秒。常见取值3600 表示 1 小时7200 表示 2 小时14400 表示 4 小时。核销时可用于换算可用台费时长。-start_timedatetimestart_time套餐整体生效开始时间。例如“2025-07-20 00:00:00”。通常从某日零点开始。-end_timedatetimeend_time套餐整体生效结束时间。在该时间点之后不可使用。极大日期如 9999-12-31 23:59:59可视为长期有效。-table_area_namevarchar(100)table_area_name套餐适用的门店台区名称例如“A区中八”“B区中八”“斯诺克”“包厢”“KTV”等。主要用于展示和过滤配合区域 ID 列实现人类可读的说明。-is_enabledintis_enabled启用状态枚举。1 表示启用或上架2 表示停用或下架。侧重表示“配置是否上架”,与 effective_status 区分。-is_deletedintis_delete逻辑删除标志。0 表示正常1 表示逻辑删除(数据仍保留但不再使用)。当前样本全部为 0。-create_timedatetimecreate_time套餐配置在系统中的创建时间用于审计和版本追踪。-tenant_table_area_id_listvarchar(512)tenant_table_area_id_list租户级台区分组 ID 列表。当前每条记录为一个大整数(例如 2791960001957765字符串表示“台区分组”主键。系统通过此分组再关联到具体多个台区。外键指向台区分组维后续可建card_type_idsvarchar(255)card_type_ids允许使用本套餐的会员卡类型 ID 列表。当前样本统一为字符串“0”表示未限制卡种任意顾客或任意会员卡都可使用。若未来启用将以分隔的 ID 列表形式记录限定卡种。外键潜在指向卡种维dim_groupbuy_package_Ex数据库字段名字段类型来源字段说明含枚举与取值说明角色groupbuy_package_idbigintid门店侧团购套餐主键。每条记录一个套餐定义供团购券核销记录指向。平台验券记录中的 group_package_id 通常指向这里。主键site_namevarchar(100)site_name门店名称当前均为“朗朗桌球”。属于冗余展示字段可用于报表标题。-usable_countintusable_count可使用次数上限。当前全部为 9999999用作“无限次使用”的哨兵值。若未来限制次数只需配置为具体次数。-date_typeintdate_type日期限制类型枚举。当前样本全部为 1。推测常见含义1 表示“全部日期可用”;其他值可用于区分工作日、周末或指定日期等模式。-usable_rangevarchar(255)usable_range日期范围说明的文本例如“周一至周五”等。当前全部为空字符串实际规则由 date_type 与时间段字段控制。-date_infovarchar(255)date_info更细粒度的日期信息可能用于存储具体日期列表或节假日规则形式可能是编码或 JSON 字符串。当前几乎全部为空仅有极少记录为“0”。-start_clockvarchar(16)start_clock每日可用时间段的起始时间第一段字符串格式 HH:MM:SS例如“10:00:00”“00:00:00”。与 end_clock 组合定义日内时段。-end_clockvarchar(16)end_clock每日可用时间段的结束时间第一段字符串格式 HH:MM:SS。与 start_clock 共同描述第一段可用时段。-add_start_clockvarchar(16)add_start_clock附加可用时段的起始时间第二段格式 HH:MM:SS。当前样本常见值为“00:00:00”或“10:00:00”。用于配置早场加夜场等双时段场景。-add_end_clockvarchar(16)add_end_clock附加可用时段的结束时间第二段。常见值如“1.00:00:00”“18:00:00”“23:59:00”。其中“1.00:00:00”表示跨至次日零点用于表示“可用到第二天凌晨”的场景。-area_tag_typeintarea_tag_type区域标记类型枚举。当前样本全部为 1。推测 1 表示“按台区标签限制”(如 A 区、B 区、中八、斯诺克、包厢、KTV 等)。其他取值可能对应按具体台桌或其它规则限用。-table_area_idbiginttable_area_id单一台区 ID。当前样本全部为 0。原始设计用于限定只能在一个具体区域使用但由于已引入多选逻辑实际使用已迁移到 tenant_table_area_id_list。-tenant_table_area_idbiginttenant_table_area_id租户级台区 ID单值版本。当前样本全部为 0。与 table_area_id 类似,已被多选列表字段取代。-table_area_id_listvarchar(512)table_area_id_list门店级台区 ID 列表。当前样本全部为空字符串。根据命名推测原本用于存储多个 table_area_id实际实现已转向租户维度列表字段。-group_typeintgroup_type团购类型枚举。当前样本全部为 1。推测 1 表示“计时类/台费类套餐”。其他取值可能用于商品类套餐、代金券类等,需结合系统配置进一步确认。-system_group_typeintsystem_group_type系统级团购类型枚举。当前样本全部为 1。推测 1 表示“券码类团购”,即通过券码核销。其他取值可能为卡内套餐、内部套餐等,具体含义有待业务确认。-package_typeinttype内部业务子类型枚举。样本中取值有 1 与 2各占比不同。具体含义不明可能区分不同产品线或套餐来源例如“平台合作套餐”与“自定义套餐”等需要参考业务文档。-effective_statusinteffective_status当前有效状态枚举由系统根据时间及配置动态计算。观测值1 表示当前有效可正常核销3 表示失效或已过期(即使 is_enabled 仍为 1也不可使用。可用于分析时过滤失效套餐。-max_selectable_categoriesintmax_selectable_categories最大可选择分类数或子项数具体含义未在样本和说明中体现当前值全部为 0。可能用于“组合型套餐”中限制可选项目数量。-creator_namevarchar(100)creator_name创建人名称例如“店长:郑丽珊”。主要用于审计追踪和后台展示。-事实表DWD以下事实表均以“业务事件”为粒度不做聚合。字段来源包括原始 JSON(或ODS) 中的明细数组以及对象属性。时间单位均统一为秒并保留原始字段以备检查。金额按照源系统保持符号规则不做符号转换。dwd_settlement_head结账记录来自 settlement_records的内层 settleList 对象每行代表一次结账。该表在业务上是其他明细事实表的汇总头用于串联台费、商品、助教、券等明细。数据库字段名字段类型来源字段说明含枚举值和取值说明角色业务重要性order_settle_idBIGINTsettleList.id结账记录主键 ID订单结算 ID全系统统一的结账单号用于关联台费流水、助教流水、小票等明细表。主键tenant_idBIGINTsettleList.tenantId租户/商户 ID品牌维度与各业务 JSON 中的 tenantId 一致。外键重要site_idBIGINTsettleList.siteId门店 ID用于关联门店维表 dim_site。外键重要site_nameVARCHAR(100)settleList.siteName门店名称快照冗余展示字段推荐通过 site_id 关联维表获取标准名称。-重要table_idBIGINTsettleList.tableId结账关联的桌台 ID对应台桌维表 dim_site_table 的主键。外键重要settle_nameVARCHAR(100)settleList.settleName结账对象名称一般为 “区域 + 桌号”,如 “A区 A17”便于报表展示。-重要order_trade_noBIGINTsettleList.settleRelateId交易号 / 订单流水号,与台费、助教等明细中的 order_trade_no 一致,用于按“交易维度”串联各业务明细。-重要create_timeDATETIMEsettleList.createTime结账创建时间收银端点击“确认结账”的时间格式YYYY-MM-DD HH:MM:SS。-重要pay_timeDATETIMEsettleList.payTime实际支付完成时间通常晚于 create_time用于资金结算及对账分析。-重要settle_typeTINYINTsettleList.settleType结账类型枚举。样本中主要有1=正常结账3=特殊类型结账(如挂账、补单、调整单等,具体需业务确认)。-重要revoke_order_idBIGINTsettleList.revokeOrderId若当前记录属于撤销链路记录对应的撤销单或原单的结账 ID形成自关联关系。样本中为 0。外键重要member_idBIGINTsettleList.memberId会员主键 ID一般对应租户维度的会员 ID用于关联 dim_member。外键重要member_nameVARCHAR(100)settleList.memberName会员姓名快照冗余展示字段当前样本多为空推荐通过关联会员维表获取标准姓名。-重要member_phoneVARCHAR(50)settleList.memberPhone会员手机号快照冗余展示字段通常通过会员维表获取更可靠。-重要member_card_account_idBIGINTsettleList.tenantMemberCardId会员卡账户 ID对应 dim_member_card_account 主键;当前样本多为 0但结构上是“结账 → 具体卡账户”的外键。外键重要member_card_type_nameVARCHAR(100)settleList.memberCardTypeName会员卡类型名称快照如“储值卡”“次卡”等便于前端展示和报表查看。-重要is_bind_memberTINYINT(1)settleList.isBindMember本单是否绑定会员。0=否散客1=是(存在 member_id。样本中多为 0。-重要member_discount_amountDECIMAL(18,2)settleList.memberDiscountAmount会员折扣产生的优惠金额例如会员卡折扣减免的台费/商品金额,参与整单优惠拆分。-重要consume_moneyDECIMAL(18,2)settleList.consumeMoney本次结账消费总额原价小计约等于台费 + 商品 + 助教 + 服务等项目原价金额之和,未扣除任何优惠。-重要table_charge_moneyDECIMAL(18,2)settleList.tableChargeMoney本单台费桌台计费部分的金额原价侧。-重要goods_moneyDECIMAL(18,2)settleList.goodsMoney本单商品销售原价金额对应酒水、小吃等商品类消费。-重要real_goods_moneyDECIMAL(18,2)settleList.realGoodsMoney商品实际计入金额通常为 goods_money 扣除部分促销/折扣之后的金额。-重要assistant_pd_moneyDECIMAL(18,2)settleList.assistantPdMoney助教“排钟 / 点钟 / 按时长服务”等项目的应计金额(原价侧),与助教流水中的 ledger_amount 汇总对应。-重要assistant_cx_moneyDECIMAL(18,2)settleList.assistantCxMoney助教“超休”类助教项目金额原价侧是对助教收入的补充拆分维度具体业务定义需结合助教模块确认。-重要adjust_amountDECIMAL(18,2)settleList.adjustAmount手动减免人工调价金额汇总整单减免或特殊价格调整通常正值表示减免额度。-重要pay_amountDECIMAL(18,2)settleList.payAmount本单顾客“实付金额”不含券面值这类虚拟抵扣等于各支付渠道金额之和减去退款等调整。-重要balance_amountDECIMAL(18,2)settleList.balanceAmount从会员储值余额账户中扣除的金额储值卡消费部分。-重要recharge_card_amountDECIMAL(18,2)settleList.rechargeCardAmount充值卡支付金额使用充值类卡片余额支付的金额与储值/充值型卡资金来源相关。-重要gift_card_amountDECIMAL(18,2)settleList.giftCardAmount礼品卡或代金卡支付金额。-重要coupon_amountDECIMAL(18,2)settleList.couponAmount本单由优惠券团购券、代金券等实际抵扣的金额。-重要rounding_amountDECIMAL(18,2)settleList.roundingAmount抹零 / 四舍五入产生的金额差值,例如按角、分抹零。-重要point_amountDECIMAL(18,2)settleList.pointAmount积分相关金额或数量。根据系统配置可能表示“使用积分抵扣的金额”或“本单获得的积分折算金额”文档未给出唯一定义。-重要dwd_settlement_head_Ex结账记录扩展数据库字段名字段类型来源字段说明含枚举值和取值说明角色业务重要性order_settle_idBIGINTsettleList.id结账记录主键 ID订单结算 ID全系统统一的结账单号用于关联台费流水、助教流水、小票等明细表。主键serial_numberINTsettleList.serialNumber结账序列号或打印序号当前样本全部为 0具体业务用途未在文档中明确。-不重要settle_statusTINYINTsettleList.settleStatus结账状态枚举。当前样本值均为 2表示“已结算/已完成”;其他取值及含义未在样本和文档中出现,需后续补充。-不重要can_be_revokedTINYINT(1)settleList.canBeRevoked本单是否仍允许撤销/冲正。0=否1=是。样本中均为 0。主要用于运维控制分析价值有限。-不重要revoke_order_nameVARCHAR(100)settleList.revokeOrderName撤销单名称/标识,用于人工识别撤销关系;当前样本为空。-不重要revoke_timeDATETIMEsettleList.revokeTime撤销时间。无撤销时通常为系统默认值如 0001-01-01 00:00:00。-不重要is_first_orderTINYINT(1)settleList.isFirst是否首单新客首单标记。0=否1=是。当前样本全部为 0且文档中说明为“推测用途”具体业务定义需确认。-不重要service_moneyDECIMAL(18,2)settleList.serviceMoney其他服务费金额如包间服务费等用于与台费、商品、助教金额区分。-不重要cash_amountDECIMAL(18,2)settleList.cashAmount现金支付金额。-不重要card_amountDECIMAL(18,2)settleList.cardAmount刷卡类支付金额如银行卡/信用卡等),具体包含哪些通道需结合支付模块确认。-不重要online_amountDECIMAL(18,2)settleList.onlineAmount线上支付金额汇总如微信、支付宝、云闪付等不区分具体通道。-不重要refund_amountDECIMAL(18,2)settleList.refundAmount本单涉及的退款金额。普通正常结账为 0退单或部分退款时为正数。-不重要prepay_moneyDECIMAL(18,2)settleList.prepayMoney本单使用的预付金/定金金额。-不重要payment_methodTINYINTsettleList.paymentMethod支付方式整体标记枚举。当前样本值统一为 0具体各枚举值对应的支付方式未在文档中说明需业务确认。-不重要coupon_sale_amountDECIMAL(18,2)settleList.couponSaleAmount优惠券本身的售卖金额/成本金额(例如顾客为购买套餐券支付的金额),当前样本多为 0。-不重要all_coupon_discountDECIMAL(18,2)settleList.allCouponDiscount所有券类优惠折扣的汇总金额用于统计“券优惠总额”。-不重要goods_promotion_moneyDECIMAL(18,2)settleList.goodsPromotionMoney商品促销产生的优惠金额如满减、买赠均摊到商品部分。-不重要assistant_promotion_moneyDECIMAL(18,2)settleList.assistantPromotionMoney助教项目参与活动/促销产生的优惠金额。-不重要activity_discountDECIMAL(18,2)settleList.activityDiscount整单活动折扣金额如整单打折、满减活动产生的优惠不区分具体项目类别。-不重要assistant_manual_discountDECIMAL(18,2)settleList.assistantManualDiscount针对助教服务的人工减免金额与一般商品/台费折扣区分开。-不重要point_discount_priceDECIMAL(18,2)settleList.pointDiscountPrice积分抵扣对应的金额售价侧记录因积分使用而减少的应收金额。-不重要point_discount_costDECIMAL(18,2)settleList.pointDiscountCost积分抵扣对应的成本金额成本侧用于毛利和利润分析。-不重要is_use_couponTINYINT(1)settleList.isUseCoupon是否使用优惠券。0=未使用1=使用。当前样本均为 0。-不重要is_use_discountTINYINT(1)settleList.isUseDiscount是否使用折扣包括会员折扣或其他整单折扣。0=未使用1=使用。当前样本多为 0。-不重要is_activityTINYINT(1)settleList.isActivity是否参与营销活动。0=未参与1=参与。-不重要operator_nameVARCHAR(100)settleList.operatorName结账操作员名称快照通常带角色前缀如“收银员:张三”),用于报表展示。-不重要salesman_nameVARCHAR(100)settleList.salesManName营业员/业务员名称,用于业绩归属及提成分析;样本中多为空。-不重要order_remarkVARCHAR(255)settleList.orderRemark订单备注由收银员手工填写的文字说明如特殊情况、赠送原因等主要用于人工复盘。-不重要operator_idBIGINTsettleList.operatorId结账操作员用户 ID用于关联员工/账号维度(如 dim_staff。外键不重要salesman_user_idBIGINTsettleList.salesManUserId营业员用户 ID可关联员工维度用于业绩分析和提成计算。外键不重要dwd_table_fee_log台费流水来自 table_fee_transactions的 siteTableUseDetailsList忽略siteProfile已在dim_site实现。粒度为一次台费使用记录包括包厢。该表连结订单结账头、桌台、会员等维度。数据库字段名字段类型来源字段说明含枚举值、取值说明角色table_fee_log_idBIGINTid台费流水记录主键。每一条台费使用记录唯一一条。对应一次“台费计费单元”。主键order_trade_noBIGINTorder_trade_no订单交易号。整笔订单的主编号用于把同一订单下的台费、商品、助教等多种明细串联在一起。可与支付记录中的交易号对应。外键order_settle_idBIGINTorder_settle_id结算单号 / 结账 ID。对应一次完整的结账操作。与 dwd_settlement_head 的主键关联。外键order_pay_idBIGINTorder_pay_id订单支付记录 ID。对应支付记录中的 id 或 relate_id视具体模型。用于追踪这条台费最终对应哪一条支付流水。外键tenant_idBIGINTtenant_id租户 / 品牌 ID。本文件内所有记录属于同一租户。与其他表的 tenant_id 一致用于品牌级过滤。外键site_idBIGINTsite_id门店 ID。当前样本为同一门店。与嵌套的 siteProfile.id 以及其他 JSON 中的 site_id 对应用于门店维度关联。外键site_table_idBIGINTsite_table_id桌台 ID。对应“台桌基础表”的主键。用于确定具体哪一张台或包厢。外键site_table_area_idBIGINTsite_table_area_id门店内“台桌区域” ID门店视角的区域如 A 区、B 区、斯诺克区、包厢区。与门店内部的区域维度对应。外键site_table_area_nameVARCHAR(64)site_table_area_name台桌区域名称如 “A区”“B区”“斯诺克区”“VIP包厢” 等。主要用于报表展示和人工阅读。无tenant_table_area_idBIGINTtenant_table_area_id租户层面的台桌区域 ID。用于品牌层统一定义的区域配置一个区域可在多门店复用。对应租户级区域维度。外键member_idBIGINTmember_id会员 ID。多数为 0 表示散客。非 0 时表示关联会员0 表示散客或未使用会员;>0 对应会员档案中的 id。用于将台费流水关联到 dim_member。外键ledger_nameVARCHAR(64)ledger_name台号名称例如 “A1”“A2”“S1”“VIP包厢” 等。等价于桌台维表中的展示名称冗余在流水中作为快照。无ledger_unit_priceDECIMAL(18,2)ledger_unit_price台费结算时的计费单价元/小时或元/单位时长)。与 ledger_count 配合计算原始应收台费。常见值如 48.0、58.0、68.0、88.0、98.0、116.0 等。无ledger_countINTledger_count计费时长单位数。与 ledger_unit_price 共同决定原始应收额。可与 real_table_use_seconds 换算关系约为:时长秒数 ≈ ledger_count × 计费粒度(例如 30 分钟、60 分钟。无ledger_amountDECIMAL(18,2)ledger_amount原始应收台费金额按单价与计费时长计算出来的台费金额尚未考虑会员、券、调账等各类优惠拆分。无real_table_charge_moneyDECIMAL(18,2)real_table_charge_money实际向顾客收取的台费金额现金 / 实付维度),不含券方承担、会员承担和内部调账部分。若为 0则该笔台费完全由券、会员或内部调账承担。无coupon_promotion_amountDECIMAL(18,2)coupon_promotion_amount由优惠券、活动、团购等促销承担的优惠金额直接抵扣在台费上。常见值为与单价或整倍数相同例如 48.0、96.0、136.0、144.0 等。若 real_table_charge_money 为 0 且该字段等于 ledger_amount说明台费完全由促销承担。无member_discount_amountDECIMAL(18,2)member_discount_amount由会员权益产生的优惠金额例如会员折扣、会员免费台等。若 ledger_amount = real_table_charge_money = member_discount_amount表示这笔台费由会员权益承担但仍作为台费收入进行记录。无adjust_amountDECIMAL(18,2)adjust_amount手动减免调整金额 / 调账金额。用于将台费金额转移或冲减到其他项目(例如套餐、包厢统一计费)或做手工调整。若 ledger_amount 完全被 adjust_amount 抵消则说明该笔台费被整体调出当前台费科目。无real_table_use_secondsINTreal_table_use_seconds台费实际计费时长。用于计算台费单价与费率分析。内部统一以秒为单位。无add_clock_secondsINTadd_clock_seconds加钟时长。在原有使用基础上追加的累计加钟时长常见为 2400、4200 等 60 的倍数(对应 40 分钟、70 分钟等。无start_use_timeDATETIMEstart_use_time台开始使用时间即实际开台时间。与 ledger_start_time 相同表示计费起算点。无ledger_end_timeDATETIMEledger_end_time台账计费结束时间。通常与 last_use_time 相差 1 秒。可理解为系统为计费进行的截断时刻。无create_timeDATETIMEcreate_time台费流水记录创建时间通常接近结账时间。用于区分计费期间与结账时间。无ledger_statusINTledger_status台费状态。样本中全部为 1。含义1 表示正常已结算台费。按命名推断0 可能表示未结算2 可能表示作废或撤销需要结合后续数据确认。无is_single_orderINTis_single_order是否独立计费单元。枚举1 表示该记录是独立结算的桌费0 表示非独立结算条目可能是合并结账、转台过程中的占位记录。is_single_order = 0 的记录通常 ledger_count 与 real_table_use_seconds 为 0。无is_deleteINTis_delete逻辑删除标志。0 表示未删除有效记录1 表示已逻辑删除(一般不参与统计)。当前样本全部为 0。无dwd_table_fee_log_Ex台费流水扩展数据库字段名字段类型来源字段说明含枚举值、取值说明角色table_fee_log_idBIGINTid台费流水记录主键。每一条台费使用记录唯一一条。对应一次“台费计费单元”。主键operator_nameVARCHAR(64)operator_name操作员姓名。为冗余展示字段便于直接阅读而不必联表员工档案。无salesman_nameVARCHAR(64)salesman_name营业员姓名。当前样本为空。用于需要对营业员维度做业绩统计时作为冗余展示。无used_card_amountDECIMAL(18,2)used_card_amount由储值卡、次卡等“卡内余额”直接抵扣到台费的金额。当前样本为 0但语义明确用于区分“卡扣款”与“现金收款”。无service_moneyDECIMAL(18,2)service_money服务费 / 成本 /分成金额字段,类似助教流水里的 service_money。当前样本全为 0门店未启用该字段未来可能用于台费附加服务费或分成计算。无mgmt_feeDECIMAL(18,2)mgmt_fee管理费字段。当前样本为 0。推测用于未来支持“台费附加管理费”功能。尚未实际启用。无fee_totalDECIMAL(18,2)fee_total附加费用合计值字段。当前样本为 0。设计上用于汇总管理费、服务费等附加费用。尚未实际启用。无ledger_start_timeDATETIMEledger_start_time台账计费起始时间。当前样本与 start_use_time 相同表示计费与开台同时开始。无last_use_timeDATETIMElast_use_time最后使用 / 操作时间,通常略晚于 ledger_end_time。可视为客人最后一次用台或最后一次加钟/操作的时间点。无operator_idBIGINToperator_id操作员 ID。负责开台 / 结账的员工账号 ID。与员工 / 账号体系中的用户 ID 对应。外键salesman_user_idBIGINTsalesman_user_id营业员用户 ID。目前样本值为 0表示门店暂未使用此字段做提成员工归属但语义清晰。外键salesman_org_idBIGINTsalesman_org_id营业员所属机构 / 部门 ID。目前样本为 0。用于员工组织结构统计时的归属。外键dwd_table_fee_adjust台费折扣/调整)来自 table_fee_discount_records的table_fee_discount_records.data.taiFeeAdjustInfos. 路径下字段路径。每行代表一次台费打折或减免操作。由于结构相对简单字段说明如下数据库字段名字段类型来源字段说明含枚举值和取值说明角色table_fee_adjust_idbigintid台费折扣 / 调整流水主键一条台费打折或调账操作对应一条记录。主键order_trade_nobigintorder_trade_no订单交易号与台费流水、结账记录等表中的同名字段一致用于把本次台费调整挂到具体订单上。外键order_settle_idbigintorder_settle_id结算单 / 小票 ID与小票、结账头表中的 order_settle_id 对应用于关联同一次结账。外键tenant_idbiginttenant_id租户 / 品牌 ID标识该记录属于哪一个商户。外键site_idbigintsite_id门店 ID与 dim_site、其它业务事实表中的 site_id 一致。外键table_idbigintsite_table_id台桌 ID与 dim_tablesite_tables_master.id以及各类台费、助教流水中的 site_table_id 对应,标识哪一张台发生了折扣/调账。外键table_area_idbiginttableProfile.site_table_area_id门店维度的台桌区域 ID与 dim_table 中的 site_table_area_id 对应,例如 “斯诺克区”“VIP包厢”等区域。外键table_area_namevarchar(64)tableProfile.site_table_area_name台桌区域名称快照例如 “斯诺克区”“A区”“VIP包厢”冗余展示字段可从 dim_table 通过 table_area_id 获取。-tenant_table_area_idbiginttenant_table_area_id租户维度的“台桌区域 ID”同一租户下跨门店复用的区域标识用于在租户级别统计各区域的折扣分布。外键ledger_amountdecimal(18,2)ledger_amount台费调整金额等于台费流水中对应记录的 adjust_amount。正数表示被减免/调账掉的台费金额(本批数据全部为正);是衡量台费折扣规模的核心度量。-ledger_statusintledger_status调整记录状态枚举。1生效调整当前有效的折扣/调账记录0失效/被覆盖的历史记录(同一订单有多次调整时,旧记录会标记为 0仅最新一条为 1。-is_deleteintis_delete逻辑删除标记枚举。0未删除有效记录1已逻辑删除后台标记删除不再参与业务统计。当前数据全部为 0但字段需保留以适配长期数据。-adjust_timedatetimecreate_time台费调整记录创建时间即打折/调账操作被系统写入的时间戳,用于时间分析和与结账时间对比(判断是事前折扣还是事后调账)。-dwd_table_fee_adjust_Ex台费折扣/调整扩展数据库字段名字段类型来源字段说明含枚举值和取值说明角色table_fee_adjust_idbigintid台费折扣 / 调整流水主键一条台费打折或调账操作对应一条记录。主键adjust_typeintadjust_type调整类型枚举。当前数据全部为 1。取值示例1台费打折 / 台费减免(本门店实际使用的唯一类型);其他值:预留给台费转移、误操作恢复等其他类型(当前未出现,仅推测)。-ledger_countintledger_count调整次数计数本数据中恒为 1表示“一次调整事件”与台费流水中的 ledger_count计时长含义不同。-ledger_namevarchar(128)ledger_name调账项目名称或打折原因名称设计意图当前门店所有记录值为空字符串未实际使用。作用暂不明确保留以备后续业务启用。-applicant_namevarchar(64)applicant_name申请人姓名快照通常包含角色前缀如 “收银员:张三”);是 applicant_id 的冗余展示字段,实际名称应以员工维表为准。-operator_namevarchar(64)operator_name操作员姓名快照与 operator_id 对应的姓名冗余字段。-applicant_idbigintapplicant_id申请人 ID发起本次台费折扣/调账的员工账号 ID用于按员工维度统计折扣行为。外键operator_idbigintoperator_id实际执行调账操作的操作员 ID当前样本中与 applicant_id 相同,但模型上允许“申请人 ≠ 操作人”。外键dwd_store_goods_sale商品销售明细来自 store_goods_sales_records的 orderGoodsLedgers。每行代表订单中的一条商品销售明细。字段较多以下列出关键字段及其作用。数据库字段名字段类型来源字段说明含枚举值和取值说明角色业务重要性store_goods_sale_idbigintid商品销售明细主键每条记录代表一次订单中的一个商品行流水。主键-order_trade_nobigintorder_trade_no订单交易号业务单号与台费、助教、团购等表的 order_trade_no 一致用于把同一订单下各类消费串联起来。外键重要order_settle_idbigintorder_settle_id结账记录主键 ID连接结账记录 / 结算头事实表。外键重要order_pay_idbigintorder_pay_id支付记录 ID连接支付流水事实表用于还原本条销售对应的收款信息。外键重要order_goods_idbigintorder_goods_id当前版本的订单内商品明细 ID可在订单范围内唯一定位该商品行用于与小票明细等做行级关联。外键重要site_idbigintsite_id门店 ID系统主键与其它流水表中的 site_id 一致。外键重要tenant_idbiginttenant_id租户/品牌 ID同一品牌下多门店共享同一个 tenant_id。外键重要site_goods_idbigintsite_goods_id门店级商品 ID连接门店商品档案 dim_store_goods与库存变动记录中的 siteGoodsId 一致。外键重要tenant_goods_idbiginttenant_goods_id租户级品牌级商品 ID连接租户级商品档案维度表一个 tenant_goods_id 在不同门店可对应多个 site_goods_id。外键重要tenant_goods_category_idbiginttenant_goods_category_id租户级商品一级分类 ID连接商品分类维度如酒水、零食等。外键重要tenant_goods_business_idbiginttenant_goods_business_id租户级商品业务大类 ID更高一层的业务分类如“零食类”“酒水类”等。外键重要site_table_idbigintsite_table_id球台 ID非 0 表示该商品在某张台桌上点单0 表示前台售卖或与台桌无关。连接台桌维度 dim_table。外键重要ledger_namevarchar(200)ledger_name销售项目名称商品名如“哇哈哈矿泉水”“地道肠”等为当时销售时刻的名称快照。-重要ledger_group_namevarchar(100)ledger_group_name门店前台菜单分组名称如“酒水”“零食”“小吃”等与品牌统一分类是两套维度。-重要ledger_unit_pricedecimal(18,2)ledger_unit_price结算单价元/单位);本次销售实际使用的单价。-重要ledger_countintledger_count销售数量以商品单位计如 1、2、6、36 等。-重要ledger_amountdecimal(18,2)ledger_amount原始应收金额未考虑任何折扣/抵扣),通常接近 ledger_unit_price × ledger_count。-重要discount_pricedecimal(18,2)discount_price折后单价元/单位);无折扣时等于 ledger_unit_price有折扣时小于 ledger_unit_price。-重要real_goods_moneydecimal(18,2)real_goods_money本行商品实际入账金额已考虑折扣及其他抵扣后实际计入营业额的金额一定不大于 ledger_amount。-重要cost_moneydecimal(18,2)cost_money本行商品对应的成本金额用于毛利和利润分析源自商品档案成本价及成本核算逻辑。-重要ledger_statustinyintledger_status销售流水状态1=正常有效;其他数值(当前数据未出现)一般表示“待结算”“作废”等。-重要is_deletetinyintis_delete逻辑删除标志0=正常有效1=已删除(仅保留历史,不再参与前端展示及统计)(本批数据全部为 0。-重要create_timedatetimecreate_time销售记录创建时间通常为结账时间或录入时间用于时间维度分析与订单层时间字段对齐。-重要dwd_store_goods_sale_Ex商品销售明细扩展数据库字段名字段类型来源字段说明含枚举值和取值说明角色业务重要性store_goods_sale_idbigintid商品销售明细主键每条记录代表一次订单中的一个商品行流水。主键-legacy_order_goods_idbigintorderGoodsId旧版订单商品明细 ID兼容字段当前接口已统一使用 order_goods_id本批数据全部为 0。-不重要site_namevarchar(100)siteName门店名称对 site_id 的冗余文本(例如“朗朗桌球”),用于展示。-不重要legacy_site_idbigintsiteId历史兼容门店 ID当前接口统一使用 site_id本批数据 siteId 全部为 0。-不重要goods_remarkvarchar(255)goods_remark商品备注/口味说明/特殊说明;部分记录为空,部分与商品名相同。-不重要option_value_namevarchar(200)option_value_name商品选项名称规格/口味,如大杯/小杯、不加冰等);当前门店未启用多规格,样本中全部为空。-不重要operator_namevarchar(100)operator_name操作员姓名冗余如“收银员:郑丽珊”;用于展示,不作为关联键。-不重要open_salesman_flagtinyintopenSalesman是否启用营业员机制标志1=启用营业员/提成体系(需指定 salesman_* 字段2=未启用营业员体系(本批数据全部为 2。-不重要salesman_user_idbigintsalesman_user_id营业员用户 ID系统账号 ID当前样本全部为 0说明门店未启用营业员业绩统计。外键不重要salesman_namevarchar(100)salesman_name营业员姓名当前样本全部为空字符串。-不重要salesman_role_idbigintsalesman_role_id营业员角色 ID例如某角色代码对应“销售员”角色当前样本全部为 0。外键不重要sales_man_org_idbigintsales_man_org_id营业员所属组织/部门 ID当前样本全部为 0未启用按组织分组统计。外键不重要discount_moneydecimal(18,2)discount_money本行商品的直接价格优惠金额打折让利部分在简单场景下满足ledger_amount discount_money ≈ real_goods_money不含积分、券抵扣。-不重要returns_numberintreturns_number退货数量当前样本全部为 0如发生退货则记录退回的件数。-不重要coupon_deduct_moneydecimal(18,2)coupon_deduct_money优惠券/团购券直接抵扣到本条商品明细上的金额;当前样本为 0说明券更多在订单级处理。-不重要member_discount_amountdecimal(18,2)member_discount_amount由会员折扣针对本行商品产生的优惠金额当前样本全部为 0折扣通常体现在 discount_money 中。-不重要point_discount_moneydecimal(18,2)point_discount_money由积分抵扣的金额顾客用积分兑换的抵现金额。-不重要point_discount_money_costdecimal(18,2)point_discount_money_cost积分抵扣对应的成本金额积分成本、营销费用等核算用。-不重要package_coupon_idbigintpackage_coupon_id套餐券 ID当商品来自套餐拆分或与套餐券关联时用于追溯对应的套餐业务当前样本为 0。-不重要order_coupon_idbigintorder_coupon_id订单级优惠券 ID整单使用某张券时可用于记录该券对本行商品的分摊关系当前样本为 0。-不重要member_coupon_idbigintmember_coupon_id会员券 ID如会员专享优惠券当前样本为 0为会员权益预留字段。-不重要option_pricedecimal(18,2)option_price商品选项规格/加料等)的附加价格;当前门店未启用此功能,样本为 0。-不重要option_member_discount_moneydecimal(18,2)option_member_discount_money由会员折扣作用在“选项价格”上的优惠金额当前样本为 0。-不重要option_coupon_deduct_moneydecimal(18,2)option_coupon_deduct_money由优惠券抵扣“选项价格”的金额当前样本为 0。-不重要push_moneydecimal(18,2)push_money本行商品对应的提成金额营业员/业务员提成);当前样本为 0说明提成体系未启用。-不重要is_single_ordertinyintis_single_order是否作为独立明细参与订单结算1=作为独立明细参与订单0=在特殊业务中可能合并为打包项目(当前样本全部为 1。-不重要sales_typetinyintsales_type销售类型1=正常销售(当前样本全部为 1常见扩展用法2=赠品3=内部消耗4=盘点调整等。-不重要operator_idbigintoperator_id操作员 ID录入本条销售的员工与其它流水中的 operator_id 一致可统一做员工维度分析。外键重要dwd_assistant_service_log助教服务流水来自 assistant_service_records的 assistant_service_records.data.orderAssistantDetails.。每行表示一次助教提供服务的记录,包括服务时长、金额、助教与会员关联等。数据库字段名字段类型来源字段说明(含枚举值和取值说明)角色(主键/外键/-assistant_service_idbigintid助教服务流水主键系统内唯一标识一次助教服务记录。主键order_trade_nobigintorder_trade_no订单交易号用于与台费、商品、支付等同一订单下的其他明细串联。外键order_settle_idbigintorder_settle_id结算单号对应结账记录、小票中的结算主键。外键order_pay_idbigintorder_pay_id支付记录主键 ID用于关联支付流水。外键order_assistant_idbigintorder_assistant_id订单中“助教项目明细”的内部 ID一笔订单中多段助教服务时用于区分。外键order_assistant_typeintorder_assistant_type助教服务类型枚举1 表示常规助教服务如基础课2 表示附加类助教服务(如附加课);其他值预留。-tenant_idbiginttenant_id租户/品牌 ID用于区分商户。外键site_idbigintsite_id门店 ID对应门店维表中的门店主键。外键site_table_idbigintsite_table_id球台/包厢 ID对应台桌维表主键。外键tenant_member_idbiginttenant_member_id商户维度会员 ID对应会员档案主键0 表示非会员或散客。外键system_member_idbigintsystem_member_id系统级会员 ID用于跨门店识别同一会员。外键assistant_novarchar(64)assistantNo助教编号/工号,如 “27”与助教档案中的工号一致。-nicknamevarchar(64)nickname助教对外昵称如“佳怡”“周周”用于展示不参与业务逻辑。-site_assistant_idbigintsite_assistant_id门店维度助教 ID对应助教账号维表主键。外键user_idbigintuser_id助教对应的系统用户 ID对应账号体系中的 user_id。外键assistant_team_idbigintassistant_team_id助教团队 ID用于分组统计团队业绩。外键person_org_idbigintperson_org_id助教所属人事组织/部门 ID如“助教部”用于组织维度分析。外键assistant_levelintassistant_level助教等级编码8=助教管理10=初级20=中级30=高级;用于薪酬/评价分层。外键level_namevarchar(64)levelName助教等级名称与 assistant_level 对应,如“初级”“中级”“高级”“助教管理”。-skill_idbigintskill_id助教服务课程/技能 ID应对应课程/技能配置表。外键skill_namevarchar(64)skillName助教服务课程/技能名称,如“基础课”“附加课”。-ledger_unit_pricedecimal(10,2)ledger_unit_price助教服务标准单价原价例如按小时或按节课的标价。-ledger_amountdecimal(10,2)ledger_amount按标准单价计算的应收金额近似等于 ledger_unit_price×计费时长换算后的金额。-projected_incomedecimal(10,2)projected_income实际计入门店收入的金额已经考虑会员权益、券抵扣等后的结果。-coupon_deduct_moneydecimal(10,2)coupon_deduct_money由优惠券、团购券等直接抵扣到本次助教服务上的金额0 表示未使用券。-income_secondsintincome_seconds计费秒数用于计算应收收入的时间长度通常为按分钟取整的秒数。-real_use_secondsintreal_use_seconds实际服务时长真实消耗的时间用于分析助教工作量。-add_clockintadd_clock加钟秒数在原有预约基础上临时增加的服务时间数值为 60 的倍数。-create_timedatetimecreate_time助教流水记录创建时间接近下单/结算时间。-start_use_timedatetimestart_use_time助教实际开始服务时间通常与 ledger_start_time 一致。-last_use_timedatetimelast_use_time助教最后一次服务时间通常与 ledger_end_time 一致。-is_deleteintis_delete逻辑删除标志0 未删除1 已逻辑删除,用于保留历史数据。-dwd_assistant_service_log_Ex助教服务流水扩展数据库字段名字段类型来源字段说明含枚举值和取值说明角色主键/外键/-assistant_service_idbigintid助教服务流水主键系统内唯一标识一次助教服务记录。主键table_namevarchar(64)tableName球台名称如 “A17”“S1”与 site_table_id 冗余,用于展示。-assistant_namevarchar(64)assistantName助教姓名如“何海婷”与助教档案中的真实姓名一致。-ledger_namevarchar(128)ledger_name助教计费项目名称如“2-佳怡”等,通常为展示用组合字段。-ledger_group_namevarchar(128)ledger_group_name助教项目所属的计费分组/套餐分组名称,目前导出数据中为空,未看到实际使用场景。-ledger_countintledger_count台账计费时长通常与 real_use_seconds 接近或相等。取income_seconds-member_discount_amountdecimal(10,2)member_discount_amount由会员卡折扣产生的优惠金额当前样本中为 0但字段语义明确。-manual_discount_amountdecimal(10,2)manual_discount_amount收银员手动减免金额人工改价当前导出数据中为 0。-service_moneydecimal(10,2)service_money与助教结算的金额或服务成本金额当前数据全部为 0具体结算规则未见启用。-returns_clockintreturns_clock退钟秒数取消加钟或提前结束退回的时间当前样本中全部为 0未见业务使用。-ledger_start_timedatetimeledger_start_time台账计费起始时间。-ledger_end_timedatetimeledger_end_time台账计费结束时间可作为本次服务结束时间。-ledger_statusintledger_status助教流水状态当前数据为 1表示正常有效其他值预留给已作废、未结算等状态。-is_confirmintis_confirm确认状态当前样本为 2一般含义为 1=待确认2=已确认/已完成(含义基于字段名和现有值推断)。-is_single_orderintis_single_order是否单独订单1 表示助教服务作为单独订单结算0 表示与其他项目合单结算。当前样本全部为 1。-is_not_respondingintis_not_responding是否存在“未响应/爽约”等异常0 表示正常1 表示未响应或爽约(基于字段名推断,当前数据均为 0。-is_trashintis_trash是否已废除0 表示正常有效1 表示已废除与助教废除记录表assistant_cancellation_records对应。-trash_applicant_idbiginttrash_applicant_id提出废除申请的员工 ID用于追溯谁发起了废除操作。外键trash_applicant_namevarchar(64)trash_applicant_name废除申请人姓名仅用于展示与 trash_applicant_id 冗余。-trash_reasonvarchar(255)trash_reason废除原因文案如“顾客取消”“录入错误”便于分析异常原因。-salesman_user_idbigintsalesman_user_id营业员/销售员用户 ID大多为 0当前门店未明显使用此维度。外键salesman_namevarchar(64)salesman_name营业员/销售员姓名,多数为空字符串。-salesman_org_idbigintsalesman_org_id营业员所属组织/部门 ID多数为 0尚未看到实际业务使用。外键skill_gradeintskill_grade课程技能评分整数当前样本全为 0评价功能尚未启用。-service_gradeintservice_grade服务态度评分整数当前样本全为 0。-composite_gradedecimal(5,2)composite_grade综合评分技能+服务等加权结果),当前样本为 0。-sum_gradedecimal(10,2)sum_grade累计评分总和用于计算平均分当前样本为 0。-get_grade_timesintget_grade_times获得评价的次数当前样本为 0。-grade_statusintgrade_status评价状态枚举当前样本为 1一般含义为“未评价/正常”,其他状态未见实际值。-composite_grade_timedatetimecomposite_grade_time最近一次综合评分时间或评价更新时间当前为默认时间 “0001-01-01 00:00:00”。-dwd_assistant_trash_event助教废除事件来自 assistant_cancellation_records 的 abolitionAssistants。每行代表一次助教服务被废除的事件无法直接与结算记录或助教流水关联只能通过门店+台桌+助教+时间窗口软关联。数据库字段名字段类型来源字段JSON 路径)说明(含枚举与取值)角色(主键/外键/-assistant_trash_event_idbigintid助教废除事件主键。与源 JSON 中 id 一一对应单表内唯一。没有业务含义只作为技术主键使用。主键site_idbigintsiteId门店 ID。与其他 JSON 中的 siteId / site_id 含义一致。用来关联 dim_site。当前样例全部为同一门店朗朗桌球但设计上支持多门店。外键指向 dim_sitetable_idbiginttableId台桌 ID。对应 site_tables_master.json 中的 id。用于定位哪一张球台发生了助教废除用于后续软关联台费流水、助教流水时的重要条件。外键指向 dim_tabletable_area_idbiginttableAreaId台桌区域 ID。应与台桌维或区域维中的 area_id 一致用于按区域统计A 区/B 区/VIP 包厢等)。外键(潜在指向 dim_table_areaassistant_novarchar(32)assistantOn助教编号工号/序号),如 '2'、'4'、'27' 等。与助教档案表 assistant_accounts_master.assistant_no、助教流水中的 assistantNo 一致,用于标识哪位助教。枚举:在门店内是有限编号集合,但并非硬编码含义。外键(指向 dim_assistantassistant_namevarchar(64)assistantName助教姓名/昵称,如 “泡芙”“佳怡”等。为冗余展示字段,真实姓名以助教档案为准。当前数据中与档案一致。-charge_minutes_rawintpdChargeMinutes助教被废除前“已计费时长分钟”的原始值。单位为分钟。示例214、3600、10800 等。0 表示尚未发生有效计费就被废除。当前数据中存在异常大值(例如 10800这一业务含义需结合实际规则理解但本字段原样保留。枚举数值型无固定枚举。-abolish_amountdecimal(18,2)assistantAbolishAmount与本次助教废除操作关联的金额单位元。字面含义为“助教废除金额”。当前样例均为非负数如 5.83、570.00、0.00 等。正负方向:按照 ODS/JSON 原样保留,暂不在数仓层赋予“收入/支出”的方向含义,后续在 DWS 层按业务规则解释(例如是退还顾客、扣除收益等)。-trash_reasonvarchar(255)trashReason废除原因的文本说明例如可以写“顾客临时取消”“误操作”等。当前样例中全部为空字符串说明前台并未使用该字段。但从结构上看是一个自由文本字段不是枚举。-create_timedatetimecreateTime这条废除记录创建的时间格式 YYYY-MM-DD HH:MM:SS。代表系统正式记录“废除操作”的时刻用于和助教服务流水按时间窗口做软关联结合 site、table、assistant 等条件)。-dwd_assistant_trash_event_Ex助教废除事件扩展数据库字段名字段类型来源字段JSON 路径)说明(含枚举与取值)角色(主键/外键/-assistant_trash_event_idbigintid助教废除事件主键。与源 JSON 中 id 一一对应单表内唯一。没有业务含义只作为技术主键使用。主键table_namevarchar(64)tableName台桌名称/编号,便于直观看报表,如 “C1”“B9”“VIP1”等。文案冗余自台桌维度。枚举在门店范围内是有限集合但不是固定编码表。-table_area_namevarchar(64)tableArea台桌区域名称中文如 “A区”“B区”“C区”“VIP包厢”“补时长”等。展示用文本具体层级信息由区域维表提供。-dwd_member_balance_change会员余额变动来自 member_balance_changes.json粒度为一次储值卡账户余额变动。此表是分析会员资金往来的核心事实表。数据库字段名字段类型来源字段member_balance_changes.json说明含枚举值和取值说明角色balance_change_idBIGINTid余额变动记录主键 ID来源于源系统的余额变更流水 ID唯一标识一条余额变动事件。主键tenant_idBIGINTtenant_id租户/品牌 ID在整体系统中唯一标识一家商户。当前样本中为同一值。外键site_idBIGINTsite_id本次余额变动发生的门店 ID。通常对应具体门店样本中非 0 为“朗朗桌球”0 代表平台级/虚拟门店场景如活动抵用券结算。外键register_site_idBIGINTregister_site_id办卡门店 ID卡注册门店。与 site_id 区分register_site_id=当初办卡门店site_id=本次余额变动实际发生门店。当前样本中全部相同。外键tenant_member_idBIGINTtenant_member_id租户维度会员 ID同一租户内的会员主键用于关联会员档案。外键system_member_idBIGINTsystem_member_id系统全局会员 ID跨租户统一的会员标识。当前只有一个门店但结构上允许同一人跨租户共享该 ID。外键tenant_member_card_idBIGINTtenant_member_card_id会员卡账户 ID租户内唯一的一张具体卡例如某人的储值卡/酒水卡/台费卡/活动抵用券等。本次余额变动作用于这张卡。外键card_type_idBIGINTcard_type_id卡种类型 ID。与 card_type_name 一一对应,用于区分不同卡种(储值卡/活动抵用券/酒水卡/台费卡。外键card_type_nameVARCHAR(32)memberCardTypeName卡种名称中文• 储值卡:通用储值卡;• 活动抵用券:活动送券型卡;• 酒水卡:指定用于酒水类消费;• 台费卡:指定用于台费消费。-member_nameVARCHAR(64)memberName会员姓名/称呼(如“曾丹烨”“葛先生”“胡先生”),主要用于运营、客服和人工识别。-member_mobileVARCHAR(20)memberMobile会员手机号完整号码字符串是会员识别、营销触达的重要字段。-balance_beforeDECIMAL(18,2)before本次变动前的卡内余额单位元。可为 0、数百、数千等。-change_amountDECIMAL(18,2)account_data本次余额变动金额单位• 正数:余额增加(充值、赠送、调整加款等);• 负数余额减少消费扣款、退款冲减、活动抵扣等。所有记录严格满足balance_after = balance_before + change_amount浮点精度内。-balance_afterDECIMAL(18,2)after本次变动后的卡内余额单位元。由 before + account_data 计算而得,在源数据中已给出。-from_typeINTfrom_type余额变动来源类型枚举控制业务含义与方向• 1日常消费扣款 —— change_amount 为负数payment_method=0表示用卡支付消费被扣余额• 3充值增加 —— change_amount 为正数payment_method=4表示顾客通过外部支付为卡充值扫码、银行卡等• 4调整/赠送增加 —— change_amount 为正数payment_method=3通常为后台赠送或手工加款• 7充值退款 —— change_amount 为负数remark='充值退款',表示对历史充值做退款,以减少卡内余额方式体现;• 9活动抵用券相关余额冲减 —— change_amount 为负数卡种为“活动抵用券”site_id=0表示活动券额度被扣回或结算• 2其他增加 —— 当前仅 1 条正数样本(+1865.80具体业务类型不明但可确定为余额增加类。总体上1/7/9 为减余额类2/3/4 为加余额类。-payment_methodINTpayment_method支付/变动渠道枚举(与源系统支付方式枚举一致):• 0内部结算/无外部支付 —— 日常消费扣款、内部扣减、退款冲减等场景,新资金流不在本记录中产生;• 3赠送/后台调整渠道 —— 与 from_type=4 搭配出现,表示此余额增加不是顾客付钱,而是后台发放或内部调账;• 4充值外部支付渠道 —— 与 from_type=3 搭配出现,代表顾客通过某外部渠道完成充值(具体是微信/支付宝/银行卡等需要结合支付枚举表进一步映射)。-change_timeDATETIMEcreate_time余额变动时间记录创建时间格式 YYYY-MM-DD HH:MM:SS。通常紧邻实际交易发生时间用于按时间线分析资金变动。-is_deleteTINYINTis_delete逻辑删除标记• 0正常记录当前样本全部为 0• 1逻辑删除标记为删除但数据库保留用于追溯。分析时通常需要过滤掉 is_delete=1 的记录。-remarkVARCHAR(255)remark余额变动备注信息。当前样本中主要为• 空字符串:无额外说明;• 充值退款:明确标记该条记录为“充值退款”业务,与 from_type=7 完全对应。后续可能出现其他业务备注。-dwd_member_balance_change_EX会员余额变动扩展数据库字段名字段类型来源字段member_balance_changes.json说明含枚举值和取值说明角色balance_change_idBIGINTid余额变动记录主键 ID来源于源系统的余额变更流水 ID唯一标识一条余额变动事件。主键pay_site_nameVARCHAR(64)paySiteName余额变动发生门店名称对应 site_id 的中文名。示例:朗朗桌球;当 site_id = 0 时通常为空字符串。纯展示冗余。-register_site_nameVARCHAR(64)registerSiteName办卡门店名称对应 register_site_id 的中文名。当前样本全部为 朗朗桌球,属于冗余展示。-refund_amountDECIMAL(18,2)refund_amount退款金额字段。在当前样本数据中全部为 0.00,推测用于区分“退回卡内余额”和“原路退回”等更细的退款模式,但目前未启用。-operator_idBIGINToperator_id操作员 ID执行本次余额变动操作的员工账号主键。可关联员工/账号维度。外键operator_nameVARCHAR(64)operator_name操作员名称及职位说明例如收银员:郑丽珊、店长:谢晓洪 等,是对 operator_id 的可读冗余。-dwd_groupbuy_redemption团购券核销来自 group_buy_redemption_records.json 中各条记录。每行代表一次团购券使用/核销事件。数据库字段名字段类型来源字段group_buy_redemption_records.json说明含枚举与取值说明角色主键/外键/-业务重要性redemption_idbigintid团购券核销流水主键。一条记录代表一次团购券使用在某次台费上的一条核销明细。主键tenant_idbiginttenant_id租户/品牌 ID。与其他表统一的租户标识用于品牌维度聚合。外键重要site_idbigintsite_id门店 ID。与门店维度及其他业务事实中的 site_id 一致。外键重要table_idbiginttable_id球台 ID。与台桌维度表中的 id 对应用于确定具体哪一张球台。外键重要tenant_table_area_idbiginttenant_table_area_id租户级台区组合 ID。与团购套餐定义中的 tenant_table_area_id_list 元素对应表示该券实际使用时所在的台区组合。用于校验券的适用台区是否匹配实际台桌。外键重要table_charge_secondsinttable_charge_seconds本次结算中该球台总计计费的秒数整台计费时间。当台上除了券覆盖时长之外还有额外计费时间时该值会大于券核销时长。-重要order_trade_nobigintorder_trade_no订单交易号。与台费流水、商品销售、助教服务、小票详情等表的 order_trade_no 一致用于将同一笔结账中的所有明细串联起来。外键重要order_settle_idbigintorder_settle_id结算单 ID。与结账记录和小票详情中的结算主键对应用于从团购券核销记录跳转到整单结算。外键重要order_coupon_idbigintorder_coupon_id订单中的“券使用记录 ID”。与平台或内部券核销表中的主键一致用于在订单内部定位这条券使用记录。当前与 coupon_origin_id 数值相等。外键重要coupon_origin_idbigintcoupon_origin_id上游系统或第三方平台中该券记录的主键 ID。可在平台验券记录中查到券的来源平台、原订单等。当前与 order_coupon_id 数值一致,但语义是“券来源 ID”。外键重要promotion_activity_idbigintpromotion_activity_id促销活动 ID。每条记录对应一个活动主键用于识别券所属的促销活动或团购活动。外键重要promotion_coupon_idbigintpromotion_coupon_id团购套餐定义 ID。与 group_buy_packages.json 中的 id 一一对应表示当前使用的是哪一种团购套餐例如某款“一小时套餐”“两小时套餐”。外键重要order_coupon_channeltinyintorder_coupon_channel券渠道类型枚举。观测值1大量记录、2少量记录。用于区分券的来源渠道例如不同团购平台或内部券。具体数值与渠道名称的映射由业务配置决定。外键重要ledger_unit_pricedecimal(18,2)ledger_unit_price本次券在台费侧对应的标准单价单位元/小时。典型值如 29.9、39.9、59.9、69.9 等。与门店台费计费规则中的单价相对应,用于计算券对应的金额。-重要ledger_countintledger_count本次券实际核销的计费秒数。大部分记录等于 promotion_seconds少数略小于标准时长表示这张券只覆盖了本次台费的一部分时长。-重要ledger_amountdecimal(18,2)ledger_amount本次团购券实际冲抵台费的金额。大部分记录中该值与 coupon_money 相等,少数存在小数差异,来源于按单价与秒数换算的结果。-重要coupon_moneydecimal(18,2)coupon_money本次核销时团购券在门店侧对应的金额额度可抵扣金额。同一种 promotion_coupon_id 下,该值固定,例如某套餐固定为 48.00 元、某套餐固定为 96.00 元等。-重要promotion_secondsintpromotion_seconds团购套餐定义的标准时长权益单位秒。观测枚举值为 3600、7200、14400分别对应 1 小时、2 小时、4 小时。与团购套餐定义表中的 duration 字段一致。-重要coupon_codevarchar(64)coupon_code团购券券码字符串。每条记录一个唯一券码例如“0107892475999”。用于与平台验券记录、券购买记录等做一一对应追踪券的全生命周期。外键重要is_single_ordertinyintis_single_order是否作为单独订单行。观测值1 为主表示以独立条目方式结算0 为个别记录,表示嵌入某种组合结算结构。具体业务含义依赖上层订单结构设计。-重要is_deletetinyintis_delete逻辑删除标记。0 表示正常记录1 表示逻辑删除但数据仍保留用于追溯。当前样本全部为 0用于过滤有效记录。-重要ledger_namevarchar(128)ledger_name团购项目记账名称如“全天A区中八一小时”“B区桌球一小时”“中八、斯诺克包厢两小时”等。通常与团购套餐名称相近用于报表展示和套餐维度分析。-重要create_timedatetimecreate_time本条团购券核销流水的创建时间通常即核销时间格式为“YYYY-MM-DD HH:MM:SS”。用于时间维度分析和数据分区。-重要dwd_groupbuy_redemption_Ex团购券核销扩展来自 group_buy_redemption_records.json 中各条记录。每行代表一次团购券使用/核销事件。数据库字段名字段类型来源字段group_buy_redemption_records.json说明含枚举与取值说明角色主键/外键/-redemption_idbigintid团购券核销流水主键。一条记录代表一次团购券使用在某次台费上的一条核销明细。主键site_namevarchar(64)siteName门店名称。当前样本全部为同一门店仅作冗余展示。-table_namevarchar(64)tableName球台名称或台号。如 A7、A11、B1 等。用于业务报表展示与人工识别。-table_area_namevarchar(64)tableAreaName台区名称。观测枚举值包括 A区、B区、斯诺克区、麻将房。实际取值随门店台区配置变化。-order_pay_idbigintorder_pay_id支付流水 ID。部分记录为 0表示未在当前导出范围内关联到具体支付记录。真实含义为“指向支付记录表中的支付流水”。外键goods_option_pricedecimal(18,2)goodsOptionPrice商品规格价格用于商品类促销分摊时使用。当前在团购券核销场景中全部为 0仅作为结构预留。-goods_promotion_moneydecimal(18,2)goods_promotion_money本次券使用中分摊到“商品”部分的促销金额。当前所有记录为 0说明本门店的团购券未用于商品抵扣。-table_service_promotion_moneydecimal(18,2)table_service_promotion_money本次券使用中分摊到“台费服务费”部分的促销金额。当前样本全部为 0结构上用于支持更细粒度的费用拆分。-assistant_promotion_moneydecimal(18,2)assistant_promotion_money本次券使用中分摊到“助教服务”的促销金额。当前全部为 0说明团购券尚未用于助教服务的抵扣。-assistant_service_promotion_moneydecimal(18,2)assistant_service_promotion_money进一步细分助教服务对应的促销金额。当前为 0仅预留结构以支持复杂场景。-reward_promotion_moneydecimal(18,2)reward_promotion_money本次促销中属于“奖励金、积分”等来源的促销金额分摊。当前为 0预留用于积分或奖励金同时参与活动时的金额拆分。-recharge_promotion_moneydecimal(18,2)recharge_promotion_money来自“充值赠送”等储值优惠的促销金额分摊。当前为 0预留用于将来区分“券优惠”和“充值赠送优惠”的场景。-offer_typetinyintoffer_type优惠类型枚举。当前样本值全部为 1表示本门店使用的团购券均为同一类型例如“套餐券”。其他取值可能对应满减、折扣、代金券等优惠类型在本数据中未出现。-ledger_statustinyintledger_status流水状态。观测值全部为 1。常规含义为1 表示正常有效记录;其他值预留用于表示作废、撤销、未生效等状态。当前导出仅包含正常状态记录。-operator_idbigintoperator_id执行本次券核销操作的操作员 ID。可与员工维度表对接用于分析不同操作员的核销行为与绩效。外键operator_namevarchar(64)operator_name操作员名称及角色说明例如“收银员:郑丽珊”。与 operator_id 冗余,对报表展示友好,但不参与模型关联。-salesman_user_idbigintsalesman_user_id营业员用户 ID。当前全部为 0表示本门店在团购券场景未单独记录营业员信息。外键salesman_namevarchar(64)salesman_name营业员姓名。当前为空字符串。结构上用于记录拉单或促销的业务员信息。-salesman_role_idbigintsalesman_role_id营业员角色 ID。当前为 0预留用于标识营业员在组织中的角色类型。-salesman_org_idbigintsales_man_org_id营业员所属组织 ID。来源字段为 sales_man_org_idDWD 层统一命名为 salesman_org_id。当前为 0用于将来对接组织架构维度。-ledger_group_namevarchar(128)ledger_group_name团购项目的记账分组名称。当前全部为空预留给将来按团购项目大类分组例如“团购台费”“团购包厢”使用。-dwd_platform_coupon_redemption第三方平台券核销来自 platform_coupon_redemption_records.json。每条记录代表一次第三方团购券的核销用于追踪渠道引流和兑换。数据库字段名字段类型来源字段说明含枚举值和取值说明角色platform_coupon_redemption_idbigintid平台券核销记录在本系统内的主键 ID。长整型分布式 ID用于唯一标识本次核销流水。主键tenant_idbiginttenant_id租户 ID品牌级别标识。例如整套系统中的“朗朗桌球”品牌。与其他表的 tenant_id 一致用于划分租户数据域。外键site_idbigintsite_id门店 ID。与门店维度 dim_site.site_id 对应用于区分不同门店。siteProfile.id 与此字段相同本表不再冗余门店快照。外键coupon_codevarchar(64)coupon_code第三方团购券券码顾客出示的核销码。当前样本中全表唯一可视为业务自然主键用于验券、对账、查询。-coupon_channeltinyintcoupon_channel券来源渠道枚举表示第三方平台渠道编号。观测值12。具体含义需结合系统配置一般可理解为1 表示平台渠道 1主平台2 表示平台渠道 2其他入口或子平台。-coupon_namevarchar(200)coupon_name第三方团购券产品名称例如“【全天可用】中八桌球一小时A区”“1小时中八台球【11月特惠】A区”等。用于报表展示和区分不同团购产品。sale_pricedecimal(10,2)sale_price顾客在第三方平台实际支付的团购售价例如 11.11、29.90、39.90 等。始终小于 coupon_money体现“折后价”。-coupon_moneydecimal(10,2)coupon_money券面值或套餐价值即系统认为该券可抵扣的金额例如 48.00、58.00、68.00、96.00、116.00、288.00。与 coupon_name 有固定对应关系。-coupon_free_timeintcoupon_free_time券附带的赠送时长单位秒。当前样本全部为 0表示无独立赠送时长。若未来有赠送时间型券则该字段存储赠送的秒数。-channel_deal_idbigintchannel_deal_id渠道侧团购商品 ID第三方平台 dealId。值域有限约 9 个值),与 coupon_name 一一对应。用于对接第三方接口和按平台商品维度统计。- 或 外键预留deal_idbigintdeal_id平台/系统侧团购商品 ID。多数记录为非 0 整数,也有部分为 0。与 coupon_name 存在稳定对应关系0 表示内部未配置或未同步。未来可作为内部团购商品维度外键。外键预留group_package_idbigintgroup_package_id内部“团购套餐”定义表主键 ID。当前样本中全部为 0表示平台券尚未映射到自有团购套餐从设计上是预留的外键字段。外键site_order_idbigintsite_order_id门店内部订单 ID。本次平台券核销所挂靠的店内订单号。用于与结账记录、台费流水、商品销售等事实表通过订单维度关联。外键table_idbiginttable_id使用团购券的球台 ID。与 dim_site_table.table_id 对应用于统计每张球台的第三方平台引流情况。外键certificate_idvarchar(64)certificate_id第三方平台侧券实例 ID凭证 ID通常为 1619 位数字字符串。用于与外部平台对账与查询核销结果。存在重复值,不能单独作为唯一键。-verify_idvarchar(64)verify_id第三方平台核销记录 ID。大部分记录为空少量有值。存在时可用于精确反查平台侧核销记录。-use_statustinyintuse_status券使用状态枚举。观测值1、2。1 表示已使用/已核销正常消耗2 表示已退款/已撤销或使用后反冲的状态。是判断券生命周期状态的核心字段。-is_deletetinyintis_delete逻辑删除标志。0 表示未删除1 表示已逻辑删除。与 use_status 独立:即便业务状态异常(如 use_status=2也可能 is_delete 仍为 0 以保留记录。-create_timedatetimecreate_time系统记录创建时间即核销记录写入本系统的时间。格式为 YYYY-MM-DD HH:MM:SS。通常与 consume_time 相差约 1 秒。-consume_timedatetimeconsume_time券被核销/使用的业务时间,代表实际团购券使用发生的时间点。后续按核销日期统计核销量时以该字段为准。-dwd_platform_coupon_redemption_Ex第三方平台券核销扩展数据库字段名字段类型来源字段说明含枚举值和取值说明角色platform_coupon_redemption_idbigintid平台券核销记录在本系统内的主键 ID。长整型分布式 ID用于唯一标识本次核销流水。主键coupon_covervarchar(255)coupon_cover券封面图片地址 URL用于前端展示团购券图片。对经营分析和结算逻辑无影响。-coupon_remarkvarchar(255)coupon_remark券描述或备注信息用于展示券规则、说明文字。未参与计算和关联逻辑。-groupon_typetinyintgroupon_type团购券类型枚举。当前样本全部为 1。推断含义1 表示标准团购券,其他值预留为次卡、套餐券、权益券等类型。-operator_idbigintoperator_id执行验券操作的员工/收银员账号 ID。当前样本中多数为同一值。可与员工/账号维度表关联。外键operator_namevarchar(50)operator_name操作员姓名或显示名例如“收银员:郑丽珊”。是 operator_id 的冗余展示字段,用于报表展示。-dwd_recharge_order充值结算来自 recharge_settlements.json的settleList.settleList.。每行是一条充值订单记录充值金额、赠送金额及是否首充。数据库字段名字段类型来源字段JSON 路径)说明(含枚举/取值说明)角色(主键/外键/-recharge_order_idbigintid充值结算记录主键唯一标识一条充值/撤销记录。主键tenant_idinttenantId租户/品牌 ID与其他 JSON 中 tenantId 含义一致。外键dim_tenantsite_idintsiteId门店 ID与 siteProfile.id 一致用于关联门店维度。外键dim_sitemember_idbigintmemberId会员 ID对应会员档案中的 tenantMemberInfos.id。标识给哪个会员充值。外键dim_membermember_name_snapshotvarcharmemberName会员姓名/昵称快照,可能是名称或手机号字符串。-member_phone_snapshotvarcharmemberPhone会员手机号快照。-tenant_member_card_idbiginttenantMemberCardId会员卡实例 ID某张具体卡可关联 dim_member_card_account。外键dim_member_card_accountmember_card_type_namevarcharmemberCardTypeName会员卡类型名称当前样例主要有“储值卡”、“月卡”。-settle_relate_idbigintsettleRelateId结算关联 ID用于与支付记录等跨表关联类似业务单 ID。外键与支付/结算域软关联settle_typetinyintsettleType结算类型枚举5=“充值订单”正常充值7=“充值撤销”(冲销记录)。-settle_namevarcharsettleName结算类型名称"充值订单"、"充值撤销";前端展示用。-is_firsttinyintisFirst是否首充标记。取值1 或 2。理论含义类似“是否首充”但 1/2 的精确定义需系统字典确认。-pay_amountdecimal(18,2)payAmount本条记录的充值金额可为正/负):正数=实际充值金额;负数=撤销流水金额settleType=7。-refund_amountdecimal(18,2)refundAmount对该充值订单的退款金额通常为正数原始充值单上为已退款金额对应会有一条负数的“充值撤销”记录。-point_amountdecimal(18,2)pointAmount计入会员账户的储值/积分金额;多数情况下等于 pay_amount 的绝对值;撤销记录一般为 0。-cash_amountdecimal(18,2)cashAmount现金收款金额样本中少数为 3000/5000其余为 0。-payment_methodtinyintpaymentMethod支付方式编码。样本取值1、2、4具体对应渠道现金/微信/支付宝/银行卡等)需系统“支付方式字典”确认。-create_timedatetimecreateTime充值记录创建时间收银完成时间用于时间分区、统计。-pay_timedatetimepayTime支付完成时间通常与 create_time 接近或相同。-dwd_recharge_order_Ex充值结算扩展数据库字段名字段类型来源字段JSON 路径)说明(含枚举/取值说明)角色(主键/外键/-recharge_order_idbigintid充值结算记录主键唯一标识一条充值/撤销记录。主键site_name_snapshotvarcharsiteName门店名称快照如“朗朗桌球”仅用于展示门店改名后本字段不变。-settle_statustinyintsettleStatus结算状态当前数据全部为 2推测 2=已完成。其它状态未出现在样本中。-is_bind_memberbooleanisBindMember是否绑定为会员/其他绑定标记;当前所有记录为 False而又都有 memberId实际业务含义不清。-is_activitybooleanisActivity是否关联营销活动当前全部为 False表示样本周期内充值未绑定活动。-is_use_couponbooleanisUseCoupon本次充值是否使用优惠券当前样本全部为 False。结构上预留“充值用券”的能力。-is_use_discountbooleanisUseDiscount是否使用折扣如充值折扣样本中全为 False。-can_be_revokedbooleancanBeRevoked当前记录是否仍可撤销样本中全为 False导出时均不可撤销。-online_amountdecimal(18,2)onlineAmount线上支付金额如微信、支付宝等当前样本为 0但字段为支付渠道拆分预留。-balance_amountdecimal(18,2)balanceAmount从账户余额中支付的金额充值场景通常为 0用余额充值没有实际意义。-card_amountdecimal(18,2)cardAmount从其他储值卡或某种卡余额支付的金额当前样本全为 0。-coupon_amountdecimal(18,2)couponAmount使用券直接支付的金额如储值券当前样本为 0。-recharge_card_amountdecimal(18,2)rechargeCardAmount充值到卡上的金额与 point_amount 区分不同资金属性);样本为 0结构预留。-gift_card_amountdecimal(18,2)giftCardAmount赠送卡金额如买 1000 送 100 的赠送部分);当前样本为 0。-prepay_moneydecimal(18,2)prepayMoney预付款金额订金当前样本为 0充值未启用此场景。-consume_moneydecimal(18,2)consumeMoney消费总金额在充值文件中全部为 0实际用于消费场景台费/商品)的结算模型复用字段。-goods_moneydecimal(18,2)goodsMoney商品消费金额充值记录中为 0。-real_goods_moneydecimal(18,2)realGoodsMoney实际应计商品金额扣除折扣后充值记录中为 0。-table_charge_moneydecimal(18,2)tableChargeMoney台费金额充值记录中为 0来自通用结算模型。-service_moneydecimal(18,2)serviceMoney服务项目金额如助教、其他服务充值中为 0。-activity_discountdecimal(18,2)activityDiscount营销活动折扣金额当前样本为 0。-all_coupon_discountdecimal(18,2)allCouponDiscount各类优惠券、团购券综合折扣金额样本为 0。-goods_promotion_moneydecimal(18,2)goodsPromotionMoney商品促销优惠金额样本为 0。-assistant_promotion_moneydecimal(18,2)assistantPromotionMoney助教相关促销优惠金额样本为 0。-assistant_pd_moneydecimal(18,2)assistantPdMoney助教配单金额/相关费用;样本为 0。-assistant_cx_moneydecimal(18,2)assistantCxMoney助教冲销/促销相关金额;样本为 0。-assistant_manual_discountdecimal(18,2)assistantManualDiscount助教手工减免金额样本为 0。-coupon_sale_amountdecimal(18,2)couponSaleAmount券/套餐销售金额(售卖券时使用);充值场景中为 0。-member_discount_amountdecimal(18,2)memberDiscountAmount因会员折扣产生的优惠金额在充值样本中为 0。-point_discount_pricedecimal(18,2)pointDiscountPrice积分抵扣产生的价差价格部分样本为 0。-point_discount_costdecimal(18,2)pointDiscountCost积分抵扣对应的成本金额样本为 0。-adjust_amountdecimal(18,2)adjustAmount手工调整金额非抹零样本为 0。-rounding_amountdecimal(18,2)roundingAmount抹零金额四舍五入产生的差额样本为 0。-operator_idbigintoperatorId操作该笔充值的收银员/员工 ID。外键将来可关联 dim_staffoperator_name_snapshotvarcharoperatorName操作员姓名快照便于直接阅读与 operator_id 对应。-salesman_user_idbigintsalesManUserId营业员用户 ID当前样本全部为 0。外键潜在 dim_staffsalesman_namevarcharsalesManName营业员/销售员姓名;样本为空字符串。-order_remarkvarcharorderRemark充值订单备注如手工说明当前样本为空。-table_idinttableId台桌 ID充值场景下全部是 0表示该订单不挂具体球台。-serial_numberintserialNumber流水/小票序号;当前样本全部为 0本门店未启用。-revoke_order_idbigintrevokeOrderId撤销相关订单 ID被撤销原单或撤销单指针样本中存在值但逻辑未完全启用。-revoke_order_namevarcharrevokeOrderName撤销单名称/说明;样本全为空。-revoke_timedatetimerevokeTime撤销时间当前样本为空撤销信息主要通过负数流水与 refund_amount 表达。-dwd_payment支付流水来自 payment_transactions.json。每行代表一笔支付或收款流水与结算单、充值单等关联。只有 pay_status=2 的支付成功记录被导出。数据库字段名字段类型来源字段说明(含枚举值和取值说明)角色(主键/外键/payment_idbigintpayment_transactions.id支付流水主键ID。与源系统 id 一致。每条支付流水唯一标识一条支付行为(包括金额为 0 的记录。主键site_idbigintpayment_transactions.site_id门店ID。当前样本中全部为同一门店 2790685415443269。在数仓中外键关联 dim_site.site_id。外键relate_typeintpayment_transactions.relate_type业务关联类型枚举用来区分这条支付流水对应哪一类业务单据• 2结账单支付对应结账记录 settlement_records 中的结账单;• 5会员卡充值/账户变动类支付,对应会员余额/充值业务单号,在会员余额变更或充值结算中复用;• 1其他业务类型目前样本中仅有 1 条记录具体业务含义待业务侧补充。relate_idbigintpayment_transactions.relate_id关联业务记录ID配合 relate_type 使用,是一个“多态外键”:• 当 relate_type = 2 时relate_id = settlement_records.settleList.id结账记录主键对应 dwd_settlement_head_di.order_settle_id• 当 relate_type = 5 时relate_id = 会员卡余额变动/充值业务单号,在会员余额变更流水中同名字段使用;• 当 relate_type = 1 时关联具体业务尚未确认仅可视为预留类型。外键多业务类型pay_amountdecimal(18,2)payment_transactions.pay_amount本次支付金额单位元。为收入类字段当前样本全部为非负数• 正数:实际通过该支付方式收取的金额;• 0仍生成支付流水但实收金额为 0例如整单由会员优惠、团购券、余额等抵扣当前样本中有 140 条记录金额为 0。pay_statusintpayment_transactions.pay_status支付状态枚举。当前样本中仅出现• 2支付成功。其它可能的状态未支付、支付中、失败、已退款等在本次导出中未出现需以后按系统支付状态配置补充。由于本 JSON 仅导出成功记录可以视作“成功支付流水视图”。payment_methodintpayment_transactions.payment_method支付方式枚举。当前样本中出现的取值• 2共 140 条记录;• 4共 60 条记录。具体取值与“支付方式配置表”对应,例如可能代表现金、扫码支付、银行卡等。由于配置表未导出,在数仓中应作为枚举码字段,通过后续 dim_payment_method 进行解码。不要在数仓层擅自写死“2=微信、4=支付宝”等含义。外键预期关联支付方式维度online_pay_channelintpayment_transactions.online_pay_channel线上支付通道枚举。用于进一步细分线上渠道例如• 0无线上通道/线下,或未区分具体线上通道(当前样本全部为 0• 1微信推测未在样本中出现• 2支付宝推测未在样本中出现。目前门店在当前时间段内尚未使用该字段进行实际区分业务含义需结合正式配置确认。create_timedatetimepayment_transactions.create_time支付流水创建时间格式 YYYY-MM-DD HH:MM:SS。通常是发起支付请求的时间。当前样本中 create_time 与 pay_time 多数相同但模型上允许两者不同例如异步支付pay_timedatetimepayment_transactions.pay_time支付完成时间支付成功时间戳格式 YYYY-MM-DD HH:MM:SS。用于统计资金实际入账时间以及与结账时间进行对齐分析。pay_datedate由 payment_transactions.pay_time 派生支付日期分区字段,从 pay_time 截取 YYYY-MM-DD 得到。例如 pay_time = '2025-11-09 23:35:57' 时pay_date = '2025-11-09'。用于 DWD 表按天分区和日粒度汇总。dwd_refund退款流水来自 refund_transactions.json。每行代表一笔退款对应原支付流水。退款金额以负数存储在 pay_amount 字段;字段 refund_amount 全部为 0实际退款金额需取 pay_amount 的绝对值。数据库字段名字段类型来源字段说明(含枚举值和取值说明)角色(主键/外键/-refund_idbigintid退款流水主键。每条退款记录唯一 ID雪花ID风格长整型。主键tenant_idbiginttenant_id租户/品牌 ID标识所属商户。与其他表中的 tenant_id 一致。外键site_idbigintsite_id门店 ID。与门店维度 dim_site.site_id 对应用于分门店分析。外键relate_typeintrelate_type业务类型枚举指示本退款对应哪类业务主单当前样本值 {2, 5}2=消费/结账类业务5=充值/储值类业务(根据分析文档推断,具体定义需以业务字典为准)。与 relate_id 组合使用。-relate_idbigintrelate_id关联的业务主键 ID。含义依赖 relate_typerelate_type=2 时通常指结账主单 IDrelate_type=5 时通常指充值/储值业务单 ID。同一个 relate_id 可能有多笔退款分批退款。外键pay_amountdecimal(18,2)pay_amount本次退款的资金金额统一为负数。绝对值即退款金额。例如 -5000.00 表示退款 5000 元。是后续退款金额统计的主字段。-channel_feedecimal(18,2)channel_fee第三方支付渠道对本次退款收取的手续费。当前样本全部为 0.00,但从设计看用于“通道成本核算”。-pay_timedatetimepay_time退款在支付渠道/系统中发生的时间(退款完成时间)。用于对账及按时间统计退款。当前样本中等于 create_time。-create_timedatetimecreate_time本条退款流水在系统内创建时间。与 pay_time 区分“记录生成时间 vs. 渠道时间”,当前样本中两者相同。-payment_methodintpayment_method支付方式枚举指本次退款对应的原支付方式如哪种通道。样本中仅出现值 4在支付记录中曾出现 {2,4} 两种值。含义:区分不同支付方式(如微信、支付宝、银行卡、现金、储值卡等),具体值与含义需参照支付方式配置表。-member_idbigintmember_id关联的会员 ID对应会员档案表主键。当前样本全部为 0表示这些退款未绑定到具体会员。外键member_card_idbigintmember_card_id关联的会员卡账户 ID对应会员卡账户/储值卡维度主键。样本全部为 0当前没有“退到会员卡”的记录。外键dwd_refund退款流水来自 refund_transactions.json。每行代表一笔退款对应原支付流水。退款金额以负数存储在 pay_amount 字段;字段 refund_amount 全部为 0实际退款金额需取 pay_amount 的绝对值。数据库字段名字段类型来源字段说明(含枚举值和取值说明)角色(主键/外键/-refund_idbigintid退款流水主键。每条退款记录唯一 ID雪花ID风格长整型。主键tenant_namevarchar(64)tenantName租户名称例如“朗朗桌球”。与租户维度中的名称冗余。-pay_snbigintpay_sn支付流水内部序号。退款记录中样本全部为 0未看到实际使用场景含义未从文档中说明。-refund_amountdecimal(18,2)refund_amount设计上应为“本次退款金额正数”。当前样本全部为 0.00,系统实际使用的是 pay_amount 记录金额,此字段暂未启用。-round_amountdecimal(18,2)round_amount退款过程中的舍入/抹零金额(例如因四舍五入产生的差额)。当前样本全部为 0.00。-balance_frozen_amountdecimal(18,2)balance_frozen_amount与会员余额相关的“冻结金额”如先冻结再退款的流程。当前样本全部为 0.00,且 member_id/member_card_id 为 0说明本批退款没有涉及会员余额冻结。-card_frozen_amountdecimal(18,2)card_frozen_amount与某张会员卡余额相关的冻结金额。样本全部为 0.00,未实际使用。-pay_statusintpay_status退款状态枚举。样本中全部为 2。结合支付记录2 表示“成功/已完成”。其他可能值0=未处理1=处理中等)未在样本中出现,具体以系统枚举为准。-action_typeintaction_type资金动作类型枚举。样本全部为 2。根据分析1=支付2=退款。退款流水恒为 2用于与支付流水区分。-is_revokeintis_revoke是否为“撤销型”退款。枚举0=正常退款1=撤销原支付(撤销而非普通退货)。当前样本全部为 0。-is_deleteintis_delete逻辑删除标志。枚举0=未删除1=已逻辑删除(保留记录,仅标记)。当前样本全部为 0。-check_statusintcheck_status审核状态。样本全部为 1。推断1=已审核/通过;其他值可能表示“待审核”“审核拒绝”等,具体需以系统字典为准。-online_pay_channelintonline_pay_channel线上支付渠道枚举。样本中全部为 0。推断0=线下或默认渠道;其他值(若有)可能代表微信、支付宝等子渠道。目前门店未实际使用该拆分。-online_pay_typeintonline_pay_type在线退款类型。样本全部为 0。推断0=原路退回;其他值(若有)可能表示“退到余额”“退到其他银行卡”等。当前数据仅有默认策略。-pay_terminalintpay_terminal退款终端类型枚举。样本全部为 1。推断1=前台收银端;其他值可能为小程序、自助机、后台等。用于区分退款来源终端。-pay_config_idintpay_config_id支付配置 ID例如某个具体支付通道微信商户号、银联通道等的配置主键。样本全部为 0说明当前未按此粒度区分或未导出。外键cashier_point_idintcashier_point_id收银点编号例如前台1、前台2、自助机等。样本全部为 0未实际区分收银点。-operator_idbigintoperator_id执行退款操作的操作员 ID。样本全部为 0说明导出中未包含操作员信息。若填充对内部风控与员工考核很重要。外键channel_payer_idvarchar(128)channel_payer_id支付渠道侧的付款人标识如微信 openid、银行卡号掩码等。样本全部为空字符串未使用。-channel_pay_novarchar(128)channel_pay_no第三方支付平台交易号如微信支付单号、支付宝交易号等。当前样本全部为空。若将来填充对资金对账非常关键。-总结本说明书列出了经营数据仓库 DWD 层的主要维度表和事实表的字段结构及说明,尽可能在每个字段上标注其来源、含义及业务重要性。对于未在 MD 文档中解释的字段标记为 作用未知,在建模时建议保留字段但谨慎使用;对业务逻辑影响较小的展示类字段标记为 不重要。枚举字段均列出了观测到的取值和推断的含义,便于后续 ETL 做值域映射和数据清洗。随着业务扩展和数据补充,可继续完善枚举信息、用途说明和字段分类。