From 2b0fa71c404cfdf7e972225c7249155b039413e9 Mon Sep 17 00:00:00 2001 From: ziin Date: Tue, 23 Dec 2025 13:53:53 +0800 Subject: [PATCH] [Claude Code] After prompt #0 --- .../com/yolo/keyborad/controller/ThemesController.java | 4 ++-- .../yolo/keyborad/service/KeyboardThemesService.java | 2 +- .../service/impl/KeyboardThemesServiceImpl.java | 10 ++++++++-- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/yolo/keyborad/controller/ThemesController.java b/src/main/java/com/yolo/keyborad/controller/ThemesController.java index 23bbbcc..e4e203c 100644 --- a/src/main/java/com/yolo/keyborad/controller/ThemesController.java +++ b/src/main/java/com/yolo/keyborad/controller/ThemesController.java @@ -85,9 +85,9 @@ public class ThemesController { @GetMapping("/recommended") @Operation(summary = "推荐主题列表", description = "按真实下载数量降序返回推荐主题") - public BaseResponse> getRecommendedThemes() { + public BaseResponse> getRecommendedThemes(@RequestParam Long themeId) { Long userId = StpUtil.getLoginIdAsLong(); - List result = themesService.getRecommendedThemes(userId); + List result = themesService.getRecommendedThemes(userId, themeId); return ResultUtils.success(result); } diff --git a/src/main/java/com/yolo/keyborad/service/KeyboardThemesService.java b/src/main/java/com/yolo/keyborad/service/KeyboardThemesService.java index 6c2ffc3..6319ca0 100644 --- a/src/main/java/com/yolo/keyborad/service/KeyboardThemesService.java +++ b/src/main/java/com/yolo/keyborad/service/KeyboardThemesService.java @@ -34,7 +34,7 @@ public interface KeyboardThemesService extends IService{ * @param userId 用户ID * @return 推荐主题列表 */ - List getRecommendedThemes(Long userId); + List getRecommendedThemes(Long userId,Long themeId); /** * 根据主题名称模糊搜索主题 diff --git a/src/main/java/com/yolo/keyborad/service/impl/KeyboardThemesServiceImpl.java b/src/main/java/com/yolo/keyborad/service/impl/KeyboardThemesServiceImpl.java index a18cd02..e13a117 100644 --- a/src/main/java/com/yolo/keyborad/service/impl/KeyboardThemesServiceImpl.java +++ b/src/main/java/com/yolo/keyborad/service/impl/KeyboardThemesServiceImpl.java @@ -118,12 +118,13 @@ public class KeyboardThemesServiceImpl extends ServiceImpl推荐规则:根据真实下载量降序排序,排除用户已购买的主题,最多返回8个主题

+

推荐规则:根据真实下载量降序排序,排除用户已购买的主题和当前查看的主题,最多返回8个主题

@param userId 用户ID + @param themeId 当前主题ID,需要从推荐列表中排除 * @return 推荐主题列表,包含主题详情和购买状态(推荐列表中的主题购买状态均为未购买) */ - public List getRecommendedThemes(Long userId) { + public List getRecommendedThemes(Long userId, Long themeId) { // 查询用户已购买的主题ID集合 Set purchasedThemeIds = purchaseService.lambdaQuery() .eq(KeyboardThemePurchase::getUserId, userId) @@ -139,6 +140,11 @@ public class KeyboardThemesServiceImpl extends ServiceImpl