liujie
2025-11-12 da7c60b16168fb5845d3a5dae10b0adaee1108d0
update
1个文件已修改
33 ■■■■■ 已修改文件
ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TStudyServiceImpl.java 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TStudyServiceImpl.java
@@ -484,7 +484,7 @@
                    if(studyListen.getType()!=null && studyListen.getType()==2 && i<2){
                        data.setStudyType(2);
                    }
                    subs.add(data);
                    TSubjectRecordDetail tSubjectRecordDetail = new TSubjectRecordDetail();
                    tSubjectRecordDetail.setUserId(userid);
                    tSubjectRecordDetail.setWeek(week);
@@ -492,14 +492,16 @@
                    tSubjectRecordDetail.setType(1);
                    tSubjectRecordDetail.setStatus(1);
                    tSubjectRecordDetail.setObjectId(studyListen.getId());
                    tSubjectRecordDetail.setSubject(data);
                    tSubjectRecordDetail.setSubjectId(data.getId());
                    tSubjectRecordDetails.add(tSubjectRecordDetail);
                    subjectRecordDetailService.save(tSubjectRecordDetail);
                    i++;
                    data.setTSubjectRecordDetail(tSubjectRecordDetail);
                    subs.add(data);
                }
                subjectList.add(subs);
            }
            subjectRecordDetailService.saveBatch(tSubjectRecordDetails);
//            subjectRecordDetailService.saveBatch(tSubjectRecordDetails);
            studyListenResultVO.setList(tSubjectRecordDetails);
            studyListenResultVO.setAccuracy(new BigDecimal("0.00"));
@@ -509,6 +511,7 @@
            for (TStudyListen studyListen : studyListens) {
                List<String> subjectIds = Arrays.stream(studyListen.getSubject().split(",")).collect(Collectors.toList());
                List<TSubject> subs = new ArrayList<>();
                List<TSubject> subsTemp = new ArrayList<>();
                // 图片及语音集合
                int temp=0;
                for (String id : subjectIds) {
@@ -520,7 +523,7 @@
                    temp++;
                    subs.add(data);
                }
                subjectList.add(subs);
                List<TSubjectRecordDetail> tSubjectRecordDetail1 = list.stream()
                        .filter(e -> e.getObjectId().equals(studyListen.getId())).collect(Collectors.toList());
@@ -533,17 +536,33 @@
                        tSubjectRecordDetail.setType(1);
                        tSubjectRecordDetail.setStatus(1);
                        tSubjectRecordDetail.setObjectId(studyListen.getId());
                        TSubject tSubject = subs.get(i);
                        tSubjectRecordDetail.setSubjectId(tSubject.getId());
                        subjectRecordDetailService.save(tSubjectRecordDetail);
                        tSubjectRecordDetail.setSubject(subs.get(i));
                        tSubjectRecordDetails.add(tSubjectRecordDetail);
                        tSubject.setTSubjectRecordDetail(tSubjectRecordDetail);
                        subsTemp.add(tSubject);
                    }
                }else{
                    for (int i = 0; i < 4; i++) {
                        TSubjectRecordDetail tSubjectRecordDetail = tSubjectRecordDetail1.get( i);
                        tSubjectRecordDetail.setSubject(subs.get(i));
                        Integer subjectId = tSubjectRecordDetail.getSubjectId();
                        TSubject tSubject = subs.stream().filter(e -> e.getId().equals(subjectId)).findFirst().orElse(null);
                        if(tSubject!=null){
                            tSubject.setTSubjectRecordDetail(tSubjectRecordDetail);
                            subsTemp.add(tSubject);
                        }else {
                            TSubject tSubject1 = subs.get(i);
                            tSubjectRecordDetail.setSubjectId(tSubject1.getId());
                            subjectRecordDetailService.updateById(tSubjectRecordDetail);
                            tSubject1.setTSubjectRecordDetail(tSubjectRecordDetail);
                            subsTemp.add(tSubject1);
                        }
                        tSubjectRecordDetails.add(tSubjectRecordDetail);
                    }
                }
                subjectList.add(subsTemp);
            }
            studyListenResultVO.setList(tSubjectRecordDetails);