ExamRoomController.java 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174
  1. package com.keao.edu.user.controller;
  2. import com.keao.edu.auth.api.client.SysUserFeignService;
  3. import com.keao.edu.auth.api.entity.SysUser;
  4. import com.keao.edu.common.controller.BaseController;
  5. import com.keao.edu.common.entity.HttpResponseResult;
  6. import com.keao.edu.common.page.PageInfo;
  7. import com.keao.edu.user.api.entity.ExamRoom;
  8. import com.keao.edu.user.dto.ExamRoomDto;
  9. import com.keao.edu.user.dto.ExamRoomListDto;
  10. import com.keao.edu.user.dto.ExamRoomStatisticsDto;
  11. import com.keao.edu.user.entity.Employee;
  12. import com.keao.edu.user.entity.Teacher;
  13. import com.keao.edu.user.page.ExamRoomListQueryInfo;
  14. import com.keao.edu.user.page.ExamRoomQueryInfo;
  15. import com.keao.edu.user.service.EmployeeService;
  16. import com.keao.edu.user.service.ExamRoomService;
  17. import com.keao.edu.user.service.TeacherService;
  18. import io.swagger.annotations.Api;
  19. import io.swagger.annotations.ApiOperation;
  20. import org.springframework.beans.factory.annotation.Autowired;
  21. import org.springframework.web.bind.annotation.*;
  22. import java.util.List;
  23. import java.util.Objects;
  24. @RestController
  25. @RequestMapping("examRoom")
  26. @Api(tags = "考场服务")
  27. public class ExamRoomController extends BaseController {
  28. @Autowired
  29. private ExamRoomService examRoomService;
  30. @Autowired
  31. private SysUserFeignService sysUserFeignService;
  32. @Autowired
  33. private EmployeeService employeeService;
  34. @Autowired
  35. private TeacherService teacherService;
  36. @ApiOperation("分页查询监考列表")
  37. @GetMapping(value = "/list")
  38. public HttpResponseResult<PageInfo<ExamRoomListDto>> getList(ExamRoomListQueryInfo queryInfo) {
  39. SysUser sysUser = sysUserFeignService.queryUserInfo();
  40. if(!sysUser.getIsSuperAdmin() && Objects.isNull(queryInfo.getOrganId())){
  41. Teacher teacher = teacherService.get(sysUser.getId());
  42. if(Objects.isNull(teacher)){
  43. return failed("用户信息异常");
  44. }
  45. queryInfo.setOrganId(teacher.getOrganId());
  46. }
  47. return succeed(examRoomService.queryExamRoomPage(queryInfo));
  48. }
  49. @ApiOperation("发送考试安排")
  50. @GetMapping(value = "/sendExamPlan")
  51. public HttpResponseResult sendExamPlan(Integer examId){
  52. SysUser sysUser = sysUserFeignService.queryUserInfo();
  53. Employee employee = employeeService.get(sysUser.getId());
  54. if(Objects.isNull(employee)){
  55. return failed("用户信息异常");
  56. }
  57. examRoomService.sendExamPlan(employee.getOrganId(), examId, sysUser.getId());
  58. return succeed();
  59. }
  60. @ApiOperation("获取考级项目教室列表")
  61. @GetMapping(value = "/queryExamRooms")
  62. public HttpResponseResult<PageInfo<ExamRoomDto>> queryExamRooms(ExamRoomQueryInfo queryInfo) {
  63. SysUser sysUser = sysUserFeignService.queryUserInfo();
  64. if(!sysUser.getIsSuperAdmin()&&Objects.isNull(queryInfo.getOrganId())){
  65. Employee employee = employeeService.get(sysUser.getId());
  66. if(Objects.isNull(employee)){
  67. return failed("用户信息异常");
  68. }
  69. queryInfo.setOrganId(employee.getOrganId());
  70. }
  71. return succeed(examRoomService.queryExamRooms(queryInfo));
  72. }
  73. @ApiOperation("更新考场")
  74. @PostMapping(value = "/update")
  75. public HttpResponseResult update(@RequestBody ExamRoom examRoom){
  76. SysUser sysUser = sysUserFeignService.queryUserInfo();
  77. Employee employee = employeeService.get(sysUser.getId());
  78. if(Objects.isNull(employee)){
  79. return failed("用户信息异常");
  80. }
  81. examRoom.setOrganId(employee.getOrganId());
  82. examRoomService.update(examRoom);
  83. return succeed();
  84. }
  85. @ApiOperation("创建教室")
  86. @PostMapping(value = "/createExamRoom")
  87. public HttpResponseResult createExamRoom(@RequestBody ExamRoom examRoom){
  88. SysUser sysUser = sysUserFeignService.queryUserInfo();
  89. Employee employee = employeeService.get(sysUser.getId());
  90. if(Objects.isNull(employee)){
  91. return failed("用户信息异常");
  92. }
  93. examRoom.setOrganId(employee.getOrganId());
  94. examRoomService.createExamRoom(examRoom);
  95. return succeed();
  96. }
  97. @ApiOperation("更新教室信息")
  98. @PostMapping(value = "/updateExamRoom")
  99. public HttpResponseResult<ExamRoom> updateExamRoom(@RequestBody ExamRoom examRoom){
  100. SysUser sysUser = sysUserFeignService.queryUserInfo();
  101. Employee employee = employeeService.get(sysUser.getId());
  102. if(Objects.isNull(employee)){
  103. return failed("用户信息异常");
  104. }
  105. examRoom.setOrganId(employee.getOrganId());
  106. return succeed(examRoomService.updateExamRoom(examRoom));
  107. }
  108. @ApiOperation("教室状态变更(关闭教室,开启教室)")
  109. @PostMapping(value = "/changeExamRoom")
  110. public HttpResponseResult changeExamRoom(Long examRoomId,Integer openFlag){
  111. examRoomService.changeExamRoom(examRoomId,openFlag);
  112. return succeed();
  113. }
  114. @ApiOperation("删除教室")
  115. @PostMapping(value = "/deleteExamRooms")
  116. public HttpResponseResult deleteExamRooms(String examRoomIds){
  117. SysUser sysUser = sysUserFeignService.queryUserInfo();
  118. Integer organId=null;
  119. if(!sysUser.getIsSuperAdmin()){
  120. Employee employee = employeeService.get(sysUser.getId());
  121. if(Objects.isNull(employee)){
  122. return failed("用户信息异常");
  123. }
  124. organId=employee.getOrganId();
  125. }
  126. examRoomService.deleteExamRooms(organId,examRoomIds);
  127. return succeed();
  128. }
  129. @ApiOperation("获取教室")
  130. @GetMapping(value = "/get")
  131. public HttpResponseResult<ExamRoom> getExamRoom(Long id){
  132. return succeed(examRoomService.get(id));
  133. }
  134. @ApiOperation("获取教室")
  135. @PostMapping(value = "/api/get")
  136. public ExamRoom getApiExamRoom(Long id){
  137. return examRoomService.get(id);
  138. }
  139. @ApiOperation("获取考场统计信息")
  140. @GetMapping(value = "/getExamRoomStatisticsInfo")
  141. public HttpResponseResult<ExamRoomStatisticsDto> getExamRoomStatisticsInfo(Long examId){
  142. SysUser sysUser = sysUserFeignService.queryUserInfo();
  143. Integer organId=null;
  144. if(!sysUser.getIsSuperAdmin()){
  145. Employee employee = employeeService.get(sysUser.getId());
  146. if(Objects.isNull(employee)){
  147. return failed("用户信息异常");
  148. }
  149. organId=employee.getOrganId();
  150. }
  151. return succeed(examRoomService.getExamRoomStatisticsInfo(organId, examId));
  152. }
  153. @ApiOperation("获取报名学员可加入教室列表")
  154. @GetMapping(value = "/getStudentEnableJoinRoom")
  155. public HttpResponseResult<List<ExamRoom>> getStudentEnableJoinRoom(Long registId){
  156. return succeed(examRoomService.getStudentEnableJoinRoom(registId));
  157. }
  158. }