From f2032d8331cd8939bb8dd4ef372033a2dcdbc850 Mon Sep 17 00:00:00 2001
From: liuyg <liuyg@qq.com>
Date: Thu, 17 Feb 2022 16:10:55 +0800
Subject: [PATCH] +添加法人变更,以及跨区域备案字段更改
---
src/main/java/org/springblade/modules/exam/service/impl/ExamPaperServiceImpl.java | 113 ++++++++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 101 insertions(+), 12 deletions(-)
diff --git a/src/main/java/org/springblade/modules/exam/service/impl/ExamPaperServiceImpl.java b/src/main/java/org/springblade/modules/exam/service/impl/ExamPaperServiceImpl.java
index 6635094..7bd3708 100644
--- a/src/main/java/org/springblade/modules/exam/service/impl/ExamPaperServiceImpl.java
+++ b/src/main/java/org/springblade/modules/exam/service/impl/ExamPaperServiceImpl.java
@@ -18,23 +18,21 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springblade.common.utils.TimeSwitchUtil;
import org.springblade.core.mp.support.Condition;
import org.springblade.modules.apply.entity.Apply;
import org.springblade.modules.exam.entity.*;
import org.springblade.modules.exam.mapper.ExamPaperMapper;
import org.springblade.modules.exam.service.*;
-import org.springblade.modules.exam.vo.ExamPaperSubjectVO;
-import org.springblade.modules.exam.vo.ExamPaperVO;
-import org.springblade.modules.exam.vo.ExamScoreVO;
-import org.springblade.modules.exam.vo.ExamSubjectChoicesVO;
+import org.springblade.modules.exam.vo.*;
import org.springblade.modules.training.entity.TrainingRegistration;
import org.springblade.modules.training.service.TrainingRegistrationService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.text.DecimalFormat;
+import java.text.SimpleDateFormat;
+import java.util.*;
/**
* 服务实现类
@@ -82,6 +80,22 @@
//模拟考试
if (examPaperVO1.getExamType()==2) {
examPaperVO1.setNum(baseMapper.getTrainNumber(examPaperVO1));
+ examPaperVO1.setExamNum(baseMapper.getExamNumber(examPaperVO1));
+ //计算截止时间
+ long nowTime = System.currentTimeMillis();
+ long examStartTime = examPaperVO1.getStartTime().getTime();
+ long examEndTime = examPaperVO1.getEndTime().getTime();
+ //判断时间
+ if (nowTime-examEndTime>0){
+ //剩余时间大于1天
+ examPaperVO1.setDeadline("考试已结束");
+ }else if(nowTime-examStartTime>=0 && nowTime-examEndTime<=0){
+ //已到考试时间
+ examPaperVO1.setDeadline("已到考试时间");
+ }else {
+ long time = examStartTime - nowTime;
+ examPaperVO1.setDeadline(TimeSwitchUtil.secondToTime(time));
+ }
}
});
return examPaperVOIPage;
@@ -99,6 +113,8 @@
if (null!=paper.getScoreId()){
//随机分类信息
List<ExamSubjectChoicesVO> examSubjectChoicesVOS = baseMapper.queryRandomSubject(paper);
+// long before = System.currentTimeMillis();
+ List<ExamExaminationSubject> list = new ArrayList<>();
examSubjectChoicesVOS.forEach(examSubjectChoicesVO -> {
//新增个人对应每场考试成绩试卷
ExamExaminationSubject ksxtSginup = new ExamExaminationSubject();
@@ -106,8 +122,15 @@
ksxtSginup.setCategoryId(examSubjectChoicesVO.getChoicesType());
ksxtSginup.setSubjectId(examSubjectChoicesVO.getId());
//新增
- examExaminationSubjectService.save(ksxtSginup);
+// examExaminationSubjectService.save(ksxtSginup);
+ list.add(ksxtSginup);
+ //将题目答案设置为空字符串,不让前端看到
+ examSubjectChoicesVO.setAnswer("");
});
+ //批量新增
+ baseMapper.insertBatch(list);
+// long after = System.currentTimeMillis();
+// System.out.println("时间差"+(after-before));
//新增试卷关联信息
return examSubjectChoicesVOS;
}
@@ -139,13 +162,13 @@
/**
* 查询考生考试信息
- * @param userId 用户id
+ * @param examPaper 用户id
* @return
*/
@Override
- public List<ExamPaperVO> getExamDetail(String userId) {
+ public List<ExamPaperVO> getExamDetail(ExamPaperVO examPaper) {
//查询考试信息
- return baseMapper.getExamDetail(userId);
+ return baseMapper.getExamDetail(examPaper);
}
/**
@@ -174,7 +197,7 @@
* @return
*/
@Override
- public ExamPaper getExamInfoByExamName(String examName) {
+ public List<ExamPaper> getExamInfoByExamName(String examName) {
return baseMapper.getExamInfoByExamName(examName);
}
@@ -234,4 +257,70 @@
}
return null;
}
+
+
+ /**
+ * 查询考试统计信息
+ * @param examPaperVO
+ * @param page
+ * @return
+ */
+ @Override
+ public IPage<ExamStatisticsVO> getExamStatistics(IPage<ExamStatisticsVO> page, ExamPaperVO examPaperVO) {
+ return page.setRecords(baseMapper.getExamStatistics(page,examPaperVO));
+ }
+
+ /**
+ * 根据考试id 统计查询考试信息
+ * @param examPaperVO
+ * @return
+ */
+ @Override
+ public IPage<ExamStatisticsVO> getExamInfoByExamId(IPage<ExamStatisticsVO> page, ExamStatisticsVO examPaperVO) {
+ List<ExamStatisticsVO> statisticsVOS = baseMapper.getExamInfoByExamId(page, examPaperVO);
+ //遍历,计算占比
+ if (statisticsVOS.size()>0){
+ statisticsVOS.forEach(examStatisticsVO -> {
+ //格式化小数
+ DecimalFormat df = new DecimalFormat("0.00");
+ //返回的是String类型
+ examStatisticsVO.setAbsentProportion(df.format((float)examStatisticsVO.getQknum()/examStatisticsVO.getZnum()*100));
+ DecimalFormat df1 = new DecimalFormat("0.00");
+ examStatisticsVO.setQualifiedProportion(df1.format((float)examStatisticsVO.getYknum()/examStatisticsVO.getZnum()*100));
+ });
+ }
+ return page.setRecords(statisticsVOS);
+ }
+
+ /**
+ * 根据考试id 统计查询考试信息
+ * @param examScoreVO
+ * @return
+ */
+ @Override
+ public List<ExamStatisticsVO> getExamInfoByExamIdList(ExamScoreVO examScoreVO) {
+ List<ExamStatisticsVO> statisticsVOS = baseMapper.getExamInfoByExamIdList(examScoreVO);
+ //遍历,计算占比
+ if (statisticsVOS.size()>0){
+ statisticsVOS.forEach(examStatisticsVO -> {
+ //格式化小数
+ DecimalFormat df = new DecimalFormat("0.00");
+ //返回的是String类型
+ examStatisticsVO.setAbsentProportion(df.format((float)examStatisticsVO.getQknum()/examStatisticsVO.getZnum()*100));
+ DecimalFormat df1 = new DecimalFormat("0.00");
+ examStatisticsVO.setQualifiedProportion(df1.format((float)examStatisticsVO.getYknum()/examStatisticsVO.getZnum()*100));
+ });
+ }
+ return statisticsVOS;
+ }
+
+ /**
+ * 查询考试成绩明细
+ * @param examScoreVO
+ * @return
+ */
+ @Override
+ public List<ExamScoreVO> getExamScoreList(ExamScoreVO examScoreVO) {
+ return baseMapper.getExamScoreList(examScoreVO);
+ }
}
--
Gitblit v1.9.3