|
@@ -30,6 +30,7 @@ import org.springframework.stereotype.Service;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.List;
|
|
|
import java.util.stream.Collectors;
|
|
|
+
|
|
|
import com.qmth.teachcloud.mark.service.ScanPaperService;
|
|
|
|
|
|
/**
|
|
@@ -46,15 +47,10 @@ public class MarkStudentServiceImpl extends ServiceImpl<MarkStudentMapper, MarkS
|
|
|
private MarkPaperService markPaperService;
|
|
|
@Autowired
|
|
|
private ScanPackageService scanPackageService;
|
|
|
-
|
|
|
- @Autowired
|
|
|
- private MarkPaperService markPaperService;
|
|
|
- @Autowired
|
|
|
- private ScanPackageService scanPackageService;
|
|
|
- @Autowired
|
|
|
- private ScanPaperService scanPaperService;
|
|
|
- @Autowired
|
|
|
- private ScanOmrTaskService scanOmrTaskService;
|
|
|
+ @Autowired
|
|
|
+ private ScanPaperService scanPaperService;
|
|
|
+ @Autowired
|
|
|
+ private ScanOmrTaskService scanOmrTaskService;
|
|
|
|
|
|
@Override
|
|
|
public List<String> listClassByExamIdAndCourseCode(Long examId, String paperNumber) {
|
|
@@ -110,44 +106,44 @@ public class MarkStudentServiceImpl extends ServiceImpl<MarkStudentMapper, MarkS
|
|
|
lw.eq(MarkStudent::getScanStatus, status);
|
|
|
}
|
|
|
return baseMapper.selectCount(wrapper);
|
|
|
- }
|
|
|
+ }
|
|
|
|
|
|
- private int getOmrAbsentCount(Long examId,Boolean checked) {
|
|
|
- QueryWrapper<MarkStudent> wrapper = new QueryWrapper<>();
|
|
|
+ private int getOmrAbsentCount(Long examId, Boolean checked) {
|
|
|
+ QueryWrapper<MarkStudent> wrapper = new QueryWrapper<>();
|
|
|
LambdaQueryWrapper<MarkStudent> lw = wrapper.lambda();
|
|
|
lw.eq(MarkStudent::getExamId, examId);
|
|
|
lw.eq(MarkStudent::getOmrAbsent, true);
|
|
|
- if(checked!=null) {
|
|
|
- lw.eq(MarkStudent::getOmrAbsentChecked, checked);
|
|
|
+ if (checked != null) {
|
|
|
+ lw.eq(MarkStudent::getOmrAbsentChecked, checked);
|
|
|
}
|
|
|
return baseMapper.selectCount(wrapper);
|
|
|
- }
|
|
|
+ }
|
|
|
|
|
|
- private int getIncompleteCount(Long examId) {
|
|
|
- QueryWrapper<MarkStudent> wrapper = new QueryWrapper<>();
|
|
|
+ private int getIncompleteCount(Long examId) {
|
|
|
+ QueryWrapper<MarkStudent> wrapper = new QueryWrapper<>();
|
|
|
LambdaQueryWrapper<MarkStudent> lw = wrapper.lambda();
|
|
|
lw.eq(MarkStudent::getExamId, examId);
|
|
|
lw.eq(MarkStudent::getIncomplete, true);
|
|
|
return baseMapper.selectCount(wrapper);
|
|
|
- }
|
|
|
+ }
|
|
|
|
|
|
- @Override
|
|
|
- public ScanExamCheckInfoVo checkInfo(BasicExam exam) {
|
|
|
- Long examId=exam.getId();
|
|
|
- ScanExamCheckInfoVo vo=new ScanExamCheckInfoVo();
|
|
|
- vo.setId(exam.getId());
|
|
|
- vo.setName(exam.getName());
|
|
|
- CheckTask ct=vo.getCheckTask();
|
|
|
- ct.setUnexistCount(getCount(examId, ScanStatus.UNEXIST));
|
|
|
- ct.setUnexistCheckedCount(getCount(examId, ScanStatus.MANUAL_ABSENT));
|
|
|
- ct.setAssignedCount(scanPaperService.getAssignedCount(examId, false));
|
|
|
- ct.setAssignedCheckedCount(scanPaperService.getAssignedCount(examId, true));
|
|
|
- ct.setAbsentCheckCount(getOmrAbsentCount(examId, false));
|
|
|
- ct.setAbsentCheckedCount(getOmrAbsentCount(examId, true));
|
|
|
- ct.setObjectiveCheckCount(scanOmrTaskService.getCount(examId, OmrTaskStatus.WAITING));
|
|
|
- ct.setObjectiveCheckedCount(scanOmrTaskService.getCount(examId, OmrTaskStatus.PROCESSED));
|
|
|
- ct.setIncompleteCount(getIncompleteCount(examId));
|
|
|
- return vo;
|
|
|
- }
|
|
|
+ @Override
|
|
|
+ public ScanExamCheckInfoVo checkInfo(BasicExam exam) {
|
|
|
+ Long examId = exam.getId();
|
|
|
+ ScanExamCheckInfoVo vo = new ScanExamCheckInfoVo();
|
|
|
+ vo.setId(exam.getId());
|
|
|
+ vo.setName(exam.getName());
|
|
|
+ CheckTask ct = vo.getCheckTask();
|
|
|
+ ct.setUnexistCount(getCount(examId, ScanStatus.UNEXIST));
|
|
|
+ ct.setUnexistCheckedCount(getCount(examId, ScanStatus.MANUAL_ABSENT));
|
|
|
+ ct.setAssignedCount(scanPaperService.getAssignedCount(examId, false));
|
|
|
+ ct.setAssignedCheckedCount(scanPaperService.getAssignedCount(examId, true));
|
|
|
+ ct.setAbsentCheckCount(getOmrAbsentCount(examId, false));
|
|
|
+ ct.setAbsentCheckedCount(getOmrAbsentCount(examId, true));
|
|
|
+ ct.setObjectiveCheckCount(scanOmrTaskService.getCount(examId, OmrTaskStatus.WAITING));
|
|
|
+ ct.setObjectiveCheckedCount(scanOmrTaskService.getCount(examId, OmrTaskStatus.PROCESSED));
|
|
|
+ ct.setIncompleteCount(getIncompleteCount(examId));
|
|
|
+ return vo;
|
|
|
}
|
|
|
+
|
|
|
}
|