| | |
| | | import com.mindskip.xzs.domain.exam.ExamPaperQuestionItemObject; |
| | | import com.mindskip.xzs.domain.exam.ExamPaperTitleItemObject; |
| | | import com.mindskip.xzs.domain.other.KeyValue; |
| | | import com.mindskip.xzs.domain.vo.ExamTemplatesVO; |
| | | import com.mindskip.xzs.domain.vo.PaperExcelVO; |
| | | import com.mindskip.xzs.domain.vo.UserVO; |
| | | import com.mindskip.xzs.repository.ExamPaperAnswerMapper; |
| | | import com.mindskip.xzs.repository.ExamPaperMapper; |
| | | import com.mindskip.xzs.repository.QuestionMapper; |
| | |
| | | .flatMap(t -> t.getQuestionItems().stream() |
| | | .map(q -> q.getId())) |
| | | .collect(Collectors.toList()); |
| | | if (ObjectUtils.isEmpty(questionIds)) { |
| | | throw new RuntimeException("该试卷没有题目"); |
| | | } |
| | | List<Question> questions = questionMapper.selectByIds(questionIds); |
| | | //单选数量 |
| | | Integer singleChoice = questions.stream().filter(e -> e.getQuestionType() == 1).collect(Collectors.toList()).size(); |
| | |
| | | vm.setDepartmentIds(examPaperDepartmentService.getByExamPaperId(examPaper.getId()) |
| | | .stream().map(ExamPaperDepartment::getDepartmentId).toArray(Integer[]::new)); |
| | | List<ExamPaperUser> examPaperUsers = examPaperUserService.getByExamPaperId(examPaper.getId()); |
| | | Integer[][] userIds = new Integer[examPaperUsers.size()][2]; |
| | | List userIds = new ArrayList(); |
| | | for (int i = 0; i < examPaperUsers.size(); i++) { |
| | | User user = userService.getUserById(examPaperUsers.get(i).getUserId()); |
| | | if (ObjectUtils.isNotEmpty(user)) { |
| | | Integer[] userId = {user.getUserLevel(), examPaperUsers.get(i).getUserId()}; |
| | | userIds[i] = userId; |
| | | Integer userId = examPaperUsers.get(i).getUserId(); |
| | | userIds.add(userId); |
| | | } |
| | | } |
| | | vm.setUserId(userIds); |
| | |
| | | |
| | | |
| | | @Override |
| | | public Integer selectAllCount() { |
| | | return examPaperMapper.selectAllCount(); |
| | | public Integer selectAllCount(List<Integer> deptIds) { |
| | | return examPaperMapper.selectAllCount(deptIds); |
| | | } |
| | | |
| | | @Override |
| | |
| | | } |
| | | |
| | | @Override |
| | | public List<ExamPaper> list() { |
| | | return examPaperMapper.list(); |
| | | @Transactional |
| | | public void missExamByTemplateId(ExamTemplatesVO model) { |
| | | List<Integer> id = examPaperMapper.getExamPaperByTemplateId(model); |
| | | model.setPaperIds(id); |
| | | // 根据考试id将选择的补考考生的考试成绩设置为无效 |
| | | examPaperAnswerMapper.setMissExamByTemplate(model); |
| | | } |
| | | |
| | | @Override |
| | | public List<ExamPaper> list(List<Integer> deptIds) { |
| | | List<ExamPaper> list = examPaperMapper.list(deptIds); |
| | | List<ExamPaper> template = examPaperMapper.template(deptIds); |
| | | list.addAll(template); |
| | | return list.stream().sorted(Comparator.comparing(ExamPaper::getCreateTime).reversed()).collect(Collectors.toList()); |
| | | } |
| | | |
| | | @Override |
| | | public PageInfo<UserVO> selectStudent(UserVO userVO, List<Integer> adminDeptIds) { |
| | | userVO.setDeptIds(ObjectUtils.isNotEmpty(userVO.getDeptIds()) ? userVO.getDeptIds() : adminDeptIds); |
| | | return PageHelper.startPage(userVO.getPageIndex(), userVO.getPageSize()).doSelectPageInfo(() -> |
| | | examPaperMapper.selectStudent(userVO)); |
| | | } |
| | | |
| | | @Override |
| | | public List<ExamPaper> queryCondition() { |
| | | List<ExamPaper> examPaperList = examPaperMapper.getExamPaper(); |
| | | List<ExamPaper> templateList = examPaperMapper.getTemplate(); |
| | | examPaperList.addAll(templateList); |
| | | return examPaperList.stream().sorted(Comparator.comparing(ExamPaper::getCreateTime).reversed()).collect(Collectors.toList()); |
| | | } |
| | | } |