d7c29c0883
- rewards: 激励视频实发改按 calculate_ad_reward_coin(eCPM, 当日第N次) 公式;AD_REWARD_COIN/MAX_AD_REWARD_COIN 降为历史兼容口径;新增 SIGNIN_BOOST_COIN=2000 - 签到膨胀: Day1-13 看完激励视频额外发固定金币、Day14 不允许 (signin.py / signin-boost) - ad_session_id 幂等: ad_ecpm/ad_reward/ad_feed_reward 记录加 ad_session_id 列 + 唯一索引(新迁移 coin_reward_phase2 / ad_feed_reward_session) - ad.py + schemas + repositories: ecpm-report / feed-reward / reward-status / test-grant 改造;config_schema 增 signin_boost_coin;admin stats overview 补充 - 同步 docs/api + docs/database + docs/integrations/pangle 及 tests(test_ad_reward / test_welfare) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> --------- Co-authored-by: OuYingJun1024 <1034284404@qq.com> Reviewed-on: #28 Co-authored-by: ouzhou <ouzhou@wonderable.ai> Co-committed-by: ouzhou <ouzhou@wonderable.ai>
889 B
889 B
signin_boost_record — 签到膨胀记录
App 用户 Day1-Day13 当天签到后,看完激励视频可固定膨胀 2000 金币一次。Day14 不展示也不允许膨胀。本表记录膨胀动作,并用唯一约束防重复补发。
字段
| 字段 | 类型 | 约束 | 说明 |
|---|---|---|---|
id |
Integer | PK | 自增主键 |
user_id |
Integer | FK → user.id, index, NOT NULL |
用户 |
signin_date |
Date | NOT NULL | 被膨胀的签到日期,北京时间 |
coin_awarded |
Integer | NOT NULL | 本次补发金币,默认固定 2000 |
ad_ref_id |
String(64) | nullable | 穿山甲 S2S 回调 trans_id |
created_at |
DateTime | NOT NULL | 创建时间 |
约束
UNIQUE(user_id, signin_date):同一用户同一天只能膨胀一次。
关联
- 膨胀成功时写
coin_transaction.biz_type=signin_boost,ref_id=ad_ref_id。