Bläddra i källkod

fix 商品绑模块

he2802 3 år sedan
förälder
incheckning
e795c2d190

+ 6 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/service/impl/GoodsServiceImpl.java

@@ -321,6 +321,12 @@ public class GoodsServiceImpl extends ServiceImpl<GoodsMapper, Goods> implements
         }
         //模块章列表
         if(bo.getMenuList()!=null&&bo.getMenuList().size()>0){
+            //绑定虚拟课程ID
+            GoodsCourse addItem = new GoodsCourse();
+            addItem.setGoodsId(update.getGoodsId());
+            addItem.setCourseId(bo.getCourseId());
+            addItem.setSort(0);
+            iGoodsCourseService.save(addItem);
             if(Validator.isEmpty(bo.getCourseId())){
                 CourseMenuListAddBo menuListAddBo = new CourseMenuListAddBo();
                 menuListAddBo.setGoodsId(bo.getGoodsId());

+ 77 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/service/impl/ClassGradeUserServiceImpl.java

@@ -1276,7 +1276,84 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
         List<ClassPeriodVo> classPeriodVos = baseMapper.listPeriodAudit(bo);
         classPeriodVos.addAll(baseMapper.listPeriodAuditSection(bo));
         Collections.sort(classPeriodVos);
+        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();
+        Long courseId = bo.getCourseId();
+        for (ClassPeriodVo classPeriodVo : classPeriodVos) {
+            //为模块搜索下面的章 和节 并搜索学时记录
+            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);
 
+                                classPeriodSectionVo.setModuleId(classPeriodVo.getId());
+                                classPeriodSectionVo.setChapterId(classPeriodChapterVo.getId());
+                                classPeriodSectionVo.setGoodsId(goodsId);
+                                classPeriodSectionVo.setGradeId(gradeId);
+                                classPeriodSectionVo.setCourseId(courseId);
+                                studyList.add(mergeData(i, moduleName, chapterName, sectionName, classPeriodSectionVo, (new BigDecimal(0)), false));
+                            } else {
+                                //章卷
+                                sectionName = classPeriodSectionVo.getTypeName();
+                                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));
+                            }
+                        }
+                    }
+                }
+            }
+        }
         return classPeriodVos;
     }