peanut
9d352f40a0
feat(script-favorite): add ScriptFavoriteServiceImpl
...
- toggleFavorite: upsert via logical-delete check + save, @Transactional
- getFavoritePage: paginate favorites then fetch EpicScript details
- getFavoritedScriptIds: batch IN query for checking multiple scripts
- isFavorited: count > 0 check for single script
- getFavoriteCount: total count for current user
- Uses UserContextHolder for userId, consistent with project pattern
2026-07-19 21:41:54 +08:00
..
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-07-19 21:41:54 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-28 17:15:47 +08:00
2026-06-28 18:00:22 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-28 17:36:02 +08:00
2026-06-27 17:23:53 +08:00
2026-07-19 21:41:28 +08:00
2026-06-28 17:42:05 +08:00
2026-07-19 12:15:50 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00
2026-06-27 17:23:53 +08:00