31 lines
1.0 KiB
Markdown
31 lines
1.0 KiB
Markdown
# 2026-10-21 | 短剧保存免费集数同步分集
|
|
|
|
## 目标
|
|
|
|
后台短剧编辑改 `freeEpisodes` / `unlockCoin` 后,同步 `drama_episode.is_free` / `unlock_coin`,与定价页 `PriceService.save()` 规则一致。
|
|
|
|
## 方案
|
|
|
|
1. 抽出 `EpisodePriceSync.syncByDramaRule(dramaId, freeEpisodes, unlockCoin)`,供 `DramaService.update` 与 `PriceService.save` 共用。
|
|
2. `DramaService.update` 在 `updateById` 后,仅当免费集数或解锁金币相对更新前有变化时调用同步。
|
|
3. TDD:先写 `DramaServiceTest` 复现失败,再改实现转绿。
|
|
|
|
## 范围
|
|
|
|
- 仅 `fruitshorts-module-content`
|
|
- 不改 Controller / VO / 契约 / 前端
|
|
|
|
## 门禁
|
|
|
|
```bash
|
|
mvn -pl fruitshorts-module-content test -Dtest=DramaServiceTest
|
|
mvn -pl fruitshorts-module-content test
|
|
```
|
|
|
|
## 分支 / 提交
|
|
|
|
- `feature/drama-free-episodes-sync` ← `develop`
|
|
- `test(content): 覆盖短剧免费集数同步分集价格`
|
|
- `fix(content): 短剧保存免费集数时同步分集免费状态`
|
|
- `merge --no-ff` 回 develop 并 push
|