ruoyi-service/ruoyi-management/src/main/java/com/ruoyi/management/controller/TStudyController.java
@@ -55,6 +55,7 @@ @PostMapping(value = "/addStudySet") @ResponseBody public AjaxResult addStudySet(@RequestBody AddStudySetDTO dto) { System.err.println("后台"+dto); R<Object> objectR = studyClient.addStudySet(dto); int code = objectR.getCode(); if (code == 500){ ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/config/DatasourceModel.java
@@ -13,20 +13,20 @@ @Data @Component public class DatasourceModel { // private String url = "jdbc:mysql://127.0.0.1:10633/dolphin_study?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai"; // private String username = "root"; // private String password = "HaiTun@2024!"; // private String driverClassName = "com.mysql.cj.jdbc.Driver"; // private Integer maxActive =20; // private Long maxWait = 60000L; // private Integer minIdle =5; // private Integer initialSize =2; private String url = "jdbc:mysql://127.0.0.1:3306/dolphin_study?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai"; private String url = "jdbc:mysql://127.0.0.1:10633/dolphin_study?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai"; private String username = "root"; private String password = "root"; private String password = "HaiTun@2024!"; private String driverClassName = "com.mysql.cj.jdbc.Driver"; private Integer maxActive =20; private Long maxWait = 60000L; private Integer minIdle =5; private Integer initialSize =2; // private String url = "jdbc:mysql://127.0.0.1:3306/dolphin_study?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai"; // private String username = "root"; // private String password = "root"; // private String driverClassName = "com.mysql.cj.jdbc.Driver"; // private Integer maxActive =20; // private Long maxWait = 60000L; // private Integer minIdle =5; // private Integer initialSize =2; } ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TCategoryController.java
@@ -43,7 +43,8 @@ @ApiOperation(value = "列表查询", tags = {"2.0新增-题目分类管理"}) public R<PageInfo<CategoryVO>> subjectList(@RequestBody CategoryQuery query) { query.setState(1); List<Integer> integers = new ArrayList<>(); List<Integer> integers1 = new ArrayList<>(); List<Integer> integers2 = new ArrayList<>(); if (StringUtils.hasLength(query.getSecondName())){ List<Integer> collect = categoryService.lambdaQuery() @@ -51,7 +52,12 @@ .eq(TCategory::getState, query.getState()) .like(TCategory::getName, query.getSecondName()) .list().stream().map(TCategory::getParentId).collect(Collectors.toList()); integers.addAll(collect); integers2.addAll(collect); if (integers2.isEmpty()){ integers2.add(-1); } query.setSecondIds(integers2); } if (StringUtils.hasLength(query.getFirstName())){ List<Integer> collect = categoryService.lambdaQuery() @@ -59,14 +65,14 @@ .eq(TCategory::getState, query.getState()) .like(TCategory::getName, query.getFirstName()) .list().stream().map(TCategory::getId).collect(Collectors.toList()); integers.addAll(collect); } if (StringUtils.hasLength(query.getSecondName())&&StringUtils.hasLength(query.getFirstName())){ if (integers.isEmpty()){ integers.add(-1); integers1.addAll(collect); if (integers1.isEmpty()){ integers1.add(-1); } query.setFirstIds(integers1); } query.setFirstIds(integers); PageInfo<CategoryVO> res = new PageInfo<>(query.getPageNumber(), query.getPageSize()); List<CategoryVO> list = categoryService.listAll(query,res); ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TStudyController.java
@@ -198,12 +198,17 @@ 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()); @@ -211,15 +216,15 @@ 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()); } @@ -233,9 +238,8 @@ 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()); @@ -250,8 +254,8 @@ 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()); @@ -266,9 +270,8 @@ 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()); } @@ -282,9 +285,8 @@ 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()); } @@ -319,6 +321,7 @@ 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>() @@ -419,6 +422,15 @@ 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()) @@ -435,6 +447,15 @@ 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()) @@ -454,6 +475,15 @@ 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) @@ -471,6 +501,15 @@ 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) @@ -486,9 +525,17 @@ 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()) @@ -1058,58 +1105,6 @@ 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); } @@ -1553,6 +1548,7 @@ if (null == userStudy) { return R.tokenError("登录失效!"); } System.err.println("答题DTO"+answerQuestionDTO); TSubjectRecordDetail byId = subjectRecordDetailService.getById(answerQuestionDTO.getId()); byId.setUserId(null); byId.setStatus(answerQuestionDTO.getStatus()); @@ -1780,6 +1776,8 @@ 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()); // 框架记忆数量翻倍,前端需要根据数量画格子 ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TSubjectController.java
@@ -61,25 +61,27 @@ public R<PageInfo<SubjectVO>> subjectList(@RequestBody SubjectQuery query) { PageInfo<SubjectVO> res = new PageInfo<>(query.getPageNumber(), query.getPageSize()); List<Integer> integers = new ArrayList<>(); if (StringUtils.hasLength(query.getCategoryName())){ List<Integer> collect = categoryService.lambdaQuery() .eq(TCategory::getType, 2) .eq(TCategory::getState, 1) .like(TCategory::getName, query.getCategoryName()) .list().stream().map(TCategory::getParentId).collect(Collectors.toList()); integers.addAll(collect); List<Integer> collect2 = categoryService.lambdaQuery() if (StringUtils.hasLength(query.getCategoryName())) { // 查询分类id包含的 List<Integer> collect = categoryService.lambdaQuery().eq(TCategory::getState, 1) .eq(TCategory::getType, 1) .eq(TCategory::getState, 1) .like(TCategory::getName, query.getCategoryName()) .list().stream().map(TCategory::getId).collect(Collectors.toList()); integers.addAll(collect2); } if (StringUtils.hasLength(query.getCategoryName())){ if (integers.isEmpty()){ integers.add(-1); .like(TCategory::getName, query.getCategoryName()).list() .stream().map(TCategory::getId).collect(Collectors.toList());// 查询分类id包含的 List<Integer> collect2 = categoryService.lambdaQuery().eq(TCategory::getState, 1) .eq(TCategory::getType, 2) .like(TCategory::getName, query.getCategoryName()).list() .stream().map(TCategory::getId).collect(Collectors.toList()); collect.addAll(collect2); if (collect2.isEmpty()) { if (collect.isEmpty()) { collect.add(-1); } integers = collect; }else{ integers = collect2; } } query.setIds(integers); List<SubjectVO> list = subjectService.listAll(query); for (SubjectVO subjectVO : list) { ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/dto/CategoryQuery.java
@@ -16,6 +16,8 @@ private String secondName; @ApiModelProperty(value = "一级分类ids 前端忽略") private List<Integer> firstIds; @ApiModelProperty(value = "二级分类ids 前端忽略") private List<Integer> secondIds; @ApiModelProperty(value = "类型 1题目 2故事", required = true) private Integer state; @ApiModelProperty(value = "页码,首页1", required = true) ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/dto/SubjectQuery.java
@@ -22,6 +22,10 @@ private String categoryName; @ApiModelProperty(value = "分类ids 前端忽略") private List<Integer> ids; @ApiModelProperty(value = "一级分类ids 前端忽略") private List<Integer> first; @ApiModelProperty(value = "二级分类ids 前端忽略") private List<Integer> second; @ApiModelProperty(value = "页码,首页1", required = true) private Integer pageNumber; @ApiModelProperty(value = "页条数", required = true) ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TStudyServiceImpl.java
@@ -509,7 +509,8 @@ subs.add(data); } subjectList.add(subs); List<TSubjectRecordDetail> tSubjectRecordDetail1 = list.stream().filter(e -> e.getObjectId().equals(studyListen.getId())).collect(Collectors.toList()); List<TSubjectRecordDetail> tSubjectRecordDetail1 = list.stream() .filter(e -> e.getObjectId().equals(studyListen.getId())).collect(Collectors.toList()); if (tSubjectRecordDetail1.isEmpty()){ for (int i = 0; i < 4; i++) { @@ -520,9 +521,9 @@ tSubjectRecordDetail.setType(1); tSubjectRecordDetail.setStatus(1); tSubjectRecordDetail.setObjectId(studyListen.getId()); subjectRecordDetailService.save(tSubjectRecordDetail); tSubjectRecordDetails.add(tSubjectRecordDetail); } subjectRecordDetailService.saveBatch(tSubjectRecordDetails); }else{ tSubjectRecordDetails.addAll(tSubjectRecordDetail1); } @@ -859,6 +860,12 @@ if (answerList.isEmpty()) { throw new GlobalException("当前学习周目题目数量不足!"); } if (answerList.size()<4){ throw new GlobalException("当前学习周目题目数量不足!"); } if (answerList.size()%4!=0){ throw new GlobalException("当前学习周目题目数量不足"); } // 题组信息 LearnStudyVO learnStudy = new LearnStudyVO(); String ids = answerList.stream().map(TStudyAnswer::getId).map(String::valueOf) @@ -928,13 +935,6 @@ voAdd(voList, one); voAdd(voList, two); subjectList.add(voList); } for (int i = 0; i < answerList.size(); i += 4) { // 一组题目为四道题, TStudyAnswer one = answerList.get(i); TStudyAnswer two = answerList.get(i + 1); TStudyAnswer three = answerList.get(i + 2); TStudyAnswer four = answerList.get(i + 3); TSubjectRecordDetail tSubjectRecordDetail = new TSubjectRecordDetail(); tSubjectRecordDetail.setUserId(userid); tSubjectRecordDetail.setWeek(week); @@ -943,15 +943,15 @@ tSubjectRecordDetail.setStatus(1); tSubjectRecordDetail.setOne(one.getId()); tSubjectRecordDetail.setTwo(two.getId()); tSubjectRecordDetail.setThree(three.getId()); tSubjectRecordDetail.setFour(four.getId()); tSubjectRecordDetails.add(tSubjectRecordDetail); } subjectRecordDetailService.saveBatch(tSubjectRecordDetails); studyListenResultVO.setList(tSubjectRecordDetails); studyListenResultVO.setAccuracy(new BigDecimal("0.00")); } else { List<TSubjectRecordDetail> tSubjectRecordDetails1 = new ArrayList<TSubjectRecordDetail>(); List<TSubjectRecordDetail> tSubjectRecordDetails = new ArrayList<>(); for (int i = 0; i < answerList.size(); i += Constants.TWO) { List<QuestionsAnswersSubjectVO> voList = new ArrayList<>(); @@ -961,31 +961,14 @@ voAdd(voList, one); voAdd(voList, two); subjectList.add(voList); } List<TSubjectRecordDetail> tSubjectRecordDetails1 = new ArrayList<TSubjectRecordDetail>(); for (int i = 0; i < answerList.size(); i += 4) { TStudyAnswer one = answerList.get(i); TStudyAnswer two = answerList.get(i + 1); TStudyAnswer three = answerList.get(i + 2); TStudyAnswer four = answerList.get(i + 3); TSubjectRecordDetail tSubjectRecordDetail = new TSubjectRecordDetail(); tSubjectRecordDetail.setUserId(userid); tSubjectRecordDetail.setWeek(week); tSubjectRecordDetail.setDay(day); tSubjectRecordDetail.setType(4); int size = list.size(); if (size-1>=i/4){ tSubjectRecordDetail.setStatus(list.get(i/4).getStatus()); }else{ tSubjectRecordDetail.setStatus(1); } tSubjectRecordDetail.setStatus(1); tSubjectRecordDetail.setOne(one.getId()); tSubjectRecordDetail.setTwo(two.getId()); tSubjectRecordDetail.setThree(three.getId()); tSubjectRecordDetail.setFour(four.getId()); tSubjectRecordDetails.add(tSubjectRecordDetail); tSubjectRecordDetails1.add(tSubjectRecordDetail); } @@ -1155,8 +1138,8 @@ tSubjectRecordDetail.setType(5); tSubjectRecordDetail.setStatus(1); tSubjectRecordDetail.setObjectId(data.getId()); tSubjectRecordDetails.add(tSubjectRecordDetail); subjectRecordDetailService.save(tSubjectRecordDetail); tSubjectRecordDetails.add(tSubjectRecordDetail); }else{ tSubjectRecordDetails.addAll(tSubjectRecordDetail1); } @@ -1166,13 +1149,14 @@ studyListenResultVO.setAccuracy(new BigDecimal(tSubjectRecordDetails.stream().filter(tSubjectRecordDetail -> tSubjectRecordDetail.getStatus().equals(2)).count()) .divide(new BigDecimal(tSubjectRecordDetails.size()), 2, RoundingMode.HALF_UP)); } System.err.println("音图相配返回VO"+studyListenResultVO.getList()); return R.ok(studyListenResultVO); } @Override public int computeSchedule(TUserStudy result, Integer week) { System.err.println("用户学习进度"+result); List<TStudy> studyList = this.lambdaQuery().eq(TStudy::getDisabled, 0) .eq(TStudy::getType, 1) .orderByAsc(TStudy::getWeek).list(); // 基础学习进度 Integer day = result.getDay(); @@ -1202,6 +1186,8 @@ thisQuarter = key; } } System.err.println("当前进入周目所属季度"+studyQuarter); System.err.println("进入周目所属季度"+thisQuarter); // 默认进度为 0 int defaultSchedule; // 季度判断 @@ -1219,6 +1205,7 @@ } else if (studyIndex < weekIndex) { defaultSchedule = 0; } else { System.err.println("学习到Day"+day); // 根据day初始化学习进度 if (Constants.ONE.equals(day)) { defaultSchedule = 0; @@ -1231,7 +1218,7 @@ } else if (Constants.FIVE.equals(day)) { defaultSchedule = 80; } else { defaultSchedule = 0; defaultSchedule = 80; } // 根据五种学习计算进度 Integer listen = result.getListen(); @@ -1256,46 +1243,7 @@ } } } // week以超过当前week,进度为 100% /*if (itemBool) { defaultSchedule = 100; } else { // 根据day初始化学习进度 if (Constants.ONE.equals(day)) { defaultSchedule = 0; } else if (Constants.TWO.equals(day)) { defaultSchedule = 20; } else if (Constants.THREE.equals(day)) { defaultSchedule = 40; } else if (Constants.FOUR.equals(day)) { defaultSchedule = 60; } else if (Constants.FIVE.equals(day)) { defaultSchedule = 80; } else { defaultSchedule = 0; } // 根据五种学习计算进度 Integer listen = result.getListen(); if (!Constants.BURDEN_ONE.equals(listen)) { defaultSchedule += (int) (((double) listen / 100) * 4); } Integer look = result.getLook(); if (!Constants.BURDEN_ONE.equals(look)) { defaultSchedule += (int) (((double) look / 100) * 4); } Integer induction = result.getInduction(); if (!Constants.BURDEN_ONE.equals(induction)) { defaultSchedule += (int) (((double) induction / 100) * 4); } Integer answer = result.getAnswer(); if (!Constants.BURDEN_ONE.equals(answer)) { defaultSchedule += (int) (((double) answer / 100) * 4); } Integer pair = result.getPair(); if (!Constants.BURDEN_ONE.equals(pair)) { defaultSchedule += (int) (((double) pair / 100) * 4); } }*/ return defaultSchedule; } ruoyi-service/ruoyi-study/src/main/resources/mapper/sutdy/TCategoryMapper.xml
@@ -17,6 +17,12 @@ #{item} </foreach> </if> <if test="null != req.secondIds and req.secondIds.size()>0" > and id in <foreach collection="req.secondIds" close=")" open="(" item="item" separator=","> #{item} </foreach> </if> and type = 1 and disabled = 0 order by createTime desc