房间心愿单:入口显示逻辑优化,是否开启心愿单判断方式修改

This commit is contained in:
huangjian
2022-10-20 18:42:48 +08:00
parent 2a7f3a86ea
commit da0b7f7920
7 changed files with 23 additions and 17 deletions

View File

@@ -516,6 +516,10 @@ open class BaseRoomFragment<V : IBaseRoomView?, P : BaseRoomPresenter<V>?> :
pagerViewWishList?.let { pagerViewWishList ->
val adapter = object : StaticPagerAdapter() {
var wishGiftList: List<WishItemInfo>? = null
set(value) {
pagerViewWishList.isVisible = !value.isNullOrEmpty()
field = value
}
override fun getCount(): Int {
return wishGiftList?.size ?: 0
}

View File

@@ -53,7 +53,7 @@ class WishListCreateActivity : BaseViewBindingActivity<ActivityWishListCreateBin
.setAdapter(WishListAdapter())
.build()
rvDelegate.adapter.setOnItemChildClickListener { _, view, position ->
if (isCreatedWishList()) {
if (AvRoomDataManager.get().isHasOpenWishGift) {
SingleToastUtil.showToast(tips)
return@setOnItemChildClickListener
}
@@ -78,7 +78,7 @@ class WishListCreateActivity : BaseViewBindingActivity<ActivityWishListCreateBin
}
}
binding.tvAddWish.setOnClickListener {
if (isCreatedWishList()) {
if (AvRoomDataManager.get().isHasOpenWishGift) {
SingleToastUtil.showToast(tips)
return@setOnClickListener
}
@@ -86,7 +86,7 @@ class WishListCreateActivity : BaseViewBindingActivity<ActivityWishListCreateBin
}
binding.tvCreateWish.setOnClickListener {
if (isCreatedWishList()) {
if (AvRoomDataManager.get().isHasOpenWishGift) {
SingleToastUtil.showToast(tips)
return@setOnClickListener
}
@@ -95,7 +95,7 @@ class WishListCreateActivity : BaseViewBindingActivity<ActivityWishListCreateBin
}
}
binding.tvCleanWish.setOnClickListener {
if (isCreatedWishList()) {
if (AvRoomDataManager.get().isHasOpenWishGift) {
SingleToastUtil.showToast(tips)
return@setOnClickListener
}
@@ -131,10 +131,6 @@ class WishListCreateActivity : BaseViewBindingActivity<ActivityWishListCreateBin
}
private fun isCreatedWishList(): Boolean {
return !AvRoomDataManager.get().wishGiftLiveData.value.isNullOrEmpty()
}
override fun onResume() {
super.onResume()
viewModel.getRoomWishGiftList()

View File

@@ -123,7 +123,8 @@
android:layout_height="30dp"
android:layout_below="@id/ll_room_pk_order"
android:layout_alignParentEnd="true"
android:layout_marginTop="5dp" />
android:layout_marginTop="5dp"
android:visibility="gone" />
<TextView
android:id="@+id/tv_hour_rank"

View File

@@ -98,6 +98,7 @@
android:layout_width="80dp"
android:layout_height="30dp"
android:layout_marginTop="5dp"
android:visibility="gone"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@id/contribute_list" />

View File

@@ -1370,8 +1370,9 @@ public final class IMNetEaseManager {
WishListAttachment wishListAttachment = (WishListAttachment) attachment;
switch (second) {
case CUSTOM_MSG_WISH_LIST_OPEN:
AvRoomDataManager.get().setHasOpenWishGift(true);
case CUSTOM_MSG_WISH_LIST_UPDATE:
AvRoomDataManager.get().wishGiftLiveData.setValue(wishListAttachment.getWishItemInfos());
AvRoomDataManager.get().wishGiftLiveData.setValue(wishListAttachment.getGifts());
break;
case CUSTOM_MSG_WISH_LIST_FINISH:
addMessages(msg);

View File

@@ -13,7 +13,7 @@ import java.util.List;
public class WishListAttachment extends CustomAttachment {
private long roomUid;
private List<WishItemInfo> wishItemInfos;
private List<WishItemInfo> gifts;
public WishListAttachment(int first, int second) {
@@ -28,20 +28,19 @@ public class WishListAttachment extends CustomAttachment {
this.roomUid = roomUid;
}
public List<WishItemInfo> getWishItemInfos() {
return wishItemInfos;
public List<WishItemInfo> getGifts() {
return gifts;
}
public void setWishItemInfos(List<WishItemInfo> wishItemInfos) {
this.wishItemInfos = wishItemInfos;
public void setGifts(List<WishItemInfo> gifts) {
this.gifts = gifts;
}
@Override
protected void parseData(JSONObject data) {
roomUid = data.getLongValue("roomUid");
wishItemInfos = data.getObject("wishItemInfos", new TypeReference<List<List<Integer>>>() {
gifts = data.getObject("gifts", new TypeReference<List<List<Integer>>>() {
}.getType());
}
@Override

View File

@@ -1328,6 +1328,10 @@ public final class AvRoomDataManager {
return hasOpenWishGift;
}
public void setHasOpenWishGift(boolean hasOpenWishGift) {
this.hasOpenWishGift = hasOpenWishGift;
}
public boolean isLimitEnterRoom(String roomUid) {
initKickOutRoomUids();
Long limitTime = kickOutRoomUids.get(roomUid);