|
@@ -208,6 +208,9 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
|
|
|
@Autowired
|
|
|
private CourseShareService courseShareService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private VipGroupService vipGroupService;
|
|
|
+
|
|
|
private static final Logger LOGGER = LoggerFactory.getLogger(VipGroup.class);
|
|
|
|
|
|
@Override
|
|
@@ -5021,11 +5024,9 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
|
|
|
courseScheduleDao.updateRemindStatus(ids);
|
|
|
CompletableFuture.runAsync(() -> {
|
|
|
for (CourseSchedule courseSchedule : courseSchedules) {
|
|
|
- createVipGroupLiveRoom(courseSchedule.getId().toString(), courseSchedule);
|
|
|
+ vipGroupService.createVipGroupLiveRoom(courseSchedule.getId().toString(), courseSchedule);
|
|
|
}
|
|
|
});
|
|
|
-
|
|
|
-
|
|
|
}
|
|
|
|
|
|
|
|
@@ -5033,9 +5034,10 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
|
|
|
* 创建网络课直播间
|
|
|
* @param roomId 课程房间编号
|
|
|
* @param courseSchedule 课程信息
|
|
|
- * @return ImLiveBroadcastRoom
|
|
|
*/
|
|
|
- private void createVipGroupLiveRoom(String roomId, CourseSchedule courseSchedule) {
|
|
|
+ @Override
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
+ public void createVipGroupLiveRoom(String roomId, CourseSchedule courseSchedule) {
|
|
|
//记录用户实际选择的房间
|
|
|
if (courseSchedule.getGroupType() == GroupType.COMM) {
|
|
|
roomId = "I" + roomId;
|
|
@@ -5066,6 +5068,10 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
|
|
|
DateTime time = DateTime.parse(liveStartTime, DateTimeFormat.forPattern(DateUtil.DEFAULT_PATTERN + " " + DateUtil.EXPANDED_TIME_FORMAT));
|
|
|
|
|
|
String roomUid = "LIVE-" + roomId + "-" + time.toDate().getTime();
|
|
|
+ ImLiveBroadcastRoom room = imLiveBroadcastRoomService.getByRoomUid(roomUid);
|
|
|
+ if (Objects.nonNull(room)) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
liveRoom.setTenantId(TenantContextHolder.getTenantId());
|
|
|
liveRoom.setRoomUid(roomUid);
|
|
|
//liveRoom.setRoomConfig(liveRoom.getRoomConfig());
|
|
@@ -5082,7 +5088,13 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
|
|
|
imLiveBroadcastRoomService.save(liveRoom);
|
|
|
|
|
|
// 开启直播间
|
|
|
- imLiveBroadcastRoomService.createLiveRoom(liveRoom);
|
|
|
+ try {
|
|
|
+ imLiveBroadcastRoomService.createLiveRoom(liveRoom);
|
|
|
+
|
|
|
+ } catch (Exception e) {
|
|
|
+ log.error("创建直播间失败", e);
|
|
|
+ imLiveBroadcastRoomService.removeById(liveRoom.getId());
|
|
|
+ }
|
|
|
|
|
|
// 更新课程关联直播间
|
|
|
CourseSchedule schedule = new CourseSchedule();
|