浏览代码

feat:修改登陆和注册接口接收的实体类,并添加swagger文档说明信息

yang yi 11 月之前
父节点
当前提交
a8ec3e4f82

+ 16 - 3
src/main/java/space/anyi/openAPI/controller/UserController.java

@@ -1,5 +1,7 @@
 package space.anyi.openAPI.controller;
 
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.security.access.prepost.PreAuthorize;
@@ -10,6 +12,8 @@ import space.anyi.openAPI.model.PageVO;
 import space.anyi.openAPI.model.ResponseResult;
 import space.anyi.openAPI.model.user.LoginUserDetails;
 import space.anyi.openAPI.model.user.User;
+import space.anyi.openAPI.model.user.dto.RequestLoginUser;
+import space.anyi.openAPI.model.user.dto.RequestRegisterUser;
 import space.anyi.openAPI.model.user.dto.UserDTO;
 import space.anyi.openAPI.model.user.vo.UserVO;
 import space.anyi.openAPI.service.UserService;
@@ -37,12 +41,14 @@ public class UserController {
     private PasswordEncoder passwordEncoder;
 
     @PostMapping("/login")
-    public ResponseResult login(@RequestBody User user){
+    public ResponseResult login(@RequestBody RequestLoginUser requestLoginUser){
+        User user = BeanCopyUtil.copyBean(requestLoginUser, User.class);
         return userService.login(user);
     }
 
     @PostMapping("/register")
-    public ResponseResult resister(@RequestBody User user){
+    public ResponseResult resister(@RequestBody RequestRegisterUser requestRegisterUser){
+        User user = BeanCopyUtil.copyBean(requestRegisterUser, User.class);
         return userService.register(user);
     }
 
@@ -58,10 +64,17 @@ public class UserController {
         System.out.println("user = " + user);
         return ResponseResult.okResult(user);
     }
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "currentPage",value = "页码",required = true,defaultValue = "1"),
+            @ApiImplicitParam(name = "pageSize",value = "页面大小",required = true,defaultValue = "10"),
+            @ApiImplicitParam(name = "userName",value = "用户名称",required = false),
+            @ApiImplicitParam(name = "userAccount",value = "用户账号",required = false),
+            @ApiImplicitParam(name = "userRole",value = "用户角色",required = false)
+    })
     @PreAuthorize("@ps.hasRole('管理员')")
     @GetMapping("/page")
     @ResponseBody
-    public ResponseResult page(Integer currentPage,Integer pageSize,String userName,String userAccount,String userRole){
+    public ResponseResult page(Integer currentPage, Integer pageSize, String userName, String userAccount, String userRole){
         log.info("currentPage:{},pageSize:{},userName:{},userAccount:{}",currentPage,pageSize,userName,userAccount);
         PageVO page = userService.pageByUsernameAndUseraccount(currentPage, pageSize, userName, userAccount,userRole);
         return ResponseResult.okResult(page);

+ 6 - 0
src/main/java/space/anyi/openAPI/model/ResponseResult.java

@@ -1,6 +1,8 @@
 package space.anyi.openAPI.model;
 
 import com.fasterxml.jackson.annotation.JsonInclude;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
 
 import java.io.Serializable;
 
@@ -11,10 +13,14 @@ import java.io.Serializable;
  * @Data:2023/12/14 17:48
  * @Description: 统一响应实体
  */
+@ApiModel("统一响应实体")
 @JsonInclude(JsonInclude.Include.NON_NULL)
 public class ResponseResult<T> implements Serializable {
+    @ApiModelProperty("响应码")
     private Integer code;
+    @ApiModelProperty("响应消息")
     private String msg;
+    @ApiModelProperty("响应数据")
     private T data;
 
     public ResponseResult() {

+ 8 - 0
src/main/java/space/anyi/openAPI/model/user/UserInfo.java

@@ -1,6 +1,9 @@
 package space.anyi.openAPI.model.user;
 
 
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
 /**
  * @ProjectName: BI
  * @FileName: UserInfo
@@ -8,28 +11,33 @@ package space.anyi.openAPI.model.user;
  * @Data:2024/11/28 20:36
  * @Description:
  */
+@ApiModel(description = "用户信息")
 public class UserInfo {
 
 
     /**
      * 用户账号
      */
+    @ApiModelProperty(value = "用户账号")
     private String userAccount;
 
 
     /**
      * 用户名称
      */
+    @ApiModelProperty(value = "用户名称")
     private String userName;
 
     /**
      * 用户头像
      */
+    @ApiModelProperty(value = "用户头像")
     private String userAvatar;
 
     /**
      * 用户角色
      */
+    @ApiModelProperty(value = "用户角色")
     private String userRole;
 
     public UserInfo(String userAccount, String userName, String userAvatar, String userRole) {

+ 28 - 0
src/main/java/space/anyi/openAPI/model/user/dto/RequestLoginUser.java

@@ -0,0 +1,28 @@
+package space.anyi.openAPI.model.user.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @ProjectName: yangyi-open-api-platform
+ * @FileName: RequestLoginUser
+ * @Author: 杨逸
+ * @Data:2025/10/15 19:40
+ * @Description:
+ */
+@Data
+@ApiModel("用户登陆实体类")
+public class RequestLoginUser {
+    /**
+     * 用户账号
+     */
+    @ApiModelProperty("用户账号")
+    private String userAccount;
+
+    /**
+     * 用户密码
+     */
+    @ApiModelProperty("用户密码")
+    private String userPassword;
+}

+ 49 - 0
src/main/java/space/anyi/openAPI/model/user/dto/RequestRegisterUser.java

@@ -0,0 +1,49 @@
+package space.anyi.openAPI.model.user.dto;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @ProjectName: yangyi-open-api-platform
+ * @FileName: RequestRegisterUser
+ * @Author: 杨逸
+ * @Data:2025/10/15 19:52
+ * @Description:
+ */
+@Data
+@ApiModel(value = "用户注册实体类1",description = "用户注册实体类2")
+public class RequestRegisterUser {
+
+    /**
+     * 用户账号
+     */
+    @ApiModelProperty(value = "用户账号",required = true)
+    private String userAccount;
+
+    /**
+     * 用户密码
+     */
+    @ApiModelProperty(value = "用户密码",required = true)
+    private String userPassword;
+
+    /**
+     * 用户名称
+     */
+    @ApiModelProperty(value = "用户名称",required = true)
+    private String userName;
+
+    /**
+     * 用户头像
+     */
+    @ApiModelProperty(value = "用户头像",required = false)
+    private String userAvatar;
+
+    /**
+     * 用户角色
+     */
+    @ApiModelProperty(value = "用户角色",required = false,example = "用户")
+    private String userRole = "用户";
+}