0元购 接入领取奖励 确认、绑定银行dialog
This commit is contained in:
parent
461a24de94
commit
95cb9da2af
|
|
@ -18,6 +18,7 @@ import com.vididin.real.money.game.databinding.DialogWithdrawBindingBankBinding
|
||||||
class WithdrawBindBankDialog(activity: Activity, private val onConfirmedWithdraw: ((cashNum: Float)->Unit)?) : BindingDialog<ViewBinding>(activity, ViewBinding::inflate) {
|
class WithdrawBindBankDialog(activity: Activity, private val onConfirmedWithdraw: ((cashNum: Float)->Unit)?) : BindingDialog<ViewBinding>(activity, ViewBinding::inflate) {
|
||||||
|
|
||||||
private var mWithdrawCashNum: Float = 0F
|
private var mWithdrawCashNum: Float = 0F
|
||||||
|
private var mWithdrawCashNumStr: String = ""
|
||||||
|
|
||||||
init {
|
init {
|
||||||
build()
|
build()
|
||||||
|
|
@ -40,7 +41,13 @@ class WithdrawBindBankDialog(activity: Activity, private val onConfirmedWithdraw
|
||||||
tvConfirm -> {
|
tvConfirm -> {
|
||||||
saveBankAccount(mBinding.tvCpfEdit.text.toString().trim())
|
saveBankAccount(mBinding.tvCpfEdit.text.toString().trim())
|
||||||
if (mWithdrawCashNum > 0F) {
|
if (mWithdrawCashNum > 0F) {
|
||||||
WithdrawInfoConfirmDialog(mActivity, onConfirmedWithdraw!!).setWithDrawCashNum(mWithdrawCashNum).show()
|
val dialogBuilder = WithdrawInfoConfirmDialog(mActivity, onConfirmedWithdraw!!)
|
||||||
|
if (mWithdrawCashNum > 0F) {
|
||||||
|
dialogBuilder.setWithDrawCashNum(mWithdrawCashNum)
|
||||||
|
} else {
|
||||||
|
dialogBuilder.setWithDrawCashNumStr(mWithdrawCashNumStr)
|
||||||
|
}
|
||||||
|
dialogBuilder.show()
|
||||||
}
|
}
|
||||||
|
|
||||||
dismiss()
|
dismiss()
|
||||||
|
|
@ -115,5 +122,14 @@ class WithdrawBindBankDialog(activity: Activity, private val onConfirmedWithdraw
|
||||||
return this
|
return this
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun setWithDrawCashNumStr(withdrawNumStr: String): WithdrawBindBankDialog {
|
||||||
|
mWithdrawCashNumStr = withdrawNumStr
|
||||||
|
|
||||||
|
if (mWithdrawCashNum == 0F) {
|
||||||
|
mBinding.tvConfirm.text = ResUtil.getString(R.string.confirm)
|
||||||
|
}
|
||||||
|
return this
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@ import com.vididin.real.money.game.databinding.DialogWithdrawInfoConfirmBinding
|
||||||
class WithdrawInfoConfirmDialog(context: Activity, private val onConfirmed: (cashNum: Float)->Unit) : BindingDialog<ViewBinding>(context, ViewBinding::inflate) {
|
class WithdrawInfoConfirmDialog(context: Activity, private val onConfirmed: (cashNum: Float)->Unit) : BindingDialog<ViewBinding>(context, ViewBinding::inflate) {
|
||||||
|
|
||||||
private var mWithdrawCashNum: Float = 0F
|
private var mWithdrawCashNum: Float = 0F
|
||||||
|
private var mWithdrawCashNumStr: String = ""
|
||||||
|
|
||||||
init {
|
init {
|
||||||
build()
|
build()
|
||||||
|
|
@ -67,5 +68,16 @@ class WithdrawInfoConfirmDialog(context: Activity, private val onConfirmed: (cas
|
||||||
return this
|
return this
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun setWithDrawCashNumStr(withdrawNumStr: String): WithdrawInfoConfirmDialog {
|
||||||
|
mWithdrawCashNumStr = withdrawNumStr
|
||||||
|
|
||||||
|
mBinding.tvCashNum.text = buildString {
|
||||||
|
append(mWithdrawCashNumStr)
|
||||||
|
}
|
||||||
|
mBinding.tvCpfAccount.text = AccountManager.getBankInfo()?.bankAccount
|
||||||
|
|
||||||
|
return this
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,19 @@
|
||||||
package com.gamedog.vididin.features.zero.dialogs
|
package com.gamedog.vididin.features.zero.dialogs
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
import android.app.Activity
|
import android.app.Activity
|
||||||
|
import com.ama.core.architecture.util.AndroidUtil
|
||||||
import com.ama.core.architecture.util.setOnClickBatch
|
import com.ama.core.architecture.util.setOnClickBatch
|
||||||
import com.ama.core.architecture.widget.BindingDialog
|
import com.ama.core.architecture.widget.BindingDialog
|
||||||
import com.gamedog.vididin.beans.ZeroBuyItem
|
import com.gamedog.vididin.beans.ZeroBuyItem
|
||||||
|
import com.gamedog.vididin.core.login.login.AccountManager
|
||||||
|
import com.gamedog.vididin.features.withdraw.dialogs.WithdrawBindBankDialog
|
||||||
|
import com.gamedog.vididin.features.withdraw.dialogs.WithdrawInfoConfirmDialog
|
||||||
|
import com.gamedog.vididin.manager.WithdrawManager.Companion.TRANSACTION_STATE_ONGOING
|
||||||
|
import com.gamedog.vididin.manager.WithdrawManager.Companion.TRANSACTION_STATE_SUCCESS
|
||||||
import com.gamedog.vididin.manager.ZeroManager
|
import com.gamedog.vididin.manager.ZeroManager
|
||||||
|
import com.vididin.real.money.game.R
|
||||||
import com.vididin.real.money.game.databinding.DialogZeroBuyWinBinding as ViewBinding
|
import com.vididin.real.money.game.databinding.DialogZeroBuyWinBinding as ViewBinding
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -46,9 +54,28 @@ class ZeroBuyWinDialog(context: Activity, private val item: ZeroBuyItem) : Bindi
|
||||||
|
|
||||||
private fun handleWithdraw(item: ZeroBuyItem) {
|
private fun handleWithdraw(item: ZeroBuyItem) {
|
||||||
ZeroManager.instance().addWinWithdrawItem(item)
|
ZeroManager.instance().addWinWithdrawItem(item)
|
||||||
|
val zeroWithdrawInfoItem = ZeroManager.instance().getZeroWithdrawItem(item)
|
||||||
|
|
||||||
if (ZeroManager.instance().couldStartWithdraw(item)) {
|
if (ZeroManager.instance().couldStartWithdraw(item)) {
|
||||||
ZeroManager.instance().startWithdrawForWinPurchase(item)
|
val onConfirmed: (cashNum: Float)->Unit = {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
if (AccountManager.isBankAccountExist()) {
|
||||||
|
WithdrawInfoConfirmDialog(mActivity, onConfirmed).setWithDrawCashNumStr(zeroWithdrawInfoItem.winCashNumStr!!).show()
|
||||||
|
} else {
|
||||||
|
WithdrawBindBankDialog(activity = mActivity, onConfirmed).setWithDrawCashNumStr(zeroWithdrawInfoItem.winCashNumStr!!).show()
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
when (zeroWithdrawInfoItem.withdrawState) {
|
||||||
|
TRANSACTION_STATE_ONGOING -> {
|
||||||
|
AndroidUtil.showToast(R.string.claim_reward_onging)
|
||||||
|
}
|
||||||
|
|
||||||
|
TRANSACTION_STATE_SUCCESS -> {
|
||||||
|
AndroidUtil.showToast(R.string.has_claimed_reward)
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -80,6 +80,10 @@ class ZeroManager private constructor() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun getZeroWithdrawItem(zeroItem: ZeroBuyItem): WinZeroWithdrawInfoItem {
|
||||||
|
return mWinZeroList.filter { zeroItem.id == it.purchase_id }[0]
|
||||||
|
}
|
||||||
|
|
||||||
fun couldStartWithdraw(zeroItem: ZeroBuyItem): Boolean {
|
fun couldStartWithdraw(zeroItem: ZeroBuyItem): Boolean {
|
||||||
val userId = AccountManager.getAccount().userId
|
val userId = AccountManager.getAccount().userId
|
||||||
zeroItem.winners?.let {
|
zeroItem.winners?.let {
|
||||||
|
|
|
||||||
|
|
@ -203,6 +203,8 @@
|
||||||
<string name="record_gold_title_convert_2_cash">Convert Notes</string>
|
<string name="record_gold_title_convert_2_cash">Convert Notes</string>
|
||||||
<string name="record_gold_descr_convert_2_cash">You have exchanged %d gold coins.</string>
|
<string name="record_gold_descr_convert_2_cash">You have exchanged %d gold coins.</string>
|
||||||
<string name="net_error">Erro de rede</string>
|
<string name="net_error">Erro de rede</string>
|
||||||
|
<string name="claim_reward_onging">This purchase reward claim is ongoing.</string>
|
||||||
|
<string name="has_claimed_reward">You have claimed this reward.</string>
|
||||||
|
|
||||||
|
|
||||||
</resources>
|
</resources>
|
||||||
Loading…
Reference in New Issue