StudentController.java 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. package com.ruoyi.sim.controller;
  2. import com.ruoyi.common.annotation.Log;
  3. import com.ruoyi.common.core.controller.BaseController;
  4. import com.ruoyi.common.core.domain.AjaxResult;
  5. import com.ruoyi.common.core.domain.entity.SysUser;
  6. import com.ruoyi.common.core.page.TableDataInfo;
  7. import com.ruoyi.common.enums.BusinessType;
  8. import com.ruoyi.common.utils.SecurityUtils;
  9. import com.ruoyi.common.utils.StringUtils;
  10. import com.ruoyi.sim.service.impl.Consts;
  11. import com.ruoyi.sim.service.impl.StudentService;
  12. import com.ruoyi.system.service.ISysDeptService;
  13. import com.ruoyi.system.service.ISysPostService;
  14. import com.ruoyi.system.service.ISysRoleService;
  15. import com.ruoyi.system.service.ISysUserService;
  16. import io.swagger.annotations.Api;
  17. import io.swagger.annotations.ApiOperation;
  18. import org.apache.commons.lang3.ArrayUtils;
  19. import org.springframework.beans.factory.annotation.Autowired;
  20. import org.springframework.security.access.prepost.PreAuthorize;
  21. import org.springframework.validation.annotation.Validated;
  22. import org.springframework.web.bind.annotation.*;
  23. import java.util.List;
  24. @Api("学生Controller")
  25. @RestController
  26. @RequestMapping("/sim/student")
  27. public class StudentController extends BaseController {
  28. @Autowired
  29. private ISysUserService userService;
  30. @Autowired
  31. private ISysRoleService roleService;
  32. @Autowired
  33. private ISysDeptService deptService;
  34. @Autowired
  35. private ISysPostService postService;
  36. @Autowired
  37. private StudentService extSysUserService;
  38. /**
  39. * copy
  40. *
  41. * @param user
  42. * @return
  43. */
  44. // @PreAuthorize("@ss.hasPermi('system:user:list')")
  45. @GetMapping("/list")
  46. @ApiOperation("查询学生列表")
  47. public TableDataInfo list() {
  48. // startPage();
  49. List<SysUser> list = extSysUserService.selectStudentList();
  50. return getDataTable(list);
  51. }
  52. /**
  53. * 新增学生
  54. */
  55. // @PreAuthorize("@ss.hasPermi('system:user:add')")
  56. // @Log(title = "用户管理", businessType = BusinessType.INSERT)
  57. @PostMapping
  58. @ApiOperation("新增学生")
  59. public AjaxResult add(@Validated @RequestBody SysUser user) {
  60. deptService.checkDeptDataScope(user.getDeptId());
  61. roleService.checkRoleDataScope(user.getRoleIds());
  62. if (!userService.checkUserNameUnique(user)) {
  63. return error("新增用户'" + user.getUserName() + "'失败,登录账号已存在");
  64. } else if (StringUtils.isNotEmpty(user.getPhonenumber()) && !userService.checkPhoneUnique(user)) {
  65. return error("新增用户'" + user.getUserName() + "'失败,手机号码已存在");
  66. } else if (StringUtils.isNotEmpty(user.getEmail()) && !userService.checkEmailUnique(user)) {
  67. return error("新增用户'" + user.getUserName() + "'失败,邮箱账号已存在");
  68. }
  69. user.setCreateBy(getUsername());
  70. user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
  71. AjaxResult tempAjax = toAjax(userService.insertUser(user));
  72. // -------------------------------- --------------------------------
  73. // 自动添加学生权限
  74. SysUser find = userService.selectUserByUserName(user.getUserName());
  75. logger.info(String.valueOf(find));
  76. if (find != null) {
  77. // roleService.insertAuthUsers(Consts.ROLE_ID_STUDENT, new Long[]{userId});
  78. userService.insertUserAuth(find.getUserId(), new Long[]{Consts.ROLE_ID_STUDENT});
  79. }
  80. return tempAjax;
  81. }
  82. /**
  83. * 修改学生
  84. */
  85. // @PreAuthorize("@ss.hasPermi('system:user:edit')")
  86. // @Log(title = "用户管理", businessType = BusinessType.UPDATE)
  87. @PutMapping
  88. @ApiOperation("修改学生")
  89. public AjaxResult edit(@Validated @RequestBody SysUser user) {
  90. userService.checkUserAllowed(user);
  91. userService.checkUserDataScope(user.getUserId());
  92. deptService.checkDeptDataScope(user.getDeptId());
  93. roleService.checkRoleDataScope(user.getRoleIds());
  94. if (!userService.checkUserNameUnique(user)) {
  95. return error("修改用户'" + user.getUserName() + "'失败,登录账号已存在");
  96. } else if (StringUtils.isNotEmpty(user.getPhonenumber()) && !userService.checkPhoneUnique(user)) {
  97. return error("修改用户'" + user.getUserName() + "'失败,手机号码已存在");
  98. } else if (StringUtils.isNotEmpty(user.getEmail()) && !userService.checkEmailUnique(user)) {
  99. return error("修改用户'" + user.getUserName() + "'失败,邮箱账号已存在");
  100. }
  101. user.setUpdateBy(getUsername());
  102. AjaxResult tempAjax = toAjax(userService.updateUser(user));
  103. // -------------------------------- --------------------------------
  104. // todo:不允许修改权限。
  105. return tempAjax;
  106. }
  107. /**
  108. * 删除学生
  109. */
  110. // @PreAuthorize("@ss.hasPermi('system:user:remove')")
  111. // @Log(title = "用户管理", businessType = BusinessType.DELETE)
  112. @DeleteMapping("/{userIds}")
  113. @ApiOperation("删除学生")
  114. public AjaxResult remove(@PathVariable Long[] userIds)
  115. {
  116. if (ArrayUtils.contains(userIds, getUserId()))
  117. {
  118. return error("当前用户不能删除");
  119. }
  120. return toAjax(userService.deleteUserByIds(userIds));
  121. }
  122. }