|
@@ -34,6 +34,7 @@ import com.ym.mec.biz.dal.entity.ImLiveBroadcastRoomData;
|
|
|
import com.ym.mec.biz.dal.entity.ImLiveBroadcastRoomMember;
|
|
|
import com.ym.mec.biz.dal.entity.ImLiveRoomBlack;
|
|
|
import com.ym.mec.biz.dal.entity.ImLiveRoomVideo;
|
|
|
+import com.ym.mec.biz.dal.enums.EGroupDefinedDataType;
|
|
|
import com.ym.mec.biz.dal.enums.MessageTypeEnum;
|
|
|
import com.ym.mec.biz.dal.page.LiveRoomGoodsOrderQueryInfo;
|
|
|
import com.ym.mec.biz.dal.vo.*;
|
|
@@ -415,6 +416,10 @@ public class ImLiveBroadcastRoomServiceImpl extends ServiceImpl<ImLiveBroadcastR
|
|
|
roomConfig.setWhether_chat(whetherChat);
|
|
|
obj.setRoomConfig(JSONObject.toJSONString(roomConfig));
|
|
|
this.updateById(obj);
|
|
|
+
|
|
|
+
|
|
|
+ ImLiveBroadcastRoomVo roomVo = getImLiveBroadcastRoomVo(obj.getRoomUid());
|
|
|
+ setGroupDefinedData(roomVo,EGroupDefinedDataType.GLOBAL_BAN,whetherChat.toString());
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -1167,7 +1172,7 @@ public class ImLiveBroadcastRoomServiceImpl extends ServiceImpl<ImLiveBroadcastR
|
|
|
.update(room);
|
|
|
|
|
|
// 设置直播群组自定义数据
|
|
|
- setGroupDefinedData(roomVo,false);
|
|
|
+ setGroupDefinedData(roomVo,EGroupDefinedDataType.ANCHOR_STATUS,"OFFLINE");
|
|
|
|
|
|
return true;
|
|
|
}
|
|
@@ -1214,16 +1219,16 @@ public class ImLiveBroadcastRoomServiceImpl extends ServiceImpl<ImLiveBroadcastR
|
|
|
.update();
|
|
|
|
|
|
// 设置直播群组自定义数据
|
|
|
- setGroupDefinedData(roomVo,true);
|
|
|
+ setGroupDefinedData(roomVo,EGroupDefinedDataType.ANCHOR_STATUS,"ONLINE");
|
|
|
|
|
|
return roomVo;
|
|
|
}
|
|
|
|
|
|
- private void setGroupDefinedData( ImLiveBroadcastRoomVo roomVo,Boolean onlineStatus) {
|
|
|
+ private void setGroupDefinedData(ImLiveBroadcastRoomVo roomVo, EGroupDefinedDataType type, String value) {
|
|
|
List<TencentRequest.ChatRoomGroupDefinedData> appDefinedData = new ArrayList<>();
|
|
|
appDefinedData.add(TencentRequest.ChatRoomGroupDefinedData.builder()
|
|
|
- .key("ANCHOR_STATUS")
|
|
|
- .value(onlineStatus?"ONLINE":"OFFLINE")
|
|
|
+ .key(type.getCode())
|
|
|
+ .value(value)
|
|
|
.build());
|
|
|
try {
|
|
|
livePluginContext.getPluginService(roomVo.getServiceProvider())
|
|
@@ -1598,6 +1603,18 @@ public class ImLiveBroadcastRoomServiceImpl extends ServiceImpl<ImLiveBroadcastR
|
|
|
//推送直播开始消息
|
|
|
this.sendRoomLiveState(sysUser, room, MessageTypeEnum.JIGUANG_LIVE_STARTED);
|
|
|
|
|
|
+ // 查询黑名单人员
|
|
|
+ List<ImLiveRoomBlack> blackList = imLiveRoomBlackService.lambdaQuery()
|
|
|
+ .eq(ImLiveRoomBlack::getRoomUid, room.getRoomUid())
|
|
|
+ .list();
|
|
|
+
|
|
|
+ ImLiveBroadcastRoomVo roomVo = getImLiveBroadcastRoomVo(room.getRoomUid());
|
|
|
+ if (CollectionUtils.isNotEmpty(blackList)) {
|
|
|
+ // 将黑名单人员踢出房间
|
|
|
+ for (ImLiveRoomBlack black : blackList) {
|
|
|
+ imLiveRoomBlackService.setBlack(black.getUserId(),roomVo);
|
|
|
+ }
|
|
|
+ }
|
|
|
} catch (Exception e) {
|
|
|
log.error(">>>>>>>>>> createLiveRoom error roomUid:{} msg:{}", room.getRoomUid(), e.getMessage());
|
|
|
}
|