feat:调整房间在线列表-房主判断字段,适配隐身进房展示
This commit is contained in:
@@ -11,31 +11,20 @@ import androidx.appcompat.widget.AppCompatImageView;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.chad.library.adapter.base.BaseMultiItemQuickAdapter;
|
||||
import com.chad.library.adapter.base.BaseQuickAdapter;
|
||||
import com.chad.library.adapter.base.BaseViewHolder;
|
||||
import com.netease.nim.uikit.impl.cache.NimUserInfoCache;
|
||||
import com.netease.nimlib.sdk.RequestCallbackWrapper;
|
||||
import com.netease.nimlib.sdk.uinfo.constant.GenderEnum;
|
||||
import com.netease.nimlib.sdk.uinfo.model.NimUserInfo;
|
||||
import com.yizhuan.erban.R;
|
||||
import com.yizhuan.erban.ui.utils.ImageLoadUtils;
|
||||
import com.yizhuan.erban.ui.widget.NobleAvatarView;
|
||||
import com.yizhuan.erban.utils.RegexUtil;
|
||||
import com.yizhuan.xchat_android_core.auth.AuthModel;
|
||||
import com.yizhuan.xchat_android_core.level.UserLevelResourceType;
|
||||
import com.yizhuan.xchat_android_core.level.UserLevelVo;
|
||||
import com.yizhuan.xchat_android_core.manager.AvRoomDataManager;
|
||||
import com.yizhuan.xchat_android_core.manager.IMNetEaseManager;
|
||||
import com.yizhuan.xchat_android_core.manager.RoomEvent;
|
||||
import com.yizhuan.xchat_android_core.noble.NobleResourceType;
|
||||
import com.yizhuan.xchat_android_core.noble.NobleUtil;
|
||||
import com.yizhuan.xchat_android_core.room.bean.OnlineChatMember;
|
||||
import com.yizhuan.xchat_android_core.room.bean.RoomOnlineUserBean;
|
||||
import com.yizhuan.xchat_android_core.user.bean.UserInfo;
|
||||
import com.yizhuan.xchat_android_library.utils.ListUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import io.reactivex.disposables.Disposable;
|
||||
|
||||
/**
|
||||
@@ -44,14 +33,16 @@ import io.reactivex.disposables.Disposable;
|
||||
* @author Administrator
|
||||
* @date 2017/12/4
|
||||
*/
|
||||
public class OnlineUserAdapter extends BaseQuickAdapter<RoomOnlineUserBean, BaseViewHolder> {
|
||||
public class OnlineUserAdapter extends BaseMultiItemQuickAdapter<RoomOnlineUserBean, BaseViewHolder> {
|
||||
|
||||
private boolean mIsHomeParty;
|
||||
private Disposable mDisposable;
|
||||
private OnRoomOnlineNumberChangeListener mListener;
|
||||
|
||||
public OnlineUserAdapter(Context context, boolean isHomeParty) {
|
||||
super(R.layout.list_item_online_user);
|
||||
super(null);
|
||||
addItemType(RoomOnlineUserBean.NORMAL, R.layout.list_item_online_user);
|
||||
addItemType(RoomOnlineUserBean.NOBLE, R.layout.list_item_online_user_mystery);
|
||||
mIsHomeParty = isHomeParty;
|
||||
}
|
||||
|
||||
@@ -63,6 +54,9 @@ public class OnlineUserAdapter extends BaseQuickAdapter<RoomOnlineUserBean, Base
|
||||
|
||||
@Override
|
||||
protected void convert(@NonNull BaseViewHolder helper, RoomOnlineUserBean item) {
|
||||
if (item.getItemType() == OnlineChatMember.NOBLE) {
|
||||
return;
|
||||
}
|
||||
// 性别
|
||||
final ImageView sexImage = helper.getView(R.id.sex);
|
||||
if (item.getGender() == 1) {
|
||||
@@ -91,7 +85,7 @@ public class OnlineUserAdapter extends BaseQuickAdapter<RoomOnlineUserBean, Base
|
||||
if (item.getMemberType() != null && item.getMemberType().equals("MANAGER")) {
|
||||
ivManager.setVisibility(View.VISIBLE);
|
||||
ivManager.setImageResource(R.drawable.icon_admin_logo);
|
||||
} else if (AvRoomDataManager.get().isRoomOwner(item.getUid())) {
|
||||
} else if (item.getMemberType() != null && item.getMemberType().equals("CREATOR")) {
|
||||
ivManager.setVisibility(View.VISIBLE);
|
||||
ivManager.setImageResource(R.drawable.icon_user_list_room_ownner);
|
||||
} else {
|
||||
@@ -228,7 +222,6 @@ public class OnlineUserAdapter extends BaseQuickAdapter<RoomOnlineUserBean, Base
|
||||
* 成员出去回调
|
||||
*
|
||||
* @param account
|
||||
* @param dataList
|
||||
*/
|
||||
void onMemberExit(String account);
|
||||
|
||||
@@ -237,7 +230,6 @@ public class OnlineUserAdapter extends BaseQuickAdapter<RoomOnlineUserBean, Base
|
||||
*
|
||||
* @param account
|
||||
* @param isUpMic
|
||||
* @param dataList
|
||||
*/
|
||||
void onMemberDownUpMic(String account, boolean isUpMic);
|
||||
|
||||
@@ -245,7 +237,6 @@ public class OnlineUserAdapter extends BaseQuickAdapter<RoomOnlineUserBean, Base
|
||||
* 设置管理员回调
|
||||
*
|
||||
* @param account
|
||||
* @param dataList
|
||||
*/
|
||||
void onUpdateMemberManager(String account, boolean isRemoveManager);
|
||||
|
||||
|
@@ -1,5 +1,6 @@
|
||||
package com.yizhuan.xchat_android_core.room.bean
|
||||
|
||||
import com.chad.library.adapter.base.entity.MultiItemEntity
|
||||
import com.yizhuan.xchat_android_core.user.bean.UserInfo
|
||||
|
||||
/**
|
||||
@@ -9,4 +10,18 @@ import com.yizhuan.xchat_android_core.user.bean.UserInfo
|
||||
data class RoomOnlineUserBean(
|
||||
// MANAGER:管理员
|
||||
val memberType: String? = null
|
||||
) : UserInfo()
|
||||
) : UserInfo(), MultiItemEntity {
|
||||
|
||||
companion object {
|
||||
const val NOBLE = 1
|
||||
const val NORMAL = 0
|
||||
}
|
||||
|
||||
override fun getItemType(): Int {
|
||||
return if (isEnterHide) {
|
||||
NOBLE
|
||||
} else {
|
||||
NORMAL
|
||||
}
|
||||
}
|
||||
}
|
@@ -780,6 +780,13 @@ public class UserInfo implements Serializable {
|
||||
return platformRole == 1;
|
||||
}
|
||||
|
||||
protected boolean isEnterHide(){
|
||||
if (userVipInfoVO == null) {
|
||||
return false;
|
||||
}
|
||||
return userVipInfoVO.getEnterHide();
|
||||
}
|
||||
|
||||
@Data
|
||||
public static class Location {
|
||||
|
||||
|
Reference in New Issue
Block a user