房间内部优化。

This commit is contained in:
2025-11-08 17:45:45 +08:00
parent 33c2bf2ffd
commit a1901a130f
25 changed files with 235 additions and 376 deletions

View File

@@ -109,6 +109,7 @@ import com.xscm.moduleutil.bean.RoomSingleton
import com.xscm.moduleutil.bean.UserInfo
import com.xscm.moduleutil.bean.UserOnlineStatusBean
import com.xscm.moduleutil.bean.XLHBean
import com.xscm.moduleutil.bean.room.EMMessageInfo
import com.xscm.moduleutil.bean.room.FriendInfo.HeartList
import com.xscm.moduleutil.bean.room.FriendUserBean
import com.xscm.moduleutil.bean.room.RoomAuction
@@ -178,6 +179,7 @@ import java.nio.charset.StandardCharsets
import java.util.Arrays
import java.util.Date
import java.util.stream.Collectors
import kotlin.math.E
@Route(path = ARouteConstants.ROOM_DETAILS)
class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
@@ -191,7 +193,6 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
//房间用户信息
private var mRoomUserBean: RoomUserBean? = null
private var mPitList: List<RoomPitBean> = ArrayList()
var password: String? = null
var roomId: String? = null
var mRoomInfoResp: RoomInfoResp? = null
@@ -274,7 +275,6 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
}
override fun onCreate(savedInstanceState: Bundle?) {
// 在super.onCreate之前设置主题以避免闪白屏
// setTheme(com.xscm.moduleutil.R.style.BaseAppTheme) // 设置你的主主题
@@ -876,7 +876,6 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
this.mRoomBean = roomBean
this.mRoomUserBean = resp.user_info
this.mRoomOwnerBean = resp.room_owner
this.mPitList = mRoomBean?.pit_list ?: ArrayList()
this.roomId = roomBean.room_id
ImageUtils.loadHeadCC(resp.room_info.room_cover, mBinding!!.roomTop.avatar)
@@ -938,9 +937,7 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
}
if (mRoomInfoResp!!.user_info.pit_number == 9 && mRoomInfoResp!!.user_info.user_id == SpUtil.getUserId()
.toString() + ""
) {
if (mRoomInfoResp!!.user_info.pit_number == 9 && mRoomInfoResp!!.user_info.user_id == SpUtil.getUserId()) {
mBinding!!.roomTop.rl.visibility = View.VISIBLE
ivSoundEffects(true)
} else {
@@ -1261,7 +1258,7 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
val msgType = messageEvent.msgType
val text = messageEvent.text
if (msgType == 1005) {
if (msgType == EMMessageInfo.QXRoomMessageTypeGift) {
LogUtils.e("@@@@" + "EventBusnujm2" + "playQueue.size()====" + messageEvent.text.giftInfo)
val playQueue = Arrays.asList(
*messageEvent.text.giftInfo.play_image.split(",".toRegex())
@@ -1269,8 +1266,8 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
)
QXGiftPlayerManager.getInstance(this).displayFullEffectView1(playQueue)
if (messageEvent!!.text.giftInfo != null) {
var giftBean = messageEvent.text.giftInfo
if (messageEvent.text.giftInfo != null) {
val giftBean = messageEvent.text.giftInfo
giftBean.nickname = messageEvent.text.fromUserInfo.nickname
giftBean.userAvatar = messageEvent.text.fromUserInfo.avatar
LogUtils.e("1005", messageEvent.text.toUserInfo?.nickname)
@@ -1280,94 +1277,99 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
GiftDisplayManager.getInstance().receiveGift(giftBean)
}
hand1005(messageEvent, text)
} else if (msgType == 123) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeClearMsg) {//清除当前消息
EventBus.getDefault().post(RoomSettingEvent())
} else if (msgType == 1014) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeAplayPitModeDidChanged) {
handleMsgType1014(messageEvent, text)
} else if (msgType == 1013) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeSwicthSong) {
handleMsgType1013(messageEvent, text)
} else if (msgType == 1012) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeRoomTypeChanged) {
handleMsgType1012()
} else if (msgType == 124) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeRoomMusicPlay) {//播放音乐
handleMsgType124(messageEvent, text)
} else if (msgType == 1003) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeUpSeat) {
handleMsgType1003(messageEvent, text)
} else if (msgType == 1004) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeDownSeat) {
handleMsgType1004(messageEvent, text)
} else if (msgType == 1022) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeAuctionIsUp) {
handleMsgType1022(messageEvent, text)
} else if (msgType == 1023) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeAuctionIsSelected) {
handleMsgType1023(messageEvent, text)
} else if (msgType == 1024) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeAuctionIsStart) {
handleMsgType1024(messageEvent, text)
} else if (msgType == 1025) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeAuctionIsEnd) {
roomFragment!!.handleRoomMessage(messageEvent)
} else if (msgType == 1026) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeCompereDelay) {
roomFragment!!.handleRoomMessage(messageEvent)
} else if (msgType == 1027) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeAuctionTypeChanged) {
roomFragment!!.handleRoomMessage(messageEvent)
} else if (msgType == 1020) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeRoomUpdate) {
handleMsgType1020(messageEvent, text)
} else if (msgType == 1011) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeTakeOff) {
handleMsgType1011(messageEvent, text)
} else if (msgType == 1001) {
handleMsgType1001()
} else if (msgType == 1002) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeJoin) {
handleMsgType1001(messageEvent)
} else if (msgType == EMMessageInfo.QXRoomMessageTypeQuit) {
handleMsgType1002(messageEvent, text)
} else if (msgType == 1029) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeRoomRecieveInvitePk) {
handleMsgType1029(messageEvent, text)
} else if (msgType == 1021) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeRoom) {
handleMsgType1021(messageEvent, text)
} else if (msgType == 1036) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeRoomOnline) {
handleMsgType1036(messageEvent, text)
} else if (msgType == 1049) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeRoomFriendPartDidChanged) {
handleMsgType1049(messageEvent, text)
} else if (msgType == 1050) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeRoomFriendDelayTime) {
handleMsgType1050(messageEvent, text)
} else if (msgType == 1051) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeRoomFriendCreateRelation) {
handleMsgType1051(messageEvent, text)
} else if (msgType == 1052) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeCabinTimeDelay) {
roomFragment!!.upCabinFragment(text.time_day)
} else if (msgType == 1053) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeSeatDidChanged) {
handleMsgType1053(messageEvent, text)
} else if (msgType == 1054) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeHeartDidChanged) {
handleMsgType1054(messageEvent, text)
} else if (msgType == 1055) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeHeartDid) {
handleMsgType1055(messageEvent)
} else if (msgType == 1035) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeRoomDress) {
handleMsgType1035(messageEvent, text)
} else if (msgType == 1030 || msgType == 1031 || msgType == 1032 || msgType == 1033 || msgType == 1015 || msgType == 1037) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeRoomPKAgreeOrRefuse
|| msgType == EMMessageInfo.QXRoomMessageTypeRoomPKStart
|| msgType == EMMessageInfo.QXRoomMessageTypeRoomPKEnd
|| msgType == EMMessageInfo.QXRoomMessageTypeRoomPKDisconnect
|| msgType == EMMessageInfo.QXRoomMessageTypePKValueDidChanged
|| msgType == EMMessageInfo.QXRoomMessageTypeRoomOPK
) {
roomFragment!!.handleRoomMessage(messageEvent)
if (msgType == 1032 || msgType == 1033) {
if (msgType == EMMessageInfo.QXRoomMessageTypeRoomPKEnd
|| msgType == EMMessageInfo.QXRoomMessageTypeRoomPKDisconnect
) {
setRoleType(3, -11)
}
} else if (msgType == 125) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeMuteRemoteAudio) {//pk 关闭对方麦
handleMsgType125(messageEvent, text.text)
} else if (msgType == 1006) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeSetManage) {
handleMsgType1006()
} else if (msgType == 1007) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeSetCompere) {
handleMsgType1007()
} else if (msgType == 1017) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeManagerIsDelete) {
handleMsgType1017()
} else if (msgType == 1018) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeCompereIsDelete) {
handleMsgType1018()
} else if (msgType == 126) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeMuteLocalAudio) { //小黑屋 关麦
handleMsgType126(messageEvent, text)
} else if (msgType == 1034) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeRoomMaiwrens) {
handleMsgType1034(messageEvent, text)
} else if (msgType == 1016) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeRoomTypeDidChanged) {
handleMsgType1016(messageEvent, text)
} else if (msgType == 1039) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypehm) {
handleMsgType1039(messageEvent, text)
} else if (msgType == 1028) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeRoomIsHostvalue) {
roomFragment!!.handleMsgType1028(messageEvent)
} else if (msgType == 1058) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypezailx) {
var userId = messageEvent!!.text!!.user_id!!
LogUtils.e("messageEvent!!.text.type" + messageEvent!!.text.type)
CommonAppContext.getInstance().onlineMap.set(
userId ?: "",
messageEvent!!.text.type
)
LogUtils.e("messageEvent!!.text.type" + messageEvent.text.type)
CommonAppContext.getInstance().onlineMap[userId ?: ""] = messageEvent.text.type
if (mRoomInfoResp != null && mRoomInfoResp!!.room_info != null) {
if (mRoomInfoResp!!.room_info.type_id == "1" || mRoomInfoResp!!.room_info.type_id == "3" ||
mRoomInfoResp!!.room_info.type_id == "4" || mRoomInfoResp!!.room_info.type_id == "8"
@@ -1385,7 +1387,7 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
}
CommonAppContext.getInstance().getOnlineMap()
} else if (msgType == 1059) { // 1059清除个人魅力 1058在离线
} else if (msgType == EMMessageInfo.QXRoomMessageTypeQingGRMl) { // 1059清除个人魅力 1058在离线
if (mRoomInfoResp != null && mRoomInfoResp!!.room_info != null) {
if (mRoomInfoResp!!.room_info.type_id == "1" || mRoomInfoResp!!.room_info.type_id == "3" ||
mRoomInfoResp!!.room_info.type_id == "4" || mRoomInfoResp!!.room_info.type_id == "8"
@@ -1401,7 +1403,7 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
roomFragment!!.handleRoomMessage(messageEvent)
}
}
} else if (msgType == 1056) { // 1056 抽奖结果
} else if (msgType == EMMessageInfo.QXRoomMessageTypeMangH) { // 1056 抽奖结果
val dialog = supportFragmentManager
.findFragmentByTag("GiftLotteryDialog") as GiftLotteryDialog?
if (dialog != null && dialog.isVisible) {
@@ -1419,7 +1421,7 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
releaseCountDownTimer1()
}
}
} else if (msgType == 1057) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeXlh) {
val existingFragment =
supportFragmentManager.findFragmentByTag("TourClubDialogFragment") as TourClubDialogFragment?
if (existingFragment != null && existingFragment.isVisible) {
@@ -1430,9 +1432,9 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
}
xlhDjs(messageEvent.text.end_time)
} else if (msgType == 1060) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeQXRoomMessageRed) {
qxRedPacketManager!!.addRedPacket(messageEvent.text.redpacketInfo)
} else if (msgType == 1061) {
} else if (msgType == EMMessageInfo.QXRoomMessageTypeQXRoomMessageRedRemove) {
qxRedPacketManager!!.removeRedPacket(messageEvent.text.redpacket_id)
}
}
@@ -1519,16 +1521,14 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
}
}
private val pitMap: MutableMap<String, RoomPitBean> = HashMap()
fun handleMsgType1039(messageEvent: RoomMessageEvent, text: T?) {
private fun handleMsgType1039(messageEvent: RoomMessageEvent, text: T?) {
if (mRoomInfoResp == null || mRoomInfoResp!!.room_info == null) {
return
}
val pitList = mRoomInfoResp!!.room_info.pit_list
if (pitList != null && !pitList.isEmpty()) {
if (pitList != null && !pitList.isEmpty()) {
if (text == null) {
return
}
@@ -1541,6 +1541,7 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
}
// 执行换麦逻辑
}
}
private fun performSwitchMic(
@@ -1548,18 +1549,21 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
toPitNumber: String,
messageEvent: RoomMessageEvent
) {
mRoomInfoResp!!.user_info.pit_number = Integer.parseInt(toPitNumber)
mRoomInfoResp!!.room_info.pit_list[toPitNumber.toInt() - 1] = getPitBean(messageEvent, 2)
mRoomInfoResp?.room_info?.pit_list!![fromPitNumber.toInt() - 1] = RoomPitBean()
if ("9" == toPitNumber && messageEvent.text.user_id.equals(SpUtil.getUserId().toString())) {
if ("9" == toPitNumber && messageEvent.text.fromUserInfo.user_id == SpUtil.getUserId()) {
mRoomInfoResp!!.user_info.pit_number = Integer.parseInt(toPitNumber)
mBinding!!.roomTop.rl.visibility = View.VISIBLE
ivSoundEffects(true)
setRoleType(3, mRoomInfoResp!!.user_info.pit_number)
} else {
if (customMusicFloatingView != null) {
customMusicFloatingView!!.destroy()
AgoraManager.getInstance(this@RoomActivity).desMusic()
isMusic = false
}
mBinding!!.roomTop.rl.visibility = View.GONE
ivSoundEffects(false)
}
@@ -1570,9 +1574,9 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
mBinding!!.roomTop.rl.visibility = View.VISIBLE
ivSoundEffects(true)
}
}
private fun hand1005(messageEvent: RoomMessageEvent, text: T?) {
if (text == null || mRoomInfoResp == null || mRoomInfoResp!!.room_info == null) return
roomFragment!!.handleRoomMessage(messageEvent)
@@ -1599,7 +1603,7 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
val userId2 = SpUtil.getUserId()
if (text.action == 1 && mRoomUserBean!!.user_id == userId2.toString() + "" && mRoomUserBean!!.pit_number == 9) {
if (text.action == 1 && mRoomUserBean!!.user_id == userId2 && mRoomUserBean!!.pit_number == 9) {
queren(text.fromUserInfo.nickname)
} else if (text.action == 4 && text.fromUserInfo.user_id == userId2) {
queren1(text.fromUserInfo.nickname)
@@ -1653,13 +1657,6 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
private fun handleMsgType1003(messageEvent: RoomMessageEvent, text: T?) {
if (text == null || mRoomInfoResp == null || mRoomInfoResp!!.room_info == null) return
if (roomFragment == null) {
roomFragment = RoomFragment.newInstance(this, mRoomInfoResp)
supportFragmentManager
.beginTransaction()
.replace(R.id.vp_room_pager, roomFragment!!)
.commitAllowingStateLoss()
}
val fromUserInfo = text.fromUserInfo ?: return
@@ -1684,11 +1681,11 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
switchMic(2)
}
val typeId = mRoomInfoResp!!.room_info.type_id
if ("2" == typeId) {
if ("9" == pitNumber) {
mRoomInfoResp!!.room_info.pit_list[0] = getPitBean(messageEvent)
mRoomInfoResp!!.room_info.pit_list[pitNumber.toInt() - 1] =
getPitBean(messageEvent, 1)
if (mRoomInfoResp!!.user_info != null) {
mRoomInfoResp!!.user_info.pit_number = pitNumber.toInt()
}
@@ -1700,10 +1697,8 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
if ("2" == labelId) {
roomFragment!!.handleRoomMessage(messageEvent)
} else if ("1" == labelId) {
mRoomInfoResp!!.room_info.pit_list.set(
pitNumber.toInt() - 1,
getPitBean(messageEvent)
)
mRoomInfoResp!!.room_info.pit_list[pitNumber.toInt() - 1] =
getPitBean(messageEvent, 1)
roomFragment!!.upRoomInfoData(mRoomInfoResp)
roomFragment!!.handleRoomMessage(messageEvent)
}
@@ -1726,21 +1721,6 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
val userId = fromUserInfo.user_id
val currentUserId = SpUtil.getUserId()
if (userId == currentUserId) {
aBoolean = true
ivWheatFeeding(com.xscm.moduleutil.R.mipmap.room_wheat_feeding)
setBoolean(aBoolean)
if (mRoomInfoResp!!.user_info != null) {
mRoomInfoResp!!.user_info.pit_number = 0
}
setRoleType(0, 0)
switchMic(2)
}
if (pitNumber == "9") {
ivSoundEffects(false)
}
if (userId == currentUserId && "9" == pitNumber) {
if (customMusicFloatingView != null) {
customMusicFloatingView!!.destroy()
@@ -1748,45 +1728,51 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
isMusic = false
}
mBinding!!.roomTop.rl.visibility = View.GONE
mRoomInfoResp?.user_info?.pit_number = 0
ivSoundEffects(false)
} else if (userId == currentUserId) {
aBoolean = true
ivWheatFeeding(com.xscm.moduleutil.R.mipmap.room_wheat_feeding)
setBoolean(aBoolean)
setRoleType(0, 0)
switchMic(2)
}
val typeId = mRoomInfoResp!!.room_info.type_id
if ("2" == typeId) {
if ("9" == pitNumber) {
if (userId == currentUserId) {
mRoomInfoResp!!.room_info.pit_list[0] = getPitBean2(messageEvent, "9")
if (mRoomInfoResp!!.user_info != null) {
mRoomInfoResp!!.user_info.pit_number = 0
val roomType = RoomType.fromTypeId(typeId)
when (roomType) {
RoomType.AUCTION -> {
if ("9" == pitNumber) {
if (userId == currentUserId) {
if (mRoomInfoResp!!.user_info != null) {
mRoomInfoResp!!.user_info.pit_number = 0
}
}
} else if ("888" == pitNumber) {
mRoomInfoResp!!.room_auction = null
if (userId == currentUserId) {
setRoleType(0, 0)
switchMic(2)
}
}
} else if ("888" == pitNumber) {
mRoomInfoResp!!.room_auction = null
if (userId == currentUserId) {
setRoleType(0, 0)
switchMic(2)
}
}
roomFragment!!.upRoomInfoData(mRoomInfoResp)
roomFragment!!.handleRoomMessage(messageEvent)
} else if ("3" == typeId || "4" == typeId || "1" == typeId || "8" == typeId) {
val labelId = mRoomInfoResp!!.room_info.label_id
if ("2" == labelId) {
roomFragment!!.handleRoomMessage(messageEvent)
} else if ("1" == labelId) {
mRoomInfoResp!!.room_info.pit_list.set(
pitNumber.toInt() - 1,
getPitBean2(messageEvent, pitNumber)
)
roomFragment!!.upRoomInfoData(mRoomInfoResp)
roomFragment!!.handleRoomMessage(messageEvent)
if (mRoomInfoResp!!.user_info.user_id == SpUtil.getUserId().toString() + "") {
ivSoundEffects(false)
}
RoomType.DATING -> {
val labelId = mRoomInfoResp!!.room_info.label_id
if ("1" == labelId) {
roomFragment!!.upRoomInfoData(mRoomInfoResp)
if (mRoomInfoResp!!.user_info.user_id == SpUtil.getUserId()) {
ivSoundEffects(false)
}
}
}
} else {
roomFragment!!.handleRoomMessage(messageEvent)
else -> {}
}
roomFragment!!.handleRoomMessage(messageEvent)
}
private fun handleMsgType1022(messageEvent: RoomMessageEvent, text: T?) {
@@ -1798,10 +1784,6 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
if (text.type == 1) {
if ("888" == pitNumber) {
var type = -1
if ("2" == mRoomInfoResp!!.room_info.type_id) {
type = if ("1" == mRoomInfoResp!!.room_info.label_id) 1 else 2
}
if (userId == currentUserId) {
setRoleType(3, 888)
switchMic(2)
@@ -1852,7 +1834,7 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
mRoomBean = text.roomInfo
EventBus.getDefault().post(mRoomBean)
changeBackgroundColor(mRoomBean?.getRoom_background())
changeBackgroundColor(mRoomBean?.room_background)
}
private fun handleMsgType1011(messageEvent: RoomMessageEvent, text: T?) {
@@ -1867,9 +1849,11 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
}
}
private fun handleMsgType1001() {
number++
mBinding!!.roomTop.tvNum.text = number.toString() + ""
private fun handleMsgType1001(messageEvent: RoomMessageEvent) {
if (messageEvent.text.fromUserInfo.user_id != SpUtil.getUserId()) {
number++
}
mBinding!!.roomTop.tvNum.text = number.toString()
}
private fun handleMsgType1002(messageEvent: RoomMessageEvent, text: T?) {
@@ -1877,7 +1861,7 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
if (number < 0) {
number = 0
}
mBinding!!.roomTop.tvNum.text = number.toString() + ""
mBinding!!.roomTop.tvNum.text = number.toString()
if (text == null || text.fromUserInfo == null) return
if (text.fromUserInfo.user_id == SpUtil.getUserId()) {
MessageListenerSingleton.quitGroup(roomId);
@@ -1889,9 +1873,7 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
private fun handleMsgType1029(messageEvent: RoomMessageEvent, text: T?) {
if (text == null || mRoomInfoResp == null || mRoomInfoResp!!.user_info == null) return
if (mRoomInfoResp!!.user_info.pit_number == 9 && mRoomInfoResp!!.user_info.user_id == SpUtil.getUserId()
.toString() + ""
) {
if (mRoomInfoResp!!.user_info.pit_number == 9 && mRoomInfoResp!!.user_info.user_id == SpUtil.getUserId()) {
querenPk(text.text, text.pkId)
}
}
@@ -1921,14 +1903,8 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
if (mRoomInfoResp == null || mRoomInfoResp!!.room_info == null) return
val pitList = mRoomInfoResp!!.room_info.pit_list ?: return
for (roomPitBean in pitList) {
pitList.forEach { roomPitBean ->
roomPitBean.charm = charm
try {
pitList[roomPitBean.pit_number.toInt() - 1] = roomPitBean
} catch (e: NumberFormatException) {
// Handle exception
}
}
}
@@ -2171,9 +2147,13 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
}
// TODO: 2025/6/30 上麦,麦位变化
private fun getPitBean(messageEvent: RoomMessageEvent): RoomPitBean {
private fun getPitBean(messageEvent: RoomMessageEvent, type: Int): RoomPitBean {
val pitBean = RoomPitBean()
pitBean.pit_number = messageEvent.text.pit_number
if (type == 1) {
pitBean.pit_number = messageEvent.text.pit_number
} else {
pitBean.pit_number = messageEvent.text.to_pit_number
}
pitBean.user_id = messageEvent.text.fromUserInfo.user_id.toString() + ""
pitBean.avatar = messageEvent.text.fromUserInfo.avatar
pitBean.nickname = messageEvent.text.fromUserInfo.nickname
@@ -2183,19 +2163,6 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
return pitBean
}
// TODO: 2025/6/30 下麦麦位变化
private fun getPitBean2(messageEvent: RoomMessageEvent?, number: String): RoomPitBean {
val pitBean = RoomPitBean()
pitBean.pit_number = if (messageEvent != null) messageEvent.text.pit_number else number
pitBean.user_id = ""
pitBean.avatar = ""
pitBean.nickname = ""
pitBean.sex = ""
pitBean.charm = ""
pitBean.is_pm = 1
return pitBean
}
private fun querenPk(text: String, pk_id: String) {
// 创建并显示确认对话框
val dialog = ConfirmDialog(
@@ -2236,7 +2203,8 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
}
fun setOnlineNumber(number: Int) {
mBinding!!.roomTop.tvNum.text = number.toString() + ""
this.number = number
mBinding!!.roomTop.tvNum.text = number.toString()
}
fun setUserInfo() {
@@ -2259,21 +2227,18 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
if (id == R.id.btn_follow) {
MvpPre!!.userGuanz(mRoomInfoResp!!.room_info.room_id, "2")
} else if (id == R.id.btn_notice) {
// RoomTipsView.show(this,view,"公告","公告内容");
val roomNoticeDialogFragment = RoomNoticeDialogFragment(this)
roomNoticeDialogFragment.setTitle("公告")
roomNoticeDialogFragment.setContent(mRoomBean!!.room_intro)
roomNoticeDialogFragment.show()
addActiveDialog(roomNoticeDialogFragment)
} else if (id == R.id.btn_ranking) { //排行榜
// RoomChartsFragment.newInstance(roomId).show(getSupportFragmentManager(), "RoomChartsFragment");
val fragment = RoomChartsFragment.newInstance(roomId, mRoomInfoResp)
fragment.show(supportFragmentManager, "RoomChartsFragment")
addActiveDialogFragment(fragment)
} else if (id == R.id.btn_close_live) { //退出房间
showExitRoomDialog()
} else if (id == R.id.tv_num) {
// RoomOnlineDialogFragment.show(roomId, "", mRoomUserBean, mRoomInfoResp, getSupportFragmentManager());
val fragment = RoomOnlineDialogFragment.show(
roomId, "", mRoomUserBean, mRoomInfoResp,
supportFragmentManager
@@ -2299,10 +2264,6 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
if (mRoomInfoResp!!.user_info.is_mute == "1") {
ToastUtils.show("您已经被禁言")
} else {
// mBinding.llInput.setVisibility(View.VISIBLE);
// mBinding.inputMenu1.bringToFront(); // 强制将该 View 置于最上层
// mBinding.inputMenu1.show();
dialogDismiss(1)
}
} else if (id == R.id.rl_mic) {
@@ -2316,7 +2277,6 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
}
}
} else if (id == R.id.rl_sett) { //房间设置
// RoomSettingFragment.show(mRoomInfoResp, getSupportFragmentManager());
if (mRoomInfoResp == null) {
com.blankj.utilcode.util.ToastUtils.showShort("请稍后再试")
return
@@ -2338,7 +2298,6 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
}
AgoraManager.getInstance(this).muteSpeaker(!voive)
} else if (id == R.id.rl_more) { //点击PK
// RoomPkDialogFragment.newInstance(roomId, SpUtil.getUserId() + "", mRoomInfoResp.getRoom_info().getIs_pk()).show(getSupportFragmentManager(), "RoomPkDialogFragment");
val fragment = RoomPkDialogFragment.newInstance(
roomId,
SpUtil.getUserId().toString() + "",
@@ -2347,7 +2306,6 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
fragment.show(supportFragmentManager, "RoomPkDialogFragment")
addActiveDialogFragment(fragment) // 添加到管理列表
} else if (id == R.id.rl_message) {
// RoomMessageDialogFragment.show(getSupportFragmentManager());
val fragment = RoomMessageDialogFragment.show(
supportFragmentManager
)
@@ -2355,13 +2313,13 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
addActiveDialogFragment(fragment) // 添加到管理列表
}
} else if (id == R.id.rl_misc) { //设置点歌
val fragment = RequestDialogFragment.show(
roomId, mRoomInfoResp, 1,
supportFragmentManager
)
if (fragment != null) {
addActiveDialogFragment(fragment) // 添加到管理列表
}
val fragment = RequestDialogFragment.show(
roomId, mRoomInfoResp, 1,
supportFragmentManager
)
if (fragment != null) {
addActiveDialogFragment(fragment) // 添加到管理列表
}
} else if (id == R.id.rl_gift) { //礼物
val fragment = RoomGiftDialogFragment.show(
mRoomInfoResp, null, roomId, 0, "",
@@ -2387,10 +2345,8 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
if (mRoomInfoResp!!.room_info.room_up_pit_type == "1") {
if (aBoolean) {
MvpPre!!.applyPit(roomId, "")
// aBoolean = false;
} else {
MvpPre!!.downPit(roomId, "")
// aBoolean = true;
}
} else {
if (aBoolean) {
@@ -2752,7 +2708,7 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
rl_more?.visibility = View.GONE
}
if ("1"==typeId && "2" == labelId){
if ("1" == typeId && "2" == labelId) {
rl_misc?.visibility = View.VISIBLE
}
}
@@ -2911,9 +2867,7 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
fun upRoomInfo(resp: RoomInfoResp?) {
this.mRoomInfoResp = resp
if (mRoomInfoResp!!.user_info.pit_number == 9 && mRoomInfoResp!!.user_info.user_id == SpUtil.getUserId()
.toString() + ""
) {
if (mRoomInfoResp!!.user_info.pit_number == 9 && mRoomInfoResp!!.user_info.user_id == SpUtil.getUserId()) {
mBinding!!.roomTop.rl.visibility = View.VISIBLE
ivSoundEffects(true)
} else {
@@ -2931,7 +2885,6 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
this.mRoomBean = roomBean
this.mRoomUserBean = resp.user_info
this.mRoomOwnerBean = resp.room_owner
this.mPitList = mRoomBean!!.pit_list
this.roomId = roomBean.room_id
MessageListenerSingleton.getInstance().joinGroup(roomId) //加入房间im
ImageUtils.loadHeadCC(resp.room_info.room_cover, mBinding!!.roomTop.avatar)
@@ -3011,9 +2964,7 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
}
instView()
if (mRoomInfoResp!!.user_info.pit_number == 9 && mRoomInfoResp!!.user_info.user_id == SpUtil.getUserId()
.toString() + ""
) {
if (mRoomInfoResp!!.user_info.pit_number == 9 && mRoomInfoResp!!.user_info.user_id == SpUtil.getUserId()) {
mBinding!!.roomTop.rl.visibility = View.VISIBLE
ivSoundEffects(true)
} else {
@@ -3071,7 +3022,9 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
}
// }
if (mRoomInfoResp!!.user_info.user_id == SpUtil.getUserId()
.toString() + "" && mRoomInfoResp!!.user_info.pit_number == 9 && mRoomInfoResp!!.room_info.type_id != "2" && mRoomInfoResp!!.room_info.type_id != "6"
&& mRoomInfoResp!!.user_info.pit_number == 9
&& mRoomInfoResp!!.room_info.type_id != "2"
&& mRoomInfoResp!!.room_info.type_id != "6"
) {
rlMore(true)
} else {
@@ -3820,6 +3773,7 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
}
override fun clearUserCharm() {
}
override fun userOnlineStatus(list: List<UserOnlineStatusBean>) {

View File

@@ -55,7 +55,7 @@ public class MusicSongListFragment extends BaseMvpFragment<RequestPresenter, Fra
public void songList(List<MusicSongBean> musicSongBeans) {
if (roomInfoResp.getUser_info().getUser_id().equals(SpUtil.getUserId() + "") && roomInfoResp.getUser_info().getPit_number() == 9) {
if (roomInfoResp.getUser_info().getUser_id() == SpUtil.getUserId() && roomInfoResp.getUser_info().getPit_number() == 9) {
status = 1;
}
if (musicSongBeans != null) {

View File

@@ -565,7 +565,7 @@ public class RoomFragment extends BaseMvpFragment<RoomPresenter, FragmentRoomBin
} else {
((RoomActivity) getActivity()).ivSoundEffects(false);
}
if (mRoomInfoResp.getUser_info().getUser_id().equals(SpUtil.getUserId() + "") && mRoomInfoResp.getUser_info().getPit_number() == 9
if (mRoomInfoResp.getUser_info().getUser_id() == SpUtil.getUserId() && mRoomInfoResp.getUser_info().getPit_number() == 9
&& !mRoomInfoResp.getRoom_info().getType_id().equals("2") && !mRoomInfoResp.getRoom_info().getType_id().equals("6")) {
((RoomActivity) getActivity()).rlMore(true);
} else {

View File

@@ -425,25 +425,6 @@ public class SingSongFragment extends BaseRoomFragment<SingSongPresenter, Fragme
}
private void isWhether2() {
// 判断是否包含
boolean isContained = false;
for (int i = 0; i < flexboxLayout.getChildCount(); i++) {
if (flexboxLayout.getChildAt(i) == WheatLayoutSingManager.Companion.getInstance().getRootContainer()) {
isContained = true;
break;
}
}
if (isContained) {
Log.d("FlexboxLayout", "包含 wheatContainer");
// 执行相关操作
} else {
Log.d("FlexboxLayout", "不包含 wheatContainer");
// 可以添加
flexboxLayout.addView(WheatLayoutSingManager.Companion.getInstance().getRootContainer());
}
flexboxLayout.setVisibility(View.VISIBLE);
mBinding.cl.setVisibility(View.GONE);
@@ -671,10 +652,10 @@ public class SingSongFragment extends BaseRoomFragment<SingSongPresenter, Fragme
@Override
public void postAgora(PkSwTokenBean pkSwTokenBean) {
String pkUserId = "";
int pkUserId = -1;
String pkRoomId = "";
if (roomInfoRespPk.getPk_info() != null) {
if (roomInfoRespPk.getPk_info().getInvite_pk_user_id().equals(SpUtil.getUserId() + "")) {
if (roomInfoRespPk.getPk_info().getInvite_pk_user_id() == SpUtil.getUserId()) {
pkUserId = roomInfoRespPk.getPk_info().getReceive_pk_user_id();
} else {
@@ -690,9 +671,6 @@ public class SingSongFragment extends BaseRoomFragment<SingSongPresenter, Fragme
}
private void pkView() {
if (wheatLayoutSingManager != null) {
wheatLayoutSingManager.release();
}
flexboxLayout.setVisibility(View.GONE);
mBinding.cl.setVisibility(VISIBLE);
FlexboxLayout flexboxLayout1 = mBinding.flexboxLayout1;
@@ -876,7 +854,7 @@ public class SingSongFragment extends BaseRoomFragment<SingSongPresenter, Fragme
}
if (Objects.equals(roomInfoResp.getUser_info().getUser_id(), roomInfoResp.getPk_info().getInvite_pk_user_id() != null ? roomInfoResp.getPk_info().getInvite_pk_user_id() : "0")) {
if (roomInfoResp.getUser_info().getUser_id() == roomInfoResp.getPk_info().getInvite_pk_user_id()) {
mBinding.btStop.setVisibility(VISIBLE);
mBinding.btSta.setVisibility(View.VISIBLE);
@@ -1255,7 +1233,7 @@ public class SingSongFragment extends BaseRoomFragment<SingSongPresenter, Fragme
/// 1037
public void event1037(RoomMessageEvent message) {
if (roomInfoResp.getUser_info().getPit_number() == 9 && roomInfoRespPk.getPk_info().getInvite_pk_user_id().equals(message.getText().getFromUserInfo().getUser_id() + "")) {
if (roomInfoResp.getUser_info().getPit_number() == 9 && roomInfoRespPk.getPk_info().getInvite_pk_user_id() == message.getText().getFromUserInfo().getUser_id()) {
queren();
}
}

View File

@@ -160,7 +160,7 @@ public class SingSongPresenter extends BaseRoomPresenter<SingSongContacts.View>
});
}
public void postRoomSwToken(String roomId,int uid,String invite_pk_user_id) {
public void postRoomSwToken(String roomId,int uid,int invite_pk_user_id) {
RetrofitClient.getInstance().postRoomSwToken(roomId, new BaseObserver<PkSwTokenBean>() {
@Override
public void onSubscribe(Disposable d) {