wangliang 4 jaren geleden
bovenliggende
commit
23ec486e37

+ 9 - 1
themis-admin/src/main/java/com/qmth/themis/admin/api/TBExamInvigilateUserController.java

@@ -1,6 +1,7 @@
 package com.qmth.themis.admin.api;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.qmth.themis.business.annotation.ApiJsonObject;
 import com.qmth.themis.business.annotation.ApiJsonProperty;
@@ -104,8 +105,8 @@ public class TBExamInvigilateUserController {
                 throw new BusinessException(ExceptionResultEnum.ERROR.getStatusCode(),
                         ExceptionResultEnum.ERROR.getCode(), "一个考场最多设置3名监考员");
             }
+            TBOrg tbOrg = (TBOrg) ServletUtil.getRequestOrg();
             if (userIds.size() > 0) {
-                TBOrg tbOrg = (TBOrg) ServletUtil.getRequestOrg();
                 QueryWrapper<TBExamInvigilateUser> tbExamInvigilateUserQueryWrapper = new QueryWrapper<>();
                 tbExamInvigilateUserQueryWrapper.lambda().eq(TBExamInvigilateUser::getRoomCode, roomCode)
                         .eq(TBExamInvigilateUser::getExamId, examId);
@@ -125,6 +126,13 @@ public class TBExamInvigilateUserController {
                     tbExamInvigilateUserList.add(tbExamInvigilateUser);
                 }
                 tbExamInvigilateUserService.saveBatch(tbExamInvigilateUserList);
+            } else {
+                UpdateWrapper<TBExamInvigilateUser> tbExamInvigilateUserUpdateWrapper = new UpdateWrapper<>();
+                tbExamInvigilateUserUpdateWrapper.lambda().set(TBExamInvigilateUser::getUserId, null)
+                        .eq(TBExamInvigilateUser::getRoomCode, roomCode)
+                        .eq(TBExamInvigilateUser::getExamId, examId)
+                        .eq(TBExamInvigilateUser::getOrgId, tbOrg.getId());
+                tbExamInvigilateUserService.update(tbExamInvigilateUserUpdateWrapper);
             }
         } catch (Exception e) {
             log.error("请求出错", e);

+ 51 - 51
themis-admin/src/main/java/com/qmth/themis/admin/api/TEExamStudentController.java

@@ -90,15 +90,15 @@ public class TEExamStudentController {
     @ApiOperation(value = "考生导出")
     @RequestMapping(value = "/export", method = RequestMethod.POST)
     public Result export(@ApiParam(value = "考试批次id", required = true) @RequestParam Long examId,
-            @ApiParam(value = "考试场次id", required = false) @RequestParam(required = false) Long activityId,
-            @ApiParam(value = "证件号", required = false) @RequestParam(required = false) String identity,
-            @ApiParam(value = "姓名", required = false) @RequestParam(required = false) String name,
-            @ApiParam(value = "考场代码", required = false) @RequestParam(required = false) String roomCode,
-            @ApiParam(value = "科目代码", required = false) @RequestParam(required = false) String courseCode,
-            @ApiParam(value = "年级", required = false) @RequestParam(required = false) String grade,
-            @ApiParam(value = "是否启用", required = false) @RequestParam(required = false) Integer enable,
-            @ApiParam(value = "教学班级", required = false) @RequestParam(required = false) String classNo,
-            @ApiParam(value = "底照是否上传", required = false) @RequestParam(required = false) Integer hasPhoto)
+                         @ApiParam(value = "考试场次id", required = false) @RequestParam(required = false) Long activityId,
+                         @ApiParam(value = "证件号", required = false) @RequestParam(required = false) String identity,
+                         @ApiParam(value = "姓名", required = false) @RequestParam(required = false) String name,
+                         @ApiParam(value = "考场代码", required = false) @RequestParam(required = false) String roomCode,
+                         @ApiParam(value = "科目代码", required = false) @RequestParam(required = false) String courseCode,
+                         @ApiParam(value = "年级", required = false) @RequestParam(required = false) String grade,
+                         @ApiParam(value = "是否启用", required = false) @RequestParam(required = false) Integer enable,
+                         @ApiParam(value = "教学班级", required = false) @RequestParam(required = false) String classNo,
+                         @ApiParam(value = "底照是否上传", required = false) @RequestParam(required = false) Integer hasPhoto)
             throws Exception {
         TBTaskHistory tbTaskHistory = null;
         Map<String, Object> transMap = new HashMap<String, Object>();
@@ -133,19 +133,19 @@ public class TEExamStudentController {
 
     @ApiOperation(value = "考生查询接口")
     @RequestMapping(value = "/query", method = RequestMethod.POST)
-    @ApiResponses({ @ApiResponse(code = 200, message = "考生信息", response = TEExamStudentDto.class) })
+    @ApiResponses({@ApiResponse(code = 200, message = "考生信息", response = TEExamStudentDto.class)})
     public Result query(@ApiParam(value = "考试批次id", required = true) @RequestParam Long examId,
-            @ApiParam(value = "考试场次id", required = false) @RequestParam(required = false) Long activityId,
-            @ApiParam(value = "证件号", required = false) @RequestParam(required = false) String identity,
-            @ApiParam(value = "姓名", required = false) @RequestParam(required = false) String name,
-            @ApiParam(value = "考场代码", required = false) @RequestParam(required = false) String roomCode,
-            @ApiParam(value = "科目代码", required = false) @RequestParam(required = false) String courseCode,
-            @ApiParam(value = "年级", required = false) @RequestParam(required = false) String grade,
-            @ApiParam(value = "是否启用", required = false) @RequestParam(required = false) Integer enable,
-            @ApiParam(value = "教学班级", required = false) @RequestParam(required = false) String classNo,
-            @ApiParam(value = "底照是否上传", required = false) @RequestParam(required = false) Integer hasPhoto,
-            @ApiParam(value = "分页页码", required = true) @RequestParam int pageNumber,
-            @ApiParam(value = "分页数", required = true) @RequestParam int pageSize) {
+                        @ApiParam(value = "考试场次id", required = false) @RequestParam(required = false) Long activityId,
+                        @ApiParam(value = "证件号", required = false) @RequestParam(required = false) String identity,
+                        @ApiParam(value = "姓名", required = false) @RequestParam(required = false) String name,
+                        @ApiParam(value = "考场代码", required = false) @RequestParam(required = false) String roomCode,
+                        @ApiParam(value = "科目代码", required = false) @RequestParam(required = false) String courseCode,
+                        @ApiParam(value = "年级", required = false) @RequestParam(required = false) String grade,
+                        @ApiParam(value = "是否启用", required = false) @RequestParam(required = false) Integer enable,
+                        @ApiParam(value = "教学班级", required = false) @RequestParam(required = false) String classNo,
+                        @ApiParam(value = "底照是否上传", required = false) @RequestParam(required = false) Integer hasPhoto,
+                        @ApiParam(value = "分页页码", required = true) @RequestParam int pageNumber,
+                        @ApiParam(value = "分页数", required = true) @RequestParam int pageSize) {
         if (Objects.isNull(examId) || Objects.equals(examId, "")) {
             throw new BusinessException(ExceptionResultEnum.EXAM_ID_IS_NULL);
         }
@@ -165,11 +165,11 @@ public class TEExamStudentController {
 
     @ApiOperation(value = "考生停用/启用接口")
     @RequestMapping(value = "/toggle", method = RequestMethod.POST)
-    @ApiResponses({ @ApiResponse(code = 200, message = "{\"success\":true}", response = Result.class) })
+    @ApiResponses({@ApiResponse(code = 200, message = "{\"success\":true}", response = Result.class)})
     @Transactional
     public Result examStudentToggle(@ApiJsonObject(name = "examStudentToggle", value = {
             @ApiJsonProperty(key = "id", type = "long", example = "1", description = "考生ID"),
-            @ApiJsonProperty(key = "enable", type = "int", example = "1", description = "是否启用") }) @ApiParam(value = "考生信息", required = true) @RequestBody List<Map<String, Object>> mapParameter) {
+            @ApiJsonProperty(key = "enable", type = "int", example = "1", description = "是否启用")}) @ApiParam(value = "考生信息", required = true) @RequestBody List<Map<String, Object>> mapParameter) {
         if (Objects.isNull(mapParameter) || mapParameter.size() == 0) {
             throw new BusinessException(ExceptionResultEnum.EXAM_STUDENT_INFO_IS_NULL);
         }
@@ -194,7 +194,7 @@ public class TEExamStudentController {
 
     @ApiOperation(value = "考生修改接口")
     @RequestMapping(value = "/save", method = RequestMethod.POST)
-    @ApiResponses({ @ApiResponse(code = 200, message = "{\"success\":true}", response = Result.class) })
+    @ApiResponses({@ApiResponse(code = 200, message = "{\"success\":true}", response = Result.class)})
     @Transactional
     public Result save(@ApiParam(value = "考生信息", required = true) @RequestBody List<TEExamStudent> teExamStudentList) {
         if (Objects.isNull(teExamStudentList) || teExamStudentList.size() == 0) {
@@ -239,15 +239,15 @@ public class TEExamStudentController {
             if (Objects.nonNull(roomCodeQueryDtoList)) {
                 Map<String, RoomCodeQueryDto> roomCodeQueryDtoMap = roomCodeQueryDtoList.stream().collect(
                         Collectors.toMap(RoomCodeQueryDto::getRoomCode, Function.identity(), (dto1, dto2) -> dto1));
-                String roomName = roomCodeQueryDtoMap.get(s.getRoomCode()).getRoomName();
-                if (Objects.isNull(roomName)) {
-                    throw new BusinessException("考场不存在");
+                if (Objects.nonNull(s.getRoomCode())) {
+                    String roomName = roomCodeQueryDtoMap.get(s.getRoomCode()).getRoomName();
+                    if (Objects.isNull(roomName)) {
+                        throw new BusinessException("考场不存在");
+                    }
+                    s.setRoomName(roomCodeQueryDtoMap.get(s.getRoomCode()).getRoomName());
                 }
-                s.setRoomName(roomCodeQueryDtoMap.get(s.getRoomCode()).getRoomName());
-            }
-            if (s.getAlreadyExamCount() == null) {
-                s.setAlreadyExamCount(0);
             }
+            s.setAlreadyExamCount(Objects.isNull(s.getAlreadyExamCount()) ? 0 : s.getAlreadyExamCount());
             teExamStudentService.saveOrUpdate(s);
         });
         for (TEExamStudent es : teExamStudentList) {
@@ -258,7 +258,7 @@ public class TEExamStudentController {
 
     @ApiOperation(value = "考生删除接口")
     @RequestMapping(value = "/delete", method = RequestMethod.POST)
-    @ApiResponses({ @ApiResponse(code = 200, message = "{\"success\":true}", response = Result.class) })
+    @ApiResponses({@ApiResponse(code = 200, message = "{\"success\":true}", response = Result.class)})
     @Transactional
     public Result delete(@ApiParam(value = "考生id", required = true) @RequestBody List<Long> ids) {
         if (Objects.isNull(ids) || ids.size() == 0) {
@@ -274,9 +274,9 @@ public class TEExamStudentController {
     @ApiOperation(value = "考生导入接口")
     @RequestMapping(value = "/import", method = RequestMethod.POST)
     @Transactional
-    @ApiResponses({ @ApiResponse(code = 200, message = "{\"taskId\":0}", response = Result.class) })
+    @ApiResponses({@ApiResponse(code = 200, message = "{\"taskId\":0}", response = Result.class)})
     public Result importData(@ApiParam(value = "上传文件", required = true) @RequestParam MultipartFile file,
-            @ApiParam(value = "考试批次id", required = true) @RequestParam Long examId) throws IOException {
+                             @ApiParam(value = "考试批次id", required = true) @RequestParam Long examId) throws IOException {
         if (Objects.isNull(file) || Objects.equals(file, "")) {
             throw new BusinessException(ExceptionResultEnum.ATTACHMENT_IS_NULL);
         }
@@ -359,14 +359,14 @@ public class TEExamStudentController {
 
     @ApiOperation(value = "成绩查询接口")
     @RequestMapping(value = "/mark/result", method = RequestMethod.POST)
-    @ApiResponses({ @ApiResponse(code = 200, message = "考试批次信息", response = MarkResultDto.class) })
+    @ApiResponses({@ApiResponse(code = 200, message = "考试批次信息", response = MarkResultDto.class)})
     public Result markResult(@ApiParam(value = "考试批次id", required = true) @RequestParam Long examId,
-            @ApiParam(value = "考试场次id", required = false) @RequestParam(required = false) Long activityId,
-            @ApiParam(value = "证件号", required = false) @RequestParam(required = false) String identity,
-            @ApiParam(value = "姓名", required = false) @RequestParam(required = false) String name,
-            @ApiParam(value = "科目代码", required = false) @RequestParam(required = false) String courseCode,
-            @ApiParam(value = "分页页码", required = true) @RequestParam int pageNumber,
-            @ApiParam(value = "分页数", required = true) @RequestParam int pageSize) {
+                             @ApiParam(value = "考试场次id", required = false) @RequestParam(required = false) Long activityId,
+                             @ApiParam(value = "证件号", required = false) @RequestParam(required = false) String identity,
+                             @ApiParam(value = "姓名", required = false) @RequestParam(required = false) String name,
+                             @ApiParam(value = "科目代码", required = false) @RequestParam(required = false) String courseCode,
+                             @ApiParam(value = "分页页码", required = true) @RequestParam int pageNumber,
+                             @ApiParam(value = "分页数", required = true) @RequestParam int pageSize) {
         if (Objects.isNull(examId) || Objects.equals(examId, "")) {
             throw new BusinessException(ExceptionResultEnum.EXAM_ID_IS_NULL);
         }
@@ -399,12 +399,12 @@ public class TEExamStudentController {
     @ApiOperation(value = "成绩查询简版导出接口")
     @RequestMapping(value = "/mark/result/simple/export", method = RequestMethod.POST)
     @Transactional
-    @ApiResponses({ @ApiResponse(code = 200, message = "{\"taskId\":0}", response = Result.class) })
+    @ApiResponses({@ApiResponse(code = 200, message = "{\"taskId\":0}", response = Result.class)})
     public Result markResultSimpleExport(@ApiParam(value = "考试批次id", required = true) @RequestParam Long examId,
-            @ApiParam(value = "考试场次id", required = false) @RequestParam(required = false) Long activityId,
-            @ApiParam(value = "证件号", required = false) @RequestParam(required = false) String identity,
-            @ApiParam(value = "姓名", required = false) @RequestParam(required = false) String name,
-            @ApiParam(value = "科目代码", required = false) @RequestParam(required = false) String courseCode) {
+                                         @ApiParam(value = "考试场次id", required = false) @RequestParam(required = false) Long activityId,
+                                         @ApiParam(value = "证件号", required = false) @RequestParam(required = false) String identity,
+                                         @ApiParam(value = "姓名", required = false) @RequestParam(required = false) String name,
+                                         @ApiParam(value = "科目代码", required = false) @RequestParam(required = false) String courseCode) {
         if (Objects.isNull(examId) || Objects.equals(examId, "")) {
             throw new BusinessException(ExceptionResultEnum.EXAM_ID_IS_NULL);
         }
@@ -446,12 +446,12 @@ public class TEExamStudentController {
     @ApiOperation(value = "成绩查询标准版导出接口")
     @RequestMapping(value = "/mark/result/standard/export", method = RequestMethod.POST)
     @Transactional
-    @ApiResponses({ @ApiResponse(code = 200, message = "{\"taskId\":0}", response = Result.class) })
+    @ApiResponses({@ApiResponse(code = 200, message = "{\"taskId\":0}", response = Result.class)})
     public Result markResultStandardExport(@ApiParam(value = "考试批次id", required = true) @RequestParam Long examId,
-            @ApiParam(value = "考试场次id", required = false) @RequestParam(required = false) Long activityId,
-            @ApiParam(value = "证件号", required = false) @RequestParam(required = false) String identity,
-            @ApiParam(value = "姓名", required = false) @RequestParam(required = false) String name,
-            @ApiParam(value = "科目代码", required = false) @RequestParam(required = false) String courseCode) {
+                                           @ApiParam(value = "考试场次id", required = false) @RequestParam(required = false) Long activityId,
+                                           @ApiParam(value = "证件号", required = false) @RequestParam(required = false) String identity,
+                                           @ApiParam(value = "姓名", required = false) @RequestParam(required = false) String name,
+                                           @ApiParam(value = "科目代码", required = false) @RequestParam(required = false) String courseCode) {
         if (Objects.isNull(examId) || Objects.equals(examId, "")) {
             throw new BusinessException(ExceptionResultEnum.EXAM_ID_IS_NULL);
         }