Files
yusheng-android/MainModule/src/main/java/com/xscm/modulemain/adapter/GiftUserAdapter.java
2025-11-08 17:45:45 +08:00

214 lines
7.1 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package com.xscm.modulemain.adapter;
import android.graphics.Color;
import android.text.TextUtils;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import com.blankj.utilcode.util.LogUtils;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import com.xscm.modulemain.R;
import com.xscm.moduleutil.bean.RewardUserBean;
import com.xscm.moduleutil.utils.ImageUtils;
import com.xscm.moduleutil.utils.SpUtil;
import com.xscm.moduleutil.widget.BaseWheatView;
import java.util.ArrayList;
import java.util.List;
/**
* 项目名称 qipao-android
* 包名com.qpyy.room.adapter
* 创建人 黄强
* 创建时间 2020/8/6 14:48
* 描述 describe
*/
public class GiftUserAdapter extends BaseQuickAdapter<RewardUserBean, BaseViewHolder> {
private int ownerModel = 0;
public GiftUserAdapter() {
super(R.layout.room_rv_item_gift_wheat);
}
@Override
protected void convertPayloads(@NonNull BaseViewHolder helper, RewardUserBean item, @NonNull List<Object> payloads) {
super.convertPayloads(helper, item, payloads);
helper.setVisible(R.id.riv_pit, item.isSelect());
TextView tvPit = helper.getView(R.id.tv_pit);
if (item.isSelect()) {
helper.getView(R.id.tv_pit).setBackgroundResource(com.xscm.moduleutil.R.mipmap.gift_show);
tvPit.setTextColor(Color.parseColor("#ffffff"));
} else {
helper.getView(R.id.tv_pit).setBackgroundResource(com.xscm.moduleutil.R.mipmap.gift_show_b);
tvPit.setTextColor(Color.parseColor("#ff333333"));
}
}
@Override
protected void convert(BaseViewHolder helper, RewardUserBean item) {
ImageUtils.loadHeadCC(item.getAvatar(), helper.getView(R.id.riv_gift_wheat_head_pic));
ImageView rivPit = helper.getView(R.id.riv_pit);
TextView tvPit = helper.getView(R.id.tv_pit);
rivPit.setVisibility(item.isSelect() ? View.VISIBLE : View.INVISIBLE);
if (TextUtils.isEmpty(item.getPit_number()) || "0".equals(item.getPit_number())) {
helper.setVisible(R.id.tv_pit, false);
} else {
helper.setVisible(R.id.tv_pit, true);
int pitNumber = Integer.parseInt(item.getPit_number());
if (pitNumber > 10) {
helper.setText(R.id.tv_pit, item.getNickname());
} else {
helper.setText(R.id.tv_pit, String.format("%s号麦", item.getPit_number()));
}
if (item.getPit_number().equals("10")) {
helper.setText(R.id.tv_pit, "嘉宾");
}
if (BaseWheatView.WHEAT_HOST.equals(item.getPit_number())) {
if (2 == ownerModel || 0 == ownerModel) {
helper.setText(R.id.tv_pit, "主持人");
} else {
helper.setText(R.id.tv_pit, "房主");
}
}
}
if (item.isSelect()) {
helper.getView(R.id.tv_pit).setBackgroundResource(com.xscm.moduleutil.R.mipmap.gift_show);
tvPit.setTextColor(Color.parseColor("#ffffff"));
} else {
helper.getView(R.id.tv_pit).setBackgroundResource(com.xscm.moduleutil.R.mipmap.gift_show_b);
tvPit.setTextColor(Color.parseColor("#ff333333"));
}
}
public boolean isAll() {
int count = 0;
List<RewardUserBean> data = getData();
for (RewardUserBean item : data) {
if (item.isSelect()) {
count++;
}
}
return count > 0 && count == data.size();
}
public void allElection(boolean b) {
List<RewardUserBean> data = getData();
for (RewardUserBean item : data) {
item.setSelect(b);
}
notifyDataSetChanged();
}
public int getSelectCount() {
int count = 0;
List<RewardUserBean> data = getData();
for (RewardUserBean item : data) {
if (!item.getUser_id().equals(SpUtil.getUserId() + "")) {
if (item.isSelect()) {
count++;
}
}
}
return count;
}
///获取当前选中的人数
public int getUserIdCount(){
int count = 0;
List<RewardUserBean> data = getData();
StringBuilder sb = new StringBuilder();
for (int i = 0; i < data.size(); i++) {
if (!data.get(i).getUser_id().equals(SpUtil.getUserId() + "")) {
if (data.get(i).isSelect()) {
count++;
}
}
}
return count;
}
public String getUserIdToString() {
List<RewardUserBean> data = getData();
StringBuilder sb = new StringBuilder();
for (int i = 0; i < data.size(); i++) {
if (!data.get(i).getUser_id().equals(SpUtil.getUserId() + "")) {
if (data.get(i).isSelect()) {
if (sb.length() > 0) {//该步即不会第一位有逗号,也防止最后一位拼接逗号!
sb.append(",");
}
sb.append(data.get(i).getUser_id());
}
}
}
return sb.toString();
}
public String getUserPitToString() {
List<RewardUserBean> data = getData();
StringBuilder sb = new StringBuilder();
for (int i = 0; i < data.size(); i++) {
if (data.get(i).isSelect()) {
if (sb.length() > 0) {//该步即不会第一位有逗号,也防止最后一位拼接逗号!
sb.append(",");
}
if (data != null && data.get(i) != null && data.get(i).getPit_number() != null) {
sb.append(data.get(i).getPit_number());
} else {
sb.append("");
}
}
}
return sb.toString();
}
public List<RewardUserBean> getGiftUser() {
List<RewardUserBean> data = getData();
List<RewardUserBean> giftUserList = new ArrayList<>();
for (RewardUserBean item : data) {
if (item.isSelect()) {
giftUserList.add(item);
}
}
return giftUserList;
}
/**
* 清除所有选中
*/
public List<String> clearAllSelected() {
List<String> ids = new ArrayList<>();
List<RewardUserBean> data = getData();
for (RewardUserBean item : data) {
if (item.isSelect()) {
ids.add(item.getUser_id());
}
item.setSelect(false);
}
notifyDataSetChanged();
return ids;
}
public void setOwnerModel(int ownerModel) {
this.ownerModel = ownerModel;
notifyDataSetChanged();
}
public List<String> getAllSelectedIds() {
List<String> ids = new ArrayList<>();
List<RewardUserBean> data = getData();
for (RewardUserBean item : data) {
if (item.isSelect()) {
ids.add(item.getUser_id());
}
}
return ids;
}
}