zouxuan 2 năm trước cách đây
mục cha
commit
a5afd44117

+ 4 - 7
mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupServiceImpl.java

@@ -4791,10 +4791,12 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
         MapUtil.populateMap(params, queryInfo);
         // VIP小课
         List<StudentVipGroupShowListDto> vipGroups = vipGroupDao.findVipGroups(params);
-        // 直播课
-        vipGroups.addAll(vipGroupDao.findLiveGroups(params));
         // 网课
         vipGroups.addAll(practiceGroupService.findPracticeGroups(params));
+        Student student = studentDao.get(queryInfo.getUserId());
+        // 直播课
+        params.put("subjectId",student.getSubjectIdList());
+        vipGroups.addAll(vipGroupDao.findLiveGroups(params));
         // 删除返回null值数据
         vipGroups.removeAll(Collections.singleton(null));
         // 按照创建时间倒序
@@ -4982,11 +4984,6 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
             courseSchedules.forEach(next->next.setShareMode(ShareModeEnum.NO_SHARE));
         } else {
             courseSchedules =  courseScheduleDao.findGroupCourseSchedules(vipGroup.getId().toString(), GroupType.LIVE.getCode());
-            if (CollectionUtils.isEmpty(courseSchedules)) {
-                courseSchedules =  JSON.parseArray(vipGroup.getCourseSchedulesJson(), CourseSchedule.class);
-                // 报名中的课程默认未分享,不能修改
-                courseSchedules.forEach(next->next.setShareMode(ShareModeEnum.NO_SHARE));
-            }
         }
         // 添加共享方式过滤
         ShareModeEnum shareMode = query.getShareMode();

+ 7 - 7
mec-biz/src/main/resources/config/mybatis/VipGroupMapper.xml

@@ -432,8 +432,8 @@
             <if test="organId != null">
                 AND FIND_IN_SET(#{organId},vg.organ_id_list_)
             </if>
-            <if test="subjectId!=null">
-                AND FIND_IN_SET(#{subjectId},cg.subject_id_list_)
+            <if test="subjectId != null and subjectId != ''">
+                AND (JSON_EXTRACT(live_config_json_, '$.subjectId') = "31" OR FIND_IN_SET(#{subjectId},cg.subject_id_list_))
             </if>
             <if test="subjectId!=null">
                 AND FIND_IN_SET(#{subjectId},cg.subject_id_list_)
@@ -442,10 +442,10 @@
                 AND FIND_IN_SET(vg.vip_group_category_id_,#{categoryId})
             </if>
             <if test="classType!=null and classType.toString()=='0'.toString()">
-                AND vg.offline_classes_num_>0
+                AND vg.offline_classes_num_ > 0
             </if>
             <if test="classType!=null and classType.toString()=='1'.toString()">
-                AND vg.online_classes_num_>0
+                AND vg.online_classes_num_ > 0
             </if>
             <if test="search != null and search != ''">
                 AND vg.name_ like concat('%',#{search},'%')
@@ -478,9 +478,9 @@
         vg.group_type_
         FROM
         vip_group vg
-        LEFT JOIN class_group cg ON vg.id_=cg.music_group_id_ AND cg.group_type_ = vg.group_type_
-        LEFT JOIN teacher t ON vg.user_id_=t.id_
-        LEFT JOIN sys_user su ON vg.user_id_=su.id_
+        LEFT JOIN class_group cg ON vg.id_ = cg.music_group_id_ AND cg.group_type_ = vg.group_type_
+        LEFT JOIN teacher t ON vg.user_id_ = t.id_
+        LEFT JOIN sys_user su ON vg.user_id_ = su.id_
         LEFT JOIN vip_group_activity vga ON vg.vip_group_activity_id_=vga.id_
         LEFT JOIN vip_group_category vgc ON vg.vip_group_category_id_=vgc.id_
         <include refid="studentVipGroupQueryCondition"/>