HandyCafe Docs
owner cashier

时间套餐

时间套餐为会员提供预付分钟余额。会员无需按标准小时费率计费,可以预先购买一定数量的分钟,然后在多个时段中使用。系统追踪剩余余额,并在会员使用 PC 或主机时自动扣除分钟数。

时间余额系统

与钱包系统类似,时间套餐使用基于余额条目的架构。每次添加时间余额都会创建一条新的时间余额条目。每条记录是独立的,拥有自己的分钟余额、来源、过期时间和设备限制。

会员的总可用分钟数是所有活跃时间余额条目剩余分钟数的总和。

时间余额条目字段

每条时间余额记录包含:

字段 说明
总分钟数 创建此条目时加载的原始分钟数。
剩余分钟数 此条目中未使用的当前分钟余额。随会员使用时段而减少。
余额类型 此条目的创建方式(见下方余额类型)。
设备限制 哪些设备类型可以从此条目中消耗(见下方设备限制)。
状态 余额条目的当前生命周期状态。
过期时间 可选的过期时间戳。过期后剩余分钟不再可用。
购买 ID 如果此条目来自活动套餐购买,则关联到该购买记录。

余额类型

每条时间余额记录其创建方式:

余额类型 说明
付费 会员为这些分钟付费,通过直接购买或作为活动套餐的基础权益。
赠送 随套餐购买赠送的推广分钟。例如"购买 120 分钟,赠送 30 分钟"。
手动 收银员或管理员手动添加的分钟。用于善意补偿、补偿或特殊安排。

余额状态

每条时间余额经历以下状态:

  • 活跃:余额有剩余分钟且未过期。可以从此余额中消耗分钟。
  • 已过期:余额的过期日期已过。即使余额大于零,剩余分钟也不再可用。
  • 已消费:通过正常使用,余额的剩余分钟已降至零。
  • 已取消:管理员手动取消了余额,作废所有剩余分钟。

设备限制

每条时间余额有一个设备限制,控制哪些类型的设备可以从中扣除:

限制 含义
客户端 可在客户端 PC 上使用。除非明确限制,也可在主机上使用。
主机 可在游戏主机上使用。除非明确限制,也可在 PC 上使用。
仅 PC 仅可在客户端 PC 上使用。主机时段无法从此余额扣除。
仅主机 仅可在游戏主机上使用。PC 时段无法从此余额扣除。
两者 无设备类型限制,可在任何设备上使用。这是默认值。

设备限制在创建余额时设置,之后无法更改。限制通常继承自生成该余额的活动套餐定义。

消耗追踪

每次从时间余额中扣除分钟时,系统创建一条时间消耗记录:

字段 说明
消耗分钟数 此次消耗事件中扣除的分钟数。始终为正整数。
消耗时间 扣除发生的时间戳。
上下文 触发扣除的原因(见下方)。
引用 导致扣除的具体时段、余额或调整的引用。

上下文类型

上下文 说明
时段使用 为支付活跃时段而消耗的分钟。主要消耗路径。
过期 余额过期时或因过期事件调整剩余分钟时移除的分钟。
退款 作为退款流程返还到余额的分钟(记录为负消耗或新余额条目)。

与活动套餐的整合

时间余额最常通过活动套餐购买创建:

  1. 业主创建一个活动,包含一个或多个套餐类型为"分钟"的套餐
  2. 会员选择并购买套餐(从客户端会员面板或通过收银台)。
  3. 系统创建相应的时间余额:
    • 为基础分钟权益(套餐的基础数量)创建一条付费余额
    • 如果套餐定义了赠送类型为"分钟"且赠送数量大于零,则为赠送分钟创建一条单独的赠送余额
  4. 余额继承套餐的设备限制设置。
  5. 如果套餐设置了有效期,余额的过期日期按购买日期加上有效天数计算。

时段期间如何扣除时间

当拥有可用时间分钟的会员开始时段时:

  1. 系统检查与时段设备类型匹配的活跃时间余额。
  2. 按过期日期顺序消耗余额(最先过期的优先),以最大限度减少即将过期余额的浪费。
  3. 时段运行期间,从符合条件的余额中定期扣除分钟。
  4. 每次扣除创建一条"时段使用"消耗记录。
  5. 如果所有时间余额在时段结束前耗尽,时段继续运行,剩余时间按标准小时费率计费(时段结束时付款)。

这意味着会员的时间余额和钱包余额可以协同使用。时间余额覆盖可用的分钟数,超出部分由钱包余额或现金支付承担。