| | |
| | | .eq(ExamSubmitTemp::getUserId, webContext.getCurrentUser().getId()) |
| | | .one(); |
| | | if (Objects.nonNull(hasJoin)) { |
| | | //TODO:开发环境先关闭 |
| | | // 允许提交后继续作答 |
| | | // if(ExamSubmitTempStatusEnum.finish.equals(hasJoin.getStatus())){ |
| | | // throw new RuntimeException("您已提交试卷,请勿重复作答"); |
| | | // } |
| | |
| | | |
| | | @Override |
| | | public Result getMarkPaperInfo(Integer examId, Integer userId) { |
| | | User student = userMapper.getUserById(userId); |
| | | //如果已经阅过卷了,查成绩表 |
| | | Result<ExamPaperMarkVO> paperMarkVO1 = checkHasJudge(examId, userId); |
| | | Result<ExamPaperMarkVO> paperMarkVO1 = checkHasJudge(examId, student); |
| | | if (paperMarkVO1 != null) return paperMarkVO1; |
| | | |
| | | User student = userMapper.getUserById(userId); |
| | | ExamVO exam = examMapper.getById(examId); |
| | | //学生答题表 |
| | | ExamSubmitTemp userExam = new LambdaQueryChainWrapper<>(examSubmitTempMapper) |
| | |
| | | } |
| | | |
| | | //检查是否阅卷 |
| | | private Result<ExamPaperMarkVO> checkHasJudge(Integer examId, Integer userId) { |
| | | ExamPaperScore examPaperScore = examPaperScoreMapper.getByExamIdUserId(examId, userId); |
| | | private Result<ExamPaperMarkVO> checkHasJudge(Integer examId, User student) { |
| | | ExamPaperScore examPaperScore = examPaperScoreMapper.getByExamIdUserId(examId, student.getId()); |
| | | if (examPaperScore != null) { |
| | | ExamPaperMarkVO paperMarkVO = new ExamPaperMarkVO(); |
| | | BeanUtils.copyProperties(examPaperScore, paperMarkVO); |
| | | paperMarkVO.setUserName(student.getRealName()); |
| | | paperMarkVO.setTotalScore(examPaperScore.getTotalScore() + ""); |
| | | paperMarkVO.setScore(examPaperScore.getScore() + ""); |
| | | if (!StringUtils.isEmpty(examPaperScore.getPaperContent())) { |
| | |
| | | paperMarkVO.setTitleItems(JSON.parseArray(userExam.getExamSubmit(), PaperFixQuestionVO.class)); |
| | | } else { |
| | | //缺考,学生没有做题信息 |
| | | paperMarkVO.setExamId(exam.getExamPaperId()); |
| | | paperMarkVO.setExamId(exam.getId()); |
| | | paperMarkVO.setUserId(student.getId()); |
| | | paperMarkVO.setScore(BigDecimal.ZERO + ""); |
| | | paperMarkVO.setDoTime(0); |
| | |
| | | @Override |
| | | public Result monitorList(ExamQuery query) { |
| | | IPage<ExamSubmitTempVO> page = PageUtil.getPage(query, ExamSubmitTempVO.class); |
| | | return Result.ok((examSubmitTempMapper.monitorList(page, query))); |
| | | IPage<ExamSubmitTempVO> vo = examSubmitTempMapper.monitorList(page, query); |
| | | |
| | | return Result.ok(vo); |
| | | } |
| | | |
| | | @Override |
| | |
| | | form.setAddTimeM(sed); |
| | | websocket.setData(form); |
| | | // 发送websocket消息 |
| | | websocketServer.sendOneMessage(form.getUserId(), JSON.toJSONString(form)); |
| | | websocketServer.sendOneMessage(form.getUserId(), JSON.toJSONString(websocket)); |
| | | return Result.ok("操作成功"); |
| | | } |
| | | |
| | |
| | | websocket.setCommend(WebsocketCommendEnum.FORCE_SUBMIT.getCommand()); |
| | | websocket.setData(form); |
| | | // 发送websocket消息 |
| | | websocketServer.sendOneMessage(form.getUserId(), JSON.toJSONString(form)); |
| | | websocketServer.sendOneMessage(form.getUserId(), JSON.toJSONString(websocket)); |
| | | return Result.ok("操作成功"); |
| | | } |
| | | } |