This commit is contained in:
2026-05-14 14:21:17 +08:00
parent 7a75f5d612
commit d33c937ebc
191 changed files with 1916 additions and 1549 deletions

View File

@@ -6,18 +6,18 @@
1. 拼图草稿页“新增关卡”按钮下方显示一行小字:“获得更多积分激励”。
2. 创作页的已发布拼图作品卡展示当前作品的积分激励总数、待领取积分数和领取按钮。
3. 用户在他人已发布拼图作品中消耗点时,作品作者获得消耗点数量的一半作为积分激励。
4. 作者领取时只能领取整数个点,待领取值向下取整;未满 1 个点的半数余额继续保留。
3. 用户在他人已发布拼图作品中消耗点时,作品作者获得消耗点数量的一半作为积分激励。
4. 作者领取时只能领取整数个点,待领取值向下取整;未满 1 个点的半数余额继续保留。
## 2. 数据模型
拼图作品激励归属到 `puzzle_work_profile`
1. `point_incentive_total_half_points: u64`
- 记录该作品累计获得的激励,单位为“半个点”。
- 每消耗 `N`点,增加 `N` 个 half points当前拼图道具每次消耗 1 个点,因此每次为作者增加 0.5。
- 记录该作品累计获得的激励,单位为“半个点”。
- 每消耗 `N`点,增加 `N` 个 half points当前拼图道具每次消耗 1 个点,因此每次为作者增加 0.5。
2. `point_incentive_claimed_points: u64`
- 记录作者已领取的整数点数量。
- 记录作者已领取的整数点数量。
3. 前端展示:
- 激励总数 = `pointIncentiveTotalHalfPoints / 2`,允许展示一位小数。
- 待领取积分 = `floor(pointIncentiveTotalHalfPoints / 2) - pointIncentiveClaimedPoints`
@@ -33,7 +33,7 @@
- 只允许作品作者领取。
- 计算可领取整数 `claimable = total_half_points / 2 - claimed_points`
- `claimable <= 0` 时拒绝领取。
- 同一事务内更新作品 `claimed_points += claimable`,并向作者钱包增加 `claimable` 点,钱包流水来源使用 `puzzle_author_incentive_claim`
- 同一事务内更新作品 `claimed_points += claimable`,并向作者钱包增加 `claimable` 点,钱包流水来源使用 `puzzle_author_incentive_claim`
## 4. API 与前端
@@ -55,6 +55,6 @@
2. 已发布拼图作品卡展示“积分激励总数”和“待领取”两个数值。
3. 待领取积分为 0 时领取按钮禁用。
4. 非作者游玩他人拼图并使用付费道具后,该作品累计 half points 增加。
5. 作者领取后钱包增加向下取整后的整数点,作品待领取数归零或保留不足 1 的小数余额。
5. 作者领取后钱包增加向下取整后的整数点,作品待领取数归零或保留不足 1 的小数余额。
6. 领取成功后顶部/我的页钱包余额随个人看板刷新。
7. 修改后运行编码检查、SpacetimeDB 绑定生成、Rust 检查和必要前端测试。