1.签约抱麦添加拒绝逻辑。

2.爵位不返回userInfo 逻辑容错。
3.礼物动画优化。
This commit is contained in:
2025-12-08 19:00:15 +08:00
parent 61106bc5eb
commit 079d9ab1b1
19 changed files with 120 additions and 47 deletions

View File

@@ -856,7 +856,7 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
AgoraManager.getInstance().cleanup()
CommonAppContext.getInstance().isPlaying = false
CommonAppContext.getInstance().isShow = false
QXGiftPlayerManager.getInstance(applicationContext).destroyEffectSvga()
// QXGiftPlayerManager.getInstance(applicationContext).destroyEffectSvga()
cleanupResources()
}
@@ -1523,6 +1523,8 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
roomFragment?.handleRoomMessage(messageEvent)
} else if (msgType == EMMessageInfo.QXRoomMessageTypeSignDelayText) {
roomFragment?.handleRoomMessage(messageEvent)
}else if (msgType == EMMessageInfo.QXRoomMessageTypeSignTipText) {
roomFragment?.handleRoomMessage(messageEvent)
}
}
@@ -2816,7 +2818,7 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
// 执行退出房间逻辑
CommonAppContext.getInstance().isPlaying = false
CommonAppContext.getInstance().isShow = false
QXGiftPlayerManager.getInstance(this).destroyEffectSvga()
// QXGiftPlayerManager.getInstance(this).destroyEffectSvga()
AgoraManager.getInstance().cleanup()
MyRoomSingleton.getInstance().onExitRoom()
@@ -2863,7 +2865,7 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
if (appStateListener != null) {
appStateListener!!.isAppInBackground = true
}
QXGiftPlayerManager.getInstance(applicationContext).destroyEffectSvga()
// QXGiftPlayerManager.getInstance(applicationContext).destroyEffectSvga()
if (ActivityUtils.getActivityList().size <= 1) {
singleTaskToActivity(MainActivity::class.java)
} else {

View File

@@ -23,6 +23,8 @@ class MentorShipContacts {
fun signDelay(signId:String,roomId:String)
fun signRefuse(roomId: String)
fun signCoinList(signId:String)
fun signCoin(signId:String,sign_value:String)

View File

@@ -113,14 +113,14 @@ public class RankingChildFragment extends BaseMvpFragment<DataListPresenter, Roo
cAdapter.setOnItemChildClickListener((adapter, view, position) -> {
if (view.getId() == R.id.room_item_head) {
CharmRankingResp item = cAdapter.getItem(position);
RoomUserInfoFragment.show(roomId,item.getUser_id(), "", getHostUser(), true, 3, 0, getChildFragmentManager());
RoomUserInfoFragment.show(roomId,item.getUser_id(), "", getHostUser(), false, 3, 0, getChildFragmentManager());
}
});
} else {
wAdapter.setOnItemChildClickListener((adapter, view, position) -> {
if (view.getId() == R.id.room_item_head) {
CharmRankingResp item = wAdapter.getItem(position);
RoomUserInfoFragment.show(roomId,item.getUser_id(), "", getHostUser(), true, 3, 0, getChildFragmentManager());
RoomUserInfoFragment.show(roomId,item.getUser_id(), "", getHostUser(), false, 3, 0, getChildFragmentManager());
}
});
}

View File

@@ -906,6 +906,9 @@ public class RoomFragment extends BaseMvpFragment<RoomPresenter, FragmentRoomBin
case EMMessageInfo.QXRoomMessageTypeSignDelayText:
mentorShipFragment.event1093(messageEvent);
break;
case EMMessageInfo.QXRoomMessageTypeSignTipText:
mentorShipFragment.event1094(messageEvent);
break;
}
}

View File

