bindbox-game/docs/任务中心/ALIGNMENT_任务中心.md
邹方成 45815bfb7d chore: 清理无用文件与优化代码结构
refactor(utils): 修复密码哈希比较逻辑错误
feat(user): 新增按状态筛选优惠券接口
docs: 添加虚拟发货与任务中心相关文档
fix(wechat): 修正Code2Session上下文传递问题
test: 补充订单折扣与积分转换测试用例
build: 更新配置文件与构建脚本
style: 清理多余的空行与注释
2025-12-18 17:35:55 +08:00

1.4 KiB
Raw Blame History

对齐文档:任务中心

原始需求

  • 建立独立的“任务中心”,用户完成任务获取奖励:积分、优惠券、道具卡、称号。
  • 任务类型首日下单、完成N订单阶梯、邀请有效好友人数N。

边界确认

  • 与现有Activities抽奖域完全分离;不修改抽奖域表结构与逻辑。
  • 奖励发放统一走现有用户发奖服务;券/卡系统复用现有接口。
  • 默认自动发放;如需手动领取提供接口但不强制。

需求理解

  • 事件驱动:基于OrderPaidInviteSuccess事件实时更新用户任务进度。
  • 阶梯与一次性:支持一次性(首日下单)与阶梯(订单/邀请里程碑)任务。
  • 调度补偿:周期性对账补漏,保证一致性与可追溯。

疑问澄清

  • 称号奖励是否需要叠加效果与过期策略?暂定无过期,效果由标题系统处理。
  • 退款是否回滚进度?暂定回滚计数但不回收已发奖励(可配置)。

约束与对齐

  • 性能实时事件处理P95<200ms调度作业在可接受时间内完成。
  • 安全:防刷单与邀请作弊;限流与幂等保证。

共识要点

  • 新建独立域:TaskCenter,目录internal/api|service|repository/mysql/task_center
  • 新建表:TasksTaskTiersTaskRewardsUserTaskProgressTaskEventLogs,如需UserTitles可复用现有表。