Forráskód Böngészése

Merge branch 'dev'
1

wangliang 4 éve
szülő
commit
0a4b1d2517

+ 7 - 11
themis-backend/src/main/java/com/qmth/themis/backend/api/TIeInvigilateController.java

@@ -413,18 +413,14 @@ public class TIeInvigilateController {
                                @ApiParam(value = "证件号", required = false) @RequestParam(required = false) String identity,
                                @ApiParam(value = "分页页码", required = true) @RequestParam int pageNumber,
                                @ApiParam(value = "分页数", required = true) @RequestParam int pageSize) {
-        if (Objects.isNull(examId) || Objects.equals(examId, "")) {
-            return null;
-        } else {
-            TBUser tbUser = (TBUser) ServletUtil.getRequestAccount();
-            AuthDto authDto = (AuthDto) redisUtil.get(SystemConstant.userOauth + "::" + tbUser.getId());
-            //如果有监考员角色,只能查看自己所监考的考场,巡考员和管理员则可以查看全部考场
-            Long userId = null;
-            if (authDto.getRoleCodes().toString().contains(RoleEnum.INVIGILATE.name())) {
-                userId = tbUser.getId();
-            }
-            return ResultUtil.ok(tOeExamRecordService.invigilatePageProgressList(new Page<>(pageNumber, pageSize), examId, examActivityId, roomCode, courseCode, name, identity, userId, tbUser.getOrgId()));
+        TBUser tbUser = (TBUser) ServletUtil.getRequestAccount();
+        AuthDto authDto = (AuthDto) redisUtil.get(SystemConstant.userOauth + "::" + tbUser.getId());
+        //如果有监考员角色,只能查看自己所监考的考场,巡考员和管理员则可以查看全部考场
+        Long userId = null;
+        if (authDto.getRoleCodes().toString().contains(RoleEnum.INVIGILATE.name())) {
+            userId = tbUser.getId();
         }
+        return ResultUtil.ok(tOeExamRecordService.invigilatePageProgressList(new Page<>(pageNumber, pageSize), examId, examActivityId, roomCode, courseCode, name, identity, userId, tbUser.getOrgId()));
     }
 
     @ApiOperation(value = "进度查询列表导出接口")

+ 10 - 5
themis-business/src/main/resources/mapper/TEExamReexamMapper.xml

@@ -20,12 +20,17 @@
             t_e_exam_student tees
             left join t_e_exam tee on
             tees.exam_id = tee.id
-            inner join (select distinct tbeiu.room_code from t_b_exam_invigilate_user tbeiu
-            <if test="userId != null and userId != ''">
-                where tbeiu.user_id = #{userId}
-            </if>
-            ) t on t.room_code = tees.room_code
             <where>
+                exists(
+                select
+                distinct tbeiu.exam_id
+                from
+                t_b_exam_invigilate_user tbeiu where 1 = 1
+                <if test="userId != null and userId != ''">
+                    and tbeiu.user_id = #{userId}
+                </if>
+                    and tbeiu.exam_id = tees.exam_id
+                )
                 <if test="examId != null and examId != ''">
                     and tees.exam_id = #{examId}
                 </if>

+ 24 - 18
themis-business/src/main/resources/mapper/TOeExamRecordMapper.xml

@@ -520,13 +520,17 @@
 		left join t_e_exam_activity teea on
 		teea.id = tees.exam_activity_id
 		left join t_e_student tes on tees.student_id = tes.id
-		inner join (select distinct tbeiu.room_code from t_b_exam_invigilate_user
-		tbeiu
-		<if test="userId != null and userId != ''">
-			where tbeiu.user_id = #{userId}
-		</if>
-		) t on t.room_code = tees.room_code
 		<where>
+			exists(
+			select
+			distinct tbeiu.exam_id
+			from
+			t_b_exam_invigilate_user tbeiu where 1 = 1
+			<if test="userId != null and userId != ''">
+				and tbeiu.user_id = #{userId}
+			</if>
+			and tbeiu.exam_id = tees.exam_id
+			)
 			<if test="examId != null and examId != ''">
 				and tees.exam_id = #{examId}
 			</if>
@@ -578,13 +582,17 @@
 		left join t_e_exam_activity teea on
 		teea.id = tees.exam_activity_id
 		left join t_e_student tes on tees.student_id = tes.id
-		inner join (select distinct tbeiu.room_code from t_b_exam_invigilate_user
-		tbeiu
-		<if test="userId != null and userId != ''">
-			where tbeiu.user_id = #{userId}
-		</if>
-		) t on t.room_code = tees.room_code
 		<where>
+			exists(
+			select
+			distinct tbeiu.exam_id
+			from
+			t_b_exam_invigilate_user tbeiu where 1 = 1
+			<if test="userId != null and userId != ''">
+				and tbeiu.user_id = #{userId}
+			</if>
+			    and tbeiu.exam_id = tees.exam_id
+			)
 			<if test="examId != null and examId != ''">
 				and tees.exam_id = #{examId}
 			</if>
@@ -757,15 +765,13 @@
 		where
 		EXISTS (
 		select
-		distinct tbeiu.room_code
+		distinct tbeiu.exam_id
 		from
-		t_b_exam_invigilate_user tbeiu
-		where
+		t_b_exam_invigilate_user tbeiu where 1 = 1
 		<if test="userId != null and userId != ''">
-			tbeiu.user_id = #{userId} and
+			and tbeiu.user_id = #{userId}
 		</if>
-		tbeiu.room_code = tees.room_code
-		and toer.exam_student_id = tees.id))) t1 on
+		and tbeiu.exam_id = tees.exam_id))) t1 on
 		t1.id = t.id
 		<where> 1 = 1
 			<if test="examId != null and examId != ''">