修复 寻爱bug
This commit is contained in:
@@ -1,4 +0,0 @@
|
|||||||
package com.yizhuan.erban.event;
|
|
||||||
|
|
||||||
public class BoxLoveEvent {
|
|
||||||
}
|
|
@@ -39,7 +39,6 @@ import com.netease.nimlib.sdk.chatroom.model.ChatRoomMessage;
|
|||||||
import com.yizhuan.erban.R;
|
import com.yizhuan.erban.R;
|
||||||
import com.yizhuan.erban.base.BaseBindingActivity;
|
import com.yizhuan.erban.base.BaseBindingActivity;
|
||||||
import com.yizhuan.erban.databinding.ActivityTreasureBoxBinding;
|
import com.yizhuan.erban.databinding.ActivityTreasureBoxBinding;
|
||||||
import com.yizhuan.erban.event.BoxLoveEvent;
|
|
||||||
import com.yizhuan.erban.treasure_box.widget.dialog.BoxLoveLackDialog;
|
import com.yizhuan.erban.treasure_box.widget.dialog.BoxLoveLackDialog;
|
||||||
import com.yizhuan.erban.treasure_box.widget.dialog.BoxMoreDialog;
|
import com.yizhuan.erban.treasure_box.widget.dialog.BoxMoreDialog;
|
||||||
import com.yizhuan.erban.treasure_box.widget.dialog.BuyLoveDialog;
|
import com.yizhuan.erban.treasure_box.widget.dialog.BuyLoveDialog;
|
||||||
@@ -160,6 +159,12 @@ public class TreasureBoxActivity extends BaseBindingActivity<ActivityTreasureBox
|
|||||||
public void afterTextChanged(Editable s) {
|
public void afterTextChanged(Editable s) {
|
||||||
try {
|
try {
|
||||||
mNum = Integer.parseInt(s.toString());
|
mNum = Integer.parseInt(s.toString());
|
||||||
|
if (mNum > 200) {
|
||||||
|
mNum = 200;
|
||||||
|
mBinding.edInputNum.setText(String.valueOf(mNum));
|
||||||
|
mBinding.edInputNum.setSelection(mBinding.edInputNum.getText().length());
|
||||||
|
SingleToastUtil.showToast(ResUtil.getString(R.string.treasure_box_activity_treasureboxactivity_01));
|
||||||
|
}
|
||||||
setBoxPriceSelect(0);
|
setBoxPriceSelect(0);
|
||||||
} catch (NumberFormatException e) {
|
} catch (NumberFormatException e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
@@ -186,7 +191,7 @@ public class TreasureBoxActivity extends BaseBindingActivity<ActivityTreasureBox
|
|||||||
.doOnError(throwable -> toast(throwable.getMessage()))
|
.doOnError(throwable -> toast(throwable.getMessage()))
|
||||||
.subscribe(userTicketInfo -> {
|
.subscribe(userTicketInfo -> {
|
||||||
ToastUtils.show("購買成功");
|
ToastUtils.show("購買成功");
|
||||||
loadUserTicket();
|
onTickerInfoUpdated(userTicketInfo);
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
BuyLoveDialog.Companion.newInstance(mNum, (int) userTicketInfo.getTicketPrice() * mNum).show(this);
|
BuyLoveDialog.Companion.newInstance(mNum, (int) userTicketInfo.getTicketPrice() * mNum).show(this);
|
||||||
@@ -203,23 +208,18 @@ public class TreasureBoxActivity extends BaseBindingActivity<ActivityTreasureBox
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* 购买爱心回调
|
|
||||||
*/
|
|
||||||
@Subscribe(threadMode = ThreadMode.MAIN)
|
|
||||||
public void onBoxLoveEvent(BoxLoveEvent event) {
|
|
||||||
loadUserTicket();
|
|
||||||
}
|
|
||||||
|
|
||||||
@SuppressLint("CheckResult")
|
@SuppressLint("CheckResult")
|
||||||
private void loadUserTicket() {
|
private void loadUserTicket() {
|
||||||
BoxModel.get()
|
BoxModel.get()
|
||||||
.getUserTicket()
|
.getUserTicket()
|
||||||
.compose(bindToLifecycle())
|
.compose(bindToLifecycle())
|
||||||
.subscribe(userTicketInfo -> {
|
.subscribe(userTicketInfo -> onTickerInfoUpdated(userTicketInfo));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||||
|
public void onTickerInfoUpdated(UserTicketInfo userTicketInfo) {
|
||||||
this.userTicketInfo = userTicketInfo;
|
this.userTicketInfo = userTicketInfo;
|
||||||
mBinding.tvBoxNum.setText(String.valueOf(userTicketInfo.getTicketNum()));
|
mBinding.tvBoxNum.setText(String.valueOf(userTicketInfo.getTicketNum()));
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setBoxPriceSelect(int pos) {
|
private void setBoxPriceSelect(int pos) {
|
||||||
@@ -401,7 +401,7 @@ public class TreasureBoxActivity extends BaseBindingActivity<ActivityTreasureBox
|
|||||||
.start();
|
.start();
|
||||||
}
|
}
|
||||||
|
|
||||||
ImageLoadUtils.loadAvatar(prizeInfo.getPicUrl(), ((ImageView) linearLayout.findViewById(R.id.iv_icon)));
|
ImageLoadUtils.loadAvatar(prizeInfo.getPicUrl(), linearLayout.findViewById(R.id.iv_icon));
|
||||||
((TextView) linearLayout.findViewById(R.id.tv_prize_name)).setText(prizeInfo.getRewardName());
|
((TextView) linearLayout.findViewById(R.id.tv_prize_name)).setText(prizeInfo.getRewardName());
|
||||||
((TextView) linearLayout.findViewById(R.id.tv_diamond)).setText(String.valueOf(prizeInfo.getDiamonds()));
|
((TextView) linearLayout.findViewById(R.id.tv_diamond)).setText(String.valueOf(prizeInfo.getDiamonds()));
|
||||||
((TextView) linearLayout.findViewById(R.id.tv_prize_num)).setText("x" + prizeInfo.getNum());
|
((TextView) linearLayout.findViewById(R.id.tv_prize_num)).setText("x" + prizeInfo.getNum());
|
||||||
|
@@ -1,7 +1,6 @@
|
|||||||
package com.yizhuan.erban.treasure_box.widget.dialog
|
package com.yizhuan.erban.treasure_box.widget.dialog
|
||||||
|
|
||||||
import android.annotation.SuppressLint
|
import android.annotation.SuppressLint
|
||||||
import android.content.DialogInterface
|
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.text.Editable
|
import android.text.Editable
|
||||||
import android.view.Gravity
|
import android.view.Gravity
|
||||||
@@ -10,7 +9,6 @@ import com.hjq.toast.ToastUtils
|
|||||||
import com.yizhuan.erban.R
|
import com.yizhuan.erban.R
|
||||||
import com.yizhuan.erban.base.BaseDialog
|
import com.yizhuan.erban.base.BaseDialog
|
||||||
import com.yizhuan.erban.databinding.TreasureBoxDialogLoveLackBinding
|
import com.yizhuan.erban.databinding.TreasureBoxDialogLoveLackBinding
|
||||||
import com.yizhuan.erban.event.BoxLoveEvent
|
|
||||||
import com.yizhuan.erban.treasure_box.widget.dialog.TreasureBoxDialog.Companion.newInstance
|
import com.yizhuan.erban.treasure_box.widget.dialog.TreasureBoxDialog.Companion.newInstance
|
||||||
import com.yizhuan.treasure_box.bean.UserTicketInfo
|
import com.yizhuan.treasure_box.bean.UserTicketInfo
|
||||||
import com.yizhuan.treasure_box.model.BoxModel
|
import com.yizhuan.treasure_box.model.BoxModel
|
||||||
@@ -35,6 +33,8 @@ class BoxLoveLackDialog : BaseDialog<TreasureBoxDialogLoveLackBinding>() {
|
|||||||
override var height = WindowManager.LayoutParams.WRAP_CONTENT
|
override var height = WindowManager.LayoutParams.WRAP_CONTENT
|
||||||
override var gravity = Gravity.CENTER
|
override var gravity = Gravity.CENTER
|
||||||
|
|
||||||
|
private var num :Int = 0
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
@JvmStatic
|
@JvmStatic
|
||||||
fun newInstance(num: Int, ticketPrice: Int): BoxLoveLackDialog {
|
fun newInstance(num: Int, ticketPrice: Int): BoxLoveLackDialog {
|
||||||
@@ -47,11 +47,12 @@ class BoxLoveLackDialog : BaseDialog<TreasureBoxDialogLoveLackBinding>() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private val num by lazy { requireArguments().getInt("num") }
|
|
||||||
private val ticketPrice by lazy { requireArguments().getInt("ticketPrice") }
|
private val ticketPrice by lazy { requireArguments().getInt("ticketPrice") }
|
||||||
|
|
||||||
@SuppressLint("CheckResult", "SetTextI18n")
|
@SuppressLint("CheckResult", "SetTextI18n")
|
||||||
override fun init() {
|
override fun init() {
|
||||||
|
num = requireArguments().getInt("num")
|
||||||
|
|
||||||
binding?.editNum?.setText(num.toString())
|
binding?.editNum?.setText(num.toString())
|
||||||
binding?.tvPrizeName?.text = (num * ticketPrice).toString()
|
binding?.tvPrizeName?.text = (num * ticketPrice).toString()
|
||||||
|
|
||||||
@@ -74,43 +75,33 @@ class BoxLoveLackDialog : BaseDialog<TreasureBoxDialogLoveLackBinding>() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
binding?.tvBuy?.setOnClickListener {
|
binding?.tvBuy?.setOnClickListener {
|
||||||
val date = SPUtils.getLong(SpConstants.BOX_BUY_LOVE, 0L)
|
|
||||||
if (date != 0L) {
|
|
||||||
if (TimeUtils.isToday(date)) {
|
|
||||||
BoxModel.get()
|
BoxModel.get()
|
||||||
.buyTicket(num)
|
.buyTicket(num)
|
||||||
.compose(bindToLifecycle())
|
.compose(bindToLifecycle())
|
||||||
.doOnError { dealError(it) }
|
.doOnError { dealError(it) }
|
||||||
.subscribe { userTicketInfo: UserTicketInfo ->
|
.subscribe { userTicketInfo: UserTicketInfo ->
|
||||||
|
dismissAllowingStateLoss()
|
||||||
|
val date = SPUtils.getLong(SpConstants.BOX_BUY_SUCCESS, 0L)
|
||||||
|
if (TimeUtils.isToday(date)) {
|
||||||
ToastUtils.show("購買成功")
|
ToastUtils.show("購買成功")
|
||||||
dismissAllowingStateLoss()
|
return@subscribe
|
||||||
}
|
}
|
||||||
} else {
|
BuyLoveSuccessDialog.newInstance(num).show(context)
|
||||||
BuyLoveDialog.newInstance(
|
EventBus.getDefault().post(userTicketInfo)
|
||||||
binding?.editNum?.text.toString().toInt(),
|
|
||||||
ticketPrice * binding?.editNum?.text.toString().toInt()
|
|
||||||
).show(context)
|
|
||||||
dismissAllowingStateLoss()
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
BuyLoveDialog.newInstance(
|
|
||||||
binding?.editNum?.text.toString().toInt(),
|
|
||||||
ticketPrice * binding?.editNum?.text.toString().toInt()
|
|
||||||
).show(context)
|
|
||||||
dismissAllowingStateLoss()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
binding?.editNum?.addTextChangedListener(object : TextWatcherWrapper() {
|
binding?.editNum?.addTextChangedListener(object : TextWatcherWrapper() {
|
||||||
override fun afterTextChanged(editable: Editable) {
|
override fun afterTextChanged(editable: Editable) {
|
||||||
var num = StringUtils.toInt(binding?.editNum?.text.toString(), 0)
|
var n = StringUtils.toInt(binding?.editNum?.text.toString(), 0)
|
||||||
if (num > 200) {
|
if (n > 200) {
|
||||||
num = 200
|
n = 200
|
||||||
binding?.editNum?.setText(num.toString())
|
binding?.editNum?.setText(n.toString())
|
||||||
binding?.editNum?.setSelection(3)
|
binding?.editNum?.setSelection(3)
|
||||||
SingleToastUtil.showToast(ResUtil.getString(R.string.treasure_box_activity_treasureboxactivity_01))
|
SingleToastUtil.showToast(ResUtil.getString(R.string.treasure_box_activity_treasureboxactivity_01))
|
||||||
}
|
}
|
||||||
binding?.tvPrizeName?.text = (num * ticketPrice).toString()
|
binding?.tvPrizeName?.text = (n * ticketPrice).toString()
|
||||||
|
num = n
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
@@ -138,10 +129,4 @@ class BoxLoveLackDialog : BaseDialog<TreasureBoxDialogLoveLackBinding>() {
|
|||||||
SingleToastUtil.showToast(error.message)
|
SingleToastUtil.showToast(error.message)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onDismiss(dialog: DialogInterface) {
|
|
||||||
super.onDismiss(dialog)
|
|
||||||
EventBus.getDefault().post(BoxLoveEvent())
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
@@ -1,7 +1,6 @@
|
|||||||
package com.yizhuan.erban.treasure_box.widget.dialog
|
package com.yizhuan.erban.treasure_box.widget.dialog
|
||||||
|
|
||||||
import android.annotation.SuppressLint
|
import android.annotation.SuppressLint
|
||||||
import android.content.DialogInterface
|
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.view.Gravity
|
import android.view.Gravity
|
||||||
import android.view.WindowManager
|
import android.view.WindowManager
|
||||||
@@ -9,7 +8,6 @@ import com.hjq.toast.ToastUtils
|
|||||||
import com.yizhuan.erban.R
|
import com.yizhuan.erban.R
|
||||||
import com.yizhuan.erban.base.BaseDialog
|
import com.yizhuan.erban.base.BaseDialog
|
||||||
import com.yizhuan.erban.databinding.TreasureBoxDialogBuyLoveBinding
|
import com.yizhuan.erban.databinding.TreasureBoxDialogBuyLoveBinding
|
||||||
import com.yizhuan.erban.event.BoxLoveEvent
|
|
||||||
import com.yizhuan.treasure_box.bean.UserTicketInfo
|
import com.yizhuan.treasure_box.bean.UserTicketInfo
|
||||||
import com.yizhuan.treasure_box.model.BoxModel
|
import com.yizhuan.treasure_box.model.BoxModel
|
||||||
import com.yizhuan.xchat_android_core.exception.FailReasonException
|
import com.yizhuan.xchat_android_core.exception.FailReasonException
|
||||||
@@ -62,7 +60,6 @@ class BuyLoveDialog : BaseDialog<TreasureBoxDialogBuyLoveBinding>() {
|
|||||||
|
|
||||||
binding?.tvBuy?.setOnClickListener {
|
binding?.tvBuy?.setOnClickListener {
|
||||||
val date = SPUtils.getLong(SpConstants.BOX_BUY_SUCCESS, 0L)
|
val date = SPUtils.getLong(SpConstants.BOX_BUY_SUCCESS, 0L)
|
||||||
if (date != 0L) {
|
|
||||||
if (TimeUtils.isToday(date)) {
|
if (TimeUtils.isToday(date)) {
|
||||||
BoxModel.get()
|
BoxModel.get()
|
||||||
.buyTicket(num)
|
.buyTicket(num)
|
||||||
@@ -71,8 +68,11 @@ class BuyLoveDialog : BaseDialog<TreasureBoxDialogBuyLoveBinding>() {
|
|||||||
.subscribe { userTicketInfo: UserTicketInfo ->
|
.subscribe { userTicketInfo: UserTicketInfo ->
|
||||||
ToastUtils.show("購買成功")
|
ToastUtils.show("購買成功")
|
||||||
dismissAllowingStateLoss()
|
dismissAllowingStateLoss()
|
||||||
|
EventBus.getDefault().post(userTicketInfo)
|
||||||
}
|
}
|
||||||
} else {
|
return@setOnClickListener
|
||||||
|
}
|
||||||
|
|
||||||
BoxModel.get()
|
BoxModel.get()
|
||||||
.buyTicket(num)
|
.buyTicket(num)
|
||||||
.compose(bindToLifecycle())
|
.compose(bindToLifecycle())
|
||||||
@@ -80,17 +80,7 @@ class BuyLoveDialog : BaseDialog<TreasureBoxDialogBuyLoveBinding>() {
|
|||||||
.subscribe { userTicketInfo: UserTicketInfo ->
|
.subscribe { userTicketInfo: UserTicketInfo ->
|
||||||
BuyLoveSuccessDialog.newInstance(num).show(context)
|
BuyLoveSuccessDialog.newInstance(num).show(context)
|
||||||
dismissAllowingStateLoss()
|
dismissAllowingStateLoss()
|
||||||
}
|
EventBus.getDefault().post(userTicketInfo)
|
||||||
}
|
|
||||||
} else {
|
|
||||||
BoxModel.get()
|
|
||||||
.buyTicket(num)
|
|
||||||
.compose(bindToLifecycle())
|
|
||||||
.doOnError { dealError(it) }
|
|
||||||
.subscribe { userTicketInfo: UserTicketInfo ->
|
|
||||||
BuyLoveSuccessDialog.newInstance(num).show(context)
|
|
||||||
dismissAllowingStateLoss()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -107,9 +97,4 @@ class BuyLoveDialog : BaseDialog<TreasureBoxDialogBuyLoveBinding>() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onDismiss(dialog: DialogInterface) {
|
|
||||||
super.onDismiss(dialog)
|
|
||||||
EventBus.getDefault().post(BoxLoveEvent())
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
@@ -1,7 +1,6 @@
|
|||||||
package com.yizhuan.erban.treasure_box.widget.dialog
|
package com.yizhuan.erban.treasure_box.widget.dialog
|
||||||
|
|
||||||
import android.annotation.SuppressLint
|
import android.annotation.SuppressLint
|
||||||
import android.content.DialogInterface
|
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.view.Gravity
|
import android.view.Gravity
|
||||||
import android.view.WindowManager
|
import android.view.WindowManager
|
||||||
@@ -9,7 +8,6 @@ import com.yizhuan.erban.R
|
|||||||
import com.yizhuan.erban.base.BaseDialog
|
import com.yizhuan.erban.base.BaseDialog
|
||||||
import com.yizhuan.erban.databinding.TreasureBoxDialogBuyLoveBinding
|
import com.yizhuan.erban.databinding.TreasureBoxDialogBuyLoveBinding
|
||||||
import com.yizhuan.erban.databinding.TreasureBoxDialogBuyLoveSuccessBinding
|
import com.yizhuan.erban.databinding.TreasureBoxDialogBuyLoveSuccessBinding
|
||||||
import com.yizhuan.erban.event.BoxLoveEvent
|
|
||||||
import com.yizhuan.treasure_box.bean.UserTicketInfo
|
import com.yizhuan.treasure_box.bean.UserTicketInfo
|
||||||
import com.yizhuan.treasure_box.model.BoxModel
|
import com.yizhuan.treasure_box.model.BoxModel
|
||||||
import com.yizhuan.xchat_android_library.common.SpConstants
|
import com.yizhuan.xchat_android_library.common.SpConstants
|
||||||
@@ -53,12 +51,5 @@ class BuyLoveSuccessDialog : BaseDialog<TreasureBoxDialogBuyLoveSuccessBinding>(
|
|||||||
binding?.ivClose?.setOnClickListener {
|
binding?.ivClose?.setOnClickListener {
|
||||||
dismissAllowingStateLoss()
|
dismissAllowingStateLoss()
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onDismiss(dialog: DialogInterface) {
|
|
||||||
super.onDismiss(dialog)
|
|
||||||
EventBus.getDefault().post(BoxLoveEvent())
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
Reference in New Issue
Block a user