feat: 会员+积分系统后端 (#1895) #1919
Reference in New Issue
Block a user
Delete Branch "feature/1895-membership-points"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
概述
实现会员+积分系统的完整后端,基于 design-v2 文档。
改动内容
数据层
migrations/008_membership_points.sql: users 表新增 is_member/member_type/member_expires_at/points_balance 4 个字段 + 4 张新表服务层
points_rules.py: 9 种积分消耗场景配置 + 计费函数points_service.py: 积分账户管理、余额检查、扣减/退还/充值、每日免费额度、订单管理中间件
points_gate.py: AI 功能入口积分扣费装饰器,支持同步/异步,业务失败自动退还API 层
schemas/points.py: 请求/响应 Schemaroutes/points.py: 积分余额、流水、规则、积分包、扣费、退还、充值订单、会员状态、每日用量router.py: 注册 points/usage 路由测试
test_points_rules.py: 20 个测试用例(场景配置、计费逻辑、会员折扣、异常处理)test_points_service.py: 20 个测试用例(账户管理、余额检查、扣减/退还/充值、流水查询、每日额度、订单管理)CI 状态
等待 CI 流水线验证
🚀 预览环境已部署
🗑️ 预览环境已清理
PR #1919 已关闭或合并,对应的预览环境已被清理。