From ecd6dba9bd0379dc189e3dcab2012428c18b8b77 Mon Sep 17 00:00:00 2001 From: ziin Date: Wed, 3 Dec 2025 20:10:21 +0800 Subject: [PATCH] =?UTF-8?q?feat(user):=20=E6=96=B0=E5=A2=9E=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E8=AF=A6=E6=83=85=E6=8E=A5=E5=8F=A3=E5=B9=B6=E6=94=BE?= =?UTF-8?q?=E5=BC=80=E9=89=B4=E6=9D=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../keyborad/config/SaTokenConfigure.java | 3 +- .../keyborad/controller/UserController.java | 9 ++++ .../model/vo/user/KeyboardUserInfoRespVO.java | 41 +++++++++++++++++++ 3 files changed, 52 insertions(+), 1 deletion(-) create mode 100644 src/main/java/com/yolo/keyborad/model/vo/user/KeyboardUserInfoRespVO.java diff --git a/src/main/java/com/yolo/keyborad/config/SaTokenConfigure.java b/src/main/java/com/yolo/keyborad/config/SaTokenConfigure.java index 50c4577..fbe8909 100644 --- a/src/main/java/com/yolo/keyborad/config/SaTokenConfigure.java +++ b/src/main/java/com/yolo/keyborad/config/SaTokenConfigure.java @@ -73,7 +73,8 @@ public class SaTokenConfigure implements WebMvcConfigurer { "/character/listByTag", "/user/login", "/character/listByUser", - "/user/updateInfo" + "/user/updateInfo", + "/user/detail" }; } @Bean diff --git a/src/main/java/com/yolo/keyborad/controller/UserController.java b/src/main/java/com/yolo/keyborad/controller/UserController.java index 8c08682..196e6af 100644 --- a/src/main/java/com/yolo/keyborad/controller/UserController.java +++ b/src/main/java/com/yolo/keyborad/controller/UserController.java @@ -8,6 +8,7 @@ import com.yolo.keyborad.model.dto.AppleLoginReq; import com.yolo.keyborad.model.dto.user.KeyboardUserReq; import com.yolo.keyborad.model.dto.user.UserLoginDTO; import com.yolo.keyborad.model.entity.KeyboardUser; +import com.yolo.keyborad.model.vo.user.KeyboardUserInfoRespVO; import com.yolo.keyborad.model.vo.user.KeyboardUserRespVO; import com.yolo.keyborad.service.IAppleService; import com.yolo.keyborad.service.UserService; @@ -69,4 +70,12 @@ public class UserController { public BaseResponse update(@RequestBody KeyboardUserReq keyboardUserReq) { return ResultUtils.success(userService.updateUserInfo(keyboardUserReq)); } + + @GetMapping("/detail") + @Operation(summary = "获取用户详情", description = "获取用户详情接口") + public BaseResponse detail() { + long loginId = StpUtil.getLoginIdAsLong(); + KeyboardUser keyboardUser = userService.getById(loginId); + return ResultUtils.success(BeanUtil.copyProperties(keyboardUser, KeyboardUserInfoRespVO.class)); + } } \ No newline at end of file diff --git a/src/main/java/com/yolo/keyborad/model/vo/user/KeyboardUserInfoRespVO.java b/src/main/java/com/yolo/keyborad/model/vo/user/KeyboardUserInfoRespVO.java new file mode 100644 index 0000000..ae6883e --- /dev/null +++ b/src/main/java/com/yolo/keyborad/model/vo/user/KeyboardUserInfoRespVO.java @@ -0,0 +1,41 @@ +package com.yolo.keyborad.model.vo.user; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +/* +* @author: ziin +* @date: 2025/12/2 18:08 +*/ + +@Data +@Schema(description="用户信息") +public class KeyboardUserInfoRespVO { + + + @Schema(description="用户ID") + private Long uid; + + @Schema(description="用户昵称") + private String nickName; + + @Schema(description="性别") + private Integer gender; + + + @Schema(description="头像URL") + private String avatarUrl; + + /** + * 邮箱地址 + */ + @Schema(description="邮箱地址") + private String email; + + /** + * 邮箱是否验证 + */ + @Schema(description="邮箱是否验证") + private Boolean emailVerified; + +} \ No newline at end of file