with open('docs/requirements-changelog.md', 'r', encoding='utf-8') as f: content = f.read() entry = ''' --- ## v20260604.4 **发布日期:** 2026-06-04 **变更类型:** 新增功能 **状态:** 🚧 设计待确认 ### 版本摘要 新增**打卡赚积分**功能模块。用户每日签到打卡可获得积分,积分用于兑换服务权益(能量盘次数、推广次数、优惠券等)。积分体系独立于佣金和现金提现,纯内部激励代币。 ### 变更清单 | # | 类型 | 变更 | 涉及位置 | |---|------|------|---------| | 1 | 🆕 新增 | 签到打卡基础逻辑(每日一次、连续签到、补签消耗) | 后端 Service + 前端页面 | | 2 | 🆕 新增 | 积分规则引擎(签到分数 + 连续奖励 + 特殊日子双倍) | 后端 Service | | 3 | 🆕 新增 | 积分消耗场景(兑换能量盘次数/聊天次数/优惠券/抽奖资格) | 商城兑换页 | | 4 | 🆕 新增 | 积分流水记录(进账/消耗,支持查询) | 数据库 + API | | 5 | 🆕 新增 | 打卡日历 UI(连续天数展示 + 补签入口 + 奖励预览) | 前端 Component | | 6 | 🆕 新增 | 补签机制(消耗积分补昨日,VIP 每日免费补签 1 次) | 后端 Service | | 7 | 🔧 更新 | 每日自动重置计数器需兼容现有 quota 体系(不相互干扰) | UserService | ### 设计要点(待用户确认) - **连续打卡奖励阶梯**:连续 3/7/15/30 天额外积分 bonus - **补签消耗**:建议 50 积分/次(可配置),VIP 每日免费 1 次 - **积分过期**:建议次年 1 月 1 日清零上一年度积分 - **积分用途**:兑换能量盘咨询次数、兑换 AI 聊天次数、抵扣会员费(可选) - **防作弊**:同一设备/IP 每日限打卡 1 次;VIP 无此限制 ### 关联影响 - 需新增 `user_points` 表和 `points_log` 表 - 前端「我的」页增加打卡入口 + 积分余额展示 - 不影响现有佣金提现体系(积分 ≠ 现金) - 与「家庭套餐」权益可叠加(家庭套餐用户打卡积分翻倍) --- ''' # Append to end if 'v20260604.4' not in content: content = content.rstrip() + entry with open('docs/requirements-changelog.md', 'w', encoding='utf-8') as f: f.write(content) print('OK: v20260604.4 appended') else: print('SKIP: already exists')