diff --git a/app/src/main/java/com/yizhuan/erban/avroom/activity/AVRoomActivity.java b/app/src/main/java/com/yizhuan/erban/avroom/activity/AVRoomActivity.java index edcf936b1..bb416a0f0 100644 --- a/app/src/main/java/com/yizhuan/erban/avroom/activity/AVRoomActivity.java +++ b/app/src/main/java/com/yizhuan/erban/avroom/activity/AVRoomActivity.java @@ -441,16 +441,6 @@ public class AVRoomActivity extends BaseMvpActivity?> : GiftModel.get() .sendRoomGift(giftInfo.giftId, targetUids, number, msg, isKnap, isWholdMic) .compose(bindUntilEvent(FragmentEvent.DESTROY)) - .subscribe(object : BiConsumer?, Throwable?> { - @Throws(Exception::class) - override fun accept( - giftMultiReceiverInfoServiceResult: ServiceResult?, - throwable: Throwable? - ) { - if (throwable != null) { - callback.onFail() - return - } + .subscribe { throwable, _ -> + if (throwable != null) { + callback.onFail() + } else { callback.onSuccess() } - }) + } } else { dialogManager.showOkDialog("尚未达到赠送${giftInfo.giftName}所需贵族等级,所需贵族等级:${giftInfo.giftVipInfo?.vipName}") callback.onFail() diff --git a/app/src/main/java/com/yizhuan/erban/base/BaseActivity.java b/app/src/main/java/com/yizhuan/erban/base/BaseActivity.java index 80f3fe3d4..c3e930a16 100644 --- a/app/src/main/java/com/yizhuan/erban/base/BaseActivity.java +++ b/app/src/main/java/com/yizhuan/erban/base/BaseActivity.java @@ -51,6 +51,7 @@ import com.yizhuan.erban.NimMiddleActivity; import com.yizhuan.erban.R; import com.yizhuan.erban.application.XChatApplication; import com.yizhuan.erban.avroom.activity.AVRoomActivity; +import com.yizhuan.erban.avroom.firstcharge.FirstChargeDialog; import com.yizhuan.erban.avroom.redpackage.RedPackageGoRoomDialog; import com.yizhuan.erban.avroom.redpackage.RedPackageOpenDialog; import com.yizhuan.erban.common.LoadingFragment; @@ -86,6 +87,9 @@ import com.yizhuan.xchat_android_core.redpackage.RedPackageNotifyInfo; import com.yizhuan.xchat_android_core.room.bean.RoomInfo; import com.yizhuan.xchat_android_core.room.model.AvRoomModel; import com.yizhuan.xchat_android_core.statistic.StatisticManager; +import com.yizhuan.xchat_android_core.statistic.protocol.StatisticsProtocol; +import com.yizhuan.xchat_android_core.user.UserModel; +import com.yizhuan.xchat_android_core.user.bean.UserInfo; import com.yizhuan.xchat_android_core.utils.net.RxHelper; import com.yizhuan.xchat_android_library.rxbus.RxBus; import com.yizhuan.xchat_android_library.utils.NetworkUtils; @@ -107,6 +111,7 @@ import java.util.List; import io.reactivex.Observable; import io.reactivex.android.schedulers.AndroidSchedulers; import io.reactivex.disposables.CompositeDisposable; +import io.reactivex.functions.Consumer; /** @@ -1017,24 +1022,41 @@ public abstract class BaseActivity extends RxAppCompatActivity return true; } + @SuppressLint("CheckResult") private void onNeedCharge() { if (isShowingChargeDialog) { return; } isShowingChargeDialog = true; - new DialogManager(this).showOkCancelDialog(getString(R.string.tips_need_charge), - new DialogManager.OkCancelDialogListener() { - @Override - public void onOk() { - isShowingChargeDialog = false; - ChargeActivity.start(context); - } - @Override - public void onCancel() { - isShowingChargeDialog = false; - } - }); + UserModel.get().getCurrentUserInfo() + .compose(bindToLifecycle()) + .doOnError(throwable -> isShowingChargeDialog = false) + .subscribe( + userInfo -> { + if (userInfo.isFirstCharge()) { + isShowingChargeDialog = false; + FirstChargeDialog.start(context); + } else { + new DialogManager(context).showOkCancelDialog(getString(R.string.tips_need_charge), + new DialogManager.OkCancelDialogListener() { + @Override + public void onOk() { + isShowingChargeDialog = false; + StatisticManager.Instance().onEvent(StatisticsProtocol.Event.EVENT_NOT_ENOUGH_TO_RECHARGE, + "余额不足_去充值:送礼物"); + ChargeActivity.start(context); + } + + @Override + public void onCancel() { + isShowingChargeDialog = false; + } + }); + } + } + ); + } @Subscribe(threadMode = ThreadMode.MAIN) diff --git a/core/src/main/java/com/yizhuan/xchat_android_core/gift/bean/GiftInfo.java b/core/src/main/java/com/yizhuan/xchat_android_core/gift/bean/GiftInfo.java index 8ac3aeba6..d01e02b60 100644 --- a/core/src/main/java/com/yizhuan/xchat_android_core/gift/bean/GiftInfo.java +++ b/core/src/main/java/com/yizhuan/xchat_android_core/gift/bean/GiftInfo.java @@ -78,9 +78,6 @@ public class GiftInfo implements Serializable { */ private String giftExplainUrl; - private int vipLevel; - private String vipIcon; - private SimpleVipInfo giftVipInfo; }