|
@@ -12,6 +12,7 @@ import com.qmth.distributed.print.business.bean.dto.ClazzContentDto;
|
|
import com.qmth.distributed.print.business.bean.dto.ExamTaskPlanStatisticDto;
|
|
import com.qmth.distributed.print.business.bean.dto.ExamTaskPlanStatisticDto;
|
|
import com.qmth.distributed.print.business.bean.dto.TCStatisticsDto;
|
|
import com.qmth.distributed.print.business.bean.dto.TCStatisticsDto;
|
|
import com.qmth.distributed.print.business.bean.result.TCStatisticResult;
|
|
import com.qmth.distributed.print.business.bean.result.TCStatisticResult;
|
|
|
|
+import com.qmth.distributed.print.business.entity.ExamStudent;
|
|
import com.qmth.distributed.print.business.entity.TCStatistics;
|
|
import com.qmth.distributed.print.business.entity.TCStatistics;
|
|
import com.qmth.distributed.print.business.entity.TCStatisticsTemp;
|
|
import com.qmth.distributed.print.business.entity.TCStatisticsTemp;
|
|
import com.qmth.distributed.print.business.entity.TeachStudent;
|
|
import com.qmth.distributed.print.business.entity.TeachStudent;
|
|
@@ -69,6 +70,9 @@ public class TCStatisticsServiceImpl extends ServiceImpl<TCStatisticsMapper, TCS
|
|
@Resource
|
|
@Resource
|
|
ExamDetailService examDetailService;
|
|
ExamDetailService examDetailService;
|
|
|
|
|
|
|
|
+ @Resource
|
|
|
|
+ ExamStudentService examStudentService;
|
|
|
|
+
|
|
|
|
|
|
@Deprecated
|
|
@Deprecated
|
|
@Override
|
|
@Override
|
|
@@ -90,16 +94,11 @@ public class TCStatisticsServiceImpl extends ServiceImpl<TCStatisticsMapper, TCS
|
|
List<ClazzContentDto> clazzContentDtoList = new ArrayList<>();
|
|
List<ClazzContentDto> clazzContentDtoList = new ArrayList<>();
|
|
String courseCode = tcStatisticsTemp.getCourseCode();
|
|
String courseCode = tcStatisticsTemp.getCourseCode();
|
|
String clazzIds = tcStatisticsTemp.getClazzIds();
|
|
String clazzIds = tcStatisticsTemp.getClazzIds();
|
|
- // 总印份数(只是学生数不包含备份)
|
|
|
|
- int printSum;
|
|
|
|
StatisticsStatusEnum status = StatisticsStatusEnum.FINISH;
|
|
StatisticsStatusEnum status = StatisticsStatusEnum.FINISH;
|
|
// 导入的班级
|
|
// 导入的班级
|
|
Set<Long> clazzIdSet = Arrays.stream(clazzIds.split(",")).map(SystemConstant::convertIdToLong).collect(Collectors.toSet());
|
|
Set<Long> clazzIdSet = Arrays.stream(clazzIds.split(",")).map(SystemConstant::convertIdToLong).collect(Collectors.toSet());
|
|
// 根据课程和考试查到的命题计划数据
|
|
// 根据课程和考试查到的命题计划数据
|
|
List<ExamTaskPlanStatisticDto> examTaskPlanStatisticDtoList = this.baseMapper.findByExamIdCourseCode(examId,courseCode);
|
|
List<ExamTaskPlanStatisticDto> examTaskPlanStatisticDtoList = this.baseMapper.findByExamIdCourseCode(examId,courseCode);
|
|
- if (examTaskPlanStatisticDtoList == null || examTaskPlanStatisticDtoList.size() == 0){
|
|
|
|
- continue;
|
|
|
|
- }
|
|
|
|
for (Long clazzId : clazzIdSet) {
|
|
for (Long clazzId : clazzIdSet) {
|
|
// 匹配到班级的所有命题计划
|
|
// 匹配到班级的所有命题计划
|
|
List<ExamTaskPlanStatisticDto> matchClazzList = examTaskPlanStatisticDtoList.stream().filter(e -> {
|
|
List<ExamTaskPlanStatisticDto> matchClazzList = examTaskPlanStatisticDtoList.stream().filter(e -> {
|
|
@@ -119,7 +118,10 @@ public class TCStatisticsServiceImpl extends ServiceImpl<TCStatisticsMapper, TCS
|
|
clazzContent.setExamPrintPlanId(matchClazz.getExamPrintPlanId());
|
|
clazzContent.setExamPrintPlanId(matchClazz.getExamPrintPlanId());
|
|
clazzContent.setExamPrintPlanName(matchClazz.getExamPrintPlanName());
|
|
clazzContent.setExamPrintPlanName(matchClazz.getExamPrintPlanName());
|
|
clazzContent.setPaperNumber(matchClazz.getPaperNumber());
|
|
clazzContent.setPaperNumber(matchClazz.getPaperNumber());
|
|
- clazzContent.setStudentCount(matchClazz.getStudentCount());
|
|
|
|
|
|
+ clazzContent.setStudentCount(examStudentService.count(new QueryWrapper<ExamStudent>()
|
|
|
|
+ .lambda()
|
|
|
|
+ .eq(ExamStudent::getClazzId,clazzId)
|
|
|
|
+ .eq(ExamStudent::getExamDetailCourseId,matchClazz.getExamDetailCourseId())));
|
|
}
|
|
}
|
|
|
|
|
|
// 匹配到以印刷的
|
|
// 匹配到以印刷的
|
|
@@ -136,8 +138,11 @@ public class TCStatisticsServiceImpl extends ServiceImpl<TCStatisticsMapper, TCS
|
|
clazzContent.setExamPrintPlanId(printMatchClazz.getExamPrintPlanId());
|
|
clazzContent.setExamPrintPlanId(printMatchClazz.getExamPrintPlanId());
|
|
clazzContent.setExamPrintPlanName(printMatchClazz.getExamPrintPlanName());
|
|
clazzContent.setExamPrintPlanName(printMatchClazz.getExamPrintPlanName());
|
|
clazzContent.setPaperNumber(printMatchClazz.getPaperNumber());
|
|
clazzContent.setPaperNumber(printMatchClazz.getPaperNumber());
|
|
- clazzContent.setStudentCount(printMatchClazz.getStudentCount());
|
|
|
|
clazzContent.setStatus(ClazzContentEnum.FINISH);
|
|
clazzContent.setStatus(ClazzContentEnum.FINISH);
|
|
|
|
+ clazzContent.setStudentCount(examStudentService.count(new QueryWrapper<ExamStudent>()
|
|
|
|
+ .lambda()
|
|
|
|
+ .eq(ExamStudent::getClazzId,clazzId)
|
|
|
|
+ .eq(ExamStudent::getExamDetailCourseId,printMatchClazz.getExamDetailCourseId())));
|
|
} else {
|
|
} else {
|
|
// 该班级对应的命题任务还未完成印刷
|
|
// 该班级对应的命题任务还未完成印刷
|
|
status = StatisticsStatusEnum.UN_FINISH;
|
|
status = StatisticsStatusEnum.UN_FINISH;
|
|
@@ -145,9 +150,6 @@ public class TCStatisticsServiceImpl extends ServiceImpl<TCStatisticsMapper, TCS
|
|
}
|
|
}
|
|
clazzContentDtoList.add(clazzContent);
|
|
clazzContentDtoList.add(clazzContent);
|
|
}
|
|
}
|
|
- Integer teachClazzStudentCount = teachStudentService.count(new QueryWrapper<TeachStudent>().lambda().in(TeachStudent::getTeachClazzId,clazzIdSet));
|
|
|
|
- Integer basicClazzStudentCount = basicStudentService.count(new QueryWrapper<BasicStudent>().lambda().in(BasicStudent::getClazzId,clazzIdSet));
|
|
|
|
- printSum = teachClazzStudentCount + basicClazzStudentCount;
|
|
|
|
|
|
|
|
TCStatistics tcStatistics = new TCStatistics();
|
|
TCStatistics tcStatistics = new TCStatistics();
|
|
tcStatistics.setExamId(examId);
|
|
tcStatistics.setExamId(examId);
|
|
@@ -162,7 +164,6 @@ public class TCStatisticsServiceImpl extends ServiceImpl<TCStatisticsMapper, TCS
|
|
tcStatistics.setClazzIds(clazzIds);
|
|
tcStatistics.setClazzIds(clazzIds);
|
|
tcStatistics.setClazzName(examDetailService.findClazzNamesByClazzIds(clazzIds,","));
|
|
tcStatistics.setClazzName(examDetailService.findClazzNamesByClazzIds(clazzIds,","));
|
|
tcStatistics.setClazzContent(JSON.toJSONString(clazzContentDtoList));
|
|
tcStatistics.setClazzContent(JSON.toJSONString(clazzContentDtoList));
|
|
- tcStatistics.setPrintSum(printSum);
|
|
|
|
tcStatistics.setStatus(status);
|
|
tcStatistics.setStatus(status);
|
|
tcStatistics.insertInfo(requestUserId);
|
|
tcStatistics.insertInfo(requestUserId);
|
|
if (StatisticsStatusEnum.FINISH.equals(status)){
|
|
if (StatisticsStatusEnum.FINISH.equals(status)){
|