会员余额变动 — GetMemberCardBalanceChange
模块:MemberProfile · ODS 表:member_balance_changes · 事实表(增量)
一、接口概述
查询会员卡余额变动明细,记录每一次充值、消费扣款、赠送、退款等导致卡内余额发生变化的事件。每条记录包含变动前后余额、变动金额、来源类型、支付方式、操作员等信息。本表是会员卡层面的"总账/明细账表",严格满足 after = before + account_data 的余额恒等关系。
| 属性 |
值 |
| 完整路径 |
POST /MemberProfile/GetMemberCardBalanceChange |
| Base URL |
https://pc.ficoo.vip/apiprod/admin/v1/ |
| 鉴权 |
Authorization: Bearer <token> |
| 分页 |
page + limit(最大 100) |
| 时间范围 |
需要(startTime / endTime) |
二、请求
请求体(JSON)
参数说明
| 参数 |
类型 |
必填 |
说明 |
startTime |
string |
是 |
查询起始时间 |
endTime |
string |
是 |
查询结束时间 |
fromType |
int |
是 |
来源类型筛选。0 = 全部 |
page |
int |
是 |
页码,从 1 开始 |
limit |
int |
是 |
每页条数,最大 100 |
三、响应结构
data.list 中每个对象即为一条余额变更记录,共 25 个字段,按逻辑分组说明如下。
四、响应字段详解(25 个字段)
4.1 主键与关联 ID
| 字段 |
类型 |
示例 |
说明 |
id |
int |
2957881605869253 |
余额变更记录主键 ID,唯一标识一条余额变化事件 |
relate_id |
int |
2957881518788421 |
关联业务记录 ID。视 from_type 而定,可能对应充值记录 ID、订单结算单 ID、活动核销记录 ID 等。0 = 无挂接业务单(如纯后台调整) |
tenant_id |
int |
2790683160709957 |
租户/品牌 ID |
site_id |
int |
2790685415443269 |
余额变动发生的门店 ID。0 = 跨门店/平台级操作(如活动抵用券退款) |
register_site_id |
int |
2790685415443269 |
会员卡注册门店 ID(办卡所在门店),与 site_id 区分"办卡地"和"交易发生地" |
4.2 会员与会员卡维度
| 字段 |
类型 |
示例 |
说明 |
tenant_member_id |
int |
2799212845565701 |
租户内会员主键 ID。对应会员档案表的 id |
system_member_id |
int |
2799212844549893 |
系统级会员 ID(全局唯一) |
tenant_member_card_id |
int |
2799219999295237 |
会员卡账户 ID,指明本次变更针对哪一张卡。对应储值卡列表的 id |
card_type_id |
int |
2793249295533893 |
卡种类型 ID。枚举:2793249295533893 = 储值卡,2793266846533445 = 活动抵用券,2794699703437125 = 酒水卡,2791990152417157 = 台费卡 |
memberCardTypeName |
string |
"储值卡" |
卡种名称,与 card_type_id 一一对应。枚举值:"储值卡"、"活动抵用券"、"酒水卡"、"台费卡" |
memberName |
string |
"曾丹烨" |
会员姓名/称呼 |
memberMobile |
string |
"13922213242" |
会员手机号 |
4.3 门店名称
| 字段 |
类型 |
示例 |
说明 |
paySiteName |
string |
"朗朗桌球" |
余额变更发生的门店名称。当 site_id=0 时为空字符串 |
registerSiteName |
string |
"朗朗桌球" |
卡片注册门店名称(办卡地点) |
4.4 金额与余额(核心)
| 字段 |
类型 |
示例 |
说明 |
before |
float |
816.3 |
变动前卡账户余额(元) |
account_data |
float |
-120.0 |
本次变动金额(元)。正数 = 增加(充值/赠送),负数 = 减少(消费/退款) |
after |
float |
696.3 |
变动后卡账户余额(元)。恒等关系:after = before + account_data |
refund_amount |
float |
0.0 |
退款相关金额(元)。当前未使用,全部为 0.0 |
4.5 变动来源与支付方式
| 字段 |
类型 |
示例 |
说明 |
from_type |
int |
1 |
变动来源类型(核心枚举)。1 = 日常消费扣款(负数),2 = 其他增加,3 = 充值增加(正数,有外部支付),4 = 调整/赠送增加(正数,后台发放),7 = 充值退款(负数,remark 为"充值退款"),9 = 活动抵用券余额冲减(负数,site_id=0) |
payment_method |
int |
0 |
支付方式。0 = 内部结算/非外部支付(from_type=1/2/7/9),3 = 赠送/后台调账渠道(from_type=4),4 = 外部支付渠道(from_type=3,如扫码充值) |
4.6 操作员信息
| 字段 |
类型 |
示例 |
说明 |
operator_id |
int |
2790687322443013 |
执行本次余额变更操作的员工 ID |
operator_name |
string |
"收银员:郑丽珊" |
操作员姓名(带职位前缀),如 "收银员:郑丽珊"、"店长:谢晓洪" |
4.7 状态与备注
| 字段 |
类型 |
示例 |
说明 |
is_delete |
int |
0 |
逻辑删除标记。0 = 正常,1 = 已逻辑删除。系统倾向"不可逆记账",冲销通过反向变动实现 |
remark |
string |
"" |
备注。多数为空,"充值退款" 仅出现在 from_type=7 的记录上 |
4.8 时间
| 字段 |
类型 |
示例 |
说明 |
create_time |
string |
"2025-11-09 22:52:48" |
余额变更记录创建时间,通常接近交易发生时间 |
五、响应样例(单条记录)
六、跨表关联
与会员档案(member_profiles)
| 本表字段 |
关联表字段 |
说明 |
tenant_member_id |
id |
租户内会员主键 |
system_member_id |
system_member_id |
系统级会员 ID |
与储值卡列表(member_stored_value_cards)
| 本表字段 |
关联表字段 |
说明 |
tenant_member_card_id |
id |
卡账户 ID → 具体哪张卡 |
card_type_id |
card_type_id |
卡种类型 ID |
余额变更流水通过 tenant_member_card_id 指向具体卡账户,再通过 card_type_id 确定卡种。
与支付记录
充值类记录(from_type=3)的 relate_id 对应充值记录 ID,payment_method 与支付记录中的支付渠道枚举保持一致。
与订单/消费流水
消费扣款(from_type=1)和活动冲减(from_type=9)的 relate_id 对应订单/结算单/活动扣款单的主键,可与台费流水、助教流水、门店销售记录中的 order_settle_id 建立关系。
与门店维度
site_id / paySiteName:交易发生门店
register_site_id / registerSiteName:办卡门店
- 少数
site_id=0 的记录为平台级/活动结算场景