|
@@ -958,6 +958,7 @@ public class ExamServiceImpl extends ServiceImpl<ExamMapper, Exam> implements IE
|
|
@Override
|
|
@Override
|
|
public String submitExamPaper(ExamSubmitDTO dto) {
|
|
public String submitExamPaper(ExamSubmitDTO dto) {
|
|
String biaozhi="";
|
|
String biaozhi="";
|
|
|
|
+ System.out.println("yyz进行交卷");
|
|
if (StringUtils.isEmpty(dto.getUserExamId())) {
|
|
if (StringUtils.isEmpty(dto.getUserExamId())) {
|
|
throw new JeecgBootException("考试ID不能为空");
|
|
throw new JeecgBootException("考试ID不能为空");
|
|
}
|
|
}
|
|
@@ -965,14 +966,22 @@ public class ExamServiceImpl extends ServiceImpl<ExamMapper, Exam> implements IE
|
|
throw new JeecgBootException("试卷ID不能为空");
|
|
throw new JeecgBootException("试卷ID不能为空");
|
|
}
|
|
}
|
|
//获取试卷是否已经进行交卷
|
|
//获取试卷是否已经进行交卷
|
|
- UserExamPapers userExamPapers=iUserExamPapersService.UserExamIdPaperUserExamPapers(dto.getUserExamId(),dto.getPaperId());
|
|
|
|
|
|
+ List<UserExamPapers> listuserExamPapers=iUserExamPapersService.UserExamIdPaperUserExamPapers(dto.getUserExamId(),dto.getPaperId());
|
|
|
|
+ UserExamPapers userExamPapers=new UserExamPapers();
|
|
|
|
+ if (listuserExamPapers.size()>0){
|
|
|
|
+ userExamPapers=listuserExamPapers.get(0);
|
|
|
|
+ }else {
|
|
|
|
+ throw new JeecgBootException("未查询到该试卷");
|
|
|
|
+ }
|
|
if (PaperState.FINISHED.equals(userExamPapers.getState()) || PaperState.WAIT_OPT.equals(userExamPapers.getState())) {
|
|
if (PaperState.FINISHED.equals(userExamPapers.getState()) || PaperState.WAIT_OPT.equals(userExamPapers.getState())) {
|
|
//试卷已经交卷获取下一场考试试卷的信息
|
|
//试卷已经交卷获取下一场考试试卷的信息
|
|
List<UserExamPapers> userExamPapersLists= iUserExamPapersService.UserExamIdAllUserExamPapers(dto.getUserExamId());
|
|
List<UserExamPapers> userExamPapersLists= iUserExamPapersService.UserExamIdAllUserExamPapers(dto.getUserExamId());
|
|
if(userExamPapersLists.size()==0){
|
|
if(userExamPapersLists.size()==0){
|
|
throw new JeecgBootException("该试卷已经交卷,不允许重复交卷,当前试卷为最后一套试卷,本次考试结束。");
|
|
throw new JeecgBootException("该试卷已经交卷,不允许重复交卷,当前试卷为最后一套试卷,本次考试结束。");
|
|
}else if(userExamPapersLists.size()==1){
|
|
}else if(userExamPapersLists.size()==1){
|
|
- throw new JeecgBootException("该试卷已经交卷,不允许重复交卷,即将进入下一套试卷。",Integer.parseInt(userExamPapersLists.get(0).getPaperId()));
|
|
|
|
|
|
+// throw new JeecgBootException("该试卷已经交卷,不允许重复交卷,即将进入下一套试卷。",Integer.parseInt(userExamPapersLists.get(0).getPaperId()));
|
|
|
|
+ System.out.println("yyz显示:"+userExamPapersLists.get(0).getPaperId());
|
|
|
|
+ return userExamPapersLists.get(0).getPaperId();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
UserExam userExam = userExamService.listUserExam(dto.getUserExamId());
|
|
UserExam userExam = userExamService.listUserExam(dto.getUserExamId());
|
|
@@ -1753,9 +1762,6 @@ public class ExamServiceImpl extends ServiceImpl<ExamMapper, Exam> implements IE
|
|
// userExamResultService.joinPaperResult(userExam.getUserId(), userExam.getExamId(),userExam.getPaperId(), score, paperpass);
|
|
// userExamResultService.joinPaperResult(userExam.getUserId(), userExam.getExamId(),userExam.getPaperId(), score, paperpass);
|
|
//更新试卷状态
|
|
//更新试卷状态
|
|
iUserExamPapersService.updateById(userExamPapers);
|
|
iUserExamPapersService.updateById(userExamPapers);
|
|
-// //开启下一套试卷
|
|
|
|
-// LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
|
|
|
-// createExamPapers(user.getId(), userExam.getExamId());
|
|
|
|
return "1";
|
|
return "1";
|
|
}
|
|
}
|
|
// userExam.setUserScore(score);//最终得分
|
|
// userExam.setUserScore(score);//最终得分
|
|
@@ -1845,6 +1851,8 @@ public class ExamServiceImpl extends ServiceImpl<ExamMapper, Exam> implements IE
|
|
redisUtil.set(dto.getUserExamId(), JSON.toJSONString(dto), expireSec);
|
|
redisUtil.set(dto.getUserExamId(), JSON.toJSONString(dto), expireSec);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 缓存考试试卷答案,用于定时任务强制交卷
|
|
* 缓存考试试卷答案,用于定时任务强制交卷
|
|
*
|
|
*
|
|
@@ -1857,6 +1865,9 @@ public class ExamServiceImpl extends ServiceImpl<ExamMapper, Exam> implements IE
|
|
long expireMins = DateUtil.between(new Date(), dto.getLimitTime(), DateUnit.MINUTE) + 60 * 24 * 3;
|
|
long expireMins = DateUtil.between(new Date(), dto.getLimitTime(), DateUnit.MINUTE) + 60 * 24 * 3;
|
|
long expireSec = expireMins * 60;
|
|
long expireSec = expireMins * 60;
|
|
String idkey=dto.getUserExamId()+dto.getPaperId();
|
|
String idkey=dto.getUserExamId()+dto.getPaperId();
|
|
|
|
+ System.out.println("-----------------------------");
|
|
|
|
+ System.out.println(JSON.toJSONString(dto));
|
|
|
|
+ System.out.println("-----------------------------");
|
|
redisUtil.set(idkey, JSON.toJSONString(dto), expireSec);
|
|
redisUtil.set(idkey, JSON.toJSONString(dto), expireSec);
|
|
}
|
|
}
|
|
}
|
|
}
|