Pārlūkot izejas kodu

分享人员进入时,直播间没创建

liujc 2 gadi atpakaļ
vecāks
revīzija
91c02b9d3f

+ 0 - 14
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ImLiveBroadcastRoomServiceImpl.java

@@ -1894,20 +1894,6 @@ public class ImLiveBroadcastRoomServiceImpl extends ServiceImpl<ImLiveBroadcastR
         // 保存直播间用户信息
         liveBroadcastRoomMemberService.save(roomMember);
 
-        if ("LIVE".equals(imLiveBroadcastRoomVo.getGroupType())) {
-
-            // 课程ID
-            CourseSchedule courseSchedule = courseScheduleDao.findByRoomUid(imLiveBroadcastRoomVo.getRoomUid(), GroupType.LIVE);
-            if (Objects.isNull(courseSchedule)) {
-                return userInfo;
-            }
-            try {
-                courseShareService.createPaymentRecord(courseSchedule.getId(),userId);
-            } catch (Exception e) {
-                log.error("getLiveRoomUserInfo>>>> createPaymentRecord error", e);
-            }
-        }
-
         return userInfo;
     }
 

+ 14 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupServiceImpl.java

@@ -5070,6 +5070,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
         liveRoom.setCreatedTime(DateTime.now().toDate());
         liveRoom.setLiveStartTime(DateTime.now().toDate());
         liveRoom.setTenantId(courseSchedule.getTenantId());
+        courseSchedule.setLiveRoomId(roomUid);
 
         // 创建直播间
         imLiveBroadcastRoomService.save(liveRoom);
@@ -5180,6 +5181,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
     }
 
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public LiveGroupWrapper.LiveCourseInfo joinLiveRoomByShare(Integer courseScheduleId,Integer studentId) {
 
         //  判断课程类型
@@ -5215,6 +5217,18 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
         if (CourseStatusEnum.OVER.equals(courseSchedule.getStatus())) {
             throw new BizException("课程已结束");
         }
+        if (StringUtils.isBlank(courseSchedule.getLiveRoomId())) {
+
+            createVipGroupLiveRoom(courseSchedule.getId().toString(), courseSchedule);
+
+        }
+
+        try {
+            courseShareService.createPaymentRecord(courseSchedule.getId(),studentId);
+        } catch (Exception e) {
+            log.error("getLiveRoomUserInfo>>>> createPaymentRecord error", e);
+        }
+
 
         return LiveGroupWrapper.LiveCourseInfo.builder()
                 .studentId(studentId)