diff --git a/src/main/java/com/yolo/keyborad/controller/CharacterController.java b/src/main/java/com/yolo/keyborad/controller/CharacterController.java index 8e57cc1..3b8d569 100644 --- a/src/main/java/com/yolo/keyborad/controller/CharacterController.java +++ b/src/main/java/com/yolo/keyborad/controller/CharacterController.java @@ -14,6 +14,7 @@ import jakarta.annotation.Resource; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import java.util.List; @@ -37,4 +38,19 @@ public class CharacterController { List list = characterService.selectListWithRank(); return ResultUtils.success(BeanUtil.copyToList(list, KeyboardCharacterRespVO.class)); } + + @GetMapping("/detail") + @Operation(summary = "人设详情", description = "人设详情接口") + public BaseResponse detail(@RequestParam("id") Long id) { + KeyboardCharacter character = characterService.getById(id); + return ResultUtils.success(BeanUtil.copyProperties(character ,KeyboardCharacterRespVO.class)); + } + + @GetMapping("/listByTag") + @Operation(summary = "按标签查询人设列表", description = "按标签查询人设列表接口") + public BaseResponse> listByTag(@RequestParam("tagId") Long tagId) { + List list = characterService.selectListByTag(tagId); + return ResultUtils.success(BeanUtil.copyToList(list, KeyboardCharacterRespVO.class)); + } + } diff --git a/src/main/java/com/yolo/keyborad/service/KeyboardCharacterService.java b/src/main/java/com/yolo/keyborad/service/KeyboardCharacterService.java index 2d9ef42..610c3b5 100644 --- a/src/main/java/com/yolo/keyborad/service/KeyboardCharacterService.java +++ b/src/main/java/com/yolo/keyborad/service/KeyboardCharacterService.java @@ -14,4 +14,6 @@ public interface KeyboardCharacterService extends IService{ List selectListWithRank(); + + List selectListByTag(Long tagId); } diff --git a/src/main/java/com/yolo/keyborad/service/impl/KeyboardCharacterServiceImpl.java b/src/main/java/com/yolo/keyborad/service/impl/KeyboardCharacterServiceImpl.java index 1f41fcf..d2de9f8 100644 --- a/src/main/java/com/yolo/keyborad/service/impl/KeyboardCharacterServiceImpl.java +++ b/src/main/java/com/yolo/keyborad/service/impl/KeyboardCharacterServiceImpl.java @@ -27,4 +27,12 @@ public class KeyboardCharacterServiceImpl extends ServiceImpl selectListByTag(Long tagId) { + return keyboardCharacterMapper.selectList(new LambdaQueryWrapper() + .eq(KeyboardCharacter::getDeleted, false) + .eq(KeyboardCharacter::getTag, tagId) + .orderByDesc(KeyboardCharacter::getRank)); + } }