UserController.java 3.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. package cn.com.qmth.mps.controller;
  2. import java.util.List;
  3. import org.apache.commons.collections4.CollectionUtils;
  4. import org.springframework.beans.factory.annotation.Autowired;
  5. import org.springframework.web.bind.annotation.PostMapping;
  6. import org.springframework.web.bind.annotation.RequestMapping;
  7. import org.springframework.web.bind.annotation.RequestMethod;
  8. import org.springframework.web.bind.annotation.RequestParam;
  9. import org.springframework.web.bind.annotation.RestController;
  10. import org.springframework.web.multipart.MultipartFile;
  11. import com.qmth.boot.api.annotation.Aac;
  12. import com.qmth.boot.api.annotation.BOOL;
  13. import com.qmth.boot.api.constant.ApiConstant;
  14. import com.qmth.boot.core.collection.PageResult;
  15. import cn.com.qmth.mps.bean.User;
  16. import cn.com.qmth.mps.bean.UserImportMsg;
  17. import cn.com.qmth.mps.service.UserService;
  18. import cn.com.qmth.mps.util.ResouceUtil;
  19. import cn.com.qmth.mps.vo.user.UserDomain;
  20. import cn.com.qmth.mps.vo.user.UserQuery;
  21. import cn.com.qmth.mps.vo.user.UserVo;
  22. import io.swagger.annotations.Api;
  23. import io.swagger.annotations.ApiOperation;
  24. @RestController
  25. @Api(tags = "用户接口")
  26. @RequestMapping(ApiConstant.DEFAULT_URI_PREFIX + "/user")
  27. @Aac(strict = BOOL.FALSE, auth = BOOL.TRUE)
  28. public class UserController extends BaseController {
  29. @Autowired
  30. private UserService userService;
  31. @ApiOperation(value = "新增/修改")
  32. @RequestMapping(value = "/save", method = RequestMethod.POST)
  33. public void save(UserDomain domain) {
  34. userService.saveUser(domain, getAccessUser());
  35. }
  36. @PostMapping("import")
  37. @ApiOperation(value = "导入")
  38. public UserImportMsg importUser(@RequestParam Long schoolId, @RequestParam MultipartFile file) {
  39. User user = getAccessUser();
  40. List<String> failRecords = userService.importUser(schoolId,user, file);
  41. UserImportMsg msg = new UserImportMsg();
  42. msg.setHasError(CollectionUtils.isNotEmpty(failRecords));
  43. msg.setErrMsg(failRecords);
  44. return msg;
  45. }
  46. @ApiOperation(value = "下载导入模板")
  47. @PostMapping("template")
  48. public void getImportTemplate() {
  49. exportFile("用户导入模板.xlsx", ResouceUtil.getStream("importtemplates/userImport.xlsx"));
  50. }
  51. @ApiOperation(value = "获取分页")
  52. @RequestMapping(value = "/page", method = RequestMethod.POST)
  53. public PageResult<UserVo> page(UserQuery query) {
  54. return userService.page(query,getAccessUser());
  55. }
  56. @ApiOperation(value = "获取信息")
  57. @RequestMapping(value = "/info", method = RequestMethod.POST)
  58. public UserVo info(@RequestParam Long id) {
  59. return userService.info(id);
  60. }
  61. @ApiOperation(value = "启用/禁用")
  62. @RequestMapping(value = "/toggle", method = RequestMethod.POST)
  63. public void toggle(@RequestParam List<Long> ids, @RequestParam Boolean enable) {
  64. userService.toggle(ids,enable);
  65. }
  66. @ApiOperation(value = "重置用户密码")
  67. @PostMapping("reset-passwd")
  68. public void resetPass(@RequestParam Long schoolId,@RequestParam List<Long> ids) {
  69. userService.resetPass(schoolId,ids,getAccessUser());
  70. }
  71. @ApiOperation(value = "修改用户密码")
  72. @PostMapping("password")
  73. public void updatePass(@RequestParam String password) {
  74. userService.updatePass(password,getAccessUser());
  75. }
  76. }