{
  "schema": "dwd",
  "table": "dwd_member_balance_change",
  "ods_source": "member_balance_changes",
  "columns": [
    {
      "name": "balance_change_id",
      "data_type": "bigint",
      "is_nullable": false,
      "column_default": null,
      "comment": "【说明】标识类 ID 字段，用于关联/定位相关实体。     【示例】2957881605869253（标识类 ID 字段，用于关联/定位相关实体）。     【ODS来源】member_balance_changes - id。     【JSON字段】member_balance_changes.json - data.tenantMemberCardLogs - id。",
      "ordinal_position": 1
    },
    {
      "name": "tenant_id",
      "data_type": "bigint",
      "is_nullable": true,
      "column_default": null,
      "comment": "【说明】标识类 ID 字段，用于关联/定位相关实体。     【示例】2790683160709957（标识类 ID 字段，用于关联/定位相关实体）。     【ODS来源】member_balance_changes - tenant_id。     【JSON字段】member_balance_changes.json - data.tenantMemberCardLogs - tenant_id。",
      "ordinal_position": 2
    },
    {
      "name": "site_id",
      "data_type": "bigint",
      "is_nullable": true,
      "column_default": null,
      "comment": "【说明】标识类 ID 字段，用于关联/定位相关实体。     【示例】2790685415443269（标识类 ID 字段，用于关联/定位相关实体）。     【ODS来源】member_balance_changes - site_id。     【JSON字段】member_balance_changes.json - data.tenantMemberCardLogs - site_id。",
      "ordinal_position": 3
    },
    {
      "name": "register_site_id",
      "data_type": "bigint",
      "is_nullable": true,
      "column_default": null,
      "comment": "【说明】标识类 ID 字段，用于关联/定位相关实体。     【示例】2790685415443269（标识类 ID 字段，用于关联/定位相关实体）。     【ODS来源】member_balance_changes - register_site_id。     【JSON字段】member_balance_changes.json - data.tenantMemberCardLogs - register_site_id。",
      "ordinal_position": 4
    },
    {
      "name": "tenant_member_id",
      "data_type": "bigint",
      "is_nullable": true,
      "column_default": null,
      "comment": "【说明】标识类 ID 字段，用于关联/定位相关实体。     【示例】2799212845565701（标识类 ID 字段，用于关联/定位相关实体）。     【ODS来源】member_balance_changes - tenant_member_id。     【JSON字段】member_balance_changes.json - data.tenantMemberCardLogs - tenant_member_id。",
      "ordinal_position": 5
    },
    {
      "name": "system_member_id",
      "data_type": "bigint",
      "is_nullable": true,
      "column_default": null,
      "comment": "【说明】标识类 ID 字段，用于关联/定位相关实体。     【示例】2799212844549893（标识类 ID 字段，用于关联/定位相关实体）。     【ODS来源】member_balance_changes - system_member_id。     【JSON字段】member_balance_changes.json - data.tenantMemberCardLogs - system_member_id。",
      "ordinal_position": 6
    },
    {
      "name": "tenant_member_card_id",
      "data_type": "bigint",
      "is_nullable": true,
      "column_default": null,
      "comment": "【说明】标识类 ID 字段，用于关联/定位相关实体。     【示例】2799219999295237（标识类 ID 字段，用于关联/定位相关实体）。     【ODS来源】member_balance_changes - tenant_member_card_id。     【JSON字段】member_balance_changes.json - data.tenantMemberCardLogs - tenant_member_card_id。",
      "ordinal_position": 7
    },
    {
      "name": "card_type_id",
      "data_type": "bigint",
      "is_nullable": true,
      "column_default": null,
      "comment": "【说明】标识类 ID 字段，用于关联/定位相关实体。     【示例】2793249295533893（标识类 ID 字段，用于关联/定位相关实体）。     【ODS来源】member_balance_changes - card_type_id。     【JSON字段】member_balance_changes.json - data.tenantMemberCardLogs - card_type_id。",
      "ordinal_position": 8
    },
    {
      "name": "card_type_name",
      "data_type": "character varying",
      "is_nullable": true,
      "column_default": null,
      "comment": "【说明】名称字段，用于展示与辅助识别。     【示例】储值卡（名称字段，用于展示与辅助识别）。     【ODS来源】member_balance_changes - memberCardTypeName。     【JSON字段】member_balance_changes.json - data.tenantMemberCardLogs - memberCardTypeName。",
      "ordinal_position": 9
    },
    {
      "name": "member_name",
      "data_type": "character varying",
      "is_nullable": true,
      "column_default": null,
      "comment": "【说明】名称字段，用于展示与辅助识别。     【示例】曾丹烨（名称字段，用于展示与辅助识别）。     【ODS来源】member_balance_changes - memberName。     【JSON字段】member_balance_changes.json - data.tenantMemberCardLogs - memberName。",
      "ordinal_position": 10
    },
    {
      "name": "member_mobile",
      "data_type": "character varying",
      "is_nullable": true,
      "column_default": null,
      "comment": "【说明】明细字段，用于记录事实取值。     【示例】13922213242（明细字段，用于记录事实取值）。     【ODS来源】member_balance_changes - memberMobile。     【JSON字段】member_balance_changes.json - data.tenantMemberCardLogs - memberMobile。",
      "ordinal_position": 11
    },
    {
      "name": "balance_before",
      "data_type": "numeric",
      "is_nullable": true,
      "column_default": null,
      "comment": "【说明】金额字段，用于计费/结算/核算等金额计算。     【示例】816.3（金额字段，用于计费/结算/核算等金额计算）。     【ODS来源】member_balance_changes - before。     【JSON字段】member_balance_changes.json - data.tenantMemberCardLogs - before。",
      "ordinal_position": 12
    },
    {
      "name": "change_amount",
      "data_type": "numeric",
      "is_nullable": true,
      "column_default": null,
      "comment": "【说明】金额字段，用于计费/结算/核算等金额计算。     【示例】-120.0（金额字段，用于计费/结算/核算等金额计算）。     【ODS来源】member_balance_changes - account_data。     【JSON字段】member_balance_changes.json - data.tenantMemberCardLogs - account_data。",
      "ordinal_position": 13
    },
    {
      "name": "balance_after",
      "data_type": "numeric",
      "is_nullable": true,
      "column_default": null,
      "comment": "【说明】金额字段，用于计费/结算/核算等金额计算。     【示例】696.3（金额字段，用于计费/结算/核算等金额计算）。     【ODS来源】member_balance_changes - after。     【JSON字段】member_balance_changes.json - data.tenantMemberCardLogs - after。",
      "ordinal_position": 14
    },
    {
      "name": "from_type",
      "data_type": "integer",
      "is_nullable": true,
      "column_default": null,
      "comment": "【说明】明细字段，用于记录事实取值。     【示例】1（明细字段，用于记录事实取值）。     【ODS来源】member_balance_changes - from_type。     【JSON字段】member_balance_changes.json - data.tenantMemberCardLogs - from_type。",
      "ordinal_position": 15
    },
    {
      "name": "payment_method",
      "data_type": "integer",
      "is_nullable": true,
      "column_default": null,
      "comment": "【说明】明细字段，用于记录事实取值。     【示例】0（明细字段，用于记录事实取值）。     【ODS来源】member_balance_changes - payment_method。     【JSON字段】member_balance_changes.json - data.tenantMemberCardLogs - payment_method。",
      "ordinal_position": 16
    },
    {
      "name": "change_time",
      "data_type": "timestamp with time zone",
      "is_nullable": true,
      "column_default": null,
      "comment": "【说明】时间/日期字段，用于记录业务时间与统计口径对齐。     【示例】2025-11-09 22:52:48（时间/日期字段，用于记录业务时间与统计口径对齐）。     【ODS来源】member_balance_changes - create_time。     【JSON字段】member_balance_changes.json - data.tenantMemberCardLogs - create_time。",
      "ordinal_position": 17
    },
    {
      "name": "is_delete",
      "data_type": "integer",
      "is_nullable": true,
      "column_default": null,
      "comment": "【说明】布尔/开关字段，用于表示是否/可用性等业务开关。     【示例】0（布尔/开关字段，用于表示是否/可用性等业务开关）。     【ODS来源】member_balance_changes - is_delete。     【JSON字段】member_balance_changes.json - data.tenantMemberCardLogs - is_delete。",
      "ordinal_position": 18
    },
    {
      "name": "remark",
      "data_type": "character varying",
      "is_nullable": true,
      "column_default": null,
      "comment": "【说明】明细字段，用于记录事实取值。     【示例】充值退款（明细字段，用于记录事实取值）。     【ODS来源】member_balance_changes - remark。     【JSON字段】member_balance_changes.json - data.tenantMemberCardLogs - remark。",
      "ordinal_position": 19
    },
    {
      "name": "principal_before",
      "data_type": "numeric",
      "is_nullable": true,
      "column_default": null,
      "comment": "【说明】金额字段：本金变动前余额。     【ODS来源】member_balance_changes - principal_before。     【JSON字段】member_balance_changes.json - data.tenantMemberCardLogs - principal_before。",
      "ordinal_position": 20
    },
    {
      "name": "principal_after",
      "data_type": "numeric",
      "is_nullable": true,
      "column_default": null,
      "comment": "【说明】金额字段：本金变动后余额。     【ODS来源】member_balance_changes - principal_after。     【JSON字段】member_balance_changes.json - data.tenantMemberCardLogs - principal_after。",
      "ordinal_position": 21
    },
    {
      "name": "principal_change_amount",
      "data_type": "numeric",
      "is_nullable": true,
      "column_default": null,
      "comment": "【说明】金额字段：本金变动金额（principal_after - principal_before），ETL 计算字段。",
      "ordinal_position": 22
    }
  ]
}