修改名称。

This commit is contained in:
2025-11-07 09:22:39 +08:00
parent d9cf55b053
commit a8dcfbb6a7
2203 changed files with 3 additions and 4 deletions

View File

@@ -0,0 +1,221 @@
package com.xscm.modulemain.dialog;
import android.os.Bundle;
import android.view.Gravity;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import android.widget.TextView;
import androidx.recyclerview.widget.LinearLayoutManager;
import com.blankj.utilcode.util.ToastUtils;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import com.xscm.modulemain.R;
import com.xscm.modulemain.activity.room.contacts.RoomHostContacts;
import com.xscm.modulemain.databinding.RoomFragmentItemListBinding;
import com.xscm.modulemain.activity.room.presenter.RoomHostPresenter;
import com.lihang.ShadowLayout;
import com.xscm.moduleutil.base.BaseMvpDialogFragment;
import com.xscm.moduleutil.bean.HostBean;
import com.xscm.moduleutil.bean.RefreshEvent;
import com.xscm.moduleutil.bean.RoomMessageEvent;
import com.xscm.moduleutil.bean.RoomSearchResp;
import com.xscm.moduleutil.color.ThemeableDrawableUtils;
import com.xscm.moduleutil.utils.ColorManager;
import com.xscm.moduleutil.utils.ImageUtils;
import org.greenrobot.eventbus.EventBus;
import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode;
import java.util.List;
/**
* A fragment representing a list of Items.
* 主持弹窗
*/
public class RoomHostFragment extends BaseMvpDialogFragment<RoomHostPresenter, RoomFragmentItemListBinding> implements RoomHostContacts.View {
private String mRoomId;
private BaseQuickAdapter<HostBean, BaseViewHolder> mAdapter;
// TODO: Customize parameter initialization
@SuppressWarnings("unused")
public static RoomHostFragment newInstance(String roomId) {
RoomHostFragment fragment = new RoomHostFragment();
Bundle bundle = new Bundle();
bundle.putString("roomId", roomId);
fragment.setArguments(bundle);
return fragment;
}
@Override
public void initArgs(Bundle arguments) {
super.initArgs(arguments);
mRoomId = arguments.getString("roomId");
}
// TODO: 2025/3/7 固定dialog显示的位置和大小
@Override
protected void initDialogStyle(Window window) {
super.initDialogStyle(window);
window.setGravity(Gravity.BOTTOM);
WindowManager.LayoutParams lp = window.getAttributes();
lp.dimAmount = 0.4f;
// 固定对话框的宽度和高度
lp.width = WindowManager.LayoutParams.MATCH_PARENT; // 宽度设置为屏幕宽度
lp.height = WindowManager.LayoutParams.WRAP_CONTENT; // 高度设置为内容高度
window.setAttributes(lp);
window.addFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);
}
@Override
protected RoomHostPresenter bindPresenter() {
return new RoomHostPresenter(this, getContext());
}
@Override
protected void initData() {
}
@Override
protected void initView() {
mBinding.tvTj.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO: 2025/3/7 点击弹出设置主持人模式
RoomHostAddFragment.newInstance(mRoomId).show(getChildFragmentManager(), "RoomHostAddFragment");
}
});
mBinding.rvHostList.setLayoutManager(new LinearLayoutManager(getContext()));
mAdapter = new BaseQuickAdapter<HostBean, BaseViewHolder>(R.layout.room_fragment_item, null) {
@Override
protected void convert(BaseViewHolder helper, HostBean item) {
helper.setText(R.id.tv_name, item.getNickname());
ImageUtils.loadHeadCC(item.getAvatar(), helper.getView(R.id.image));
if (item.getRatio() == null || item.getRatio().isEmpty()) {
helper.setText(R.id.tv_proportion, "未设置");
} else {
helper.setText(R.id.tv_proportion, item.getRatio() + "%");
}
helper.setText(R.id.tv_shouyi,item.getEarnings()!=null&&!item.getEarnings().isEmpty()?item.getEarnings():"0.00");
// helper.setText(R.id.tv_income, "¥" + item.getEarnings());
ShadowLayout layout = helper.getView(R.id.shadow_layout);
// layout.setShadowColor(R.color.picture_color_fa632d);
layout.setShadowHiddenBottom(false);
layout.setShadowHidden(false);
layout.setShadowOffsetY(1);
layout.setShadowOffsetX(1);
TextView tv_sz=helper.getView(R.id.tv_sz);
ThemeableDrawableUtils.setThemeableRoundedBackground(tv_sz, ColorManager.getInstance().getPrimaryColorInt(), 53);
tv_sz.setTextColor(ColorManager.getInstance().getButtonColorInt());
helper.getView(R.id.tv_yc).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO: 2025/3/7 点击移除主持人
MvpPre.postHostAdd(mRoomId, item.getUser_id(), "1", "2");
}
});
helper.getView(R.id.tv_sz).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO: 2025/3/7 点击设置收益比例
RoomHostIncomeDialog dialog = new RoomHostIncomeDialog(getContext());
dialog.setListener(new RoomHostIncomeDialog.OnConfirmClickListener() {
@Override
public void onConfirm(String proportion) {
MvpPre.setPresidedRatio(item.getRoom_id(),item.getUser_id(), proportion);
}
});
dialog.show();
// dialog.setListener(new RoomHostIncomeDialog.OnConfirmClickListener() {
// @Override
// public void onConfirm(String proportion) {
// // TODO: 2025/3/7 提交数据
// MvpPre.setPresidedRatio(item.getRoom_id(),item.getId(), proportion);
// }
// });
// dialog.show();
}
});
}
};
mBinding.rvHostList.setAdapter(mAdapter);
mAdapter.bindToRecyclerView(mBinding.rvHostList);
}
@Override
protected int getLayoutId() {
return R.layout.room_fragment_item_list;
}
@Override
public void setHostrList(List<HostBean> list) {
mAdapter.setNewData(list);
}
@Override
public void getUserHostList(List<RoomSearchResp> list) {
}
@Override
public void postHostAdd(String s, String type, String is_add) {
MvpPre.clearHostList(mRoomId,"1");
}
@Override
public void postPresidedRatio(String s) {
ToastUtils.showShort("设置成功");
// MvpPre.clearHostList(mRoomId);
MvpPre.clearHostList(mRoomId,"1");
}
@Override
public void postPresidedDel(String s) {
ToastUtils.showShort("移除成功");
// MvpPre.clearHostList(mRoomId);
}
@Override
public void doDismiss() {
}
@Subscribe(threadMode = ThreadMode.MAIN)
public void onRefreshEvent(RefreshEvent refreshEvent) {
// MvpPre.clearHostList(refreshEvent.getRoomId());
}
@Override
public void onStop() {
super.onStop();
}
@Override
public void onResume() {
super.onResume();
MvpPre.clearHostList(mRoomId,"1");
}
@Subscribe(threadMode = ThreadMode.MAIN)
public void refreshEvent(RoomMessageEvent event) {
if (event.getMsgType() == 1007){
MvpPre.clearHostList(mRoomId,"1");
}
}
}