| | |
| | | row=baseMapper.updateById(existStudentStudy); |
| | | }else{ |
| | | row=baseMapper.insert(studentStudy); |
| | | if(row<1){ |
| | | throw new ApiException("新增学习记录失败"); |
| | | } |
| | | } |
| | | if(row<1){ |
| | | throw new ApiException("新增学习记录失败"); |
| | | } |
| | | System.out.println("student_study id:"+studentStudy.getId()); |
| | | return studentStudy.getId(); |
| | | } |
| | | |
| | |
| | | } |
| | | |
| | | @Override |
| | | public List<StudentStudyVO> selectStudyByPhaseAndStundentId(Long phaseId,Long studentId) { |
| | | public List<StudentStudyVO> selectStudyByPhaseAndStundentId(Long phaseId,Long studentId,Integer status) { |
| | | ExCoursePhase coursePhase=coursePhaseMapper.selectById(phaseId); |
| | | Long courseId=coursePhase.getCourseId(); |
| | | List<ExStudentStudy> studentStudyList= baseMapper.selectStudyByPhaseAndStudentId(phaseId,courseId,studentId); |
| | | Map<Long,ExStudentStudy> studentStudyMap=studentStudyList.stream().collect(Collectors.toMap(ExStudentStudy::getPeriodId, item->item)); |
| | | List<ExCourseChapter> courseChapterList=courseChapterService.selectChapterByCourseId(courseId); |
| | | List<ExCourseChapter> courseChapterList=courseChapterService.selectChapterByCourseId(courseId, status); |
| | | List<StudentStudyVO> studentStudyVOList=courseChapterList.stream().map(item ->{ |
| | | StudentStudyVO studentStudyVO=new StudentStudyVO(); |
| | | studentStudyVO.setChapterId(item.getId()); |
| | |
| | | studentStudyPeriodVO.setPeriodName(courseChapterPeriod.getName()); |
| | | studentStudyPeriodVO.setPeriodId(courseChapterPeriod.getId()); |
| | | studentStudyPeriodVO.setPeriod(courseChapterPeriod.getPeriod()); |
| | | studentStudyPeriodVO.setResourceId(courseChapterPeriod.getResourceId()); |
| | | studentStudyPeriodVO.setResourceType(courseChapterPeriod.getResource()!=null?courseChapterPeriod.getResource().getResourceType():null); |
| | | ExStudentStudy exStudentStudy=studentStudyMap.get(courseChapterPeriod.getId()); |
| | | if(exStudentStudy!=null){ |
| | | studentStudyPeriodVO.setProgress(exStudentStudy.getProgress()); |
| | |
| | | |
| | | @Override |
| | | public void progress(ExStudentStudy studentStudy) { |
| | | if(studentStudy.getPhaseId()==null||studentStudy.getPeriodId()==null||studentStudy.getStudentId()==null||studentStudy.getResourceId()==null){ |
| | | if(studentStudy.getId()==null||studentStudy.getPhaseId()==null||studentStudy.getPeriodId()==null||studentStudy.getStudentId()==null||studentStudy.getResourceId()==null){ |
| | | throw new ApiException("参数传参错误"); |
| | | } |
| | | ExResource resource=resourceMapper.selectById(studentStudy.getResourceId()); |
| | |
| | | } |
| | | } else if (ResourceTypeEnum.DOC.getCode().equals(resource.getResourceType())) { |
| | | // 文档类型处理 |
| | | if (studentStudy.getCurrentPage().compareTo(resource.getDocPage()) >= 0) { |
| | | // 学习完成 |
| | | completeStudy(studentStudy); |
| | | } |
| | | // if (studentStudy.getCurrentPage().compareTo(resource.getDocPage()) >= 0) { |
| | | // // 学习完成 |
| | | // completeStudy(studentStudy); |
| | | // } |
| | | // 学习完成 |
| | | completeStudy(studentStudy); |
| | | } |
| | | redisUtils.set(CacheConstant.STUDY_PROCESS_KEY + studentStudy.getId(), studentStudy, 1, TimeUnit.DAYS); |
| | | } |