# 充值结算记录(GetRechargeSettleList) > 自动生成于 2026-02-13 | 数据来源:实时 API ## 基本信息 | 属性 | 值 | |------|-----| | 接口路径 | `Site/GetRechargeSettleList` | | 完整 URL | `https://pc.ficoo.vip/apiprod/admin/v1/Site/GetRechargeSettleList` | | 请求方法 | `POST` | | Content-Type | `application/json` | | 鉴权方式 | Bearer Token(`Authorization` 头) | | ODS 对应表 | `recharge_settlements` | | 分页方式 | `page` + `limit`(最大 100) | | 时间范围 | 需要(rangeStartTime / rangeEndTime) | ## 请求参数 | 参数名 | 类型 | 示例值 | 说明 | |--------|------|--------|------| | `settleType` | int | `0` | 结算类型(0=全部) | | `paymentMethod` | int | `0` | 支付方式(0=全部) | | `rangeStartTime` | string | `"2026-02-01 08:00:00"` | 查询起始时间 | | `rangeEndTime` | string | `"2026-02-13 08:00:00"` | 查询结束时间 | | `siteId` | int | `2790685415443269` | 门店 ID | | `isFirst` | int | `0` | 是否首充(0=全部) | | `page` | int | `1` | 页码(从 1 开始) | | `limit` | int | `100` | 每页条数(最大 100) | ## 响应字段(共 92 个) | # | 字段名 | 类型 | 示例值 | |---|--------|------|--------| | 1 | `id` | int | 3087072625102533 | | 2 | `tenantId` | int | 2790683160709957 | | 3 | `siteId` | int | 2790685415443269 | | 4 | `siteName` | string | '' | | 5 | `balanceAmount` | float | 0.0 | | 6 | `cardAmount` | float | 0.0 | | 7 | `cashAmount` | float | 0.0 | | 8 | `couponAmount` | float | 0.0 | | 9 | `createTime` | string | '2026-02-09 05:12:42' | | 10 | `memberId` | int | 2799207363643141 | | 11 | `memberName` | string | '葛先生' | | 12 | `tenantMemberCardId` | int | 2799216572794629 | | 13 | `memberCardTypeName` | string | '储值卡' | | 14 | `memberPhone` | string | '13811638071' | | 15 | `tableId` | int | 0 | | 16 | `consumeMoney` | float | 10000.0 | | 17 | `onlineAmount` | float | 0.0 | | 18 | `operatorId` | int | 2790687322443013 | | 19 | `operatorName` | string | '收银员:郑丽珊' | | 20 | `revokeOrderId` | int | 0 | | 21 | `revokeOrderName` | string | '' | | 22 | `revokeTime` | string | '0001-01-01 00:00:00' | | 23 | `payAmount` | float | 10000.0 | | 24 | `pointAmount` | float | 10000.0 | | 25 | `refundAmount` | float | 0.0 | | 26 | `settleName` | string | '充值订单' | | 27 | `settleRelateId` | int | 3087072624987845 | | 28 | `settleStatus` | int | 2 | | 29 | `settleType` | int | 5 | | 30 | `payTime` | string | '2026-02-09 05:12:42' | | 31 | `roundingAmount` | float | 0.0 | | 32 | `paymentMethod` | int | 4 | | 33 | `adjustAmount` | float | 0.0 | | 34 | `assistantCxMoney` | float | 0.0 | | 35 | `assistantPdMoney` | float | 0.0 | | 36 | `couponSaleAmount` | float | 0.0 | | 37 | `plCouponSaleAmount` | float | 0.0 | | 38 | `merVouSalesAmount` | float | 0.0 | | 39 | `memberDiscountAmount` | float | 0.0 | | 40 | `tableChargeMoney` | float | 0.0 | | 41 | `goodsMoney` | float | 0.0 | | 42 | `realGoodsMoney` | float | 0.0 | | 43 | `serviceMoney` | float | 0.0 | | 44 | `prepayMoney` | float | 0.0 | | 45 | `salesManName` | string | '' | | 46 | `orderRemark` | string | '' | | 47 | `salesManUserId` | int | 0 | | 48 | `canBeRevoked` | bool | False | | 49 | `pointDiscountPrice` | float | 0.0 | | 50 | `pointDiscountCost` | float | 0.0 | | 51 | `activityDiscount` | float | 0.0 | | 52 | `serialNumber` | int | 0 | | 53 | `assistantManualDiscount` | float | 0.0 | | 54 | `allCouponDiscount` | float | 0.0 | | 55 | `goodsPromotionMoney` | float | 0.0 | | 56 | `assistantPromotionMoney` | float | 0.0 | | 57 | `isUseCoupon` | bool | False | | 58 | `isUseDiscount` | bool | False | | 59 | `isActivity` | bool | False | | 60 | `isBindMember` | bool | False | | 61 | `isFirst` | int | 2 | | 62 | `rechargeCardAmount` | int | 0 | | 63 | `giftCardAmount` | int | 0 | | 64 | `electricityMoney` | float | 0.0 | | 65 | `realElectricityMoney` | float | 0.0 | | 66 | `electricityAdjustMoney` | float | 0.0 | | 67 | `siteProfile.id` | int | 2790685415443269 | | 68 | `siteProfile.org_id` | int | 2790684179467077 | | 69 | `siteProfile.shop_name` | string | '朗朗桌球' | | 70 | `siteProfile.avatar` | string | 'https://oss.ficoo.vip/admin/hXcE4E_1752495052016.jpg' | | 71 | `siteProfile.business_tel` | string | '13316068642' | | 72 | `siteProfile.full_address` | string | '广东省广州市天河区丽阳街12号' | | 73 | `siteProfile.address` | string | '广东省广州市天河区天园街道朗朗桌球' | | 74 | `siteProfile.longitude` | float | 113.360321 | | 75 | `siteProfile.latitude` | float | 23.133629 | | 76 | `siteProfile.tenant_site_region_id` | int | 156440100 | | 77 | `siteProfile.tenant_id` | int | 2790683160709957 | | 78 | `siteProfile.auto_light` | int | 1 | | 79 | `siteProfile.attendance_distance` | int | 0 | | 80 | `siteProfile.wifi_name` | string | '' | | 81 | `siteProfile.wifi_password` | string | '' | | 82 | `siteProfile.customer_service_qrcode` | string | '' | | 83 | `siteProfile.customer_service_wechat` | string | '' | | 84 | `siteProfile.fixed_pay_qrCode` | string | '' | | 85 | `siteProfile.prod_env` | int | 1 | | 86 | `siteProfile.light_status` | int | 1 | | 87 | `siteProfile.light_type` | int | 0 | | 88 | `siteProfile.site_type` | int | 1 | | 89 | `siteProfile.light_token` | string | '' | | 90 | `siteProfile.site_label` | string | 'A' | | 91 | `siteProfile.attendance_enabled` | int | 1 | | 92 | `siteProfile.shop_status` | int | 1 | ## 新增字段(相对本地 JSON 样本) 以下字段在最新 API 响应中出现,但本地 JSON 样本中不存在: | 字段名 | 类型 | |--------|------| | `electricityAdjustMoney` | float | | `electricityMoney` | float | | `merVouSalesAmount` | float | | `plCouponSaleAmount` | float | | `realElectricityMoney` | float | ## 详细字段分析 > 以下内容迁移自旧版 `recharge_settlements-Analysis.md`,包含字段的业务含义、枚举值、跨表关联等详细说明。 二、siteProfile(门店维度快照) 每条记录都带一个相同的 siteProfile,表示当前门店信息。字段含义与之前文件中的 siteProfile 一致: id 类型:int 含义:门店 ID。 与各 JSON 中的 site_id 一致。 org_id 类型:int 含义:门店所属组织 ID(类似“门店所在公司/组织”)。 shop_name 类型:string 示例:"朗朗桌球" 含义:门店名称。 avatar 类型:string 含义:门店头像图片 URL。 business_tel 类型:string 含义:门店电话。 full_address 类型:string 含义:完整门店地址。 address 类型:string 含义:精简地址/展示用地址。 longitude / latitude 类型:float 含义:门店经纬度。 tenant_site_region_id 类型:int 含义:门店所属行政区域编码(内部编码)。 tenant_id 类型:int 含义:租户/品牌 ID,对应所有表里的 tenantId 或 tenant_id。 auto_light / light_status / light_type / light_token 类型:int / string 含义:门店灯控相关配置(是否智能控灯、灯控类型、对接凭证等)。 attendance_distance / attendance_enabled 类型:int / int 含义:考勤打卡相关配置(打卡有效范围、是否启用考勤)。 wifi_name / wifi_password 类型:string 含义:门店 WiFi 信息(当前为空)。 customer_service_qrcode / customer_service_wechat 类型:string 含义:客服二维码 / 客服微信。 fixed_pay_qrCode 类型:string 含义:固定收款码图片 URL。 prod_env 类型:int 含义:环境标志(1=线上环境,非测试)。 site_type 类型:int 含义:门店类型(枚举,当前为 1)。 site_label 类型:string 示例:"A" 含义:门店标签/分组标签。 shop_status 类型:int 含义:门店营业状态(枚举,当前为 1=营业中)。 以上字段在本文件中值基本固定,仅起到“门店快照”作用。 三、内层 settleList(单条充值结算记录)字段说明 以下所有字段均来自内层 settleList(即每条充值记录)。 为便于阅读,按“主键与关联”、“会员与卡”、“金额相关”、“优惠相关”、“状态与类型”、“时间字段”、“操作人与渠道”等分组说明。 1. 主键与关联维度字段 id 类型:int 含义:本条充值结算记录的主键 ID(唯一标识一条充值/撤销记录)。 唯一性:74 条记录全部不同。 tenantId 类型:int 当前值:同一租户 ID。 含义:租户/品牌 ID,和 siteProfile.tenant_id 一致。 siteId 类型:int 当前值:同一门店 ID。 含义:门店 ID,和 siteProfile.id 一致。 siteName 类型:string 当前值:"朗朗桌球" 含义:门店名称,与 siteProfile.shop_name 一致。 tableId 类型:int 当前值:全部为 0。 含义(从命名看):原本用于关联台桌 ID。 在充值场景中未使用(全部为 0),可理解为“充值记录不依附具体球台”。 serialNumber 类型:int 当前值:全部为 0。 含义(推测):流水号/小票序号字段;本门店当前未启用或未写入。 settleRelateId 类型:int 唯一值:74 条记录全部不同。 含义(推测):关联的“结算单/业务单”ID。 根据命名,极可能等于“充值订单主表”的主键,或与支付记录里的 relate_id 相呼应,用于跨表追踪。 settleType 类型:int(枚举) 取值及含义(由数据反推): 5:settleName = "充值订单"(正常充值) 7:settleName = "充值撤销"(充值撤销记录) 说明:这一枚举区分了充值 vs 撤销两类业务动作。 settleName 类型:string 枚举值: "充值订单":对应 settleType = 5 "充值撤销":对应 settleType = 7 含义:业务类型名称,用于前端展示。 settleStatus 类型:int(枚举) 当前值:全部为 2 含义(推测): 2:已完成/已结算。 说明:本次导出只保留了完成状态的充值/撤销记录,未包含未完成或待支付状态。 revokeOrderId 类型:int 值分布: 对多数正常充值记录:为对应的撤销单 ID 组成的某种映射(部分为 0,部分为某 ID)。 对撤销记录本身,一般也会有对应关系,用来指向被撤销的原始订单。 含义(推测):与撤销相关的订单 ID(原订单或撤销单的指针)。 revokeOrderName 类型:string 当前值:全部为空字符串。 含义:撤销单名称/说明,当前未使用。 revokeTime 类型:string(时间) 当前值:全部为 ""(空字符串)。 含义:撤销发生时间。 实际撤销信息现在通过 “充值订单 + 退款金额 + 充值撤销记录” 来体现,该字段未真正使用。 从结构看,这个“充值记录”表沿用了通用“结算单”的模型,预留了多种业务场景字段(包括撤销相关的信息),但本门店实际使用方式是: 原始充值记录 settleType = 5, settleName = "充值订单",payAmount > 0。 对应的退款信息通过 refundAmount 或单独的 settleType = 7 记录(负数金额)体现,revoke* 字段目前保持空/0。 2. 会员与会员卡相关字段 memberId 类型:int 含义:会员档案的主键 ID。 关联: 对应“会员档案.json”中 tenantMemberInfos 的 id 字段(部分成员能直接匹配)。 用途:标识给哪位会员充值。 memberName 类型:string 值示例:"轩哥", "羊", "夏", 以及一些手机号字符串。 含义:会员名称/昵称快照。 说明:此处记录的是当时会员名字,后续会员改名时,本记录不变(快照字段)。 memberPhone 类型:string 含义:会员手机号快照,用于查找和展示。 memberCardTypeName 类型:string(枚举) 当前值: "储值卡" 占绝大多数 "月卡" 仅 1 条(对应一次月卡充值) 含义:本次充值针对的会员卡类型名称。 tenantMemberCardId 类型:int 含义:会员卡实例 ID(某张具体卡)。 说明: 多个充值记录可能对应同一张卡(同一个 ID 多次出现)。 这类 ID 通常对应“会员卡表”的主键(本次导出中该表未单独出现)。 isBindMember 类型:bool 当前值:全部为 False 含义(结合命名推测):是否绑定为会员(或是否有绑定的推荐人/员工等)。 但由于本数据中所有充值都有 memberId,而 isBindMember 全为 False,实际业务含义可能已经变化或未使用,需以系统配置为准。 isFirst 类型:int(枚举) 当前值:1 或 2 1 出现 11 次 2 出现 63 次 命名上很明显是“是否首次”的含义,但从现有数据看,同一会员有时只有 2,说明缺失了更早的记录或编码含义稍有偏差。 建议:业务解释上视为“是否首单/首充”的标志,但具体 1/2 对应什么角色需要系统字典确认。 3. 金额相关字段(充值金额结构,不做盈利分析) 这一部分是本表的核心。 所有金额类型统一为 float,单位为“元”。 3.1 充值总额与退款 payAmount 含义:本次记录对应的充值金额(含正负)。 特点: 正数:实际充值金额(1000, 3000, 5000, 10000, 44000 等)。 负数:撤销或冲销金额(-3000, -5000, -10000, -44000 等)。 与 settleType 的关系: "充值订单"(settleType=5):绝大多数为正值;少数被退款的记录仍为正值,但 refundAmount>0。 "充值撤销"(settleType=7):金额为负值。 refundAmount 含义:针对本条充值订单所做的退款金额(通常为正数)。 分布: 大部分记录为 0。 少数记录为 10000、5000、44000、3000 等,与对应的 payAmount 完全相等。 配合观察: 有一条 "充值订单" 记录 payAmount=10000,同时 refundAmount=10000。 对应存在一条 "充值撤销" 记录,payAmount=-10000,refundAmount=0。 结构含义: 原始充值单通过 refundAmount 标记“已被退款”, 同时生成对应的 "充值撤销" 负值记录作为记账流水。 3.2 资金来源 / 支付渠道拆分(本数据中未细分) balanceAmount 当前值:全部为 0。 命名含义:从“账户余额”支付的金额(在充值场景中不适用,因此为 0)。 cardAmount 当前值:全部为 0。 命名含义:从某种“储值卡 / 会员卡余额”为消费来源的金额(本表为充值,不是消费,暂未使用)。 cashAmount 当前值:极少数记录为 3000、5000,其余为 0。 含义:现金收款金额。 onlineAmount 当前值:全部为 0。 命名含义:线上支付金额(微信/支付宝等),当前门店这段时间的充值可能按统一支付方式计入 payAmount,而没有拆渠道。 couponAmount 当前值:全部为 0。 含义:用券直接支付的金额(例如储值券),在本充值场景中未使用。 3.3 积分、到账金额类 pointAmount 含义(结合取值关系推断):计入会员账户的“储值金额”或“积分型金额”。 特征: 多数情况下等于 payAmount 的绝对值。 对于被完全撤销的场景: "充值订单":payAmount>0,pointAmount 仍为正值; "充值撤销":相应记录 pointAmount=0。 因此 pointAmount 更像是“本条生效后,卡上增加的金额”,而撤销记录不再增加金额。 rechargeCardAmount 当前值:全部为 0。 命名含义:充值到卡上的金额(可能用于区分“余额型卡充值额”和“赠送/积分”等),当前没有单独拆出。 giftCardAmount 当前值:全部为 0。 含义(推测):赠送卡金额(如买 1000 送 100 的 100 部分)。 prepayMoney 当前值:全部为 0。 命名含义:预付款金额(如订金)。本门店充值没有使用该维度。 3.4 消费相关金额(在充值场景中为 0) 以下字段在通用结算模型中用于“商品/台费/服务”消费金额,本表为纯充值场景,因此全部为 0,仅列明用途: consumeMoney 当前值:0 含义:总消费金额(消费类订单使用)。 goodsMoney 当前值:0 含义:商品消费金额。 realGoodsMoney 当前值:0 含义:实际商品应计金额(可能扣除折扣后的商品金额)。 tableChargeMoney 当前值:0 含义:台费金额。 serviceMoney 当前值:0 含义:服务类项目金额(例如助教、其他服务)。 4. 优惠、折扣、活动相关字段(当前数据几乎全 0) 这些字段是通用结算模型中用于记录活动优惠、商品促销、助教促销等的金额,在本充值场景下本店未用到,全部为 0.0: activityDiscount 含义:营销活动折扣金额。 allCouponDiscount 含义:各类优惠券、团购券综合折扣金额。 goodsPromotionMoney 含义:商品促销优惠金额。 assistantPromotionMoney 含义:助教相关促销优惠金额。 assistantPdMoney 含义:助教配单金额/相关费用。 assistantCxMoney 含义:助教促销或冲销相关金额。 assistantManualDiscount 含义:助教手动减免金额。 couponSaleAmount 含义:出售券/套餐的金额(与消费类订单相关)。 memberDiscountAmount 含义:因会员折扣产生的优惠金额。 pointDiscountPrice / pointDiscountCost 含义:积分抵扣产生的价差/成本。 adjustAmount 含义:结算时手工调整金额(四舍五入以外的修正)。 roundingAmount 含义:抹零金额(尾数四舍五入处理产生的差额)。 以上字段设计说明: 充值记录数据结构复用了“结算单”的全量字段,实际场景仅使用了“充值金额、退款金额、积分/储值增加等”少数字段,其余优惠/活动相关字段在当前时间段为全 0。 5. 状态与标志字段 isActivity 类型:bool 当前值:全部为 False 含义:是否关联某个营销活动(如充值满送活动)。 当前为 False,说明这段时间的充值没有绑定系统内的“活动对象”。 isUseCoupon 类型:bool 当前值:全部为 False 含义:本次结算是否使用优惠券。充值未用券。 isUseDiscount 类型:bool 当前值:全部为 False 含义:是否使用了折扣(例如会员打折)。 充值一般是面值入账,因此为 False。 canBeRevoked 类型:bool 当前值:全部为 False 含义:是否仍可进行撤销操作。 当前导出时,这 74 条记录均不可再撤销(可能是时间窗已过)。 settleStatus 已在上文说明,全部为 2(已完成)。 6. 时间字段 createTime 类型:string(时间) 含义:充值记录创建时间,一般即收银完成时间。 用途:作为时间轴排序和统计依据。 payTime 类型:string(时间) 含义:支付完成时间。 特点:在当前数据中,createTime 与 payTime 通常非常接近或相同。 revokeTime 类型:string 当前值:全部为空。 含义:撤销生效时间,当前未使用。 7. 操作员 / 营业员 / 支付方式字段 operatorId 类型:int 含义:操作该笔充值的收银员/员工 ID。 operatorName 类型:string 含义:操作员姓名,与 operatorId 对应,便于直接阅读。 salesManName 类型:string 当前值:全部为空字符串。 含义:营业员/销售员姓名(与提成相关的角色)。充值记录未单独指定销售员。 salesManUserId 类型:int 当前值:全部为 0。 含义:营业员用户 ID。 paymentMethod 类型:int(枚举) 取值:1, 2, 4 三种。 含义:支付方式编码。 具体编码→支付渠道的映射(如现金/微信/支付宝/银行卡等)需要参考系统内部“支付方式字典”; 从数据分布看: 大部分充值记录使用 4,少数是 1、2,实际渠道应为某几种常用支付方式。 8. 备注字段 orderRemark 类型:string 当前值:全部为空字符串。 含义:充值单备注,例如手工说明,当前未使用。 四、结构关系与设计线索(不做金额/盈利分析) 从字段结构角度,可以看出以下几点重要信息: 通用“结算单模型”的复用 大量字段(商品金额、台费金额、助教金额、活动优惠、积分抵扣等)在本表都为 0,仅充值相关字段有值。 说明“充值记录”不是单独设计的表,而是基于统一的“结算单/收银单结构”,通过 settleType 区分不同业务类型(台费、商品、助教、充值等)。 这也意味着: 在同一套系统中,“台费结算”“商品销售”“助教结算”“充值记录”等 JSON,很可能都是同一张逻辑表不同类型的切片。 充值与撤销通过两种机制共同表达 settleType + settleName 用于区分“充值订单”与“充值撤销”。 退款信息通过两种方式表现: 原始充值单上 refundAmount > 0; 单独的 "充值撤销" 记录,payAmount 为负数。 这说明系统在设计上既保留了原始订单的“退款标签”,又通过负数流水记录真实冲销过程,方便对账和追溯。 会员 ID 与会员卡 ID 的关系 memberId 对应“会员档案.json”中 tenantMemberInfos.id(即某个会员主体)。 tenantMemberCardId 对应的是具体某一张卡的 ID(你这批数据没有单独的“会员卡表”,但是从命名与取值分布可以看出来,它比 memberId 更细一层)。 memberCardTypeName 给出了卡类型(储值卡、月卡等),说明充值记录同时向“会员主体”和“卡实例”两层维度挂钩。 表内未使用但预留的业务扩展点 activityDiscount、isActivity、isUseCoupon、allCouponDiscount 等字段在当前数据中全部为 0/False,但结构上已经为“充值参与活动”“充值优惠券”“充值满送”等预留了入口。 goodsMoney、serviceMoney、tableChargeMoney 全为 0,说明这张结算结构可以在别的业务场景被复用为综合结算(充值 + 消费),本门店当前的充值使用方式非常简单。 门店维度的一致性 siteId / siteName 与 siteProfile.id / siteProfile.shop_name 完全一致,且所有记录都属于同一个门店。 说明该文件仅包含这一家门店的充值流水,和你给的信息“所有数据均来自同一门店”一致。 与其他 JSON 的关联线索(仅从字段命名角度) 与会员档案的关联: memberId ↔ “会员档案.json” tenantMemberInfos.id memberName / memberPhone 则是当时的快照。 与支付记录的潜在关联: settleRelateId 加上 paymentMethod,典型用法是在“支付记录”表中通过 relate_type=充值 + relate_id=settleRelateId 进行关联。 与其他结算类 JSON 的一致性: 字段命名和结构(goodsMoney, tableChargeMoney, serviceMoney, 折扣类字段)的完整复用,说明“台费结算”“商品销售”“助教流水”“充值记录”几类 JSON,是同一个结算域模型的不同“视图”或筛选条件。