@@ -546,7 +546,7 @@ public class RoomKtvFragment extends BaseMvpFragment<RoomPresenter, FragmentRoom
AgoraManager.getInstance().stopMuisc();
MvpPre.changeSong(roomInfoResp.getRoom_info().getRoom_id(), did);
} else if (id == R.id.ll_ds) {
if (mBinding.muYc.pitBean.getUser_id() != null && !mBinding.muYc.pitBean.getUser_id().equals("")) {
if (mBinding.muYc.pitBean.getUser_id() != null && !mBinding.muYc.pitBean.getUser_id().equals("")&& !mBinding.muYc.pitBean.getUser_id().equals("0")) {
UserInfo userInfo = new UserInfo();
userInfo.setAvatar(roomInfoResp.getSong_user_info().getAvatar());
userInfo.setNickname(roomInfoResp.getSong_user_info().getNickname());

View File

@@ -2,6 +2,7 @@ package com.xscm.modulemain.activity.room.fragment
import android.annotation.SuppressLint
import android.os.Bundle
import android.os.Handler
import android.view.Gravity
import android.view.LayoutInflater
import android.view.View
@@ -9,6 +10,7 @@ import android.widget.PopupWindow
import android.widget.Switch
import android.widget.TextView
import com.blankj.utilcode.util.ActivityUtils
import com.blankj.utilcode.util.LogUtils
import com.xscm.modulemain.R
import com.xscm.modulemain.activity.room.contacts.MentorShipContacts
import com.xscm.modulemain.activity.room.presenter.MentorShipPresenter
@@ -36,6 +38,7 @@ import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.SupervisorJob
import kotlinx.coroutines.cancel
import kotlinx.coroutines.delay
import kotlinx.coroutines.flow.flow
import kotlinx.coroutines.launch
/**
@@ -284,8 +287,14 @@ class RoomMentorShipFragment(var mRoomInfo: RoomInfoResp?) :
mBinding.tvTime.text = "倒计时 00:00:00"
setIvForMai(0)
}
if (viewList[0].pitBean.user_id.equals(mRoomInfo?.user_info?.user_id.toString()) && !mSignPitBean?.user_id.equals("0")){
LogUtils.e(
"showBtn",
"showBtn: $isSignUser isStart: $isStart viewList[0].pitBean.user_id: ${viewList[0].pitBean.user_id} mSignPitBean?.user_id: ${mSignPitBean?.user_id} mRoomInfo?.user_info?.user_id: ${mRoomInfo?.user_info?.user_id} mUserInfo?.user_id: ${mUserInfo?.user_id}"
)
if (viewList[0].pitBean.user_id.equals(mUserInfo?.user_id.toString()) && !mSignPitBean?.user_id.equals(
"0"
)
) {
mBinding.tvTimeLeft.visibility = View.VISIBLE
} else {
mBinding.tvTimeLeft.visibility = View.GONE
@@ -357,7 +366,6 @@ class RoomMentorShipFragment(var mRoomInfo: RoomInfoResp?) :
setIvForMai(2)
}
}
}
/**
@@ -697,5 +705,23 @@ class RoomMentorShipFragment(var mRoomInfo: RoomInfoResp?) :
}
}
fun event1094(messageEvent: RoomMessageEvent) {
if (messageEvent.text.user_id.equals(mUserInfo?.user_id.toString())) {
// 创建并显示确认对话框
ConfirmDialog(
ActivityUtils.getTopActivity(),
"提示",
messageEvent.text.text,
"确认",
"拒绝",
{ v: View? ->
MvpPre.applyPit(mRoomInfo?.room_info?.room_id!!, "1")
},
{ v: View? ->
MvpPre.signRefuse(mRoomInfo?.room_info?.room_id!!)
}, true, 5
).show()
}
}
}

View File

@@ -44,6 +44,7 @@ import com.xscm.moduleutil.bean.TopRoom;
import com.xscm.moduleutil.event.MqttBean;
import com.xscm.moduleutil.event.RoomGiftRunable;
import com.xscm.moduleutil.utils.ARouteConstants;
import com.xscm.moduleutil.utils.ColorManager;
import com.xscm.moduleutil.utils.ImageUtils;
import com.xscm.moduleutil.utils.logger.DataLogger;
@@ -271,6 +272,7 @@ public class VoiceCategoryFragment extends BaseMvpFragment<VoiceCategoryPresente
// 创建适配器
MyFragmentPagerAdapter adapter = new MyFragmentPagerAdapter(getActivity(), list);
mBinding.viewPager.setAdapter(adapter);
mBinding.slidingTabLayout.setSelectedTabIndicatorColor(ColorManager.getInstance().getPrimaryColorInt());
if (!list.isEmpty())
mBinding.viewPager.setOffscreenPageLimit(list.size() - 1);
// 设置 TabLayout 与 ViewPager2 的关联

View File

@@ -78,6 +78,17 @@ class MentorShipPresenter(context: Context, val view: MentorShipContacts.View) :
})
}
override fun signRefuse(roomId: String) {
RetrofitClient.getInstance().signRefuse(roomId, object : BaseObserver<String?>(){
override fun onSubscribe(d: Disposable) {
}
override fun onNext(t: String) {
}
})
}
override fun signCoinList(signId: String) {
RetrofitClient.getInstance().signCoinList(signId, object : BaseObserver<List<String>>() {
override fun onSubscribe(d: Disposable) {

View File

@@ -15,6 +15,7 @@ import android.widget.HorizontalScrollView;
import android.widget.LinearLayout;
import android.widget.TextView;
import com.hjq.toast.ToastUtils;
import com.rmondjone.locktableview.LockTableView;
import com.rmondjone.xrecyclerview.ProgressStyle;
import com.xscm.modulemain.BaseMvpActivity;
@@ -29,7 +30,9 @@ import com.xscm.moduleutil.bean.NobilitDeatils;
import com.xscm.moduleutil.bean.NobilitList;
import com.xscm.moduleutil.bean.NobilityPrice;
import com.xscm.moduleutil.bean.TableCellData;
import com.xscm.moduleutil.bean.UserInfo;
import com.xscm.moduleutil.utils.ImageUtils;
import com.xscm.moduleutil.utils.SpUtil;
import java.util.ArrayList;
import java.util.List;
@@ -43,6 +46,7 @@ public class NobleTitleActivity extends BaseMvpActivity<NobleTitlePresenter, Act
private LinearLayout mContentView;
private List<NobilitDeatils.nobilityPowerItem> mNobilityPowerItemList = new ArrayList<>();
private String lid;
@Override
protected void initData() {
MvpPre.getNobilityDetail();
@@ -193,8 +197,27 @@ public class NobleTitleActivity extends BaseMvpActivity<NobleTitlePresenter, Act
@SuppressLint("SetTextI18n")
@Override
public void getNobilityDetail(NobilitDeatils nobilitDeatils) {
ImageUtils.loadHeadCC(nobilitDeatils.getUser_info().getAvatar(), mBinding.ciUserImage);
mBinding.tvUserName.setText(nobilitDeatils.getUser_info().getNickname());
String avatar = "";
String nickName = "";
if (nobilitDeatils.getNobility_info() == null){
UserInfo userInfo = SpUtil.getUserInfo();
avatar = userInfo.getAvatar();
nickName = userInfo.getNickname();
}else {
avatar = nobilitDeatils.getUser_info().getAvatar();
nickName = nobilitDeatils.getUser_info().getNickname();
}
if (avatar == null || avatar.isEmpty()) {
ToastUtils.show("爵位 账号数据存在问题,请联系管理员");
finish();
return;
}
ImageUtils.loadHeadCC(avatar, mBinding.ciUserImage);
mBinding.tvUserName.setText(nickName);
if (nobilitDeatils.getNobility_info().getStatus() == 0) {
mBinding.tvUserLv.setText("暂未开通任何爵位");
mBinding.imMeNobleStatus.setImageResource(com.xscm.moduleutil.R.mipmap.me_noble_no);
@@ -218,11 +241,10 @@ public class NobleTitleActivity extends BaseMvpActivity<NobleTitlePresenter, Act
mBinding.ciImage2.setVisibility(VISIBLE);
mBinding.tvMeX.setVisibility(VISIBLE);
mBinding.imKt.setVisibility(VISIBLE);
ImageUtils.loadHeadCC(nobilitDeatils.getUser_info().getAvatar(), mBinding.ciImage2);
String nickname = nobilitDeatils.getUser_info().getNickname();
ImageUtils.loadHeadCC(avatar, mBinding.ciImage2);
String nickname = nickName;
String displayNickname = nickname.length() > 3 ? nickname.substring(0, 3) + ".." : nickname;
mBinding.tvMeX.setText(displayNickname + "的当前爵位状态是" + nobilitDeatils.getNobility_info().getName());
// mBinding.tvMeX.setText(nobilitDeatils.getUser_info().getNickname()+"的当前爵位状态是"+nobilitDeatils.getNobility_info().getName());
}