From da7ebb2663d4596f67aacfd99b010e54ae7e54dc Mon Sep 17 00:00:00 2001 From: zlzw <583819556@qq.com> Date: Wed, 28 Jun 2023 16:44:42 +0800 Subject: [PATCH] =?UTF-8?q?add=20=E6=96=B0=E5=A2=9E=E7=BA=A2=E5=8C=85?= =?UTF-8?q?=E4=B8=93=E5=8C=BA=20add=20=E6=96=B0=E5=A2=9E=E7=BA=A2=E5=8C=85?= =?UTF-8?q?=E4=B8=93=E5=8C=BA=E8=BF=9B=E5=8E=BB=E6=98=AF=E5=8F=AA=E6=9C=89?= =?UTF-8?q?=E5=8F=91=E6=94=BE=E7=BA=A2=E5=8C=85=E7=9A=84=E7=9B=B4=E6=92=AD?= =?UTF-8?q?=E9=97=B4=20add=20=E6=96=B0=E5=A2=9E=E9=A6=96=E9=A1=B5=E7=BA=A2?= =?UTF-8?q?=E5=8C=85=E6=B5=AE=E7=AA=97=20add=20=E6=96=B0=E5=A2=9E=E7=BA=A2?= =?UTF-8?q?=E5=8C=85=E8=AE=B0=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/bean/AnchorRecommendModel.java | 30 ++++ .../common/bean/RedPacketDetailsBean.java | 165 ++++++++++++++++++ .../yunbao/common/bean/RedPacketListBean.java | 117 +++++++++++++ .../com/yunbao/common/http/PDLiveApi.java | 23 +++ .../common/http/live/LiveNetManager.java | 51 +++++- .../common/http/main/MainNetManager.java | 37 +++- .../com/yunbao/common/utils/RouteUtil.java | 37 +++- .../main/res/layout/item_user_red_packet.xml | 4 +- common/src/main/res/layout/view_title.xml | 20 ++- common/src/main/res/layout/view_title2.xml | 2 +- .../res/mipmap-mdpi/ic_red_packet_record.png | Bin 0 -> 746 bytes .../res/mipmap-xxhdpi/bg_float_red_packet.png | Bin 0 -> 1101 bytes .../icon_red_packet_float_text_en.png | Bin 0 -> 10887 bytes .../icon_red_packet_float_text_zh.png | Bin 0 -> 10898 bytes common/src/main/res/values-en-rUS/string.xml | 16 ++ common/src/main/res/values-zh-rHK/strings.xml | 16 ++ common/src/main/res/values-zh-rTW/strings.xml | 16 ++ common/src/main/res/values-zh/strings.xml | 16 ++ common/src/main/res/values/strings.xml | 16 ++ config.gradle | 4 +- .../live/activity/LiveAudienceActivity.java | 49 ++++-- .../yunbao/main/activity/MainActivity.java | 33 +++- .../main/activity/MyWalletActivity.java | 4 + .../main/activity/RedPacketInfoActivity.java | 63 ++++++- .../main/activity/RedPacketListActivity.java | 30 ++-- .../main/activity/RedPacketUsersActivity.java | 64 +++++-- .../adapter/RedPacketListRecyclerAdapter.java | 22 ++- .../adapter/RedPacketUserRecyclerAdapter.java | 33 ++-- .../yunbao/main/bean/RedPacketListBean.java | 33 ---- .../MainHomeRedPacketLiveViewHolder.java | 8 + .../yunbao/main/views/MainHomeViewHolder.java | 19 +- .../main/res/drawable/bg_float_red_packet.xml | 35 ++++ .../main/res/layout/activity_red_packet.xml | 2 +- .../res/layout/activity_red_packet_info.xml | 113 ++++++++---- .../res/layout/activity_red_packet_users.xml | 6 +- .../main/res/layout/view_float_red_packet.xml | 62 +++++++ main/src/main/res/layout/view_homemain.xml | 19 +- 37 files changed, 991 insertions(+), 174 deletions(-) create mode 100644 common/src/main/java/com/yunbao/common/bean/RedPacketDetailsBean.java create mode 100644 common/src/main/java/com/yunbao/common/bean/RedPacketListBean.java create mode 100644 common/src/main/res/mipmap-mdpi/ic_red_packet_record.png create mode 100644 common/src/main/res/mipmap-xxhdpi/bg_float_red_packet.png create mode 100644 common/src/main/res/mipmap-xxhdpi/icon_red_packet_float_text_en.png create mode 100644 common/src/main/res/mipmap-xxhdpi/icon_red_packet_float_text_zh.png delete mode 100644 main/src/main/java/com/yunbao/main/bean/RedPacketListBean.java create mode 100644 main/src/main/res/drawable/bg_float_red_packet.xml create mode 100644 main/src/main/res/layout/view_float_red_packet.xml diff --git a/common/src/main/java/com/yunbao/common/bean/AnchorRecommendModel.java b/common/src/main/java/com/yunbao/common/bean/AnchorRecommendModel.java index 21125ed50..80c69327c 100644 --- a/common/src/main/java/com/yunbao/common/bean/AnchorRecommendModel.java +++ b/common/src/main/java/com/yunbao/common/bean/AnchorRecommendModel.java @@ -17,6 +17,8 @@ public class AnchorRecommendModel extends BaseModel { //是否展示0=不展示1=展示 @SerializedName("list_show") private int listShow = 0; + @SerializedName("red_packet_show") + private int showRedPacket = 0;//是否显示首页红包浮窗 //是否支持换一批0=不支持 1=支持 @SerializedName("up_show") private int upShow = 0; @@ -24,6 +26,10 @@ public class AnchorRecommendModel extends BaseModel { private List list = new ArrayList<>(); @SerializedName("slide") private List slide = new ArrayList<>(); + @SerializedName("red_packet_total") + private int redPacketTotal = 100; + @SerializedName("red_packet_day_create_num") + private int redPacketNum = 0; public List getSlide() { return slide; @@ -52,6 +58,30 @@ public class AnchorRecommendModel extends BaseModel { return this; } + public int getShowRedPacket() { + return showRedPacket; + } + + public void setShowRedPacket(int showRedPacket) { + this.showRedPacket = showRedPacket; + } + + public int getRedPacketTotal() { + return redPacketTotal; + } + + public void setRedPacketTotal(int redPacketTotal) { + this.redPacketTotal = redPacketTotal; + } + + public int getRedPacketNum() { + return redPacketNum; + } + + public void setRedPacketNum(int redPacketNum) { + this.redPacketNum = redPacketNum; + } + public List getList() { return list; } diff --git a/common/src/main/java/com/yunbao/common/bean/RedPacketDetailsBean.java b/common/src/main/java/com/yunbao/common/bean/RedPacketDetailsBean.java new file mode 100644 index 000000000..671b61313 --- /dev/null +++ b/common/src/main/java/com/yunbao/common/bean/RedPacketDetailsBean.java @@ -0,0 +1,165 @@ +package com.yunbao.common.bean; + +import com.google.gson.annotations.SerializedName; +import com.yunbao.common.CommonAppConfig; + +import java.util.List; + +public class RedPacketDetailsBean extends BaseModel { + @SerializedName("u_nicename") + private String niceName; + @SerializedName("avatar_thumb") + private String avatarThumb; + @SerializedName("avatar") + private String avatar; + @SerializedName("red_packet_money") + private long money;// 红包金豆总数量 + @SerializedName("red_packet_quantity") + private int quantity; // 领取的红包总数量 + @SerializedName("red_packet_quantity_already") + private int already; // 领取的红包总数量 + @SerializedName("red_packet_record_details") + private List details; + + public String getNiceName() { + return niceName; + } + + public void setNiceName(String niceName) { + this.niceName=niceName; + } + + public String getAvatarThumb() { + avatarThumb=avatarThumb.replace("\\",""); + if(!avatarThumb.startsWith("http")){ + avatarThumb= CommonAppConfig.HOST+"/"+avatarThumb; + } + return avatarThumb; + } + + public void setAvatarThumb(String avatarThumb) { + this.avatarThumb = avatarThumb; + } + + public String getAvatar() { + return avatar; + } + + public void setAvatar(String avatar) { + this.avatar = avatar; + } + + public long getMoney() { + return money; + } + + public void setMoney(long money) { + this.money = money; + } + + public int getQuantity() { + return quantity; + } + + public void setQuantity(int quantity) { + this.quantity = quantity; + } + + public int getAlready() { + return already; + } + + public void setAlready(int already) { + this.already = already; + } + + public List getDetails() { + return details; + } + + public void setDetails(List details) { + this.details = details; + } + + @Override + public String toString() { + return "RedPacketDetailsBean{" + + "niceName='" + niceName + '\'' + + ", avatarThumb='" + avatarThumb + '\'' + + ", avatar='" + avatar + '\'' + + ", money=" + money + + ", quantity=" + quantity + + ", already=" + already + + ", details=" + details + + '}'; + } + + public static class Detail extends BaseModel { + @SerializedName("receive_money") + private long money; + @SerializedName("user_nicename") + private String niceName; + @SerializedName("receive_time") + private String time; + @SerializedName("avatar_thumb") + private String avatarThumb; + @SerializedName("avatar") + private String avatar; + + + public long getMoney() { + return money; + } + + public void setMoney(long money) { + this.money = money; + } + + public String getNiceName() { + return niceName; + } + + public void setNiceName(String niceName) { + this.niceName=niceName; + } + + public String getTime() { + return time; + } + + public void setTime(String time) { + this.time = time; + } + + public String getAvatarThumb() { + avatarThumb=avatarThumb.replace("\\",""); + if(!avatarThumb.startsWith("http")){ + avatarThumb= CommonAppConfig.HOST+"/"+avatarThumb; + } + return avatarThumb; + } + + public void setAvatarThumb(String avatarThumb) { + this.avatarThumb = avatarThumb; + } + + public String getAvatar() { + return avatar; + } + + public void setAvatar(String avatar) { + this.avatar = avatar; + } + + @Override + public String toString() { + return "Detail{" + + "money=" + money + + ", niceName='" + niceName + '\'' + + ", time='" + time + '\'' + + ", avatarThumb='" + avatarThumb + '\'' + + ", avatar='" + avatar + '\'' + + '}'; + } + } +} diff --git a/common/src/main/java/com/yunbao/common/bean/RedPacketListBean.java b/common/src/main/java/com/yunbao/common/bean/RedPacketListBean.java new file mode 100644 index 000000000..8d37ab67f --- /dev/null +++ b/common/src/main/java/com/yunbao/common/bean/RedPacketListBean.java @@ -0,0 +1,117 @@ +package com.yunbao.common.bean; + +import com.google.gson.annotations.SerializedName; + +public class RedPacketListBean extends BaseModel { + public static final int RED_PACKET_STATUS_SUCCESS=1;//红包消费 + public static final int RED_PACKET_STATUS_BACK=2;//红包退回 + public static final int RED_PACKET_CURRENT_STATUS_SUCCESS=1;//红包已生效 + public static final int RED_PACKET_CURRENT_STATUS_TIMEOUT=2;//红包已过期 + @SerializedName("id") + private int id; + @SerializedName("live_nicename") + private String liveNicename; + @SerializedName("create_time") + private String createTime; + @SerializedName("red_packet_money") + private long redPacketMoney; + @SerializedName("red_packet_status") + private int redPacketStatus; + @SerializedName("current_status") + private int currentStatus; + @SerializedName("uid") + private long uid; + + @SerializedName("amount_diamond") + private long amountDiamond; + @SerializedName("amount_refund") + private long amountRefund; + + + public int getId() { + return id; + } + + public void setId(int id) { + this.id = id; + } + + public String getLiveNicename() { + return liveNicename; + } + + public void setLiveNicename(String liveNicename) { + this.liveNicename = liveNicename; + } + + public String getCreateTime() { + return createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public long getRedPacketMoney() { + return redPacketMoney; + } + + public void setRedPacketMoney(long redPacketMoney) { + this.redPacketMoney = redPacketMoney; + } + + public int getRedPacketStatus() { + return redPacketStatus; + } + + public void setRedPacketStatus(int redPacketStatus) { + this.redPacketStatus = redPacketStatus; + } + + public long getUid() { + return uid; + } + + public void setUid(long uid) { + this.uid = uid; + } + + public int getCurrentStatus() { + return currentStatus; + } + + public void setCurrentStatus(int currentStatus) { + this.currentStatus = currentStatus; + } + + public long getAmountDiamond() { + return amountDiamond; + } + + public void setAmountDiamond(long amountDiamond) { + this.amountDiamond = amountDiamond; + } + + public long getAmountRefund() { + return amountRefund; + } + + public void setAmountRefund(long amountRefund) { + this.amountRefund = amountRefund; + } + + @Override + public String toString() { + return "RedPacketListBean{" + + "id=" + id + + ", liveNicename='" + liveNicename + '\'' + + ", createTime='" + createTime + '\'' + + ", redPacketMoney=" + redPacketMoney + + ", redPacketStatus=" + redPacketStatus + + ", currentStatus=" + currentStatus + + ", uid=" + uid + + ", amountDiamond=" + amountDiamond + + ", amountRefund=" + amountRefund + + '}'; + } +} diff --git a/common/src/main/java/com/yunbao/common/http/PDLiveApi.java b/common/src/main/java/com/yunbao/common/http/PDLiveApi.java index 1e1fa32c3..4a4fba729 100644 --- a/common/src/main/java/com/yunbao/common/http/PDLiveApi.java +++ b/common/src/main/java/com/yunbao/common/http/PDLiveApi.java @@ -2,6 +2,7 @@ package com.yunbao.common.http; import com.alibaba.fastjson.JSONObject; import com.yunbao.common.bean.ActiveModel; +import com.yunbao.common.bean.AnchorRecommendItemModel; import com.yunbao.common.bean.AnchorRecommendModel; import com.yunbao.common.bean.BaseModel; import com.yunbao.common.bean.BlindBoxInfoModel; @@ -19,6 +20,7 @@ import com.yunbao.common.bean.ListInfoMessageModel; import com.yunbao.common.bean.LiveAiRobotBean; import com.yunbao.common.bean.LiveAnchorCallMeModel; import com.yunbao.common.bean.LiveAnchorSayModel; +import com.yunbao.common.bean.LiveBean; import com.yunbao.common.bean.LiveDataInfoModel; import com.yunbao.common.bean.LiveInfoModel; import com.yunbao.common.bean.LiveRoomActivityBanner; @@ -35,6 +37,8 @@ import com.yunbao.common.bean.PrankGiftBean; import com.yunbao.common.bean.PrankHttpTurntableBean; import com.yunbao.common.bean.RandomPkUserBean; import com.yunbao.common.bean.RankPkInfoBean; +import com.yunbao.common.bean.RedPacketDetailsBean; +import com.yunbao.common.bean.RedPacketListBean; import com.yunbao.common.bean.SearchModel; import com.yunbao.common.bean.SetAttentsModel; import com.yunbao.common.bean.SlideInBannerModel; @@ -730,4 +734,23 @@ public interface PDLiveApi { */ @GET("/api/public/?service=Live.getBlindBoxInfo") Observable>> getBlindBoxInfo(); + + /** + * 获取红包记录列表 + */ + @GET("/api/public/?service=Live.redPacketRecord") + Observable>> getRedPacketList(); + + /** + * 获取红包詳情 + */ + @GET("/api/public/?service=Live.redPacketRecordDetails") + Observable> getRedPacketDetails(@Query("red_packet_id") int id); + + /** + * 获取直播间上下滑动红包集合 + */ + @GET("/api/public/?service=Home.getRedPacket") + Observable>> getRedPacket(); + } diff --git a/common/src/main/java/com/yunbao/common/http/live/LiveNetManager.java b/common/src/main/java/com/yunbao/common/http/live/LiveNetManager.java index e68000a1b..0d072003c 100644 --- a/common/src/main/java/com/yunbao/common/http/live/LiveNetManager.java +++ b/common/src/main/java/com/yunbao/common/http/live/LiveNetManager.java @@ -34,6 +34,8 @@ import com.yunbao.common.bean.PrankGiftBean; import com.yunbao.common.bean.PrankHttpTurntableBean; import com.yunbao.common.bean.RandomPkUserBean; import com.yunbao.common.bean.RankPkInfoBean; +import com.yunbao.common.bean.RedPacketDetailsBean; +import com.yunbao.common.bean.RedPacketListBean; import com.yunbao.common.bean.SetAttentsModel; import com.yunbao.common.bean.StarChallengeStatusModel; import com.yunbao.common.bean.UserAreaBean; @@ -1550,7 +1552,54 @@ public class LiveNetManager { } }).isDisposed(); } - + /** + * 获取红包记录列表 + */ + public void getRedPacketList(HttpCallback> callback) { + API.get().pdLiveApi(mContext) + .getRedPacketList() + .subscribeOn(Schedulers.io()) + .observeOn(AndroidSchedulers.mainThread()) + .subscribe(new Consumer>>() { + @Override + public void accept(ResponseModel> listResponseModel) throws Exception { + if (callback != null) { + callback.onSuccess(listResponseModel.getData().getInfo()); + } + } + }, new Consumer() { + @Override + public void accept(Throwable throwable) throws Exception { + if (callback != null) { + callback.onError(mContext.getString(R.string.net_error)); + } + } + }).isDisposed(); + } + /** + * 获取红包记录列表 + */ + public void getRedPacketUserList(int id,HttpCallback callback) { + API.get().pdLiveApi(mContext) + .getRedPacketDetails(id) + .subscribeOn(Schedulers.io()) + .observeOn(AndroidSchedulers.mainThread()) + .subscribe(new Consumer>() { + @Override + public void accept(ResponseModel listResponseModel) throws Exception { + if (callback != null) { + callback.onSuccess(listResponseModel.getData().getInfo()); + } + } + }, new Consumer() { + @Override + public void accept(Throwable throwable) throws Exception { + if (callback != null) { + callback.onError(mContext.getString(R.string.net_error)); + } + } + }).isDisposed(); + } /** * 直播间取消网络请求 */ diff --git a/common/src/main/java/com/yunbao/common/http/main/MainNetManager.java b/common/src/main/java/com/yunbao/common/http/main/MainNetManager.java index 0807642a7..793a3ae88 100644 --- a/common/src/main/java/com/yunbao/common/http/main/MainNetManager.java +++ b/common/src/main/java/com/yunbao/common/http/main/MainNetManager.java @@ -2,8 +2,8 @@ package com.yunbao.common.http.main; import android.app.Activity; +import com.yunbao.common.bean.AnchorRecommendItemModel; import com.yunbao.common.bean.AnchorRecommendModel; -import com.yunbao.common.bean.BaseModel; import com.yunbao.common.bean.FaceBookUpModel; import com.yunbao.common.bean.IMLoginModel; import com.yunbao.common.bean.MsgSwitchDetailModel; @@ -13,7 +13,6 @@ import com.yunbao.common.http.API; import com.yunbao.common.http.ResponseData; import com.yunbao.common.http.ResponseModel; import com.yunbao.common.http.base.HttpCallback; -import com.yunbao.common.utils.ToastUtil; import java.util.List; @@ -207,13 +206,14 @@ public class MainNetManager { /** * 获取推送关注的设置和关注列表 + * * @param callback */ public void getMsgSwitchDetail(HttpCallback callback) { API.get().pdLiveApi(mContext).getMsgSwitchDetail() .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) - .subscribe(msgSwitchDetailModelResponseModel -> { + .subscribe(msgSwitchDetailModelResponseModel -> { if (callback != null) { MsgSwitchDetailModel msgSwitchDetailModel = msgSwitchDetailModelResponseModel.getData().getInfo(); callback.onSuccess(msgSwitchDetailModel); @@ -227,13 +227,14 @@ public class MainNetManager { /** * 推送开关设置 + * * @param callback */ - public void setMsgMasterSwitch(String status,String type,HttpCallback callback) { - API.get().pdLiveApi(mContext).setMsgMasterSwitch(status,type) + public void setMsgMasterSwitch(String status, String type, HttpCallback callback) { + API.get().pdLiveApi(mContext).setMsgMasterSwitch(status, type) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) - .subscribe(BaseModel -> { + .subscribe(BaseModel -> { if (callback != null) { ResponseData responseData = BaseModel.getData(); callback.onSuccess(responseData); @@ -247,13 +248,14 @@ public class MainNetManager { /** * 主播开播推送开关设置 + * * @param callback */ - public void setBeginShowMsgSwitch(String status,String isAll,String liveuid,HttpCallback callback) { - API.get().pdLiveApi(mContext).setBeginShowMsgSwitch(status,isAll,liveuid) + public void setBeginShowMsgSwitch(String status, String isAll, String liveuid, HttpCallback callback) { + API.get().pdLiveApi(mContext).setBeginShowMsgSwitch(status, isAll, liveuid) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) - .subscribe(BaseModel -> { + .subscribe(BaseModel -> { if (callback != null) { ResponseData responseData = BaseModel.getData(); callback.onSuccess(responseData); @@ -264,5 +266,22 @@ public class MainNetManager { } }).isDisposed(); } + /** + * 获取直播间上下滑动红包集合 + */ + public void getRedPacket(HttpCallback> callback) { + API.get().pdLiveApi(mContext).getRedPacket() + .subscribeOn(Schedulers.io()) + .observeOn(AndroidSchedulers.mainThread()) + .subscribe(msgSwitchDetailModelResponseModel -> { + if (callback != null) { + callback.onSuccess(msgSwitchDetailModelResponseModel.getData().getInfo()); + } + }, throwable -> { + if (callback != null) { + callback.onError(throwable.getMessage()); + } + }).isDisposed(); + } } diff --git a/common/src/main/java/com/yunbao/common/utils/RouteUtil.java b/common/src/main/java/com/yunbao/common/utils/RouteUtil.java index 9e442e132..aaae75cc4 100644 --- a/common/src/main/java/com/yunbao/common/utils/RouteUtil.java +++ b/common/src/main/java/com/yunbao/common/utils/RouteUtil.java @@ -10,6 +10,7 @@ import com.yunbao.common.CommonAppContext; import com.yunbao.common.Constants; import com.yunbao.common.HtmlConfig; import com.yunbao.common.bean.LiveBean; +import com.yunbao.common.bean.RedPacketListBean; import com.yunbao.common.manager.IMLoginManager; import java.util.Locale; @@ -39,6 +40,9 @@ public class RouteUtil { public static final String PATH_MYWEBVIEWACTIVTITY2 = "/main/MyWebViewActivity2"; public static final String PATH_LOGIN = "/main/LoginActivity"; public static final String PATH_CS = "/main/CustomerServiceWebViewActivity"; + public static final String PATH_RED_PACKET_LIST = "/main/RedPacketListActivity"; + public static final String PATH_RED_PACKET_INFO = "/main/RedPacketInfoActivity"; + public static final String PATH_RED_PACKET_USER = "/main/RedPacketUsersActivity"; public static void forwardFansActivity(String uid) { ARouter.getInstance().build(PATH_FANSACTIVITY) @@ -80,6 +84,7 @@ public class RouteUtil { .withBoolean("forwardEntry", true) .navigation(); } + /** * 只回到登录页,不提示东西 */ @@ -188,6 +193,7 @@ public class RouteUtil { ARouter.getInstance().build(PATH_EDITPROFILE) .navigation(); } + /** * 修改个人资料 */ @@ -256,9 +262,36 @@ public class RouteUtil { /** * 客服页面 */ - public static void forwardCustomerService(String url){ + public static void forwardCustomerService(String url) { ARouter.getInstance().build(PATH_CS) - .withString(Constants.URL,url) + .withString(Constants.URL, url) + .navigation(); + } + + /** + * 红包记录列表 + */ + public static void forwardRedPacketList() { + ARouter.getInstance().build(PATH_RED_PACKET_LIST) + .navigation(); + } + + /** + * 红包详情 + */ + public static void forwardRedPacketInfo(RedPacketListBean bean) { + ARouter.getInstance().build(PATH_RED_PACKET_INFO) + .withSerializable("bean", bean) + .navigation(); + } + + /** + * 红包发放情况 + * @param id 发放者uid + */ + public static void forwardRedPacketUser(int id) { + ARouter.getInstance().build(PATH_RED_PACKET_USER) + .withInt("id", id) .navigation(); } } diff --git a/common/src/main/res/layout/item_user_red_packet.xml b/common/src/main/res/layout/item_user_red_packet.xml index 882546cd4..3a11a1cd2 100644 --- a/common/src/main/res/layout/item_user_red_packet.xml +++ b/common/src/main/res/layout/item_user_red_packet.xml @@ -10,7 +10,6 @@ android:layout_width="40dp" android:layout_height="40dp" android:scaleType="centerCrop" - android:layout_marginStart="21dp" android:layout_marginTop="10dp" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" @@ -27,7 +26,7 @@ app:layout_constraintEnd_toStartOf="@+id/money" android:layout_marginEnd="2dp" app:layout_constraintTop_toTopOf="@+id/money" - app:srcCompat="@mipmap/diamond" /> + app:srcCompat="@mipmap/gold_coin" /> + tools:visibility="visible" /> + + + diff --git a/common/src/main/res/layout/view_title2.xml b/common/src/main/res/layout/view_title2.xml index b4cffb8f2..d1d192362 100644 --- a/common/src/main/res/layout/view_title2.xml +++ b/common/src/main/res/layout/view_title2.xml @@ -26,7 +26,7 @@ android:layout_centerVertical="true" android:onClick="backClick" android:padding="9dp" - android:src="@mipmap/icon_dialog_charge_close" + android:src="@mipmap/icon_back" android:tint="@color/textColor" /> Px%q)9|URA@u(nT>JOFc5`bDhO1Nqyj<(Bo#m^fDQ;1kW>JvAfbXl1waKr1&~w# z6~KHmT1F>J^4jO0Gk9k_Imi0hxBGS_t@gBV*;}~&S^>=M!T-twuO*#?XH3I?lEicA znZ)aXFOrTu0}j~ctE9(m<9PtQmGn~5XG!Oh7eHrp->k9(B?Lpoe~Y%1@1phw1WG@0b6;_#3pAsI&A}>3k|Ho zV10Nezdr~ShyC#3SBMSDH>Exs^G*SPY;&DK3$LLSg)7RI2<1fHTEm z830%rFCbR;Vc|l)2k)fa-bunBe`N{)@cB`JZ?VN`g5_($-l&&O0iZ3|@q(2si3zM< zlMS8c1OOeN7xalK1dYf}EOt4W96*UevEq~u5mGB2!xOo3expV^g$GJOY-@pWKmLms za)Ccf5T}cn(ZX(Gc(>aaf*20~U?bavPMy;z0})iV@U+BN@pHN;r45Y$X6(*OVf07*qoM6N<$f>-27bpQYW literal 0 HcmV?d00001 diff --git a/common/src/main/res/mipmap-xxhdpi/bg_float_red_packet.png b/common/src/main/res/mipmap-xxhdpi/bg_float_red_packet.png new file mode 100644 index 0000000000000000000000000000000000000000..e4f16244f6b1c6e1b584f04d9381dd9d8025182f GIT binary patch literal 1101 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 literal 0 HcmV?d00001 diff --git a/common/src/main/res/mipmap-xxhdpi/icon_red_packet_float_text_zh.png b/common/src/main/res/mipmap-xxhdpi/icon_red_packet_float_text_zh.png new file mode 100644 index 0000000000000000000000000000000000000000..a6ed1436f5d2bc28eb591cdd8d290de8b0437b53 GIT binary patch literal 10898 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

1jl}|%QSCu5zrxk?Z8~HM z@Oct5V-|Xenz>YRrUxKb44#27O+u5Qd<#H+8SPC+{&zEfI=m~IVr~U@JDywKQ>MFC ze6I(B+7{t9wE>oC$Wk8_$dXIUmB%@CNL}f!puz994Iuw}wnw%HY7r13>+=~!rc4JW zm;1bK;u&ZcdKvp|Vwlh`W7@UU?;+1(zRVMYSQj1vRW*zzE@O-JtMLPC?Eyvj(>h7r zHL5)cl^zA#9QAVWsSG_{b(2N=U?UWsElYKnIl$84uf2o>?tvnM23*~`-l1>|U+n$R z{^hk)>&RPX8rdFp4w(n)FkT1b_Q#TdwD9P`!R?&UsauN^K7q={>42>IhaMPUT3LNX zIhnvUDm4flvgB+pKn_@lfO4X4hL^JM9w_Pn8nUXIUmse4(uDZ>m7(B@P8H!3JA#I- z+{R0XcR)C?P}WH?gNY-G*x2*vux0*3=QfRI)Y(EtWj-WT(2)1q2#{wq*CAyI5A~}9 zwBkp}79h zEgP3~lq50kiGPfba~W-grFRl_yG%w*@%FhF0VoF`XAo8|khP1faIi2? zs)dMJp*Z!1DL0}p@)x~QgH12gQ@&~e`Xlwb=U%^i=x)cGrWzIW411LLqFQ5OCiR)> z>4(hqJ@O20zR#vZ8lY;Q2kQ7!9gvj|4TP$cAfTo(j-_$;u*PVNeM)_G@tHS1T7pP$ z04U_ZQu8^a>Qk8M64g|8k*MpF1SGHRS_q}nUa3FIJMyDC|3N#POb34^3jp!*0Tm!V z%%T`XjZo+k8uDLJ^&Grx(D_hAIS;b{vE-sv*xt~WPXEk|TTHv&yzzTpZjY5TWNB7G z#<^}PuRbZsA?1F`|J5MMhtaUF3Xqp>gi3v^2p*wFitmOW{6vOB;BOUp)8!Gw+uaVr zEygFXlV`xx6PXquZ~sN9N`j(ON*aer!8?mb=8*8_iz5B$YU9=Y`G!=Se^=@A+4# zG{yQ7nf}?i>2yTpjpn#`Mc=s~Tw(!IAJ@$^Y{UOpZI<_61%(D9Uj^zCUxJj5QgoG6 z-AEDhRD6v=iVy0#P0gackO-WzyvsaoJTKnWsI8?TO9y6qAm#8@9b<^BHvK~Mnc!U@ zxe%iF}%lAmwl{o$0I=FNzY&bWdd61O=Nl&!m3S4*($Vv>A2Whu&+QQ|yNYKKs79e)a=UhifSF-s_6)M`Z&L zpe0~*PVOBwfVB&0c$Gy7d0Eei2;pJNwIMkN{y;};w#szyvfdr(h)O-3W@X2%CWcEe(ip?{6A#TIZx?oK^?q zC#91Bau+t<4OU0c@NL4?AunFq{paXH_eqge7=IhE6AB*1u&vXGk{>s>+JD?h0MKZmwtUolV{ro93v)VlJ#poOO%7LZl4{$2qT|p{sH#2F0t79)x_XcEr=VMHlN> zWD-?8K$e#B+S;cAw_dXUHVk~_4}QbwGM?fz4S3z9{{w}72@Uno=uA5F$wgkxdHsYP zU@A==n`%3#g<)WS^!wCr#z!p~o98$-+?wQ&enJCVHHyi7wmkrxE)H1GJqfgBrKf}G zVdPPFL`6QH{A(2*xl^yTY65a)NngYRM z?z@2JINZiBR+Dr^ckLrHxumQGq(Y;$bohTS%yqN5;>b&pN3$hocMyhjAz!Y|@Z})( z6jfb|U~3~waVB2Dzz$=HymL}>opZY9_|r=s0O&~?FgGQDc->{96zF*l(bR63Gk?}U zU-%I^#80H6>NM!UNCf1^R5f7L6 zk`km=@~ggl_I9F36_h#<_5ger4PNwATduKDvMOUhJFmO+=ZL8HH8TY16Vk<2qIzi9 z0MK|EFl$9y&f}Z%F8c{{jG0##wWGl`S!HT`Qzo6wIQf(QMF@vGAQtG10HryYnF{4* zx^Irk)s7Se4eDAtYN79}`E2IbT5Wml_&!kM Over the maximum value Insufficient balance, continue to recharge Time limit gag + Red packet record + Last 30 days record (as of yesterday) + Current status + Red packet Took effect + Red packet Expired + Red Packet Details + Check + Pay Time + Mode of Pay + diamond + opened + Residual return + None + Return to account + Popularity Red packet + Red packets diff --git a/common/src/main/res/values-zh-rHK/strings.xml b/common/src/main/res/values-zh-rHK/strings.xml index bee2faa9f..4a8ed2ef9 100644 --- a/common/src/main/res/values-zh-rHK/strings.xml +++ b/common/src/main/res/values-zh-rHK/strings.xml @@ -1191,4 +1191,20 @@ 超过最大值 餘額不足,繼續充值 期限禁言 + 紅包記錄 + 近30天記錄(截至到昨天) + 當前狀態 + 紅包已生效 + 紅包已過期 + 紅包詳情 + 查看 + 支付時間 + 支付方式 + 鉆石餘額 + 已打開 + 剩餘退回 + + 退回賬戶 + 攢人氣紅包 + 紅包專區 diff --git a/common/src/main/res/values-zh-rTW/strings.xml b/common/src/main/res/values-zh-rTW/strings.xml index dc2735243..bd87f6cda 100644 --- a/common/src/main/res/values-zh-rTW/strings.xml +++ b/common/src/main/res/values-zh-rTW/strings.xml @@ -1190,4 +1190,20 @@ 超过最大值 餘額不足,繼續充值 期限禁言 + 紅包記錄 + 近30天記錄(截至到昨天) + 當前狀態 + 紅包已生效 + 紅包已過期 + 紅包詳情 + 查看 + 支付時間 + 支付方式 + 鉆石餘額 + 已打開 + 剩餘退回 + + 退回賬戶 + 攢人氣紅包 + 紅包專區 diff --git a/common/src/main/res/values-zh/strings.xml b/common/src/main/res/values-zh/strings.xml index 0870f2363..95b56959c 100644 --- a/common/src/main/res/values-zh/strings.xml +++ b/common/src/main/res/values-zh/strings.xml @@ -1191,4 +1191,20 @@ 超过最大值 餘額不足,繼續充值 期限禁言 + 紅包記錄 + 近30天記錄(截至到昨天) + 當前狀態 + 紅包已生效 + 紅包已過期 + 紅包詳情 + 查看 + 支付時間 + 支付方式 + 鉆石餘額 + 已打開 + 剩餘退回 + + 退回賬戶 + 攢人氣紅包 + 紅包專區 diff --git a/common/src/main/res/values/strings.xml b/common/src/main/res/values/strings.xml index 81850c6b9..0a3d0e170 100644 --- a/common/src/main/res/values/strings.xml +++ b/common/src/main/res/values/strings.xml @@ -1197,4 +1197,20 @@ Limited ride And limited avatar frame Over the maximum value Insufficient balance, continue to recharge Time limit gag + Red packet record + Last 30 days record (as of yesterday) + Current status + Red packet Took effect + Red packet Expired + Red Packet Details + Check + Pay Time + Mode of Pay + diamond + opened + Residual return + None + Return to account + Popularity Red packet + Red packets diff --git a/config.gradle b/config.gradle index 013cf6403..1894327c6 100644 --- a/config.gradle +++ b/config.gradle @@ -5,7 +5,7 @@ ext { minSdkVersion : 21, targetSdkVersion : 31, versionCode : 430, - versionName : "6.5.2" + versionName : "6.5.3" ] manifestPlaceholders = [ //正式、 @@ -24,7 +24,7 @@ ext { baiduAppKey : "zgCgFhUKEOV7I3ZXDFpTfnRB", baiduAppSecretKey: "nEVSgmuGpU0pjPr6VleEGGAl0hzGW52S", // true表示谷歌支付 false - isGooglePlay : false, + isGooglePlay : true, //是否上报异常日志 isUploadLog : true, //是否打包成插件包模式 diff --git a/live/src/main/java/com/yunbao/live/activity/LiveAudienceActivity.java b/live/src/main/java/com/yunbao/live/activity/LiveAudienceActivity.java index 1bbc86181..7b2ce69ef 100644 --- a/live/src/main/java/com/yunbao/live/activity/LiveAudienceActivity.java +++ b/live/src/main/java/com/yunbao/live/activity/LiveAudienceActivity.java @@ -159,6 +159,7 @@ public class LiveAudienceActivity extends LiveActivity { private View titleLine; private boolean liveIndex = true; private boolean isPk = false; + private boolean isRadPacetModle = false; @Override public T findViewById(@IdRes int id) { @@ -183,6 +184,7 @@ public class LiveAudienceActivity extends LiveActivity { L.e(TAG, "直播sdk----->" + (mLiveSDK == Constants.LIVE_SDK_KSY ? "金山云" : "腾讯云")); mLiveType = intent.getIntExtra(Constants.LIVE_TYPE, Constants.LIVE_TYPE_NORMAL); mLiveTypeVal = intent.getIntExtra(Constants.LIVE_TYPE_VAL, 0); + isRadPacetModle = !StringUtil.isEmpty(intent.getStringExtra("redPacket")) && intent.getStringExtra("redPacket").equals("true"); initView(); setVolumeControlStream(AudioManager.STREAM_MUSIC); manager = new PortraitLiveManager(this, intent); @@ -267,21 +269,40 @@ public class LiveAudienceActivity extends LiveActivity { manager.resetLight(); Log.e(TAG, "mCurrentItem:" + mCurrentItem); if (mCurrentItem == itemModelList.size() - 1) { - MainNetManager.get(mContext) - .anchorRecommendType("30", new com.yunbao.common.http.base.HttpCallback() { - @Override - public void onSuccess(AnchorRecommendModel data) { - if (TextUtils.equals(data.getList().get(0).getUid(), mLiveBean.getUid())) { - data.getList().remove(0); + if (isRadPacetModle) {//从红包专区进去的走红包专区列表 + MainNetManager.get(mContext) + .getRedPacket(new com.yunbao.common.http.base.HttpCallback>() { + @Override + public void onSuccess(List data) { + if (TextUtils.equals(data.get(0).getUid(), mLiveBean.getUid())) { + data.remove(0); + } + itemModelList.addAll(data); + mPagerAdapter.notifyDataSetChanged(); } - itemModelList.addAll(data.getList()); - mPagerAdapter.notifyDataSetChanged(); - } - @Override - public void onError(String error) { - } - }); + @Override + public void onError(String error) { + + } + }); + } else { + MainNetManager.get(mContext) + .anchorRecommendType("30", new com.yunbao.common.http.base.HttpCallback() { + @Override + public void onSuccess(AnchorRecommendModel data) { + if (TextUtils.equals(data.getList().get(0).getUid(), mLiveBean.getUid())) { + data.getList().remove(0); + } + itemModelList.addAll(data.getList()); + mPagerAdapter.notifyDataSetChanged(); + } + + @Override + public void onError(String error) { + } + }); + } } } @@ -861,7 +882,7 @@ public class LiveAudienceActivity extends LiveActivity { if (TextUtils.equals(htmlUrl, "recharge")) { RouteUtil.forwardMyCoin(mContext); } else if (TextUtils.equals(htmlUrl, "to_me_information")) { - RouteUtil.forwardEditProfileActivity(); + RouteUtil.forwardEditProfileActivity(); } else { if (!screen) { ZhuangBanActivity.forward(mContext, htmlUrl, false); diff --git a/main/src/main/java/com/yunbao/main/activity/MainActivity.java b/main/src/main/java/com/yunbao/main/activity/MainActivity.java index e4785c2ed..ede574312 100644 --- a/main/src/main/java/com/yunbao/main/activity/MainActivity.java +++ b/main/src/main/java/com/yunbao/main/activity/MainActivity.java @@ -26,6 +26,7 @@ import android.view.Window; import android.view.animation.DecelerateInterpolator; import android.widget.FrameLayout; import android.widget.ImageView; +import android.widget.ProgressBar; import android.widget.RelativeLayout; import android.widget.TextView; @@ -93,6 +94,7 @@ import com.yunbao.common.utils.RouteUtil; import com.yunbao.common.utils.SpUtil; import com.yunbao.common.utils.ToastUtil; import com.yunbao.common.utils.VersionUtil; +import com.yunbao.common.utils.WordUtil; import com.yunbao.common.views.APKUpdateCustomPopup; import com.yunbao.common.views.AbsMainViewHolder; import com.yunbao.common.views.floatingview.APPEasyFloat; @@ -191,6 +193,8 @@ public class MainActivity extends AbsActivity implements MainAppBarLayoutListene private FloatBannerView floatBanner; private boolean isfloatBannernet = true, isFirst = true; + private View floatRedPacket; + @Override protected int getLayoutId() { @@ -236,6 +240,8 @@ public class MainActivity extends AbsActivity implements MainAppBarLayoutListene rt_main_tab = (RelativeLayout) findViewById(R.id.rt_main_tab); v_table_redpoint = findViewById(R.id.v_table_redpoint); v_table_redpoint_me = (View) findViewById(R.id.v_table_redpoint_me); + floatRedPacket = findViewById(R.id.red_packet); + initRedPacket(); Display mDisplay = getWindowManager().getDefaultDisplay(); Height = mDisplay.getHeight(); @@ -485,12 +491,14 @@ public class MainActivity extends AbsActivity implements MainAppBarLayoutListene initAnchorRecommendBanner(); } else if (index == 2) { floatBanner.setVisibility(View.GONE); + floatRedPacket.setVisibility(View.GONE); findViewById(R.id.banner_click).setVisibility(View.GONE); isfloatBannernet = false; if (mainMessageViewHolder != null) mainMessageViewHolder.onResume(); } else { floatBanner.setVisibility(View.GONE); + floatRedPacket.setVisibility(View.GONE); findViewById(R.id.banner_click).setVisibility(View.GONE); isfloatBannernet = false; } @@ -561,6 +569,7 @@ public class MainActivity extends AbsActivity implements MainAppBarLayoutListene if (!isfloatBannernet) return; MainNetManager.get(mContext) .anchorRecommend("10", new com.yunbao.common.http.base.HttpCallback() { + @SuppressLint("SetTextI18n") @Override public void onSuccess(AnchorRecommendModel data) { if (isFinishing()) return; @@ -572,6 +581,14 @@ public class MainActivity extends AbsActivity implements MainAppBarLayoutListene floatBanner.setVisibility(View.GONE); findViewById(R.id.banner_click).setVisibility(View.GONE); } + if (data.getShowRedPacket() == 0) { + floatRedPacket.setVisibility(View.GONE); + } else { + floatRedPacket.setVisibility(View.VISIBLE); + ((ProgressBar) floatRedPacket.findViewById(R.id.progress)).setMax(data.getRedPacketTotal()); + ((ProgressBar) floatRedPacket.findViewById(R.id.progress)).setProgress(data.getRedPacketNum()); + ((TextView) floatRedPacket.findViewById(R.id.progressText)).setText(data.getRedPacketNum() + "/" + data.getRedPacketTotal()); + } } @@ -832,9 +849,7 @@ public class MainActivity extends AbsActivity implements MainAppBarLayoutListene //获取指导员引导逻辑 NoviceInstructorManager.get(mContext).getNoviceInstructor(); NoviceInstructorManager.get(mContext).checktHomeZdyPop(); - if (!isFirst) { - initAnchorRecommendBanner(); - } + initAnchorRecommendBanner(); } /** @@ -1232,6 +1247,7 @@ public class MainActivity extends AbsActivity implements MainAppBarLayoutListene } else { isfloatBannernet = false; floatBanner.setVisibility(View.GONE); + floatRedPacket.setVisibility(View.GONE); findViewById(R.id.banner_click).setVisibility(View.GONE); } } @@ -1374,4 +1390,15 @@ public class MainActivity extends AbsActivity implements MainAppBarLayoutListene } } + private void initRedPacket() { + ImageView title = floatRedPacket.findViewById(R.id.title); + if (WordUtil.isNewZh()) { + title.setImageResource(R.mipmap.icon_red_packet_float_text_zh); + } else { + title.setImageResource(R.mipmap.icon_red_packet_float_text_en); + } + floatRedPacket.setOnClickListener(v -> { + mainHomeViewHolder.setCurPosition(3); + }); + } } diff --git a/main/src/main/java/com/yunbao/main/activity/MyWalletActivity.java b/main/src/main/java/com/yunbao/main/activity/MyWalletActivity.java index 2d85ea59b..f2029490b 100644 --- a/main/src/main/java/com/yunbao/main/activity/MyWalletActivity.java +++ b/main/src/main/java/com/yunbao/main/activity/MyWalletActivity.java @@ -65,6 +65,10 @@ public class MyWalletActivity extends AbsActivity { GoogleBillingUtilNew.getInstance().initGooglePay(mContext); vp_content = (ViewPager) findViewById(R.id.vp_content); TextView rView = (TextView) findViewById(R.id.rView); + findViewById(R.id.redPacketMain).setVisibility(View.VISIBLE); + findViewById(R.id.redPacketMain).setOnClickListener(v -> { + RouteUtil.forwardRedPacketList(); + }); rView.setOnClickListener(v -> { LoadingDialog loadingDialog = new LoadingDialog(); loadingDialog.show(getSupportFragmentManager(), "LoadingDialog"); diff --git a/main/src/main/java/com/yunbao/main/activity/RedPacketInfoActivity.java b/main/src/main/java/com/yunbao/main/activity/RedPacketInfoActivity.java index 296212675..68271b00e 100644 --- a/main/src/main/java/com/yunbao/main/activity/RedPacketInfoActivity.java +++ b/main/src/main/java/com/yunbao/main/activity/RedPacketInfoActivity.java @@ -1,29 +1,82 @@ package com.yunbao.main.activity; +import android.annotation.SuppressLint; import android.content.Intent; +import android.graphics.Color; import android.view.View; +import android.widget.ImageView; import android.widget.TextView; +import com.alibaba.android.arouter.facade.annotation.Route; import com.yunbao.common.activity.AbsActivity; +import com.yunbao.common.bean.RedPacketListBean; +import com.yunbao.common.utils.RouteUtil; +import com.yunbao.common.utils.WordUtil; import com.yunbao.main.R; -public class RedPacketInfoActivity extends AbsActivity implements View.OnClickListener{ +@Route(path = RouteUtil.PATH_RED_PACKET_INFO) +public class RedPacketInfoActivity extends AbsActivity implements View.OnClickListener { + private RedPacketListBean bean; + private ImageView icon; + private ImageView gold; + private TextView title; + private TextView money; + private TextView status; + private TextView info; + private TextView time; + private TextView model; + private TextView backAccountText; + @Override protected int getLayoutId() { return R.layout.activity_red_packet_info; } + @SuppressLint("SetTextI18n") @Override protected void main() { super.main(); - findViewById(R.id.red_packet_info).setOnClickListener(this); + bean = (RedPacketListBean) getIntent().getSerializableExtra("bean"); + icon = findViewById(R.id.icon); + title = findViewById(R.id.title); + money = findViewById(R.id.money); + status = findViewById(R.id.red_packet_status); + info = findViewById(R.id.red_packet_info); + time = findViewById(R.id.red_packet_timer); + model = findViewById(R.id.red_packet_model); + gold = findViewById(R.id.gold_icon); + backAccountText = findViewById(R.id.backAccountText); + findViewById(R.id.btn_back).setOnClickListener(this); + info.setOnClickListener(this); + + title.setText(bean.getLiveNicename()); + time.setText(bean.getCreateTime()); + + money.setText("-" + bean.getAmountDiamond()); + money.setTextColor(Color.parseColor("#000000")); + icon.setImageResource(R.mipmap.diamond); + + if (bean.getCurrentStatus() == RedPacketListBean.RED_PACKET_CURRENT_STATUS_SUCCESS) { + status.setText(R.string.red_packet_info_status_success); + } else { + status.setText(R.string.red_packet_info_status_timeout); + } + if (bean.getAmountRefund() == 0) { + gold.setVisibility(View.GONE); + backAccountText.setText(R.string.red_packet_info_residue_none); + } else { + gold.setVisibility(View.VISIBLE); + backAccountText.setText(mContext.getString(R.string.red_packet_info_residue_back) + " +" + bean.getAmountRefund()); + } } @Override public void onClick(View v) { - int id=v.getId(); - if(id==R.id.red_packet_info){ - startActivity(new Intent(this, RedPacketUsersActivity.class)); + int id = v.getId(); + if (id == R.id.red_packet_info) { + RouteUtil.forwardRedPacketUser(bean.getId()); + } else if (id == R.id.btn_back) { + finish(); } } } diff --git a/main/src/main/java/com/yunbao/main/activity/RedPacketListActivity.java b/main/src/main/java/com/yunbao/main/activity/RedPacketListActivity.java index ad98ce1c3..36338fd3e 100644 --- a/main/src/main/java/com/yunbao/main/activity/RedPacketListActivity.java +++ b/main/src/main/java/com/yunbao/main/activity/RedPacketListActivity.java @@ -5,14 +5,18 @@ import android.widget.TextView; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; +import com.alibaba.android.arouter.facade.annotation.Route; import com.yunbao.common.activity.AbsActivity; +import com.yunbao.common.bean.RedPacketListBean; +import com.yunbao.common.http.base.HttpCallback; +import com.yunbao.common.http.live.LiveNetManager; +import com.yunbao.common.utils.RouteUtil; import com.yunbao.main.R; import com.yunbao.main.adapter.RedPacketListRecyclerAdapter; -import com.yunbao.main.bean.RedPacketListBean; -import java.util.ArrayList; import java.util.List; +@Route(path = RouteUtil.PATH_RED_PACKET_LIST) public class RedPacketListActivity extends AbsActivity { private RecyclerView recyclerView; private RedPacketListRecyclerAdapter adapter; @@ -25,7 +29,7 @@ public class RedPacketListActivity extends AbsActivity { @Override public void main() { super.main(); - ((TextView) findViewById(R.id.titleView)).setText("紅包記錄"); + ((TextView) findViewById(R.id.titleView)).setText(mContext.getString(R.string.red_packet_list_title)); recyclerView = findViewById(R.id.recyclerView); adapter = new RedPacketListRecyclerAdapter(this); @@ -35,15 +39,17 @@ public class RedPacketListActivity extends AbsActivity { } private void initData() { - List list = new ArrayList<>(); - for (int i = 1; i <= 5; i++) { - RedPacketListBean bean = new RedPacketListBean(); - bean.setTitle("攢人氣紅包" + i); - bean.setTimer("X月X日 " + i); - bean.setMoney(i * 1000 + ""); - list.add(bean); - } - adapter.setList(list); + LiveNetManager.get(mContext) + .getRedPacketList(new HttpCallback>() { + @Override + public void onSuccess(List data) { + adapter.setList(data); + } + @Override + public void onError(String error) { + + } + }); } } diff --git a/main/src/main/java/com/yunbao/main/activity/RedPacketUsersActivity.java b/main/src/main/java/com/yunbao/main/activity/RedPacketUsersActivity.java index 61a340b79..083a4f309 100644 --- a/main/src/main/java/com/yunbao/main/activity/RedPacketUsersActivity.java +++ b/main/src/main/java/com/yunbao/main/activity/RedPacketUsersActivity.java @@ -1,21 +1,36 @@ package com.yunbao.main.activity; +import android.annotation.SuppressLint; import android.view.View; +import android.widget.ImageView; +import android.widget.TextView; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; +import com.alibaba.android.arouter.facade.annotation.Route; +import com.makeramen.roundedimageview.RoundedImageView; import com.yunbao.common.activity.AbsActivity; +import com.yunbao.common.bean.RedPacketDetailsBean; +import com.yunbao.common.glide.ImgLoader; +import com.yunbao.common.http.base.HttpCallback; +import com.yunbao.common.http.live.LiveNetManager; +import com.yunbao.common.utils.RouteUtil; import com.yunbao.main.R; import com.yunbao.main.adapter.RedPacketUserRecyclerAdapter; -import com.yunbao.main.bean.RedPacketListBean; - -import java.util.ArrayList; -import java.util.List; +@Route(path = RouteUtil.PATH_RED_PACKET_USER) public class RedPacketUsersActivity extends AbsActivity implements View.OnClickListener{ private RecyclerView recyclerView; private RedPacketUserRecyclerAdapter adapter; + private int redPacketId; + + private RoundedImageView avatar; + private TextView title; + private TextView money; + private ImageView icon; + private TextView open; + @Override protected int getLayoutId() { @@ -25,8 +40,14 @@ public class RedPacketUsersActivity extends AbsActivity implements View.OnClickL @Override protected void main() { super.main(); + findViewById(R.id.btn_back).setOnClickListener(this); recyclerView = findViewById(R.id.recyclerView); - + avatar = findViewById(R.id.avatar); + title = findViewById(R.id.title); + money = findViewById(R.id.money); + icon = findViewById(R.id.avatar); + open = findViewById(R.id.open_packet); + redPacketId=getIntent().getIntExtra("id",0); adapter = new RedPacketUserRecyclerAdapter(this); recyclerView.setLayoutManager(new LinearLayoutManager(this, LinearLayoutManager.VERTICAL, false)); recyclerView.setAdapter(adapter); @@ -36,17 +57,32 @@ public class RedPacketUsersActivity extends AbsActivity implements View.OnClickL @Override public void onClick(View v) { int id=v.getId(); + if(id==R.id.btn_back){ + finish(); + } } private void initData() { - List list = new ArrayList<>(); - for (int i = 1; i <= 5; i++) { - RedPacketListBean bean = new RedPacketListBean(); - bean.setTitle("攢人氣紅包 - 主播昵稱的直播間" + i); - bean.setTimer("X月X日 " + i); - bean.setMoney(i * 1000 + ""); - list.add(bean); - } - adapter.setList(list); + LiveNetManager.get(mContext) + .getRedPacketUserList(redPacketId, new HttpCallback() { + @Override + public void onSuccess(RedPacketDetailsBean data) { + setData(data); + adapter.setList(data.getDetails()); + } + + @Override + public void onError(String error) { + + } + }); + + } + @SuppressLint("SetTextI18n") + private void setData(RedPacketDetailsBean bean){ + ImgLoader.display(mContext,bean.getAvatarThumb(),avatar); + title.setText(bean.getNiceName()); + money.setText(bean.getMoney()+""); + open.setText(mContext.getString(R.string.red_packet_user_tips)+" "+bean.getAlready()+"/"+bean.getQuantity()); } } diff --git a/main/src/main/java/com/yunbao/main/adapter/RedPacketListRecyclerAdapter.java b/main/src/main/java/com/yunbao/main/adapter/RedPacketListRecyclerAdapter.java index a1a64e227..3dfa1bc92 100644 --- a/main/src/main/java/com/yunbao/main/adapter/RedPacketListRecyclerAdapter.java +++ b/main/src/main/java/com/yunbao/main/adapter/RedPacketListRecyclerAdapter.java @@ -1,7 +1,8 @@ package com.yunbao.main.adapter; +import android.annotation.SuppressLint; import android.content.Context; -import android.content.Intent; +import android.graphics.Color; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; @@ -11,10 +12,11 @@ import android.widget.TextView; import androidx.annotation.NonNull; import androidx.recyclerview.widget.RecyclerView; +import com.yunbao.common.bean.RedPacketListBean; +import com.yunbao.common.utils.RouteUtil; import com.yunbao.main.R; -import com.yunbao.main.activity.RedPacketInfoActivity; -import com.yunbao.main.bean.RedPacketListBean; +import java.util.ArrayList; import java.util.List; public class RedPacketListRecyclerAdapter extends RecyclerView.Adapter { @@ -23,6 +25,7 @@ public class RedPacketListRecyclerAdapter extends RecyclerView.Adapter(); } public void setList(List list) { @@ -56,13 +59,18 @@ public class RedPacketListRecyclerAdapter extends RecyclerView.Adapter mContext.startActivity(new Intent(mContext, RedPacketInfoActivity.class))); + itemView.setOnClickListener(v -> { + RouteUtil.forwardRedPacketInfo((RedPacketListBean) itemView.getTag()); + }); } + @SuppressLint("SetTextI18n") private void setData(RedPacketListBean bean) { - title.setText(bean.getTitle()); - timer.setText(bean.getTimer()); - money.setText(bean.getMoney()); + title.setText(bean.getLiveNicename()+"|"+bean.getId()); + timer.setText(bean.getCreateTime()); + money.setText("-" + bean.getAmountDiamond()); + money.setTextColor(Color.parseColor("#000000")); + icon.setImageResource(R.mipmap.diamond); itemView.setTag(bean); } } diff --git a/main/src/main/java/com/yunbao/main/adapter/RedPacketUserRecyclerAdapter.java b/main/src/main/java/com/yunbao/main/adapter/RedPacketUserRecyclerAdapter.java index 011a95a7a..ddd7b1dbf 100644 --- a/main/src/main/java/com/yunbao/main/adapter/RedPacketUserRecyclerAdapter.java +++ b/main/src/main/java/com/yunbao/main/adapter/RedPacketUserRecyclerAdapter.java @@ -1,32 +1,36 @@ package com.yunbao.main.adapter; +import android.annotation.SuppressLint; import android.content.Context; -import android.content.Intent; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; -import android.widget.ImageView; import android.widget.TextView; import androidx.annotation.NonNull; import androidx.recyclerview.widget.RecyclerView; +import com.makeramen.roundedimageview.RoundedImageView; +import com.yunbao.common.bean.RedPacketDetailsBean; +import com.yunbao.common.glide.ImgLoader; import com.yunbao.main.R; -import com.yunbao.main.activity.RedPacketInfoActivity; -import com.yunbao.main.bean.RedPacketListBean; +import java.util.ArrayList; import java.util.List; public class RedPacketUserRecyclerAdapter extends RecyclerView.Adapter { - private List list; + private List list; private Context mContext; public RedPacketUserRecyclerAdapter(Context mContext) { this.mContext = mContext; + list = new ArrayList<>(); } - public void setList(List list) { - this.list = list; + public void setList(List list) { + if (list != null) { + this.list = list; + } notifyDataSetChanged(); } @@ -48,21 +52,22 @@ public class RedPacketUserRecyclerAdapter extends RecyclerView.Adapter mContext.startActivity(new Intent(mContext, RedPacketInfoActivity.class))); + icon = itemView.findViewById(R.id.avatar); } - private void setData(RedPacketListBean bean) { - title.setText(bean.getTitle()); - timer.setText(bean.getTimer()); - money.setText(bean.getMoney()); + @SuppressLint("SetTextI18n") + private void setData(RedPacketDetailsBean.Detail bean) { + title.setText(bean.getNiceName()); + timer.setText(bean.getTime()); + money.setText(bean.getMoney()+""); + ImgLoader.display(mContext,bean.getAvatarThumb(),icon); itemView.setTag(bean); } } diff --git a/main/src/main/java/com/yunbao/main/bean/RedPacketListBean.java b/main/src/main/java/com/yunbao/main/bean/RedPacketListBean.java deleted file mode 100644 index 16f3e0910..000000000 --- a/main/src/main/java/com/yunbao/main/bean/RedPacketListBean.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.yunbao.main.bean; - -import com.yunbao.common.bean.BaseModel; - -public class RedPacketListBean extends BaseModel { - private String title; - private String timer; - private String money; - - public String getTitle() { - return title; - } - - public void setTitle(String title) { - this.title = title; - } - - public String getTimer() { - return timer; - } - - public void setTimer(String timer) { - this.timer = timer; - } - - public String getMoney() { - return money; - } - - public void setMoney(String money) { - this.money = money; - } -} diff --git a/main/src/main/java/com/yunbao/main/views/MainHomeRedPacketLiveViewHolder.java b/main/src/main/java/com/yunbao/main/views/MainHomeRedPacketLiveViewHolder.java index b6d66fda7..a8bad6643 100644 --- a/main/src/main/java/com/yunbao/main/views/MainHomeRedPacketLiveViewHolder.java +++ b/main/src/main/java/com/yunbao/main/views/MainHomeRedPacketLiveViewHolder.java @@ -28,7 +28,9 @@ import org.greenrobot.eventbus.Subscribe; import org.greenrobot.eventbus.ThreadMode; import java.util.Arrays; +import java.util.HashMap; import java.util.List; +import java.util.Map; /** * 首页红包专区 @@ -134,6 +136,12 @@ public class MainHomeRedPacketLiveViewHolder extends AbsMainHomeChildViewHolder @Override public void onItemClick(LiveBean bean, int position) { if ("1".equals(bean.getIslive())) { + Map map = bean.getParams(); + if(map==null){ + map=new HashMap<>(); + } + map.put("redPacket","true"); + bean.setParams(map); watchLive(bean, Constants.LIVE_HOME, position); }else if(bean.getIs_week()!=null&&bean.getIs_week().equals("1")){ String url = CommonAppConfig.HOST + bean.getUrl()+"?a=1"; diff --git a/main/src/main/java/com/yunbao/main/views/MainHomeViewHolder.java b/main/src/main/java/com/yunbao/main/views/MainHomeViewHolder.java index 9c7c0ce9c..f04befa48 100644 --- a/main/src/main/java/com/yunbao/main/views/MainHomeViewHolder.java +++ b/main/src/main/java/com/yunbao/main/views/MainHomeViewHolder.java @@ -41,14 +41,11 @@ public class MainHomeViewHolder extends AbsMainHomeParentViewHolder { ImgLoader.display(mContext, "https://downs.yaoulive.com/gif_trophy.gif", img_trophy); - img_trophy.setOnLongClickListener(new View.OnLongClickListener() { - @Override - public boolean onLongClick(View v) { - mContext.startActivity(new Intent(mContext, RedPacketListActivity.class)); - return false; - } - }); + + } + public void setCurPosition(int position){ + mViewPager.setCurrentItem(position); } @Override @@ -73,9 +70,9 @@ public class MainHomeViewHolder extends AbsMainHomeParentViewHolder { } else if (position == 2) { mainHomeRecomLiveViewHolder = new MainHomeRecomLiveViewHolder(mContext, parent); vh = mainHomeRecomLiveViewHolder; - }else if(position==3){ - mainHomeRedPacketLiveViewHolder=new MainHomeRedPacketLiveViewHolder(mContext,parent); - vh=mainHomeRedPacketLiveViewHolder; + } else if (position == 3) { + mainHomeRedPacketLiveViewHolder = new MainHomeRedPacketLiveViewHolder(mContext, parent); + vh = mainHomeRedPacketLiveViewHolder; } if (vh == null) { @@ -102,7 +99,7 @@ public class MainHomeViewHolder extends AbsMainHomeParentViewHolder { mContext.getString(R.string.follow), mContext.getString(R.string.hot), mContext.getString(R.string.recomment), - "红包专区", + mContext.getString(R.string.main_tabs_red_packet), }; } diff --git a/main/src/main/res/drawable/bg_float_red_packet.xml b/main/src/main/res/drawable/bg_float_red_packet.xml new file mode 100644 index 000000000..5470ff1b1 --- /dev/null +++ b/main/src/main/res/drawable/bg_float_red_packet.xml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/main/src/main/res/layout/activity_red_packet.xml b/main/src/main/res/layout/activity_red_packet.xml index 19ed25a3b..b2430f744 100644 --- a/main/src/main/res/layout/activity_red_packet.xml +++ b/main/src/main/res/layout/activity_red_packet.xml @@ -19,7 +19,7 @@ android:paddingStart="15dp" android:paddingEnd="0dp" android:background="#F5F5F5" - android:text="近30天記錄 (截至到昨天)" + android:text="@string/red_packet_list_tips" android:textColor="#000000" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/include3" /> diff --git a/main/src/main/res/layout/activity_red_packet_info.xml b/main/src/main/res/layout/activity_red_packet_info.xml index c2c0a9a58..8c397a9cc 100644 --- a/main/src/main/res/layout/activity_red_packet_info.xml +++ b/main/src/main/res/layout/activity_red_packet_info.xml @@ -13,7 +13,7 @@ android:layout_marginTop="24dp" android:onClick="backClick" android:padding="9dp" - android:src="@mipmap/icon_dialog_charge_close" + android:src="@mipmap/icon_back" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" app:tint="@color/textColor" /> @@ -54,6 +54,15 @@ app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/title" /> + + + app:layout_constraintTop_toBottomOf="@+id/Popularity" /> + + + + + + + + + + + + + \ No newline at end of file diff --git a/main/src/main/res/layout/activity_red_packet_users.xml b/main/src/main/res/layout/activity_red_packet_users.xml index 6a9f8bfae..f100b3e63 100644 --- a/main/src/main/res/layout/activity_red_packet_users.xml +++ b/main/src/main/res/layout/activity_red_packet_users.xml @@ -14,7 +14,7 @@ android:layout_marginTop="24dp" android:onClick="backClick" android:padding="9dp" - android:src="@mipmap/icon_dialog_charge_close" + android:src="@mipmap/icon_back" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" app:tint="@color/textColor" /> @@ -65,7 +65,7 @@ android:layout_marginEnd="6dp" app:layout_constraintEnd_toStartOf="@+id/money" app:layout_constraintTop_toTopOf="@+id/money" - app:srcCompat="@mipmap/diamond" /> + app:srcCompat="@mipmap/gold_coin" /> + + + + + + + + + + + + + + \ No newline at end of file diff --git a/main/src/main/res/layout/view_homemain.xml b/main/src/main/res/layout/view_homemain.xml index 175475a58..981e0b6f7 100644 --- a/main/src/main/res/layout/view_homemain.xml +++ b/main/src/main/res/layout/view_homemain.xml @@ -1,5 +1,6 @@ + android:visibility="gone" + tools:visibility="visible" /> + android:visibility="gone" + tools:visibility="visible" /> + +