浏览代码

修复 正在考试-坐席列表 学员不被顶替的问题。

tom 3 周之前
父节点
当前提交
bd8395edfd

+ 4 - 1
ruoyi-sim/src/main/java/com/ruoyi/sim/service/impl/RealExamCollectionService.java

@@ -526,13 +526,16 @@ public class RealExamCollectionService extends Ele6RYBaseService {
         return list.get(0);
     }
 
+    /**
+     * 每天01:00定时执行
+     */
     public void scheduledDeleteRefTypeSelfExercise() {
         AjaxResult ar = deleteRefTypeSelfExercise();
         l.debug("scheduledDeleteRefTypeSelfExercise {}", ar);
     }
 
     /**
-     * 每天01:00定时执行。删除所有 练习 的考试集合数据。
+     * 删除所有 练习 的考试集合数据。
      */
     public AjaxResult deleteRefTypeSelfExercise() {
         RealExamCollection q = new RealExamCollection();

+ 3 - 0
ruoyi-sim/src/main/java/com/ruoyi/sim/service/impl/RealExamService.java

@@ -767,7 +767,10 @@ public class RealExamService {
                     }
                     re.setSeatId(seat.getSeatId());
                     re.setExamStatus(RealExam.State.LOGGED_IN);
+                    //
                     updateRealExam(re);
+                    //
+                    seatService.updateCurrentUserIdBySeatId(seat.getSeatId(), userId);
                     return AjaxResult.success("成功");
                 }
             }

+ 6 - 0
ruoyi-sim/src/main/java/com/ruoyi/sim/service/impl/SeatService.java

@@ -180,6 +180,12 @@ public class SeatService {
         updateSeat(f);
     }
 
+    public void updateCurrentUserIdBySeatId(final Long seatId,final Long userId) {
+        Seat f = selectSeatBySeatId(seatId);
+        f.setCurrentUserId(userId);
+        updateSeat(f);
+    }
+
     public int updateAllEnableState(final String socketState) {
         List<Seat> list = listAllEnable();
         for (Seat seat : list) {