| | |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import lombok.AllArgsConstructor; |
| | | import org.springblade.common.utils.arg; |
| | | import org.springblade.core.mp.support.Condition; |
| | | import org.springblade.modules.apply.entity.Apply; |
| | | import org.springblade.modules.apply.service.ApplyService; |
| | | import org.springblade.modules.exam.entity.ExamExaminationSubject; |
| | | import org.springblade.modules.exam.entity.ExamPaper; |
| | | import org.springblade.modules.exam.entity.ExamScore; |
| | |
| | | import org.springblade.modules.exam.vo.ExamScoreVO; |
| | | import org.springblade.modules.system.entity.User; |
| | | import org.springblade.modules.system.service.IUserService; |
| | | import org.springblade.modules.training.entity.TrainingRegistration; |
| | | import org.springblade.modules.training.service.TrainingRegistrationService; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | |
| | | private final IUserService userService; |
| | | |
| | | private final ExamSubjectChoicesService examSubjectChoicesService; |
| | | |
| | | private final ExamPaperService examPaperService; |
| | | |
| | | private final ApplyService applyService; |
| | | |
| | | private final TrainingRegistrationService trainingRegistrationService; |
| | | |
| | | /** |
| | | * 自定义分页数据 |
| | |
| | | } |
| | | } |
| | | } |
| | | //获取考试信息 |
| | | ExamPaper paper = examPaperService.getById(examScore.getPapersId()); |
| | | //使用准考证号查询报名信息,修改考试状态为已考试 |
| | | if(paper.getExamType()==1){ |
| | | Apply apply = new Apply(); |
| | | apply.setCandidateNo(examScore.getCandidateNo()); |
| | | Apply apply1 = applyService.getOne(Condition.getQueryWrapper(apply)); |
| | | //修改为已考试 |
| | | apply1.setIsExam(2); |
| | | applyService.updateById(apply1); |
| | | } |
| | | //模拟考试 |
| | | if(paper.getExamType()==2){ |
| | | TrainingRegistration trainingRegistration = new TrainingRegistration(); |
| | | trainingRegistration.setCandidateNo(examScore.getCandidateNo()); |
| | | TrainingRegistration trainingRegistration1 = trainingRegistrationService.getOne(Condition.getQueryWrapper(trainingRegistration)); |
| | | //修改为已考试 |
| | | trainingRegistration1.setIsExam(2); |
| | | trainingRegistrationService.updateById(trainingRegistration1); |
| | | } |
| | | //设置考试ID |
| | | examScore.setExamId(examScore.getPapersId().toString()); |
| | | //设置理论得分 |
| | | examScore.setTheoryGrade(theoryGrade); |
| | | //计算总成绩,此时没有实操成绩,总成绩为实操成绩和理论成绩和的一半 |
| | |
| | | if (examScoreExcelList.size()>0){ |
| | | examScoreExcelList.forEach(examScoreExcel -> { |
| | | if (null!=examScoreExcel.getLearnGrade() && null!=examScoreExcel.getIdCardNo() && examScoreExcel.getIdCardNo()!=""){ |
| | | ExamScore examScore = baseMapper.getExamScoreInfoByIdCardNo(examScoreExcel.getIdCardNo()); |
| | | //使用考试名称匹配考试信息 |
| | | ExamPaper examPaper = examPaperService.getExamInfoByExamName(examScoreExcel.getExamName()); |
| | | //查询出成绩数据 |
| | | ExamScore examScore = baseMapper.getExamScoreInfoByIdCardNo(examScoreExcel.getIdCardNo(),examPaper.getId()); |
| | | if (null!=examScore) { |
| | | examScore.setLearnGrade(examScoreExcel.getLearnGrade()); |
| | | if (examScore.getTheoryGrade() >= 60 && examScore.getLearnGrade() >= 60) { |
| | | //合格 |
| | | examScore.setQualified(0); |
| | | //去生成保安证编号 |
| | | //查询当前保安信息 |
| | | User user = userService.getById(examScore.getUserId()); |
| | | String pre = SecurityPaperUtil.getSecurityPaper(); |
| | | //查询当前年份已有的保安证编号 |
| | | int count = userService.getSecurityPaperCount(pre); |
| | | String result = null; |
| | | if (count==0){ |
| | | result = pre + "00000"; |
| | | }else { |
| | | //格式化 |
| | | DecimalFormat decimalFormat = new DecimalFormat("00000"); |
| | | result = pre + (decimalFormat.format(count++)); |
| | | //正式考试通过生成保安证编号 |
| | | if (examPaper.getExamType()==1) { |
| | | //去生成保安证编号 |
| | | //查询当前保安信息 |
| | | User user = userService.getById(examScore.getUserId()); |
| | | String pre = SecurityPaperUtil.getSecurityPaper(); |
| | | //查询当前年份已有的保安证编号 |
| | | int count = userService.getSecurityPaperCount(pre); |
| | | String result = null; |
| | | if (count == 0) { |
| | | result = pre + "00000"; |
| | | } else { |
| | | //格式化 |
| | | DecimalFormat decimalFormat = new DecimalFormat("00000"); |
| | | result = pre + (decimalFormat.format(count++)); |
| | | } |
| | | user.setSecuritynumber(result); |
| | | //更新保安数据 |
| | | userService.updateById(user); |
| | | } |
| | | user.setSecuritynumber(result); |
| | | //更新保安数据 |
| | | userService.updateById(user); |
| | | } else { |
| | | //不合格 |
| | | examScore.setQualified(1); |