| | |
| | | List<Integer> collect2 = categoryService.lambdaQuery().eq(TCategory::getState, 1) |
| | | .eq(TCategory::getType, 2) |
| | | .like(TCategory::getName, query.getCategoryName()).list() |
| | | .stream().map(TCategory::getParentId).collect(Collectors.toList()); |
| | | .stream().map(TCategory::getId).collect(Collectors.toList()); |
| | | collect.addAll(collect2); |
| | | if (collect.isEmpty()) { |
| | | collect.add(-1); |
| | | if (collect2.isEmpty()) { |
| | | if (collect.isEmpty()) { |
| | | collect.add(-1); |
| | | } |
| | | wrapper.in("firstCategory", collect); |
| | | }else{ |
| | | wrapper.in("secondCategory", collect2); |
| | | } |
| | | wrapper.in("firstCategory", collect); |
| | | |
| | | } |
| | | if (StringUtils.hasLength(query.getEnglish())) { |
| | | wrapper.like("english", query.getEnglish()); |
| | |
| | | if (StringUtils.hasLength(query.getType())) { |
| | | wrapper.like("type", query.getType()); |
| | | } |
| | | List<TCategory> list5 = categoryService.list(); |
| | | wrapper.eq("state", 1); |
| | | List<TSubject> list = subjectService.list(wrapper); |
| | | |
| | | switch (query.getStudyType()) { |
| | | case 1: |
| | | List<TSubject> list = subjectService.list(wrapper); |
| | | for (TSubject tSubject : list) { |
| | | TCategory first = categoryService.getById(tSubject.getFirstCategory()); |
| | | |
| | | TCategory second = categoryService.getById(tSubject.getSecondCategory()); |
| | | |
| | | TCategory first = list5.stream().filter(e->e.getId().equals(tSubject.getFirstCategory())).findFirst().orElse(null); |
| | | TCategory second = list5.stream().filter(e->e.getId().equals(tSubject.getSecondCategory())).findFirst().orElse(null); |
| | | if (first != null && second != null) { |
| | | tSubject.setCategoryName(first.getName() + "-" + second.getName()); |
| | | } |
| | |
| | | List<TSubject> list1 = subjectService.list(wrapper); |
| | | List<TSubject> tSubjects = new ArrayList<>(); |
| | | for (TSubject tSubject : list1) { |
| | | TCategory first = categoryService.getById(tSubject.getFirstCategory()); |
| | | |
| | | TCategory second = categoryService.getById(tSubject.getSecondCategory()); |
| | | TCategory first = list5.stream().filter(e->e.getId().equals(tSubject.getFirstCategory())).findFirst().orElse(null); |
| | | TCategory second = list5.stream().filter(e->e.getId().equals(tSubject.getSecondCategory())).findFirst().orElse(null); |
| | | |
| | | if (first != null && second != null) { |
| | | tSubject.setCategoryName(first.getName() + "-" + second.getName()); |
| | |
| | | case 3: |
| | | List<TSubject> list2 = subjectService.list(wrapper); |
| | | for (TSubject tSubject : list2) { |
| | | TCategory first = categoryService.getById(tSubject.getFirstCategory()); |
| | | TCategory second = categoryService.getById(tSubject.getSecondCategory()); |
| | | TCategory first = list5.stream().filter(e->e.getId().equals(tSubject.getFirstCategory())).findFirst().orElse(null); |
| | | TCategory second = list5.stream().filter(e->e.getId().equals(tSubject.getSecondCategory())).findFirst().orElse(null); |
| | | |
| | | if (first != null && second != null) { |
| | | tSubject.setCategoryName(first.getName() + "-" + second.getName()); |
| | |
| | | List<TSubject> list3 = subjectService.list(wrapper); |
| | | List<TSubject> tSubjects3 = new ArrayList<>(); |
| | | for (TSubject tSubject : list3) { |
| | | TCategory first = categoryService.getById(tSubject.getFirstCategory()); |
| | | |
| | | TCategory second = categoryService.getById(tSubject.getSecondCategory()); |
| | | TCategory first = list5.stream().filter(e->e.getId().equals(tSubject.getFirstCategory())).findFirst().orElse(null); |
| | | TCategory second = list5.stream().filter(e->e.getId().equals(tSubject.getSecondCategory())).findFirst().orElse(null); |
| | | if (first != null && second != null) { |
| | | tSubject.setCategoryName(first.getName() + "-" + second.getName()); |
| | | } |
| | |
| | | case 5: |
| | | List<TSubject> list4 = subjectService.list(wrapper); |
| | | for (TSubject tSubject : list4) { |
| | | TCategory first = categoryService.getById(tSubject.getFirstCategory()); |
| | | |
| | | TCategory second = categoryService.getById(tSubject.getSecondCategory()); |
| | | TCategory first = list5.stream().filter(e->e.getId().equals(tSubject.getFirstCategory())).findFirst().orElse(null); |
| | | TCategory second = list5.stream().filter(e->e.getId().equals(tSubject.getSecondCategory())).findFirst().orElse(null); |
| | | if (first != null && second != null) { |
| | | tSubject.setCategoryName(first.getName() + "-" + second.getName()); |
| | | } |
| | |
| | | studyService.updateById(one); |
| | | GameDTO game = dto.getGame(); |
| | | StoryListenDTO storyListen = dto.getStoryListen(); |
| | | System.err.println("学习配置"+dto); |
| | | if (day == 6) { |
| | | // 先判断有没有配置 |
| | | TGame studyId = gameService.getOne(new QueryWrapper<TGame>() |
| | |
| | | storyListenService.save(tStoryListen); |
| | | } |
| | | } else { |
| | | List<Integer> ids = studyListenService.lambdaQuery().eq(TStudyListen::getId, one.getId()) |
| | | .eq(TStudyListen::getWeek, week) |
| | | .eq(TStudyListen::getDay, day).list().stream().map(TStudyListen::getId).collect(Collectors.toList()); |
| | | for (Integer id : ids) { |
| | | subjectRecordDetailService.remove(new LambdaQueryWrapper<TSubjectRecordDetail>() |
| | | .eq(TSubjectRecordDetail::getObjectId, id) |
| | | .eq(TSubjectRecordDetail::getWeek, week) |
| | | .eq(TSubjectRecordDetail::getType, 1)); |
| | | } |
| | | // 删除原有数据 |
| | | studyListenService.remove(new QueryWrapper<TStudyListen>() |
| | | .eq("studyId", one.getId()) |
| | |
| | | tStudyListen.setIsVip(studyListenDTO.getIsVip()); |
| | | tStudyListen.setRate(dto.getListenRate()); |
| | | studyListenService.save(tStudyListen); |
| | | } |
| | | List<Integer> ids1 = studyLookService.lambdaQuery().eq(TStudyLook::getId, one.getId()) |
| | | .eq(TStudyLook::getWeek, week) |
| | | .eq(TStudyLook::getDay, day).list().stream().map(TStudyLook::getId).collect(Collectors.toList()); |
| | | for (Integer id : ids1) { |
| | | subjectRecordDetailService.remove(new LambdaQueryWrapper<TSubjectRecordDetail>() |
| | | .eq(TSubjectRecordDetail::getObjectId, id) |
| | | .eq(TSubjectRecordDetail::getWeek, week) |
| | | .eq(TSubjectRecordDetail::getType, 2)); |
| | | } |
| | | studyLookService.remove(new QueryWrapper<TStudyLook>() |
| | | .eq("studyId", one.getId()) |
| | |
| | | |
| | | studyLookService.save(tStudyLook); |
| | | } |
| | | List<Integer> ids2 = studyInductionService.lambdaQuery().eq(TStudyInduction::getId, one.getId()) |
| | | .eq(TStudyInduction::getWeek, week) |
| | | .eq(TStudyInduction::getDay, day).list().stream().map(TStudyInduction::getId).collect(Collectors.toList()); |
| | | for (Integer id : ids2) { |
| | | subjectRecordDetailService.remove(new LambdaQueryWrapper<TSubjectRecordDetail>() |
| | | .eq(TSubjectRecordDetail::getObjectId, id) |
| | | .eq(TSubjectRecordDetail::getWeek, week) |
| | | .eq(TSubjectRecordDetail::getType, 3)); |
| | | } |
| | | studyInductionService.remove(new QueryWrapper<TStudyInduction>() |
| | | .eq("studyId", one.getId()) |
| | | .eq("week", week) |
| | |
| | | tStudyInduction.setIsVip(studyInductionDTO.getIsVip()); |
| | | studyInductionService.save(tStudyInduction); |
| | | } |
| | | List<Integer> ids3 = studyAnswerService.lambdaQuery().eq(TStudyAnswer::getId, one.getId()) |
| | | .eq(TStudyAnswer::getWeek, week) |
| | | .eq(TStudyAnswer::getDay, day).list().stream().map(TStudyAnswer::getId).collect(Collectors.toList()); |
| | | for (Integer id : ids3) { |
| | | subjectRecordDetailService.remove(new LambdaQueryWrapper<TSubjectRecordDetail>() |
| | | .eq(TSubjectRecordDetail::getObjectId, id) |
| | | .eq(TSubjectRecordDetail::getWeek, week) |
| | | .eq(TSubjectRecordDetail::getType, 4)); |
| | | } |
| | | studyAnswerService.remove(new QueryWrapper<TStudyAnswer>() |
| | | .eq("studyId", one.getId()) |
| | | .eq("week", week) |
| | |
| | | tStudyAnswer.setIntegral(studyAnswerDTO.getIntegral()); |
| | | tStudyAnswer.setWeek(week); |
| | | tStudyAnswer.setRate(dto.getAnswerRate()); |
| | | |
| | | tStudyAnswer.setIsVip(studyAnswerDTO.getIsVip()); |
| | | studyAnswerService.save(tStudyAnswer); |
| | | } |
| | | List<Integer> ids4 = studyPairService.lambdaQuery().eq(TStudyPair::getId, one.getId()) |
| | | .eq(TStudyPair::getWeek, week) |
| | | .eq(TStudyPair::getDay, day).list().stream().map(TStudyPair::getId).collect(Collectors.toList()); |
| | | for (Integer id : ids4) { |
| | | subjectRecordDetailService.remove(new LambdaQueryWrapper<TSubjectRecordDetail>() |
| | | .eq(TSubjectRecordDetail::getObjectId, id) |
| | | .eq(TSubjectRecordDetail::getWeek, week) |
| | | .eq(TSubjectRecordDetail::getType, 5)); |
| | | } |
| | | studyPairService.remove(new QueryWrapper<TStudyPair>() |
| | | .eq("studyId", one.getId()) |
| | |
| | | if (listen != 100 && listen != -1) { |
| | | studyRecord.setListen(100 - listen); |
| | | } |
| | | // // 自主学习答题记录 查询通关率 |
| | | // List<TSubjectRecordDetail> list = subjectRecordDetailService.lambdaQuery().eq(TSubjectRecordDetail::getUserId, userid) |
| | | // .eq(TSubjectRecordDetail::getWeek, week).ne(BaseModel::getDisabled, 0).list(); |
| | | // List<TSubjectRecordDetail> listenList = list.stream().filter(e -> e.getType() == 1).collect(Collectors.toList()); |
| | | // int listenPass = (int) listenList.stream().filter(e -> e.getStatus() == 2).count(); |
| | | // List<TSubjectRecordDetail> lookList = list.stream().filter(e -> e.getType() == 2).collect(Collectors.toList()); |
| | | // int lookPass = (int) lookList.stream().filter(e -> e.getStatus() == 2).count(); |
| | | // List<TSubjectRecordDetail> inductionList = list.stream().filter(e -> e.getType() == 3).collect(Collectors.toList()); |
| | | // int inductionPass = (int) inductionList.stream().filter(e -> e.getStatus() == 2).count(); |
| | | // List<TSubjectRecordDetail> answerList = list.stream().filter(e -> e.getType() == 4).collect(Collectors.toList()); |
| | | // int answerPass = (int) answerList.stream().filter(e -> e.getStatus() == 2).count(); |
| | | // List<TSubjectRecordDetail> pairList = list.stream().filter(e -> e.getType() == 5).collect(Collectors.toList()); |
| | | // int pairPass = (int) pairList.stream().filter(e -> e.getStatus() == 2).count(); |
| | | // int listenSize = listenList.size(); |
| | | // if (listenSize!=0){ |
| | | // double listenRate = (double) listenPass /listenSize; |
| | | // studyRecord.setListen((int)listenRate); |
| | | // }else{ |
| | | // studyRecord.setListen(-1); |
| | | // } |
| | | // int lookSize = lookList.size(); |
| | | // if (lookSize!=0) { |
| | | // double lookRate = (double) lookPass / lookSize; |
| | | // studyRecord.setLook((int) lookRate); |
| | | // }else{ |
| | | // studyRecord.setLook(-1); |
| | | // } |
| | | // int inductionSize = inductionList.size(); |
| | | // |
| | | // if (inductionSize!=0) { |
| | | // double inductionRate = (double) inductionPass /inductionSize; |
| | | // studyRecord.setInduction((int)inductionRate); |
| | | // }else{ |
| | | // studyRecord.setInduction(-1); |
| | | // } |
| | | // |
| | | // int answerSize = answerList.size(); |
| | | // if (answerSize!=0) { |
| | | // double answerRate = (double) answerPass /answerSize; |
| | | // studyRecord.setAnswer((int)answerRate); |
| | | // }else{ |
| | | // studyRecord.setAnswer(-1); |
| | | // } |
| | | // |
| | | // int pairSize = pairList.size(); |
| | | // if (pairSize!=0) { |
| | | // double pairRate = (double) pairPass /pairSize; |
| | | // studyRecord.setPair((int)pairRate); |
| | | // }else{ |
| | | // studyRecord.setPair(-1); |
| | | // } |
| | | |
| | | } |
| | | return R.ok(studyRecord); |
| | | } |
| | |
| | | if (null == userStudy) { |
| | | return R.tokenError("登录失效!"); |
| | | } |
| | | System.err.println("答题DTO"+answerQuestionDTO); |
| | | TSubjectRecordDetail byId = subjectRecordDetailService.getById(answerQuestionDTO.getId()); |
| | | byId.setUserId(null); |
| | | byId.setStatus(answerQuestionDTO.getStatus()); |
| | |
| | | photoList.add(new GameMemoryPhotoVO(tSubject.getId(), tSubject.getImg())); |
| | | voiceList.add(new GameMemoryVoiceVO(tSubject.getId(), tSubject.getCorrect())); |
| | | } |
| | | photoList = photoList.stream().distinct().collect(Collectors.toList()); |
| | | voiceList = voiceList.stream().distinct().collect(Collectors.toList()); |
| | | // 校验超级听力是否通过 |
| | | // studyService.checkClearance(game,userStudy.getUserid()); |
| | | // 框架记忆数量翻倍,前端需要根据数量画格子 |