Quellcode durchsuchen

Merge branch 'dev'
123

wangliang vor 4 Jahren
Ursprung
Commit
c9753f89ca

+ 21 - 1
themis-backend/src/main/java/com/qmth/themis/backend/api/TEExamStudentController.java

@@ -68,6 +68,9 @@ public class TEExamStudentController {
     @Resource
     SystemConfig systemConfig;
 
+    @Resource
+    TEStudentService teStudentService;
+
     @ApiOperation(value = "考生查询接口")
     @RequestMapping(value = "/query", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "考生信息", response = TEExamStudentDto.class)})
@@ -119,8 +122,25 @@ public class TEExamStudentController {
             throw new BusinessException(ExceptionResultEnum.EXAM_STUDENT_INFO_IS_NULL);
         }
         TBUser tbUser = (TBUser) ServletUtil.getRequestAccount();
+        TBOrg tbOrg = (TBOrg) ServletUtil.getRequestOrg();
         teExamStudentList.forEach(s -> {
-            s.setUpdateId(tbUser.getId());
+            if (Objects.isNull(s.getId())) {
+                QueryWrapper<TEStudent> teExamStudentQueryWrapper = new QueryWrapper<>();
+                teExamStudentQueryWrapper.lambda().eq(TEStudent::getName, s.getName())
+                        .eq(TEStudent::getIdentity, s.getIdentity());
+                if (Objects.nonNull(tbOrg) && Objects.nonNull(tbOrg.getId())) {
+                    teExamStudentQueryWrapper.lambda().eq(TEStudent::getOrgId, tbOrg.getId());
+                }
+                int count = teStudentService.count(teExamStudentQueryWrapper);
+                if (count == 0) {
+                    TEStudent teStudent = new TEStudent(tbOrg.getId(), s.getIdentity(), s.getName(), tbUser.getId());
+                    teStudentService.save(teStudent);
+                    s.setStudentId(teStudent.getId());
+                    s.setCreateId(tbUser.getId());
+                }
+            } else {
+                s.setUpdateId(tbUser.getId());
+            }
         });
         teExamStudentService.saveOrUpdateBatch(teExamStudentList);
         teExamStudentList.forEach(s -> {

+ 10 - 3
themis-business/src/main/java/com/qmth/themis/business/templete/service/impl/TempleteLogicServiceImpl.java

@@ -289,9 +289,16 @@ public class TempleteLogicServiceImpl implements TempleteLogicService {
                 TBUserRole tbUserRole = new TBUserRole(tbUser.getId(), RoleEnum.INVIGILATE.name());
                 tbUserRoleService.save(tbUserRole);
             }
-            //新增考场
-            TBExamInvigilateUser tbExamInvigilateUser = new TBExamInvigilateUser(orgId, tbUser.getId(), roomCode, roomName);
-            tbExamInvigilateUserService.save(tbExamInvigilateUser);
+            QueryWrapper<TBExamInvigilateUser> tbExamInvigilateUserQueryWrapper = new QueryWrapper<>();
+            tbExamInvigilateUserQueryWrapper.lambda().eq(TBExamInvigilateUser::getOrgId, orgId)
+                    .eq(TBExamInvigilateUser::getUserId, tbUser.getId())
+                    .eq(TBExamInvigilateUser::getRoomCode, roomCode)
+                    .eq(TBExamInvigilateUser::getRoomName, roomName);
+            TBExamInvigilateUser tbExamInvigilateUser = tbExamInvigilateUserService.getOne(tbExamInvigilateUserQueryWrapper);
+            if (Objects.isNull(tbExamInvigilateUser)) {//新增考场
+                tbExamInvigilateUser = new TBExamInvigilateUser(orgId, tbUser.getId(), roomCode, roomName);
+            }
+            tbExamInvigilateUserService.saveOrUpdate(tbExamInvigilateUser);
         }
     }