514 lines
26 KiB
Java
514 lines
26 KiB
Java
package com.xscm.modulemain.dialog;
|
||
|
||
import static com.xscm.moduleutil.bean.room.RoomSettingBean.QXRoomSettingTypeRoomOrderMic;
|
||
|
||
import android.content.Context;
|
||
import android.content.Intent;
|
||
import android.os.Bundle;
|
||
import android.view.*;
|
||
|
||
import androidx.annotation.NonNull;
|
||
import androidx.fragment.app.FragmentManager;
|
||
import androidx.recyclerview.widget.GridLayoutManager;
|
||
|
||
import com.alibaba.android.arouter.launcher.ARouter;
|
||
import com.blankj.utilcode.util.GsonUtils;
|
||
import com.blankj.utilcode.util.LogUtils;
|
||
import com.chad.library.adapter.base.BaseQuickAdapter;
|
||
import com.hjq.toast.ToastUtils;
|
||
import com.xscm.modulemain.R;
|
||
import com.xscm.modulemain.activity.room.activity.RoomActivity;
|
||
import com.xscm.modulemain.activity.room.contacts.RoomSettingContacts;
|
||
import com.xscm.modulemain.activity.room.fragment.RoomBackgroundDialogFragment;
|
||
import com.xscm.modulemain.activity.room.presenter.RoomSettingPresenter;
|
||
import com.xscm.modulemain.adapter.RoomSettingAdapter;
|
||
import com.xscm.modulemain.databinding.DialogRoomSettingFragmentBinding;
|
||
import com.xscm.modulemain.activity.WebViewActivity;
|
||
import com.xscm.moduleutil.base.CommonAppContext;
|
||
import com.xscm.moduleutil.base.WebUrlConstants;
|
||
import com.xscm.moduleutil.dialog.ConfirmDialog;
|
||
import com.xscm.moduleutil.event.EffectEvent;
|
||
import com.xscm.moduleutil.event.FloatingScreenEvent;
|
||
import com.xscm.moduleutil.event.MusicEvent;
|
||
import com.xscm.moduleutil.listener.MessageListenerSingleton;
|
||
import com.xscm.moduleutil.base.BaseMvpDialogFragment;
|
||
import com.xscm.moduleutil.bean.RoomMessageEvent;
|
||
import com.xscm.moduleutil.bean.RoomSettingEvent;
|
||
import com.xscm.moduleutil.bean.room.RoomInfoResp;
|
||
import com.xscm.moduleutil.bean.room.RoomSettingBean;
|
||
import com.xscm.moduleutil.utils.ARouteConstants;
|
||
import com.xscm.moduleutil.utils.SpUtil;
|
||
|
||
import org.greenrobot.eventbus.EventBus;
|
||
import org.greenrobot.eventbus.Subscribe;
|
||
import org.greenrobot.eventbus.ThreadMode;
|
||
|
||
import java.nio.charset.StandardCharsets;
|
||
import java.util.ArrayList;
|
||
import java.util.List;
|
||
|
||
/**
|
||
* @author qx
|
||
* @data 2025/6/17
|
||
* @description: 房间设置弹框
|
||
*/
|
||
public class RoomSettingFragment extends BaseMvpDialogFragment<RoomSettingPresenter, DialogRoomSettingFragmentBinding> implements RoomSettingContacts.View {
|
||
private String userId;
|
||
private String roomId;
|
||
RoomSettingAdapter adapter;
|
||
List<RoomSettingBean> dataList;
|
||
private RoomInfoResp roomInfoResp;
|
||
private int read;
|
||
private boolean isSelected;
|
||
private boolean effectOn = false;//开启/关闭特效
|
||
private boolean floatingScreen = false;//开启/关闭飘屏
|
||
|
||
@Override
|
||
protected RoomSettingPresenter bindPresenter() {
|
||
return new RoomSettingPresenter(this, getActivity());
|
||
}
|
||
|
||
public static RoomSettingFragment show(RoomInfoResp roomInfoResp, FragmentManager fragmentManager) {
|
||
RoomSettingFragment dialogFragment = new RoomSettingFragment();
|
||
Bundle args = new Bundle();
|
||
args.putSerializable("roomInfoResp", roomInfoResp);
|
||
dialogFragment.setArguments(args);
|
||
dialogFragment.show(fragmentManager, "RoomSettingFragment");
|
||
return dialogFragment;
|
||
}
|
||
|
||
@Override
|
||
public void onAttach(@NonNull Context context) {
|
||
super.onAttach(context);
|
||
// roomId=getArguments().getString("roomId");
|
||
roomInfoResp = (RoomInfoResp) getArguments().getSerializable("roomInfoResp");
|
||
if (roomInfoResp==null){
|
||
ToastUtils.show("房间信息为空");
|
||
return;
|
||
}
|
||
roomId = roomInfoResp.getRoom_info().getRoom_id();
|
||
if (roomInfoResp.getUser_info().getIs_room_owner() != 0) {
|
||
read = 1;
|
||
} else if (roomInfoResp.getUser_info().getIs_management() != 0) {
|
||
read = 2;
|
||
} else if (roomInfoResp.getUser_info().getIs_host() != 0) {
|
||
read = 3;
|
||
} else {
|
||
read = 4;
|
||
}
|
||
if (roomInfoResp.getUser_info().getPit_number() != 0) {
|
||
isSelected = true;
|
||
} else {
|
||
isSelected = false;
|
||
}
|
||
}
|
||
|
||
|
||
@Override
|
||
protected void initDialogStyle(Window window) {
|
||
super.initDialogStyle(window);
|
||
window.setGravity(Gravity.BOTTOM);
|
||
}
|
||
|
||
@Override
|
||
public void onStart() {
|
||
super.onStart();
|
||
Window window = getDialog().getWindow();
|
||
if (window != null) {
|
||
// 设置固定高度为 500dp
|
||
window.setLayout(WindowManager.LayoutParams.MATCH_PARENT, WindowManager.LayoutParams.WRAP_CONTENT);
|
||
// 可选:设置动画样式(从底部弹出)
|
||
window.setWindowAnimations(com.xscm.moduleutil.R.style.CommonShowDialogBottom);
|
||
}
|
||
}
|
||
|
||
@Override
|
||
public void onStop() {
|
||
super.onStop();
|
||
}
|
||
|
||
@Override
|
||
protected void initData() {
|
||
dataList = new ArrayList<>();
|
||
effectOn = SpUtil.getOpenEffect() == 1;
|
||
floatingScreen = SpUtil.getFloatingScreen() == 1;
|
||
boolean b = roomInfoResp.getRoom_info().getRoom_up_pit_type().equals("1");
|
||
LogUtils.e("effectOn=" + effectOn);
|
||
// 添加标题和对应的内容项
|
||
dataList.add(new RoomSettingBean("房间类型", null, null, null, -1, read, isSelected, false, false));
|
||
dataList.add(new RoomSettingBean("交友", "ic_sing", null, null, RoomSettingBean.QXRoomSettingTypeRoomTypeSing, read, isSelected, false, false));
|
||
dataList.add(new RoomSettingBean("拍卖", "ic_auction", null, null, RoomSettingBean.QXRoomSettingTypeRoomTypeAuction, read, isSelected, false, false));
|
||
// dataList.add(new RoomSettingBean("男神", "ic_boy", null, null, RoomSettingBean.QXRoomSettingTypeRoomTypeBoy, read, isSelected, false, false));
|
||
// dataList.add(new RoomSettingBean("女神", "ic_girl", null, null, RoomSettingBean.QXRoomSettingTypeRoomTypeGirl, read, isSelected, false, false));
|
||
dataList.add(new RoomSettingBean("点唱", "jiao_y", null, null, RoomSettingBean.QXRoomSettingTypeRoomTypeJiaoy, read, isSelected, false, false));// 添加的新的房间类型 ,交友 ,是原来的男神女神类型
|
||
dataList.add(new RoomSettingBean("互娱", "ic_jiaoy", null, null, RoomSettingBean.QXRoomSettingTypeRoomTypeHUYU, read, isSelected, false, false)); //原交友,更改互娱 2025年9月19日11:18:01
|
||
dataList.add(new RoomSettingBean("练歌房", "ic_liang", null, null, RoomSettingBean.QXRoomSettingTypeRoomTypeLianG, read, isSelected, false, false)); //练歌房,原点歌房,同意的时候,走同意点歌的逻辑
|
||
|
||
|
||
dataList.add(new RoomSettingBean("常用工具", null, null, null, -1, read, isSelected, false, false));
|
||
dataList.add(new RoomSettingBean("房间补贴", "ic_subsidy", null, null, RoomSettingBean.QXRoomSettingTypeRoomSubsidy, read, isSelected, false, false));
|
||
dataList.add(new RoomSettingBean("主持设置", "ic_compere", null, null, RoomSettingBean.QXRoomSettingTypeRoomCompere, read, isSelected, false, false));
|
||
dataList.add(new RoomSettingBean("清空消息", "ic_clear_message", null, null, RoomSettingBean.QXRoomSettingTypeRoomClearMessage, read, isSelected, false, false));
|
||
dataList.add(new RoomSettingBean("排麦模式", "ic_order_mic", null, null, QXRoomSettingTypeRoomOrderMic, read, isSelected, false, roomInfoResp.getRoom_info().getRoom_up_pit_type().equals("1")));//等于1的时候,是排麦模式,等于2的时候,是自由模式,这里判断是否是拍卖模式,
|
||
dataList.add(new RoomSettingBean("背景音乐", "ic_bg_music", null, null, RoomSettingBean.QXRoomSettingTypeRoomBgMusic, read, isSelected, false, false));
|
||
dataList.add(new RoomSettingBean("背景图片", "ic_bg_image", null, null, RoomSettingBean.QXRoomSettingTypeRoomBgImage, read, isSelected, false, false));
|
||
|
||
dataList.add(new RoomSettingBean("更多操作", null, null, null, -1, read, isSelected, false, false));
|
||
dataList.add(new RoomSettingBean("发红包", "ic_red", null, null, RoomSettingBean.QXRoomSettingTypeRoomFloatingRed, read, isSelected, false, false));
|
||
// dataList.add(new RoomSettingBean("离开房间", "ic_leave", null, null, RoomSettingBean.QXRoomSettingTypeRoomLeave, read, isSelected, false, false));
|
||
// dataList.add(new RoomSettingBean("分享房间", "ic_share", null, null, RoomSettingBean.QXRoomSettingTypeRoomShare, read, isSelected, false, false));
|
||
// dataList.add(new RoomSettingBean("调音台", "ic_my_dress", null, null, RoomSettingBean.QXRoomSettingTypeRoomMyDress, read, isSelected, false, false));
|
||
dataList.add(new RoomSettingBean("房间设置", "ic_room_setting", null, null, RoomSettingBean.QXRoomSettingTypeRoomSetting, read, isSelected, false, false));
|
||
// dataList.add(new RoomSettingBean("房间欢迎语", "ic_welcome", null, null, RoomSettingBean.QXRoomSettingTypeRoomWelcome,read,isSelected, false));
|
||
dataList.add(new RoomSettingBean("关闭特效", "ic_close_effects", null, null, RoomSettingBean.QXRoomSettingTypeRoomCloseEffects, read, isSelected, false, effectOn));
|
||
dataList.add(new RoomSettingBean("关闭飘屏", "ic_close_floating_screen", null, null, RoomSettingBean.QXRoomSettingTypeRoomFloatingScreen, read, isSelected, false, floatingScreen));
|
||
dataList.add(new RoomSettingBean("举报", "ic_report", null, null, RoomSettingBean.QXRoomSettingTypeRoomReport, read, isSelected, false, false));
|
||
List<RoomSettingBean> filteredList = new ArrayList<>();
|
||
// 更新 itemType
|
||
for (RoomSettingBean bean : dataList) {
|
||
bean.setRead(read);
|
||
bean.setSelected(isSelected);
|
||
// 根据角色和状态设置 isVisible
|
||
if (isItemVisible(bean)) {
|
||
bean.setStatus(true);
|
||
} else {
|
||
bean.setStatus(false);
|
||
}
|
||
|
||
bean.updateItemType();
|
||
|
||
if (bean.isStatus()) {
|
||
filteredList.add(bean);
|
||
}
|
||
}
|
||
adapter = new RoomSettingAdapter(filteredList);
|
||
mBinding.recycleView.setAdapter(adapter);
|
||
// 动态设置 GridLayoutManager 的列数
|
||
GridLayoutManager layoutManager = new GridLayoutManager(getContext(), 6); // 默认每行 4 个 item
|
||
|
||
|
||
layoutManager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() {
|
||
@Override
|
||
public int getSpanSize(int position) {
|
||
RoomSettingBean item = filteredList.get(position);
|
||
if (item.getItemType() == RoomSettingBean.ITEM_TYPE_DEFAULT) { // 标题项占满一行
|
||
return layoutManager.getSpanCount();
|
||
} else { // 内容项默认每行 4 个
|
||
return 1;
|
||
}
|
||
}
|
||
});
|
||
// 根据 itemType 动态调整列数
|
||
mBinding.recycleView.setLayoutManager(layoutManager);
|
||
|
||
adapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
|
||
@Override
|
||
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
|
||
RoomSettingBean bean = (RoomSettingBean) adapter.getItem(position);
|
||
|
||
// 示例:切换选择状态
|
||
if (bean.getType() == QXRoomSettingTypeRoomOrderMic) {
|
||
MvpPre.changeRoom(roomId, SpUtil.getUserId() + "", position, bean);
|
||
|
||
} else if (bean.getType() == RoomSettingBean.QXRoomSettingTypeRoomClearMessage) {
|
||
RoomMessageEvent.T t = new RoomMessageEvent.T();
|
||
t.setText("清空消息");
|
||
RoomMessageEvent roomMessageEvent = new RoomMessageEvent(123, roomId, t);
|
||
EventBus.getDefault().post(roomMessageEvent);
|
||
String json = GsonUtils.toJson(roomMessageEvent);
|
||
// 转换为 byte[]
|
||
byte[] binaryData = json.getBytes(StandardCharsets.UTF_8);
|
||
// 创建自定义消息
|
||
MessageListenerSingleton.getInstance().sendCustomRoomMessage(
|
||
roomId,
|
||
binaryData
|
||
);
|
||
|
||
if (getActivity() instanceof RoomActivity) {
|
||
((RoomActivity) getActivity()).clearData();
|
||
}
|
||
|
||
}
|
||
// else if (bean.getType() == RoomSettingBean.QXRoomSettingTypeRoomMyDress) {
|
||
// TunerDialogFragment.show(roomId, getChildFragmentManager());
|
||
// }
|
||
else if (bean.getType() == RoomSettingBean.QXRoomSettingTypeRoomCompere) {//主持设置
|
||
RoomHostFragment.newInstance(roomId).show(getChildFragmentManager(), "RoomHostFragment");
|
||
} else if (bean.getType() == RoomSettingBean.QXRoomSettingTypeRoomBgImage) {//背景图片
|
||
RoomBackgroundDialogFragment.newInstance(roomId).show(getChildFragmentManager(), "RoomBackgroundDialogFragment");
|
||
} else if (bean.getType() == RoomSettingBean.QXRoomSettingTypeRoomCloseEffects) {//关闭特效
|
||
if (effectOn) {
|
||
//关闭
|
||
effectOn = false;
|
||
//保存到本地
|
||
SpUtil.setOpenEffect(0);
|
||
EventBus.getDefault().post(new EffectEvent(false));
|
||
bean.setSelect(false);
|
||
} else {
|
||
//打开
|
||
effectOn = true;
|
||
SpUtil.setOpenEffect(1);
|
||
EventBus.getDefault().post(new EffectEvent(true));
|
||
bean.setSelect(true);
|
||
}
|
||
upAdapter();
|
||
// adapter.notifyItemChanged(position);
|
||
} else if (bean.getType() == RoomSettingBean.QXRoomSettingTypeRoomBgMusic) {
|
||
EventBus.getDefault().post(new MusicEvent());
|
||
|
||
dismiss();
|
||
}
|
||
// else if (bean.getType() == RoomSettingBean.QXRoomSettingTypeRoomLeave) {
|
||
// EventBus.getDefault().post(new RoomOutEvent());
|
||
// }
|
||
else if (bean.getType() == RoomSettingBean.QXRoomSettingTypeRoomTypeSing) {
|
||
// MvpPre.changeRoomType(roomId, "1");
|
||
queren("1");
|
||
} else if (bean.getType() == RoomSettingBean.QXRoomSettingTypeRoomTypeAuction) {
|
||
// MvpPre.changeRoomType(roomId, "2");
|
||
queren("2");
|
||
}
|
||
// else if (bean.getType() == RoomSettingBean.QXRoomSettingTypeRoomTypeBoy) {
|
||
//// MvpPre.changeRoomType(roomId, "3");
|
||
// queren("3");
|
||
// }
|
||
// else if (bean.getType() == RoomSettingBean.QXRoomSettingTypeRoomTypeGirl) {
|
||
//// MvpPre.changeRoomType(roomId, "4");
|
||
// queren("4");
|
||
// }
|
||
else if (bean.getType() == RoomSettingBean.QXRoomSettingTypeRoomTypeJiaoy) {
|
||
// MvpPre.changeRoomType(roomId, "7");
|
||
queren("9");
|
||
} else if (bean.getType() == RoomSettingBean.QXRoomSettingTypeRoomTypeHUYU) {
|
||
queren("7");
|
||
} else if (bean.getType() == RoomSettingBean.QXRoomSettingTypeRoomTypeLianG){
|
||
queren("-1");
|
||
}else if (bean.getType() == RoomSettingBean.QXRoomSettingTypeRoomSetting) {
|
||
if (roomInfoResp != null) {
|
||
ARouter.getInstance().build(ARouteConstants.CREATED_ROOM).withSerializable("roomInfoResp", roomInfoResp).navigation();
|
||
} else {
|
||
com.blankj.utilcode.util.ToastUtils.showShort("数据错误,请关闭重试");
|
||
}
|
||
} else if (bean.getType() == RoomSettingBean.QXRoomSettingTypeRoomReport) {
|
||
if (roomId != null) {
|
||
Intent intent = new Intent(getActivity(), WebViewActivity.class);
|
||
intent.putExtra("url", String.format(WebUrlConstants.INSTANCE.getWEB_REPORT_URL(),SpUtil.getToken(),2, roomId));
|
||
startActivity(intent);
|
||
}else {
|
||
com.blankj.utilcode.util.ToastUtils.showShort("数据错误,请关闭重试");
|
||
}
|
||
} else if (bean.getType() == RoomSettingBean.QXRoomSettingTypeRoomSubsidy) {
|
||
ARouter.getInstance().build(ARouteConstants.ROOM_ALLOWANCE).withString("from", "我的界面").withString("roomId", roomInfoResp.getRoom_info().getRoom_id() + "").navigation();
|
||
} else if (bean.getType() == RoomSettingBean.QXRoomSettingTypeRoomFloatingScreen) {//2025年9月22日14:10:25,添加飘屏关闭打开按钮
|
||
if (floatingScreen) {
|
||
//关闭
|
||
floatingScreen = false;
|
||
//保存到本地
|
||
SpUtil.setFloatingScreen(0);
|
||
EventBus.getDefault().post(new FloatingScreenEvent(false));
|
||
bean.setSelect(false);
|
||
} else {
|
||
//打开
|
||
floatingScreen = true;
|
||
SpUtil.setFloatingScreen(1);
|
||
EventBus.getDefault().post(new FloatingScreenEvent(true));
|
||
bean.setSelect(true);
|
||
}
|
||
upAdapter();
|
||
}
|
||
else if (bean.getType()==RoomSettingBean.QXRoomSettingTypeRoomFloatingRed){
|
||
|
||
if (getActivity() instanceof RoomActivity) {
|
||
((RoomActivity) getActivity()).redDialogView();
|
||
}
|
||
dismiss();
|
||
|
||
|
||
}
|
||
|
||
}
|
||
});
|
||
}
|
||
|
||
// TODO: 2025/8/29 房间切换提示框
|
||
private void queren(String type) {
|
||
// 创建并显示确认对话框
|
||
new ConfirmDialog(getActivity(),
|
||
"提示",
|
||
"即将修改房间类型为" + (type.equals("1") ? "交友" : (type.equals("2") ? "拍卖" : (type.equals("3") ? "男神" : (type.equals("4") ? "女神" : (type.equals("7") ? "互娱" : (type.equals("9") ? "点唱" :(type.equals("-1") ? "练歌房" : ""))))))),
|
||
"确认",
|
||
"取消",
|
||
v -> {
|
||
if (type.equals("-1")) {
|
||
MvpPre.agreeSong(roomId,"1");
|
||
} else
|
||
// 点击“确认”按钮时执行删除操作
|
||
MvpPre.changeRoomType(roomId, type);
|
||
|
||
},
|
||
v -> {
|
||
// 点击“取消”按钮时什么都不做
|
||
}, false, 0).show();
|
||
}
|
||
|
||
private void upAdapter() {
|
||
adapter.notifyDataSetChanged();
|
||
}
|
||
|
||
private boolean isItemVisible(RoomSettingBean bean) {
|
||
int type = bean.getType();
|
||
int roleLevel = bean.getRead(); // 角色等级
|
||
boolean onMic = false; // 是否是特定房间
|
||
|
||
if ((roomInfoResp.getRoom_info().getType_id().equals("1") || roomInfoResp.getRoom_info().getType_id().equals("3")
|
||
|| roomInfoResp.getRoom_info().getType_id().equals("4") || roomInfoResp.getRoom_info().getType_id().equals("9")) && roomInfoResp.getRoom_info().getLabel_id().equals("2")) {
|
||
onMic = true;
|
||
}
|
||
// 2025年9月22日14:18:50,因为声网sdk不对,和点唱有关系的所有,需要关闭
|
||
// 房主显示全部
|
||
if (roleLevel == 1) {
|
||
if (onMic) {
|
||
if (type == RoomSettingBean.QXRoomSettingTypeRoomBgMusic || type == RoomSettingBean.QXRoomSettingTypeRoomSubsidy
|
||
|| type == RoomSettingBean.QXRoomSettingTypeRoomMyDress ) {
|
||
return false;
|
||
}
|
||
} else {
|
||
if (type == RoomSettingBean.QXRoomSettingTypeRoomBgMusic || type == RoomSettingBean.QXRoomSettingTypeRoomSubsidy
|
||
|| type == RoomSettingBean.QXRoomSettingTypeRoomMyDress ) {
|
||
return false;
|
||
}
|
||
}
|
||
return true;
|
||
} else if (roleLevel == 2 || roleLevel == 3) { // type == RoomSettingBean.QXRoomSettingTypeRoomTypeBoy || type == RoomSettingBean.QXRoomSettingTypeRoomTypeGirl || 2025年9月19日11:21:04,将男神女神合并成互娱,最总是新添加一个标签
|
||
if (type == RoomSettingBean.QXRoomSettingTypeRoomTypeSing || type == RoomSettingBean.QXRoomSettingTypeRoomTypeAuction ||
|
||
type == RoomSettingBean.QXRoomSettingTypeRoomTypeHUYU ||
|
||
type == RoomSettingBean.QXRoomSettingTypeRoomTypeJiaoy ||
|
||
type == RoomSettingBean.QXRoomSettingTypeRoomTypeLianG ||
|
||
type == RoomSettingBean.QXRoomSettingTypeRoomClearMessage || type == QXRoomSettingTypeRoomOrderMic || type == RoomSettingBean.QXRoomSettingTypeRoomFloatingScreen
|
||
|| type == RoomSettingBean.QXRoomSettingTypeRoomBgMusic || type == RoomSettingBean.QXRoomSettingTypeRoomBgImage || type == -1) {
|
||
|
||
if (onMic) {
|
||
if (type == RoomSettingBean.QXRoomSettingTypeRoomBgMusic || type == RoomSettingBean.QXRoomSettingTypeRoomSubsidy
|
||
|| type == RoomSettingBean.QXRoomSettingTypeRoomMyDress ) {
|
||
return false;
|
||
}
|
||
} else {
|
||
if (type == RoomSettingBean.QXRoomSettingTypeRoomBgMusic || type == RoomSettingBean.QXRoomSettingTypeRoomSubsidy
|
||
|| type == RoomSettingBean.QXRoomSettingTypeRoomMyDress ) {
|
||
return false;
|
||
}
|
||
}
|
||
|
||
|
||
|
||
// if (onMic) {
|
||
// if (type == RoomSettingBean.QXRoomSettingTypeRoomBgMusic || type == RoomSettingBean.QXRoomSettingTypeRoomSubsidy
|
||
// || type == RoomSettingBean.QXRoomSettingTypeRoomMyDress /*|| type == RoomSettingBean.QXRoomSettingTypeRoomTypeLianG*/) {
|
||
// return false;
|
||
// }
|
||
// } else {
|
||
// if (type == RoomSettingBean.QXRoomSettingTypeRoomBgMusic || type == RoomSettingBean.QXRoomSettingTypeRoomSubsidy
|
||
// || type == RoomSettingBean.QXRoomSettingTypeRoomMyDress /*|| type == RoomSettingBean.QXRoomSettingTypeRoomTypeLianG*/) {
|
||
// return false;
|
||
// }
|
||
// }
|
||
return true;
|
||
}
|
||
if (type >= RoomSettingBean.QXRoomSettingTypeRoomLeave &&
|
||
type <= RoomSettingBean.QXRoomSettingTypeRoomReport || type == RoomSettingBean.QXRoomSettingTypeRoomFloatingRed) {
|
||
return true;
|
||
} else {
|
||
|
||
if (type == RoomSettingBean.QXRoomSettingTypeRoomBgMusic || type == RoomSettingBean.QXRoomSettingTypeRoomSubsidy
|
||
|| type == RoomSettingBean.QXRoomSettingTypeRoomMyDress ) {
|
||
return false;
|
||
}
|
||
|
||
// if (type == RoomSettingBean.QXRoomSettingTypeRoomBgMusic || type == RoomSettingBean.QXRoomSettingTypeRoomSubsidy
|
||
// || type == RoomSettingBean.QXRoomSettingTypeRoomMyDress /*|| type == RoomSettingBean.QXRoomSettingTypeRoomTypeLianG*/) {
|
||
// return false;
|
||
// }
|
||
}
|
||
return false;
|
||
}
|
||
else { // 普通用户只显示更多操作中的特定条目
|
||
return type == RoomSettingBean.QXRoomSettingTypeRoomLeave ||
|
||
type == RoomSettingBean.QXRoomSettingTypeRoomShare ||
|
||
type == RoomSettingBean.QXRoomSettingTypeRoomCloseEffects ||
|
||
type == RoomSettingBean.QXRoomSettingTypeRoomReport ||
|
||
type == RoomSettingBean.QXRoomSettingTypeRoomFloatingRed||
|
||
type == RoomSettingBean.QXRoomSettingTypeRoomFloatingScreen;
|
||
}
|
||
|
||
|
||
}
|
||
|
||
|
||
@Override
|
||
protected void initView() {
|
||
mBinding.cl.setOnClickListener(new View.OnClickListener() {
|
||
@Override
|
||
public void onClick(View v) {
|
||
PublishCommentDialogFragment.show(roomId, getChildFragmentManager());
|
||
}
|
||
});
|
||
}
|
||
|
||
@Subscribe(threadMode = ThreadMode.MAIN)
|
||
public void onRoomSettingEvent(RoomSettingEvent event) {
|
||
if (event.getType() == 1014) {
|
||
for (int i = 0; i < dataList.size(); i++) {
|
||
RoomSettingBean bean = (RoomSettingBean) adapter.getItem(i);
|
||
if (bean.getType() == QXRoomSettingTypeRoomOrderMic) {
|
||
if (event.getRoom_up_pit_type() == 2) {
|
||
bean.setStatus(true);
|
||
adapter.notifyItemChanged(i);
|
||
} else {
|
||
bean.setStatus(false);
|
||
adapter.notifyItemChanged(i);
|
||
}
|
||
return;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
|
||
@Override
|
||
protected int getLayoutId() {
|
||
return R.layout.dialog_room_setting_fragment;
|
||
}
|
||
|
||
@Override
|
||
public void changeRoomSuccess(String s, int position, RoomSettingBean bean) {
|
||
if (bean.isSelect()) {
|
||
bean.setSelect(false);
|
||
adapter.notifyItemChanged(position);
|
||
} else {
|
||
bean.setSelect(true);
|
||
adapter.notifyItemChanged(position);
|
||
}
|
||
// if (bean.getName().contains("排麦")) {
|
||
// bean.setName("自由模式");
|
||
// bean.setSelect(false);
|
||
// adapter.notifyItemChanged(position);
|
||
// } else {
|
||
// bean.setName("排麦模式");
|
||
// bean.setSelect(true);
|
||
// adapter.notifyItemChanged(position);
|
||
// }
|
||
}
|
||
|
||
@Override
|
||
public void changeRoomType(String s) {
|
||
ToastUtils.show(s);
|
||
dismiss();
|
||
}
|
||
|
||
@Override
|
||
public void agreeSong(String s) {
|
||
ToastUtils.show(s);
|
||
dismiss();
|
||
}
|
||
}
|