6.5.4礼物冠名

This commit is contained in:
18401019693 2023-08-14 15:50:35 +08:00
parent b443fdd683
commit defb5fdd02
10 changed files with 158 additions and 49 deletions

View File

@ -0,0 +1,57 @@
package com.yunbao.common.bean;
import com.google.gson.annotations.SerializedName;
public class FansModel extends BaseModel {
@SerializedName("levelid")
private int levelid;
@SerializedName("thumb")
private String thumb;
@SerializedName("colour")
private String colour;
@SerializedName("thumb_mark")
private String thumbMark;
@SerializedName("bg")
private String bg;
public int getLevelid() {
return levelid;
}
public void setLevelid(int levelid) {
this.levelid = levelid;
}
public String getThumb() {
return thumb;
}
public void setThumb(String thumb) {
this.thumb = thumb;
}
public String getColour() {
return colour;
}
public void setColour(String colour) {
this.colour = colour;
}
public String getThumbMark() {
return thumbMark;
}
public void setThumbMark(String thumbMark) {
this.thumbMark = thumbMark;
}
public String getBg() {
return bg;
}
public void setBg(String bg) {
this.bg = bg;
}
}

View File

@ -198,6 +198,10 @@ public class CommonHttpUtil {
if (obj.containsKey("is_chat")) { if (obj.containsKey("is_chat")) {
IMLoginManager.get(context).initChat(String.valueOf(obj.getInteger("is_chat"))); IMLoginManager.get(context).initChat(String.valueOf(obj.getInteger("is_chat")));
} }
if (obj.containsKey("levelfans")) {
JSONArray levelArray = obj.getJSONArray("levelfans");
new NewLevelManager(context).upDataFansLevel(levelArray.toJSONString());
}
if (obj.containsKey("level_new")) {//缓存等级数据 if (obj.containsKey("level_new")) {//缓存等级数据
JSONArray levelArray = obj.getJSONArray("level_new"); JSONArray levelArray = obj.getJSONArray("level_new");
new NewLevelManager(context).UpDataLevel(levelArray.toJSONString()); new NewLevelManager(context).UpDataLevel(levelArray.toJSONString());

View File

@ -4,6 +4,7 @@ import android.content.Context;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken; import com.google.gson.reflect.TypeToken;
import com.yunbao.common.bean.FansModel;
import com.yunbao.common.bean.NewLevelModel; import com.yunbao.common.bean.NewLevelModel;
import com.yunbao.common.manager.base.BaseCacheManager; import com.yunbao.common.manager.base.BaseCacheManager;
@ -17,9 +18,11 @@ public class NewLevelManager extends BaseCacheManager {
private final String KEY_USER_LEVEL = "keyUserLevel"; private final String KEY_USER_LEVEL = "keyUserLevel";
private final String KEY_ANCHOR_LEVEL = "keyAnchorLevel"; private final String KEY_ANCHOR_LEVEL = "keyAnchorLevel";
private final String KEY_LIVE_LEVEL = "keyLiveLevel"; private final String KEY_LIVE_LEVEL = "keyLiveLevel";
private final String KEY_FANS_LEVEL = "keyFansLevel";
private List<NewLevelModel> newLevelModels = new ArrayList<>(); private List<NewLevelModel> newLevelModels = new ArrayList<>();
private List<NewLevelModel> keyAnchorLevel = new ArrayList<>(); private List<NewLevelModel> keyAnchorLevel = new ArrayList<>();
private List<FansModel> fansModels = new ArrayList<>();
public NewLevelManager(Context context) { public NewLevelManager(Context context) {
super(context); super(context);
@ -36,6 +39,29 @@ public class NewLevelManager extends BaseCacheManager {
put(KEY_USER_LEVEL, newLevelModels); put(KEY_USER_LEVEL, newLevelModels);
} }
public void upDataFansLevel(String json) {
fansModels = new Gson().fromJson(json, new TypeToken<List<FansModel>>() {
}.getType());
put(KEY_FANS_LEVEL, fansModels);
}
public List<FansModel> getFansLevel() {
fansModels = getList(KEY_FANS_LEVEL, new TypeToken<List<FansModel>>() {
}.getType());
return fansModels;
}
public FansModel getFansModel(int level) {
getFansLevel();
FansModel fansModel = null;
for (FansModel model : fansModels) {
if (model.getLevelid() == level) {
fansModel = model;
}
}
return fansModel;
}
/** /**
* 获取等级数据 * 获取等级数据
* *
@ -45,6 +71,7 @@ public class NewLevelManager extends BaseCacheManager {
return getList(KEY_USER_LEVEL, new TypeToken<List<NewLevelModel>>() { return getList(KEY_USER_LEVEL, new TypeToken<List<NewLevelModel>>() {
}.getType()); }.getType());
} }
/** /**
* 缓存等级图标 * 缓存等级图标
* *

View File

@ -38,6 +38,7 @@ import com.lxj.xpopup.enums.PopupPosition;
import com.lxj.xpopup.interfaces.XPopupCallback; import com.lxj.xpopup.interfaces.XPopupCallback;
import com.lzf.easyfloat.EasyFloat; import com.lzf.easyfloat.EasyFloat;
import com.yunbao.common.CommonAppConfig; import com.yunbao.common.CommonAppConfig;
import com.yunbao.common.CommonAppContext;
import com.yunbao.common.Constants; import com.yunbao.common.Constants;
import com.yunbao.common.HtmlConfig; import com.yunbao.common.HtmlConfig;
import com.yunbao.common.activity.WebViewActivity; import com.yunbao.common.activity.WebViewActivity;
@ -79,6 +80,7 @@ import com.yunbao.common.utils.DialogUitl;
import com.yunbao.common.utils.GiftCacheUtil; import com.yunbao.common.utils.GiftCacheUtil;
import com.yunbao.common.utils.L; import com.yunbao.common.utils.L;
import com.yunbao.common.utils.MicStatusManager; import com.yunbao.common.utils.MicStatusManager;
import com.yunbao.common.utils.NobleUtil;
import com.yunbao.common.utils.ProcessResultUtil; import com.yunbao.common.utils.ProcessResultUtil;
import com.yunbao.common.utils.RouteUtil; import com.yunbao.common.utils.RouteUtil;
import com.yunbao.common.utils.StringUtil; import com.yunbao.common.utils.StringUtil;
@ -249,6 +251,20 @@ public class LiveAudienceActivity extends LiveActivity {
* 初始化数据 * 初始化数据
*/ */
private void initData() { private void initData() {
HttpClient.getInstance().get("User.getBaseInfos", "getBaseInfo")
.params("uid", IMLoginManager.get(mContext).getUserInfo().getId())
.params("token", IMLoginManager.get(mContext).getUserInfo().getToken())
.execute(new HttpCallback() {
@Override
public void onSuccess(int code, String msg, String[] info) {
if (code == 0 && info.length > 0) {
IMLoginManager.get(mContext).upDataUserInfo(info[0]);
JSONObject obj = JSON.parseObject(info[0]);
UserBean bean = JSON.toJavaObject(obj, UserBean.class);
CommonAppConfig.getInstance().setUserBean(bean);
}
}
});
String json = GsonUtils.toJson(mLiveBean); String json = GsonUtils.toJson(mLiveBean);
AnchorRecommendItemModel model = GsonUtils.fromJson(json, AnchorRecommendItemModel.class); AnchorRecommendItemModel model = GsonUtils.fromJson(json, AnchorRecommendItemModel.class);
itemModelList.add(0, model); itemModelList.add(0, model);

View File

@ -293,6 +293,7 @@ public class LiveGiftPopup extends AbsDialogFragment {
public void onViewClicks() { public void onViewClicks() {
if (liveGiftModel.getType() == 7) return; if (liveGiftModel.getType() == 7) return;
new XPopup.Builder(getContext()) new XPopup.Builder(getContext())
.enableDrag(false)
.asCustom(new GiftNumberPopup(getContext())) .asCustom(new GiftNumberPopup(getContext()))
.show(); .show();
ImgLoader.display(getContext(), R.mipmap.icon_arrow_down, iconArrow); ImgLoader.display(getContext(), R.mipmap.icon_arrow_down, iconArrow);

View File

@ -27,6 +27,7 @@ import com.tencent.imsdk.v2.V2TIMManager;
import com.yunbao.common.CommonAppConfig; import com.yunbao.common.CommonAppConfig;
import com.yunbao.common.Constants; import com.yunbao.common.Constants;
import com.yunbao.common.bean.FansMedalBean; import com.yunbao.common.bean.FansMedalBean;
import com.yunbao.common.bean.FansModel;
import com.yunbao.common.bean.LevelBean; import com.yunbao.common.bean.LevelBean;
import com.yunbao.common.bean.LiveBean; import com.yunbao.common.bean.LiveBean;
import com.yunbao.common.bean.OlineUserlistModel; import com.yunbao.common.bean.OlineUserlistModel;
@ -36,6 +37,7 @@ import com.yunbao.common.glide.ImgLoader;
import com.yunbao.common.http.CommonHttpUtil; import com.yunbao.common.http.CommonHttpUtil;
import com.yunbao.common.http.HttpCallback; import com.yunbao.common.http.HttpCallback;
import com.yunbao.common.interfaces.CommonCallback; import com.yunbao.common.interfaces.CommonCallback;
import com.yunbao.common.manager.NewLevelManager;
import com.yunbao.common.utils.Bus; import com.yunbao.common.utils.Bus;
import com.yunbao.common.utils.CommonIconUtil; import com.yunbao.common.utils.CommonIconUtil;
import com.yunbao.common.utils.DialogUitl; import com.yunbao.common.utils.DialogUitl;
@ -429,7 +431,7 @@ public class LiveUserDialogFragment extends AbsDialogFragment implements View.On
}); });
} }
ImgLoader.display(mContext, levelBean.getBgIcon(), mLiveIcon2); ImgLoader.display(mContext, levelBean.getBgIcon(), mLiveIcon2);
FansMedalBean fansMedalBean = CommonAppConfig.getInstance().getAnchorFansMedal(obj.getIntValue("medal_level")); FansModel fansMedalBean = new NewLevelManager(mContext).getFansModel(obj.getIntValue("medal_level"));
if (fansMedalBean != null && !isAnchor) { if (fansMedalBean != null && !isAnchor) {
ImgLoader.display(mContext, fansMedalBean.getThumb(), mNoble); ImgLoader.display(mContext, fansMedalBean.getThumb(), mNoble);
} else { } else {

View File

@ -16,9 +16,12 @@ import com.yunbao.common.CommonAppConfig;
import com.yunbao.common.CommonAppContext; import com.yunbao.common.CommonAppContext;
import com.yunbao.common.Constants; import com.yunbao.common.Constants;
import com.yunbao.common.bean.FansMedalBean; import com.yunbao.common.bean.FansMedalBean;
import com.yunbao.common.bean.FansModel;
import com.yunbao.common.bean.LiveUserGiftBean;
import com.yunbao.common.bean.UserBean; import com.yunbao.common.bean.UserBean;
import com.yunbao.common.http.HttpCallback; import com.yunbao.common.http.HttpCallback;
import com.yunbao.common.http.HttpClient; import com.yunbao.common.http.HttpClient;
import com.yunbao.common.manager.NewLevelManager;
import com.yunbao.common.utils.Bus; import com.yunbao.common.utils.Bus;
import com.yunbao.common.utils.L; import com.yunbao.common.utils.L;
import com.yunbao.common.utils.ToastUtil; import com.yunbao.common.utils.ToastUtil;
@ -32,7 +35,6 @@ import com.yunbao.live.bean.LiveGiftPrizePoolWinBean;
import com.yunbao.live.bean.LiveLuckGiftWinBean; import com.yunbao.live.bean.LiveLuckGiftWinBean;
import com.yunbao.live.bean.LivePKUserListBean; import com.yunbao.live.bean.LivePKUserListBean;
import com.yunbao.live.bean.LiveReceiveGiftBean; import com.yunbao.live.bean.LiveReceiveGiftBean;
import com.yunbao.common.bean.LiveUserGiftBean;
import com.yunbao.live.event.LiveAudienceEvent; import com.yunbao.live.event.LiveAudienceEvent;
import com.yunbao.live.presenter.LiveLinkMicPkPresenter; import com.yunbao.live.presenter.LiveLinkMicPkPresenter;
import com.yunbao.live.views.LivePlayKsyViewHolder; import com.yunbao.live.views.LivePlayKsyViewHolder;
@ -443,7 +445,7 @@ public class SocketClient {
try { try {
//增加粉丝徽章信息 //增加粉丝徽章信息
chatBean.setMedalNmae(map.getString("medal_name")); chatBean.setMedalNmae(map.getString("medal_name"));
FansMedalBean fansMedalBean = CommonAppConfig.getInstance().getAnchorFansMedal(map.getIntValue("medal_level")); FansModel fansMedalBean = new NewLevelManager(null).getFansModel(map.getIntValue("medal_level"));
if (fansMedalBean != null) if (fansMedalBean != null)
chatBean.setMedalLevelImageUrl(fansMedalBean.getThumb()); chatBean.setMedalLevelImageUrl(fansMedalBean.getThumb());
} catch (Exception e) { } catch (Exception e) {
@ -492,7 +494,7 @@ public class SocketClient {
chatBean.setGuardType(obj.getIntValue("guard_type")); chatBean.setGuardType(obj.getIntValue("guard_type"));
//增加粉丝徽章信息 //增加粉丝徽章信息
chatBean.setMedalNmae(obj.getString("medal_name")); chatBean.setMedalNmae(obj.getString("medal_name"));
FansMedalBean fansMedalBean = CommonAppConfig.getInstance().getAnchorFansMedal(obj.getIntValue("medal_level")); FansModel fansMedalBean = new NewLevelManager(null).getFansModel(map.getIntValue("medal_level"));
if (fansMedalBean != null) if (fansMedalBean != null)
chatBean.setMedalLevelImageUrl(fansMedalBean.getThumb()); chatBean.setMedalLevelImageUrl(fansMedalBean.getThumb());
mListener.onEnterRoom(new LiveEnterRoomBean(u, chatBean)); mListener.onEnterRoom(new LiveEnterRoomBean(u, chatBean));
@ -538,7 +540,7 @@ public class SocketClient {
chatBean.setType(LiveChatBean.GIFT); chatBean.setType(LiveChatBean.GIFT);
//增加粉丝徽章信息 //增加粉丝徽章信息
chatBean.setMedalNmae(map.getString("medal_name")); chatBean.setMedalNmae(map.getString("medal_name"));
FansMedalBean fansMedalBean = CommonAppConfig.getInstance().getAnchorFansMedal(map.getIntValue("medal_level")); FansModel fansMedalBean = new NewLevelManager(null).getFansModel(map.getIntValue("medal_level"));
if (fansMedalBean != null) if (fansMedalBean != null)
chatBean.setMedalLevelImageUrl(fansMedalBean.getThumb()); chatBean.setMedalLevelImageUrl(fansMedalBean.getThumb());
//聊天列表显示 玩家名 1 礼物名 //聊天列表显示 玩家名 1 礼物名
@ -618,7 +620,7 @@ public class SocketClient {
} }
//增加粉丝徽章信息 //增加粉丝徽章信息
chatBean.setMedalNmae(map.getString("medal_name")); chatBean.setMedalNmae(map.getString("medal_name"));
FansMedalBean fansMedalBean = CommonAppConfig.getInstance().getAnchorFansMedal(map.getIntValue("medal_level")); FansModel fansMedalBean = new NewLevelManager(null).getFansModel(map.getIntValue("medal_level"));
if (fansMedalBean != null) if (fansMedalBean != null)
chatBean.setMedalLevelImageUrl(fansMedalBean.getThumb()); chatBean.setMedalLevelImageUrl(fansMedalBean.getThumb());

View File

@ -99,8 +99,8 @@ public class SocketRyChatUtil {
.param("liangname", u.getGoodName()) .param("liangname", u.getGoodName())
.param("vip_type", u.getVip().getType()) .param("vip_type", u.getVip().getType())
.param("guard_type", guardType) .param("guard_type", guardType)
.param("medal_name", model.getMedalName()) .param("medal_name", u.getMedalName())
.param("medal_level", u.getMedalLevel()) .param("medal_level", model.getMedalLevel())
.param("good_num", u.getGoodnum()) .param("good_num", u.getGoodnum())
.param("ct", content) .param("ct", content)
.param("noble_id", String.valueOf(model.getNobleId())) .param("noble_id", String.valueOf(model.getNobleId()))

View File

@ -3,7 +3,6 @@ package com.yunbao.live.socket;
import static com.blankj.utilcode.util.SnackbarUtils.dismiss; import static com.blankj.utilcode.util.SnackbarUtils.dismiss;
import static com.blankj.utilcode.util.ViewUtils.runOnUiThread; import static com.blankj.utilcode.util.ViewUtils.runOnUiThread;
import static com.yunbao.live.activity.LiveRyAnchorActivity.isDRPK; import static com.yunbao.live.activity.LiveRyAnchorActivity.isDRPK;
import static com.yunbao.live.views.LivePushRyViewHolder.rtcRoom;
import static com.yunbao.live.views.LiveRoomViewHolder.getIsHot; import static com.yunbao.live.views.LiveRoomViewHolder.getIsHot;
import android.app.Activity; import android.app.Activity;
@ -24,6 +23,7 @@ import com.yunbao.common.CommonAppContext;
import com.yunbao.common.Constants; import com.yunbao.common.Constants;
import com.yunbao.common.bean.AiAutomaticSpeechModel; import com.yunbao.common.bean.AiAutomaticSpeechModel;
import com.yunbao.common.bean.FansMedalBean; import com.yunbao.common.bean.FansMedalBean;
import com.yunbao.common.bean.FansModel;
import com.yunbao.common.bean.LinkMicUserBean; import com.yunbao.common.bean.LinkMicUserBean;
import com.yunbao.common.bean.LiveUserGiftBean; import com.yunbao.common.bean.LiveUserGiftBean;
import com.yunbao.common.bean.MsgModel; import com.yunbao.common.bean.MsgModel;
@ -41,6 +41,7 @@ import com.yunbao.common.event.SendBlindGiftEvent;
import com.yunbao.common.http.HttpCallback; import com.yunbao.common.http.HttpCallback;
import com.yunbao.common.http.HttpClient; import com.yunbao.common.http.HttpClient;
import com.yunbao.common.manager.IMRTCManager; import com.yunbao.common.manager.IMRTCManager;
import com.yunbao.common.manager.NewLevelManager;
import com.yunbao.common.manager.RandomPkManager; import com.yunbao.common.manager.RandomPkManager;
import com.yunbao.common.utils.Bus; import com.yunbao.common.utils.Bus;
import com.yunbao.common.utils.L; import com.yunbao.common.utils.L;
@ -863,7 +864,7 @@ public class SocketRyClient {
try { try {
//增加粉丝徽章信息 //增加粉丝徽章信息
chatBean.setMedalNmae(map.getString("medal_name")); chatBean.setMedalNmae(map.getString("medal_name"));
FansMedalBean fansMedalBean = CommonAppConfig.getInstance().getAnchorFansMedal(map.getIntValue("medal_level")); FansModel fansMedalBean = new NewLevelManager(mContext).getFansModel(map.getIntValue("medal_level"));
if (fansMedalBean != null) if (fansMedalBean != null)
chatBean.setMedalLevelImageUrl(fansMedalBean.getThumb()); chatBean.setMedalLevelImageUrl(fansMedalBean.getThumb());
} catch (Exception e) { } catch (Exception e) {
@ -921,7 +922,7 @@ public class SocketRyClient {
//增加粉丝徽章信息 //增加粉丝徽章信息
chatBean.setMedalNmae(obj.getString("medal_name")); chatBean.setMedalNmae(obj.getString("medal_name"));
chatBean.setUserNiceName(obj.getString("user_nicename"));//名字 chatBean.setUserNiceName(obj.getString("user_nicename"));//名字
FansMedalBean fansMedalBean = CommonAppConfig.getInstance().getAnchorFansMedal(obj.getIntValue("medal_level")); FansModel fansMedalBean = new NewLevelManager(mContext).getFansModel(map.getIntValue("medal_level"));
u.setFansLevel(obj.getIntValue("medal_level")); u.setFansLevel(obj.getIntValue("medal_level"));
u.setFansEnterRoomUrl(obj.getString("medal_backgroup_thumb")); u.setFansEnterRoomUrl(obj.getString("medal_backgroup_thumb"));
if (fansMedalBean != null) if (fansMedalBean != null)
@ -956,7 +957,7 @@ public class SocketRyClient {
chatBean.setType(LiveChatBean.GIFT); chatBean.setType(LiveChatBean.GIFT);
//增加粉丝徽章信息 //增加粉丝徽章信息
chatBean.setMedalNmae(map.getString("medal_name")); chatBean.setMedalNmae(map.getString("medal_name"));
FansMedalBean fansMedalBean = CommonAppConfig.getInstance().getAnchorFansMedal(map.getIntValue("medal_level")); FansModel fansMedalBean = new NewLevelManager(mContext).getFansModel(map.getIntValue("medal_level"));
if (fansMedalBean != null) if (fansMedalBean != null)
chatBean.setMedalLevelImageUrl(fansMedalBean.getThumb()); chatBean.setMedalLevelImageUrl(fansMedalBean.getThumb());
//聊天列表显示 玩家名 1 礼物名 //聊天列表显示 玩家名 1 礼物名
@ -1079,7 +1080,7 @@ public class SocketRyClient {
} }
//增加粉丝徽章信息 //增加粉丝徽章信息
chatBean.setMedalNmae(map.getString("medal_name")); chatBean.setMedalNmae(map.getString("medal_name"));
FansMedalBean fansMedalBean = CommonAppConfig.getInstance().getAnchorFansMedal(map.getIntValue("medal_level")); FansModel fansMedalBean = new NewLevelManager(mContext).getFansModel(map.getIntValue("medal_level"));
if (fansMedalBean != null) if (fansMedalBean != null)
chatBean.setMedalLevelImageUrl(fansMedalBean.getThumb()); chatBean.setMedalLevelImageUrl(fansMedalBean.getThumb());

View File

@ -409,7 +409,6 @@ public class PortraitLiveManager implements LivePlayListener, SocketMessageListe
.enterRoomNew(mLiveBean.getStream(), mLiveBean.getUid(), mLiveBean.getCity(), new com.yunbao.common.http.base.HttpCallback<EnterRoomNewModel>() { .enterRoomNew(mLiveBean.getStream(), mLiveBean.getUid(), mLiveBean.getCity(), new com.yunbao.common.http.base.HttpCallback<EnterRoomNewModel>() {
@Override @Override
public void onSuccess(EnterRoomNewModel data) { public void onSuccess(EnterRoomNewModel data) {
IMLoginManager.get(mContext).getUserInfo().setMedalName(data.getEnterRoomInfo().getMedalName());
isEnterRoom = true; isEnterRoom = true;
if (TextUtils.isEmpty(leaveStream)) { if (TextUtils.isEmpty(leaveStream)) {
leaveStream = mLiveBean.getStream(); leaveStream = mLiveBean.getStream();