AIAI SaaS
返回博客

积分系统是如何工作的

发布于 2026年9月4日 · Team

工程

积分系统采用双表设计:credit_grant 批次表 + 不可变的 credit_transaction 流水表。

带过期的批次

每次发放都是一个批次,含 amountremaining 和可选的 expiresAt。注册赠分可能 30 天过期;购买的积分包永不过期。

FEFO 扣减

消耗时优先扣最快过期的批次(First-Expired, First-Out),让用户的积分绝不白白浪费。

每日任务

GitHub Actions 定时任务(或 GET /api/distribute-credits)清零过期批次、写入 expiration 流水,并把到期订阅降级。