UserController.java 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  1. package com.jkcredit.invoice.controller.user;
  2. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  3. import com.jkcredit.invoice.annotation.LoginRequired;
  4. import com.jkcredit.invoice.annotation.annotationdes.AuthenticationInterceptor;
  5. import com.jkcredit.invoice.model.entity.user.User;
  6. import com.jkcredit.invoice.service.user.UserService;
  7. import com.jkcredit.invoice.util.MD5Util;
  8. import com.jkcredit.invoice.util.RespR;
  9. import io.swagger.annotations.Api;
  10. import io.swagger.annotations.ApiImplicitParam;
  11. import io.swagger.annotations.ApiImplicitParams;
  12. import io.swagger.annotations.ApiOperation;
  13. import org.springframework.beans.factory.annotation.Autowired;
  14. import org.springframework.web.bind.annotation.*;
  15. /**
  16. * @description:
  17. * @author: sunzhaoning
  18. * @create: 2019-05-29 09:14
  19. * @version: V1.0
  20. **/
  21. @Api(tags = "用户操作")
  22. @RestController
  23. @RequestMapping(value = {"/user"})
  24. public class UserController {
  25. @Autowired
  26. private UserService userService;
  27. /**
  28. * 通过ID查询用户信息
  29. *
  30. * @param id ID
  31. * @return 用户信息
  32. */
  33. @GetMapping("/{id}")
  34. @ApiOperation(value="通过ID查询用户信息", notes="通过ID查询用户信息")
  35. @LoginRequired
  36. @ApiImplicitParams({
  37. @ApiImplicitParam(name = "id", value = "用id", required = true, dataType = "Integer")
  38. })
  39. public RespR user(@PathVariable Integer id) {
  40. return new RespR<>(userService.selectUserById(id));
  41. }
  42. /**
  43. * 删除用户信息
  44. *
  45. * @param id ID
  46. * @return R
  47. */
  48. @DeleteMapping("/{id}")
  49. @ApiOperation(value="根据用户名id删除用户信息", notes="根据用户名id删除用户信息")
  50. @LoginRequired
  51. public RespR userDel(@PathVariable Integer id) {
  52. User sysUser = userService.getById(id);
  53. return new RespR<>(userService.deleteUserById(sysUser));
  54. }
  55. /**
  56. * 添加用户
  57. *
  58. * @param user 用户信息
  59. * @return success/false
  60. */
  61. @PostMapping
  62. @ApiOperation(value="新增用户详细信息", notes="新增用户详细信息")
  63. @LoginRequired
  64. public RespR user(@RequestBody User user) {
  65. user.setPassword(MD5Util.encrypt(user.getPassword()));
  66. User user1 = userService.selectUserByUserName(user.getUserName());
  67. if(null != user1){
  68. return new RespR<>(Boolean.FALSE, "该用户已存在");
  69. }
  70. return new RespR<>(userService.saveUser(user));
  71. }
  72. /**
  73. * 更新用户信息
  74. *
  75. * @param user 用户信息
  76. * @return R
  77. */
  78. @PostMapping("/updateUser")
  79. @ApiOperation(value="更新用户信息", notes="更新用户信息")
  80. @LoginRequired
  81. public RespR updateUser(@RequestBody User user) {
  82. if(user.getPassword()!=null){
  83. user.setPassword(MD5Util.encrypt(user.getPassword()));
  84. }
  85. return new RespR<>(userService.updateUserInfo(user));
  86. }
  87. /**
  88. * 分页查询用户
  89. *
  90. * @param page 参数集
  91. * @param user 查询参数列表
  92. * @return 用户集合
  93. */
  94. @PostMapping("/page")
  95. @ApiOperation(value="分页查询用户", notes="分页查询用户")
  96. @LoginRequired(role = AuthenticationInterceptor.AUTH_ADMIN)
  97. public RespR getUserPage(Page page, User user) {
  98. return new RespR<>(userService.getUserWithRolePage(page, user));
  99. }
  100. /**
  101. * 重置密码
  102. *
  103. * @param user user
  104. * @return success/false
  105. */
  106. @PutMapping("/restPassword")
  107. @ApiOperation(value="重置密码", notes="重置密码")
  108. @LoginRequired
  109. public RespR updateUserInfoPassWord(@RequestBody User user) {
  110. user.setPassword(MD5Util.encrypt(user.getPassword()));
  111. return userService.restPassword(user);
  112. }
  113. /**
  114. * 修改锁定状态
  115. *
  116. * @param user user
  117. * @return success/false
  118. */
  119. @PutMapping("/lock")
  120. @ApiOperation(value="修改锁定状态", notes="修改锁定状态")
  121. @LoginRequired
  122. public RespR updateLock(@RequestBody User user) {
  123. return userService.updateLock(user);
  124. }
  125. }