UserController.java 3.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. package com.zswl.dataservice.controller.user;
  2. import com.zswl.dataservice.model.user.UpdateUserPassWordParam;
  3. import com.zswl.dataservice.model.user.UserInfoModel;
  4. import com.zswl.dataservice.model.user.UserUpdateParam;
  5. import com.zswl.dataservice.service.mqtt.DeviceInfoService;
  6. import com.zswl.dataservice.service.user.impl.UserServiceImpl;
  7. import com.zswl.dataservice.utils.result.ResultContent;
  8. import io.swagger.v3.oas.annotations.Operation;
  9. import io.swagger.v3.oas.annotations.Parameter;
  10. import io.swagger.v3.oas.annotations.enums.ParameterIn;
  11. import io.swagger.v3.oas.annotations.tags.Tag;
  12. import org.springframework.beans.factory.annotation.Autowired;
  13. import org.springframework.util.Assert;
  14. import org.springframework.validation.annotation.Validated;
  15. import org.springframework.web.bind.annotation.*;
  16. /**
  17. * 用户管理 服务
  18. *
  19. * @author TRX
  20. * @date 2024/3/21
  21. */
  22. @RequestMapping("/user/userInfo")
  23. @RestController
  24. @Validated
  25. @Tag(name = "用户管理")
  26. public class UserController {
  27. @Autowired
  28. DeviceInfoService deviceInfoService;
  29. @Autowired
  30. UserServiceImpl userService;
  31. @Parameter(in = ParameterIn.HEADER, name = "accessToken", required = false, description = "accessToken")
  32. @Operation(summary = "修改当前用户密码", description = "")
  33. @RequestMapping(value = "updateUserPassWord", method = {RequestMethod.POST})
  34. public ResultContent updateUserPassWord(@RequestBody UpdateUserPassWordParam param) {
  35. Assert.hasText(param.getOldPass(), "原密码不能为空");
  36. Assert.hasText(param.getPassWord(), "密码不能为空");
  37. Assert.hasText(param.getConfirmPass(), "验证密码不能为空");
  38. return userService.updateUserPassWord(param);
  39. }
  40. @Parameter(in = ParameterIn.HEADER, name = "accessToken", required = false, description = "accessToken")
  41. @Operation(summary = "得到当前用户信息", description = "")
  42. @RequestMapping(value = "getCurrentUserInfo", method = {RequestMethod.GET})
  43. public ResultContent<UserInfoModel> getCurrentUserInfo() {
  44. return userService.getCurrentUserInfo();
  45. }
  46. @Parameter(in = ParameterIn.HEADER, name = "accessToken", required = false, description = "accessToken")
  47. @Operation(summary = "重置用户密码", description = "")
  48. @RequestMapping(value = "resetUserPassWord", method = {RequestMethod.GET})
  49. public ResultContent<UserInfoModel> resetUserPassWord(
  50. @Parameter(name = "id", description = "用户id", example = "")
  51. @RequestParam("id") String id) {
  52. return userService.resetUserPassWord(id);
  53. }
  54. @Parameter(in = ParameterIn.HEADER, name = "accessToken", required = false, description = "accessToken")
  55. @Operation(summary = "修改当前用户基本信息", description = "")
  56. @RequestMapping(value = "updateUserInfo", method = {RequestMethod.POST})
  57. public ResultContent<UserInfoModel> updateUserInfo(@RequestBody UserUpdateParam param) {
  58. Assert.hasText(param.getUserName(), "userName不能为空");
  59. return userService.updateUserInfo(param);
  60. }
  61. @Parameter(in = ParameterIn.HEADER, name = "accessToken", required = false, description = "accessToken")
  62. @Operation(summary = "修改当前用户头像", description = "")
  63. @RequestMapping(value = "updateUserHead", method = {RequestMethod.GET})
  64. public ResultContent<UserInfoModel> updateUserHead(
  65. @Parameter(name = "url", description = "头像地址", example = "")
  66. @RequestParam("url") String url) {
  67. return userService.updateUserHead(url);
  68. }
  69. }