|
@@ -429,213 +429,12 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
|
|
|
|
|
|
addItem.setStudyTimeStr(DateUtils.timestampToDate(classPeriodStudentVo.getStudyStartTime())+"-"+DateUtils.timestampToDate(classPeriodStudentVo.getStudyEndTime()));
|
|
|
addItem.setClassTimeStr(DateUtils.timestampToDate(classPeriodStudentVo.getClassStartTime())+"-"+DateUtils.timestampToDate(classPeriodStudentVo.getClassEndTime()));
|
|
|
- //学习记录
|
|
|
- ClassGradeUserQueryBo cGQB = new ClassGradeUserQueryBo();
|
|
|
- cGQB.setGoodsId(classPeriodStudentVo.getGoodsId());
|
|
|
- cGQB.setUserId(classPeriodStudentVo.getUserId());
|
|
|
- cGQB.setGradeId(classPeriodStudentVo.getGradeId());
|
|
|
- List<ClassPeriodVo> list = listPeriodAudit(cGQB);
|
|
|
- String moduleName = "";
|
|
|
- String chapterName = "";
|
|
|
- String sectionName = "";
|
|
|
- List<UserPeriodExportVo> studyList = new ArrayList<>();
|
|
|
- long i = 0;
|
|
|
- Long gradeId = classPeriodStudentVo.getGradeId();
|
|
|
- Long userId = classPeriodStudentVo.getUserId();
|
|
|
- Long goodsId = classPeriodStudentVo.getGoodsId();
|
|
|
- for(ClassPeriodVo classPeriodVo : list){
|
|
|
- //为模块搜索下面的章 和节 并搜索学时记录
|
|
|
- if (classPeriodVo.getType() == 1){
|
|
|
- moduleName = classPeriodVo.getTypeName();
|
|
|
- List<ClassPeriodChapterVo> classPeriodChapterVos = baseMapper.listperiodChapter(classPeriodVo.getId(), goodsId,classPeriodVo.getCourseId(), userId,gradeId);
|
|
|
- for (ClassPeriodChapterVo classPeriodChapterVo : classPeriodChapterVos) {
|
|
|
- if (classPeriodChapterVo.getType() == 2) {
|
|
|
- chapterName = classPeriodChapterVo.getTypeName();
|
|
|
- List<ClassPeriodSectionVo> classPeriodSectionVos = baseMapper.listPeriodSection(classPeriodChapterVo.getId(), goodsId, classPeriodVo.getCourseId(), userId);
|
|
|
- classPeriodSectionVos.addAll(baseMapper.listperiodExam(classPeriodChapterVo.getId(), goodsId,classPeriodVo.getCourseId(), userId,classPeriodVo.getId()));
|
|
|
- for (ClassPeriodSectionVo classPeriodSectionVo : classPeriodSectionVos) {
|
|
|
- i++;
|
|
|
- if (classPeriodSectionVo.getType() == 3) {
|
|
|
- sectionName = classPeriodSectionVo.getTypeName();
|
|
|
- UserPeriodQueryBo userPeriodQueryBo = new UserPeriodQueryBo();
|
|
|
- userPeriodQueryBo.setSectionId(classPeriodSectionVo.getId());
|
|
|
- userPeriodQueryBo.setCourseId(classPeriodSectionVo.getCourseId());
|
|
|
- userPeriodQueryBo.setGoodsId(goodsId);
|
|
|
- userPeriodQueryBo.setUserId(classPeriodSectionVo.getUserId());
|
|
|
- userPeriodQueryBo.setChapterId(classPeriodChapterVo.getId());
|
|
|
- userPeriodQueryBo.setModuleId(classPeriodVo.getId());
|
|
|
- userPeriodQueryBo.setGradeId(gradeId);
|
|
|
- List<UserPeriodStatusVo> userPeriodStatusVos = userPeriodStatusService.selectPeriodStatus(userPeriodQueryBo);
|
|
|
- if (!CollectionUtils.isEmpty(userPeriodStatusVos)) {
|
|
|
- int numIndex = userPeriodStatusVos.size() - 1;
|
|
|
- UserPeriodStatusVo userPeriodStatusVo = userPeriodStatusVos.get(numIndex);
|
|
|
- classPeriodSectionVo.setNumIndex(Convert.toLong(userPeriodStatusVos.size()));
|
|
|
- classPeriodSectionVo.setStatus(userPeriodStatusVo.getStatus());
|
|
|
- classPeriodSectionVo.setNumList(Convert.toLong(userPeriodStatusVos.size()));
|
|
|
- classPeriodSectionVo.setStudyEndTime(userPeriodStatusVo.getRecordEndTime());
|
|
|
- classPeriodSectionVo.setStudyStartTime(userPeriodStatusVo.getRecordStartTime());
|
|
|
- classPeriodSectionVo.setPeriodStatus(userPeriodStatusVo.getPeriodStatus());
|
|
|
- classPeriodSectionVo.setPeriodId(userPeriodStatusVo.getPeriodId());
|
|
|
- classPeriodSectionVo.setPeriodStatusId(userPeriodStatusVo.getId());
|
|
|
- classPeriodSectionVo.setAuditTime(userPeriodStatusVo.getAuditTime());
|
|
|
- classPeriodSectionVo.setAuditUserName(userPeriodStatusVo.getAuditUserName());
|
|
|
- classPeriodSectionVo.setDurationTime(userPeriodStatusVo.getDurationTime());
|
|
|
- }
|
|
|
- classPeriodSectionVo.setModuleId(classPeriodVo.getId());
|
|
|
- classPeriodSectionVo.setChapterId(classPeriodChapterVo.getId());
|
|
|
- classPeriodSectionVo.setGoodsId(goodsId);
|
|
|
- classPeriodSectionVo.setGradeId(gradeId);
|
|
|
- studyList.add(mergeData(i,moduleName,chapterName,sectionName,classPeriodSectionVo,(new BigDecimal(0)),false));
|
|
|
- }else {
|
|
|
- //章卷
|
|
|
- sectionName = "";
|
|
|
- UserPeriodQueryBo userPeriodQueryBo = new UserPeriodQueryBo();
|
|
|
- userPeriodQueryBo.setExamId(classPeriodSectionVo.getId());
|
|
|
- userPeriodQueryBo.setCourseId(classPeriodSectionVo.getCourseId());
|
|
|
- userPeriodQueryBo.setGoodsId(goodsId);
|
|
|
- userPeriodQueryBo.setUserId(classPeriodSectionVo.getUserId());
|
|
|
- userPeriodQueryBo.setChapterId(classPeriodChapterVo.getId());
|
|
|
- userPeriodQueryBo.setModuleId(classPeriodVo.getId());
|
|
|
- userPeriodQueryBo.setGradeId(gradeId);
|
|
|
- List<UserPeriodStatusVo> userPeriodStatusVos = userPeriodStatusService.selectPeriodStatus(userPeriodQueryBo);
|
|
|
- if (!CollectionUtils.isEmpty(userPeriodStatusVos)) {
|
|
|
- int numIndex = userPeriodStatusVos.size() - 1;
|
|
|
- UserPeriodStatusVo userPeriodStatusVo = userPeriodStatusVos.get(numIndex);
|
|
|
- classPeriodSectionVo.setNumIndex(Convert.toLong(userPeriodStatusVos.size()));
|
|
|
- classPeriodSectionVo.setStatus(userPeriodStatusVo.getStatus());
|
|
|
- classPeriodSectionVo.setNumList(Convert.toLong(userPeriodStatusVos.size()));
|
|
|
- classPeriodSectionVo.setStudyEndTime(userPeriodStatusVo.getRecordEndTime());
|
|
|
- classPeriodSectionVo.setStudyStartTime(userPeriodStatusVo.getRecordStartTime());
|
|
|
- classPeriodSectionVo.setPeriodStatus(userPeriodStatusVo.getPeriodStatus());
|
|
|
- classPeriodSectionVo.setPeriodId(userPeriodStatusVo.getPeriodId());
|
|
|
- classPeriodSectionVo.setAuditTime(userPeriodStatusVo.getAuditTime());
|
|
|
- classPeriodSectionVo.setAuditUserName(userPeriodStatusVo.getAuditUserName());
|
|
|
- classPeriodSectionVo.setPeriodStatusId(userPeriodStatusVo.getId());
|
|
|
- classPeriodChapterVo.setPerformance(Convert.toBigDecimal(userPeriodStatusVo.getPerformance()));
|
|
|
- }
|
|
|
- classPeriodSectionVo.setModuleId(classPeriodVo.getId());
|
|
|
- classPeriodSectionVo.setChapterId(classPeriodChapterVo.getId());
|
|
|
- classPeriodSectionVo.setGoodsId(goodsId);
|
|
|
- classPeriodSectionVo.setGradeId(gradeId);
|
|
|
- studyList.add(mergeData(i,moduleName,chapterName,sectionName,classPeriodSectionVo,classPeriodChapterVo.getPerformance(),true));
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- //为章搜索节记录和学时记录
|
|
|
- if (classPeriodVo.getType() == 2){
|
|
|
- moduleName = "";
|
|
|
- chapterName = classPeriodVo.getTypeName();
|
|
|
- List<ClassPeriodSectionVo> classPeriodSectionVos = baseMapper.listPeriodSection(classPeriodVo.getId(), goodsId, classPeriodVo.getCourseId(), userId);
|
|
|
- for (ClassPeriodSectionVo classPeriodSectionVo : classPeriodSectionVos) {
|
|
|
- i++;
|
|
|
- sectionName = classPeriodSectionVo.getTypeName();
|
|
|
- UserPeriodQueryBo userPeriodQueryBo = new UserPeriodQueryBo();
|
|
|
- userPeriodQueryBo.setSectionId(classPeriodSectionVo.getId());
|
|
|
- userPeriodQueryBo.setCourseId(classPeriodSectionVo.getCourseId());
|
|
|
- userPeriodQueryBo.setGoodsId(goodsId);
|
|
|
- userPeriodQueryBo.setUserId(classPeriodSectionVo.getUserId());
|
|
|
- userPeriodQueryBo.setChapterId(classPeriodVo.getId());
|
|
|
- userPeriodQueryBo.setModuleId(0L);
|
|
|
- userPeriodQueryBo.setGradeId(gradeId);
|
|
|
- List<UserPeriodStatusVo> userPeriodStatusVos = userPeriodStatusService.selectPeriodStatus(userPeriodQueryBo);
|
|
|
- if (!CollectionUtils.isEmpty(userPeriodStatusVos)){
|
|
|
- int numIndex = userPeriodStatusVos.size() - 1;
|
|
|
- UserPeriodStatusVo userPeriodStatusVo = userPeriodStatusVos.get(numIndex);
|
|
|
- classPeriodSectionVo.setNumIndex(Convert.toLong(userPeriodStatusVos.size()));
|
|
|
- classPeriodSectionVo.setStatus(userPeriodStatusVo.getStatus());
|
|
|
- classPeriodSectionVo.setNumList(Convert.toLong(userPeriodStatusVos.size()));
|
|
|
- classPeriodSectionVo.setStudyEndTime(userPeriodStatusVo.getRecordEndTime());
|
|
|
- classPeriodSectionVo.setStudyStartTime(userPeriodStatusVo.getRecordStartTime());
|
|
|
- classPeriodSectionVo.setPeriodStatus(userPeriodStatusVo.getPeriodStatus());
|
|
|
- classPeriodSectionVo.setPeriodId(userPeriodStatusVo.getPeriodId());
|
|
|
- classPeriodSectionVo.setPeriodStatusId(userPeriodStatusVo.getId());
|
|
|
- classPeriodSectionVo.setAuditTime(userPeriodStatusVo.getAuditTime());
|
|
|
- classPeriodSectionVo.setAuditUserName(userPeriodStatusVo.getAuditUserName());
|
|
|
- classPeriodSectionVo.setDurationTime(userPeriodStatusVo.getDurationTime());
|
|
|
- }
|
|
|
- classPeriodSectionVo.setModuleId(0L);
|
|
|
- classPeriodSectionVo.setChapterId(classPeriodVo.getId());
|
|
|
- classPeriodSectionVo.setGoodsId(goodsId);
|
|
|
- classPeriodSectionVo.setGradeId(gradeId);
|
|
|
- studyList.add(mergeData(i,moduleName,chapterName,sectionName,classPeriodSectionVo,(new BigDecimal(0)),false));
|
|
|
- }
|
|
|
- List<ClassPeriodSectionVo> classPeriodSectionVos1 = baseMapper.listPeriodSectionExam(classPeriodVo.getId(), goodsId, classPeriodVo.getCourseId(), userId);
|
|
|
- for (ClassPeriodSectionVo classPeriodSectionVo : classPeriodSectionVos1) {
|
|
|
- //章卷
|
|
|
- i++;
|
|
|
- sectionName = "";
|
|
|
- UserPeriodQueryBo userPeriodQueryBo = new UserPeriodQueryBo();
|
|
|
- userPeriodQueryBo.setExamId(classPeriodSectionVo.getId());
|
|
|
- userPeriodQueryBo.setCourseId(classPeriodSectionVo.getCourseId());
|
|
|
- userPeriodQueryBo.setGoodsId(bo.getGoodsId());
|
|
|
- userPeriodQueryBo.setUserId(classPeriodSectionVo.getUserId());
|
|
|
- userPeriodQueryBo.setChapterId(classPeriodVo.getId());
|
|
|
- userPeriodQueryBo.setModuleId(0L);
|
|
|
- userPeriodQueryBo.setGradeId(bo.getGradeId());
|
|
|
- List<UserPeriodStatusVo> userPeriodStatusVos = userPeriodStatusService.selectPeriodStatus(userPeriodQueryBo);
|
|
|
- if (!CollectionUtils.isEmpty(userPeriodStatusVos)) {
|
|
|
- int numIndex = userPeriodStatusVos.size() - 1;
|
|
|
- UserPeriodStatusVo userPeriodStatusVo = userPeriodStatusVos.get(numIndex);
|
|
|
- classPeriodSectionVo.setNumIndex(Convert.toLong(userPeriodStatusVos.size()));
|
|
|
- classPeriodSectionVo.setStatus(userPeriodStatusVo.getStatus());
|
|
|
- classPeriodSectionVo.setNumList(Convert.toLong(userPeriodStatusVos.size()));
|
|
|
- classPeriodSectionVo.setStudyEndTime(userPeriodStatusVo.getRecordEndTime());
|
|
|
- classPeriodSectionVo.setStudyStartTime(userPeriodStatusVo.getRecordStartTime());
|
|
|
- classPeriodSectionVo.setPeriodStatus(userPeriodStatusVo.getPeriodStatus());
|
|
|
- classPeriodSectionVo.setPeriodId(userPeriodStatusVo.getPeriodId());
|
|
|
- classPeriodSectionVo.setPeriodStatusId(userPeriodStatusVo.getId());
|
|
|
- classPeriodSectionVo.setAuditTime(userPeriodStatusVo.getAuditTime());
|
|
|
- classPeriodSectionVo.setAuditUserName(userPeriodStatusVo.getAuditUserName());
|
|
|
- classPeriodVo.setPerformance(Convert.toBigDecimal(userPeriodStatusVo.getPerformance()));
|
|
|
- }
|
|
|
- classPeriodSectionVo.setModuleId(0L);
|
|
|
- classPeriodSectionVo.setChapterId(classPeriodVo.getId());
|
|
|
- classPeriodSectionVo.setGoodsId(goodsId);
|
|
|
- classPeriodSectionVo.setGradeId(gradeId);
|
|
|
- studyList.add(mergeData(i,moduleName,chapterName,sectionName,classPeriodSectionVo,classPeriodVo.getPerformance(),true));
|
|
|
- }
|
|
|
- classPeriodSectionVos.addAll(classPeriodSectionVos1);
|
|
|
- classPeriodVo.setClassPeriodSectionList(classPeriodSectionVos);
|
|
|
- }
|
|
|
- //为节搜索学时记录
|
|
|
- if (classPeriodVo.getType() == 3){
|
|
|
- i++;
|
|
|
- sectionName = classPeriodVo.getTypeName();
|
|
|
- UserPeriodQueryBo userPeriodQueryBo = new UserPeriodQueryBo();
|
|
|
- userPeriodQueryBo.setSectionId(classPeriodVo.getId());
|
|
|
- userPeriodQueryBo.setCourseId(classPeriodVo.getCourseId());
|
|
|
- userPeriodQueryBo.setGoodsId(bo.getGoodsId());
|
|
|
- userPeriodQueryBo.setUserId(classPeriodVo.getUserId());
|
|
|
- userPeriodQueryBo.setChapterId(0L);
|
|
|
- userPeriodQueryBo.setModuleId(0L);
|
|
|
- userPeriodQueryBo.setGradeId(bo.getGradeId());
|
|
|
- List<UserPeriodStatusVo> userPeriodStatusVos = userPeriodStatusService.selectPeriodStatus(userPeriodQueryBo);
|
|
|
- if (!CollectionUtils.isEmpty(userPeriodStatusVos)){
|
|
|
- int numIndex = userPeriodStatusVos.size() - 1;
|
|
|
- UserPeriodStatusVo userPeriodStatusVo = userPeriodStatusVos.get(numIndex);
|
|
|
- classPeriodVo.setNumIndex(Convert.toLong(userPeriodStatusVos.size()));
|
|
|
- classPeriodVo.setStatus(userPeriodStatusVo.getStatus());
|
|
|
- classPeriodVo.setNumList(Convert.toLong(userPeriodStatusVos.size()));
|
|
|
- classPeriodVo.setStudyEndTime(userPeriodStatusVo.getRecordEndTime());
|
|
|
- classPeriodVo.setStudyStartTime(userPeriodStatusVo.getRecordStartTime());
|
|
|
- classPeriodVo.setPeriodStatus(userPeriodStatusVo.getPeriodStatus());
|
|
|
- classPeriodVo.setPeriodId(userPeriodStatusVo.getPeriodId());
|
|
|
- classPeriodVo.setPeriodStatusId(userPeriodStatusVo.getId());
|
|
|
- classPeriodVo.setAuditTime(userPeriodStatusVo.getAuditTime());
|
|
|
- classPeriodVo.setAuditUserName(userPeriodStatusVo.getAuditUserName());
|
|
|
- classPeriodVo.setDurationTime(userPeriodStatusVo.getDurationTime());
|
|
|
- }
|
|
|
- classPeriodVo.setModuleId(0L);
|
|
|
- classPeriodVo.setChapterId(0L);
|
|
|
- classPeriodVo.setGoodsId(bo.getGoodsId());
|
|
|
- classPeriodVo.setGradeId(bo.getGradeId());
|
|
|
- ClassPeriodSectionVo classPeriodSectionVo = BeanUtil.toBean(classPeriodVo, ClassPeriodSectionVo.class);
|
|
|
- studyList.add(mergeData(i,moduleName,chapterName,sectionName,classPeriodSectionVo,(new BigDecimal(0)),false));
|
|
|
- }
|
|
|
- }
|
|
|
- addItem.setPeriodVoList(studyList);
|
|
|
+
|
|
|
+ ClassGradeUserQueryBo classGradeUserQueryBo1 = new ClassGradeUserQueryBo();
|
|
|
+ classGradeUserQueryBo1.setUserId(classPeriodStudentVo.getUserId());
|
|
|
+ classGradeUserQueryBo1.setGradeId(classPeriodStudentVo.getGradeId());
|
|
|
+ classGradeUserQueryBo1.setGoodsId(classPeriodStudentVo.getGoodsId());
|
|
|
+ addItem.setPeriodVoList(listUserStudyRecord(classGradeUserQueryBo1));
|
|
|
exportList.add(addItem);
|
|
|
}
|
|
|
return exportList;
|
|
@@ -833,6 +632,217 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
|
|
|
return classPeriodStudentVos;
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public List<UserPeriodExportVo> listUserStudyRecord(ClassGradeUserQueryBo bo) {
|
|
|
+ //学习记录
|
|
|
+ ClassGradeUserQueryBo cGQB = new ClassGradeUserQueryBo();
|
|
|
+ cGQB.setGoodsId(bo.getGoodsId());
|
|
|
+ cGQB.setUserId(bo.getUserId());
|
|
|
+ cGQB.setGradeId(bo.getGradeId());
|
|
|
+ List<ClassPeriodVo> list = listPeriodAudit(cGQB);
|
|
|
+ String moduleName = "";
|
|
|
+ String chapterName = "";
|
|
|
+ String sectionName = "";
|
|
|
+ List<UserPeriodExportVo> studyList = new ArrayList<>();
|
|
|
+ long i = 0;
|
|
|
+ Long gradeId = bo.getGradeId();
|
|
|
+ Long userId = bo.getUserId();
|
|
|
+ Long goodsId = bo.getGoodsId();
|
|
|
+ for(ClassPeriodVo classPeriodVo : list){
|
|
|
+ //为模块搜索下面的章 和节 并搜索学时记录
|
|
|
+ if (classPeriodVo.getType() == 1){
|
|
|
+ moduleName = classPeriodVo.getTypeName();
|
|
|
+ List<ClassPeriodChapterVo> classPeriodChapterVos = baseMapper.listperiodChapter(classPeriodVo.getId(), goodsId,classPeriodVo.getCourseId(), userId,gradeId);
|
|
|
+ for (ClassPeriodChapterVo classPeriodChapterVo : classPeriodChapterVos) {
|
|
|
+ if (classPeriodChapterVo.getType() == 2) {
|
|
|
+ chapterName = classPeriodChapterVo.getTypeName();
|
|
|
+ List<ClassPeriodSectionVo> classPeriodSectionVos = baseMapper.listPeriodSection(classPeriodChapterVo.getId(), goodsId, classPeriodVo.getCourseId(), userId);
|
|
|
+ classPeriodSectionVos.addAll(baseMapper.listperiodExam(classPeriodChapterVo.getId(), goodsId,classPeriodVo.getCourseId(), userId,classPeriodVo.getId()));
|
|
|
+ for (ClassPeriodSectionVo classPeriodSectionVo : classPeriodSectionVos) {
|
|
|
+ i++;
|
|
|
+ if (classPeriodSectionVo.getType() == 3) {
|
|
|
+ sectionName = classPeriodSectionVo.getTypeName();
|
|
|
+ UserPeriodQueryBo userPeriodQueryBo = new UserPeriodQueryBo();
|
|
|
+ userPeriodQueryBo.setSectionId(classPeriodSectionVo.getId());
|
|
|
+ userPeriodQueryBo.setCourseId(classPeriodSectionVo.getCourseId());
|
|
|
+ userPeriodQueryBo.setGoodsId(goodsId);
|
|
|
+ userPeriodQueryBo.setUserId(classPeriodSectionVo.getUserId());
|
|
|
+ userPeriodQueryBo.setChapterId(classPeriodChapterVo.getId());
|
|
|
+ userPeriodQueryBo.setModuleId(classPeriodVo.getId());
|
|
|
+ userPeriodQueryBo.setGradeId(gradeId);
|
|
|
+ List<UserPeriodStatusVo> userPeriodStatusVos = userPeriodStatusService.selectPeriodStatus(userPeriodQueryBo);
|
|
|
+ if (!CollectionUtils.isEmpty(userPeriodStatusVos)) {
|
|
|
+ int numIndex = userPeriodStatusVos.size() - 1;
|
|
|
+ UserPeriodStatusVo userPeriodStatusVo = userPeriodStatusVos.get(numIndex);
|
|
|
+ classPeriodSectionVo.setNumIndex(Convert.toLong(userPeriodStatusVos.size()));
|
|
|
+ classPeriodSectionVo.setStatus(userPeriodStatusVo.getStatus());
|
|
|
+ classPeriodSectionVo.setNumList(Convert.toLong(userPeriodStatusVos.size()));
|
|
|
+ classPeriodSectionVo.setStudyEndTime(userPeriodStatusVo.getRecordEndTime());
|
|
|
+ classPeriodSectionVo.setStudyStartTime(userPeriodStatusVo.getRecordStartTime());
|
|
|
+ classPeriodSectionVo.setPeriodStatus(userPeriodStatusVo.getPeriodStatus());
|
|
|
+ classPeriodSectionVo.setPeriodId(userPeriodStatusVo.getPeriodId());
|
|
|
+ classPeriodSectionVo.setPeriodStatusId(userPeriodStatusVo.getId());
|
|
|
+ classPeriodSectionVo.setAuditTime(userPeriodStatusVo.getAuditTime());
|
|
|
+ classPeriodSectionVo.setAuditUserName(userPeriodStatusVo.getAuditUserName());
|
|
|
+ classPeriodSectionVo.setDurationTime(userPeriodStatusVo.getDurationTime());
|
|
|
+ }
|
|
|
+ classPeriodSectionVo.setModuleId(classPeriodVo.getId());
|
|
|
+ classPeriodSectionVo.setChapterId(classPeriodChapterVo.getId());
|
|
|
+ classPeriodSectionVo.setGoodsId(goodsId);
|
|
|
+ classPeriodSectionVo.setGradeId(gradeId);
|
|
|
+ studyList.add(mergeData(i,moduleName,chapterName,sectionName,classPeriodSectionVo,(new BigDecimal(0)),false));
|
|
|
+ }else {
|
|
|
+ //章卷
|
|
|
+ sectionName = "";
|
|
|
+ UserPeriodQueryBo userPeriodQueryBo = new UserPeriodQueryBo();
|
|
|
+ userPeriodQueryBo.setExamId(classPeriodSectionVo.getId());
|
|
|
+ userPeriodQueryBo.setCourseId(classPeriodSectionVo.getCourseId());
|
|
|
+ userPeriodQueryBo.setGoodsId(goodsId);
|
|
|
+ userPeriodQueryBo.setUserId(classPeriodSectionVo.getUserId());
|
|
|
+ userPeriodQueryBo.setChapterId(classPeriodChapterVo.getId());
|
|
|
+ userPeriodQueryBo.setModuleId(classPeriodVo.getId());
|
|
|
+ userPeriodQueryBo.setGradeId(gradeId);
|
|
|
+ List<UserPeriodStatusVo> userPeriodStatusVos = userPeriodStatusService.selectPeriodStatus(userPeriodQueryBo);
|
|
|
+ if (!CollectionUtils.isEmpty(userPeriodStatusVos)) {
|
|
|
+ int numIndex = userPeriodStatusVos.size() - 1;
|
|
|
+ UserPeriodStatusVo userPeriodStatusVo = userPeriodStatusVos.get(numIndex);
|
|
|
+ classPeriodSectionVo.setNumIndex(Convert.toLong(userPeriodStatusVos.size()));
|
|
|
+ classPeriodSectionVo.setStatus(userPeriodStatusVo.getStatus());
|
|
|
+ classPeriodSectionVo.setNumList(Convert.toLong(userPeriodStatusVos.size()));
|
|
|
+ classPeriodSectionVo.setStudyEndTime(userPeriodStatusVo.getRecordEndTime());
|
|
|
+ classPeriodSectionVo.setStudyStartTime(userPeriodStatusVo.getRecordStartTime());
|
|
|
+ classPeriodSectionVo.setPeriodStatus(userPeriodStatusVo.getPeriodStatus());
|
|
|
+ classPeriodSectionVo.setPeriodId(userPeriodStatusVo.getPeriodId());
|
|
|
+ classPeriodSectionVo.setAuditTime(userPeriodStatusVo.getAuditTime());
|
|
|
+ classPeriodSectionVo.setAuditUserName(userPeriodStatusVo.getAuditUserName());
|
|
|
+ classPeriodSectionVo.setPeriodStatusId(userPeriodStatusVo.getId());
|
|
|
+ classPeriodChapterVo.setPerformance(Convert.toBigDecimal(userPeriodStatusVo.getPerformance()));
|
|
|
+ }
|
|
|
+ classPeriodSectionVo.setModuleId(classPeriodVo.getId());
|
|
|
+ classPeriodSectionVo.setChapterId(classPeriodChapterVo.getId());
|
|
|
+ classPeriodSectionVo.setGoodsId(goodsId);
|
|
|
+ classPeriodSectionVo.setGradeId(gradeId);
|
|
|
+ studyList.add(mergeData(i,moduleName,chapterName,sectionName,classPeriodSectionVo,classPeriodChapterVo.getPerformance(),true));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //为章搜索节记录和学时记录
|
|
|
+ if (classPeriodVo.getType() == 2){
|
|
|
+ moduleName = "";
|
|
|
+ chapterName = classPeriodVo.getTypeName();
|
|
|
+ List<ClassPeriodSectionVo> classPeriodSectionVos = baseMapper.listPeriodSection(classPeriodVo.getId(), goodsId, classPeriodVo.getCourseId(), userId);
|
|
|
+ for (ClassPeriodSectionVo classPeriodSectionVo : classPeriodSectionVos) {
|
|
|
+ i++;
|
|
|
+ sectionName = classPeriodSectionVo.getTypeName();
|
|
|
+ UserPeriodQueryBo userPeriodQueryBo = new UserPeriodQueryBo();
|
|
|
+ userPeriodQueryBo.setSectionId(classPeriodSectionVo.getId());
|
|
|
+ userPeriodQueryBo.setCourseId(classPeriodSectionVo.getCourseId());
|
|
|
+ userPeriodQueryBo.setGoodsId(goodsId);
|
|
|
+ userPeriodQueryBo.setUserId(classPeriodSectionVo.getUserId());
|
|
|
+ userPeriodQueryBo.setChapterId(classPeriodVo.getId());
|
|
|
+ userPeriodQueryBo.setModuleId(0L);
|
|
|
+ userPeriodQueryBo.setGradeId(gradeId);
|
|
|
+ List<UserPeriodStatusVo> userPeriodStatusVos = userPeriodStatusService.selectPeriodStatus(userPeriodQueryBo);
|
|
|
+ if (!CollectionUtils.isEmpty(userPeriodStatusVos)){
|
|
|
+ int numIndex = userPeriodStatusVos.size() - 1;
|
|
|
+ UserPeriodStatusVo userPeriodStatusVo = userPeriodStatusVos.get(numIndex);
|
|
|
+ classPeriodSectionVo.setNumIndex(Convert.toLong(userPeriodStatusVos.size()));
|
|
|
+ classPeriodSectionVo.setStatus(userPeriodStatusVo.getStatus());
|
|
|
+ classPeriodSectionVo.setNumList(Convert.toLong(userPeriodStatusVos.size()));
|
|
|
+ classPeriodSectionVo.setStudyEndTime(userPeriodStatusVo.getRecordEndTime());
|
|
|
+ classPeriodSectionVo.setStudyStartTime(userPeriodStatusVo.getRecordStartTime());
|
|
|
+ classPeriodSectionVo.setPeriodStatus(userPeriodStatusVo.getPeriodStatus());
|
|
|
+ classPeriodSectionVo.setPeriodId(userPeriodStatusVo.getPeriodId());
|
|
|
+ classPeriodSectionVo.setPeriodStatusId(userPeriodStatusVo.getId());
|
|
|
+ classPeriodSectionVo.setAuditTime(userPeriodStatusVo.getAuditTime());
|
|
|
+ classPeriodSectionVo.setAuditUserName(userPeriodStatusVo.getAuditUserName());
|
|
|
+ classPeriodSectionVo.setDurationTime(userPeriodStatusVo.getDurationTime());
|
|
|
+ }
|
|
|
+ classPeriodSectionVo.setModuleId(0L);
|
|
|
+ classPeriodSectionVo.setChapterId(classPeriodVo.getId());
|
|
|
+ classPeriodSectionVo.setGoodsId(goodsId);
|
|
|
+ classPeriodSectionVo.setGradeId(gradeId);
|
|
|
+ studyList.add(mergeData(i,moduleName,chapterName,sectionName,classPeriodSectionVo,(new BigDecimal(0)),false));
|
|
|
+ }
|
|
|
+ List<ClassPeriodSectionVo> classPeriodSectionVos1 = baseMapper.listPeriodSectionExam(classPeriodVo.getId(), goodsId, classPeriodVo.getCourseId(), userId);
|
|
|
+ for (ClassPeriodSectionVo classPeriodSectionVo : classPeriodSectionVos1) {
|
|
|
+ //章卷
|
|
|
+ i++;
|
|
|
+ sectionName = "";
|
|
|
+ UserPeriodQueryBo userPeriodQueryBo = new UserPeriodQueryBo();
|
|
|
+ userPeriodQueryBo.setExamId(classPeriodSectionVo.getId());
|
|
|
+ userPeriodQueryBo.setCourseId(classPeriodSectionVo.getCourseId());
|
|
|
+ userPeriodQueryBo.setGoodsId(bo.getGoodsId());
|
|
|
+ userPeriodQueryBo.setUserId(classPeriodSectionVo.getUserId());
|
|
|
+ userPeriodQueryBo.setChapterId(classPeriodVo.getId());
|
|
|
+ userPeriodQueryBo.setModuleId(0L);
|
|
|
+ userPeriodQueryBo.setGradeId(bo.getGradeId());
|
|
|
+ List<UserPeriodStatusVo> userPeriodStatusVos = userPeriodStatusService.selectPeriodStatus(userPeriodQueryBo);
|
|
|
+ if (!CollectionUtils.isEmpty(userPeriodStatusVos)) {
|
|
|
+ int numIndex = userPeriodStatusVos.size() - 1;
|
|
|
+ UserPeriodStatusVo userPeriodStatusVo = userPeriodStatusVos.get(numIndex);
|
|
|
+ classPeriodSectionVo.setNumIndex(Convert.toLong(userPeriodStatusVos.size()));
|
|
|
+ classPeriodSectionVo.setStatus(userPeriodStatusVo.getStatus());
|
|
|
+ classPeriodSectionVo.setNumList(Convert.toLong(userPeriodStatusVos.size()));
|
|
|
+ classPeriodSectionVo.setStudyEndTime(userPeriodStatusVo.getRecordEndTime());
|
|
|
+ classPeriodSectionVo.setStudyStartTime(userPeriodStatusVo.getRecordStartTime());
|
|
|
+ classPeriodSectionVo.setPeriodStatus(userPeriodStatusVo.getPeriodStatus());
|
|
|
+ classPeriodSectionVo.setPeriodId(userPeriodStatusVo.getPeriodId());
|
|
|
+ classPeriodSectionVo.setPeriodStatusId(userPeriodStatusVo.getId());
|
|
|
+ classPeriodSectionVo.setAuditTime(userPeriodStatusVo.getAuditTime());
|
|
|
+ classPeriodSectionVo.setAuditUserName(userPeriodStatusVo.getAuditUserName());
|
|
|
+ classPeriodVo.setPerformance(Convert.toBigDecimal(userPeriodStatusVo.getPerformance()));
|
|
|
+ }
|
|
|
+ classPeriodSectionVo.setModuleId(0L);
|
|
|
+ classPeriodSectionVo.setChapterId(classPeriodVo.getId());
|
|
|
+ classPeriodSectionVo.setGoodsId(goodsId);
|
|
|
+ classPeriodSectionVo.setGradeId(gradeId);
|
|
|
+ studyList.add(mergeData(i,moduleName,chapterName,sectionName,classPeriodSectionVo,classPeriodVo.getPerformance(),true));
|
|
|
+ }
|
|
|
+ classPeriodSectionVos.addAll(classPeriodSectionVos1);
|
|
|
+ classPeriodVo.setClassPeriodSectionList(classPeriodSectionVos);
|
|
|
+ }
|
|
|
+ //为节搜索学时记录
|
|
|
+ if (classPeriodVo.getType() == 3){
|
|
|
+ i++;
|
|
|
+ sectionName = classPeriodVo.getTypeName();
|
|
|
+ UserPeriodQueryBo userPeriodQueryBo = new UserPeriodQueryBo();
|
|
|
+ userPeriodQueryBo.setSectionId(classPeriodVo.getId());
|
|
|
+ userPeriodQueryBo.setCourseId(classPeriodVo.getCourseId());
|
|
|
+ userPeriodQueryBo.setGoodsId(bo.getGoodsId());
|
|
|
+ userPeriodQueryBo.setUserId(classPeriodVo.getUserId());
|
|
|
+ userPeriodQueryBo.setChapterId(0L);
|
|
|
+ userPeriodQueryBo.setModuleId(0L);
|
|
|
+ userPeriodQueryBo.setGradeId(bo.getGradeId());
|
|
|
+ List<UserPeriodStatusVo> userPeriodStatusVos = userPeriodStatusService.selectPeriodStatus(userPeriodQueryBo);
|
|
|
+ if (!CollectionUtils.isEmpty(userPeriodStatusVos)){
|
|
|
+ int numIndex = userPeriodStatusVos.size() - 1;
|
|
|
+ UserPeriodStatusVo userPeriodStatusVo = userPeriodStatusVos.get(numIndex);
|
|
|
+ classPeriodVo.setNumIndex(Convert.toLong(userPeriodStatusVos.size()));
|
|
|
+ classPeriodVo.setStatus(userPeriodStatusVo.getStatus());
|
|
|
+ classPeriodVo.setNumList(Convert.toLong(userPeriodStatusVos.size()));
|
|
|
+ classPeriodVo.setStudyEndTime(userPeriodStatusVo.getRecordEndTime());
|
|
|
+ classPeriodVo.setStudyStartTime(userPeriodStatusVo.getRecordStartTime());
|
|
|
+ classPeriodVo.setPeriodStatus(userPeriodStatusVo.getPeriodStatus());
|
|
|
+ classPeriodVo.setPeriodId(userPeriodStatusVo.getPeriodId());
|
|
|
+ classPeriodVo.setPeriodStatusId(userPeriodStatusVo.getId());
|
|
|
+ classPeriodVo.setAuditTime(userPeriodStatusVo.getAuditTime());
|
|
|
+ classPeriodVo.setAuditUserName(userPeriodStatusVo.getAuditUserName());
|
|
|
+ classPeriodVo.setDurationTime(userPeriodStatusVo.getDurationTime());
|
|
|
+ }
|
|
|
+ classPeriodVo.setModuleId(0L);
|
|
|
+ classPeriodVo.setChapterId(0L);
|
|
|
+ classPeriodVo.setGoodsId(bo.getGoodsId());
|
|
|
+ classPeriodVo.setGradeId(bo.getGradeId());
|
|
|
+ ClassPeriodSectionVo classPeriodSectionVo = BeanUtil.toBean(classPeriodVo, ClassPeriodSectionVo.class);
|
|
|
+ studyList.add(mergeData(i,moduleName,chapterName,sectionName,classPeriodSectionVo,(new BigDecimal(0)),false));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return studyList;
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
public List<ClassPeriodUserVo> listPeriod(ClassGradeUserQueryBo bo) {
|
|
|
//班级学员信息
|