diff --git a/app/src/main/java/com/gamedog/vididin/features/winrecords/WinRecordsActivity.kt b/app/src/main/java/com/gamedog/vididin/features/winrecords/WinRecordsActivity.kt index 98aa3ef..f47da30 100644 --- a/app/src/main/java/com/gamedog/vididin/features/winrecords/WinRecordsActivity.kt +++ b/app/src/main/java/com/gamedog/vididin/features/winrecords/WinRecordsActivity.kt @@ -16,6 +16,7 @@ import com.gamedog.vididin.features.zero.ZeroBuyViewModel import com.gamedog.vididin.features.zero.ZeroRecordAdapter import com.vididin.real.money.game.R import com.gamedog.vididin.main.interfaces.OnTabStyleListener +import com.gamedog.vididin.manager.ZeroManager import com.gamedog.vididin.netbase.Result import dagger.hilt.android.AndroidEntryPoint import kotlinx.coroutines.launch @@ -41,7 +42,9 @@ class WinRecordsActivity : AppViewsEmptyViewModelActivity(), OnTabS with(recyclerView) { - mAdapter = ZeroRecordAdapter() + mAdapter = ZeroRecordAdapter({ + ZeroManager.instance().startWithdrawProcess(this@WinRecordsActivity, it) + }) adapter = mAdapter layoutManager = LinearLayoutManager(this@WinRecordsActivity, LinearLayoutManager.VERTICAL, false) addItemDecoration( diff --git a/app/src/main/java/com/gamedog/vididin/features/zero/ZeroRecordAdapter.kt b/app/src/main/java/com/gamedog/vididin/features/zero/ZeroRecordAdapter.kt index c2e5562..b775a70 100644 --- a/app/src/main/java/com/gamedog/vididin/features/zero/ZeroRecordAdapter.kt +++ b/app/src/main/java/com/gamedog/vididin/features/zero/ZeroRecordAdapter.kt @@ -10,11 +10,16 @@ import androidx.recyclerview.widget.RecyclerView import com.ama.core.architecture.util.ResUtil import com.gamedog.vididin.beans.ZeroBuyItem import com.gamedog.vididin.core.login.login.AccountManager +import com.gamedog.vididin.manager.WithdrawManager.Companion.TRANSACTION_STATE_FAIL +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.WithdrawManager.Companion.TRANSACTION_STATE_UNSTART +import com.gamedog.vididin.manager.ZeroManager import com.vididin.real.money.game.R import java.text.SimpleDateFormat import com.vididin.real.money.game.databinding.ZeroRecordWinBinding as ViewBinding -class ZeroRecordAdapter() : ListAdapter(DiffCallback()) { +class ZeroRecordAdapter(private val onWithdrawCallback: (ZeroBuyItem)-> Unit) : ListAdapter(DiffCallback()) { override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder { val binding = ViewBinding.inflate(LayoutInflater.from(parent.context), parent, false) @@ -47,6 +52,35 @@ class ZeroRecordAdapter() : ListAdapter { + llRightWin.isClickable = true + tvWinRightBottom.text = ResUtil.getString(R.string.zero_win_state_withdrarw_unstart) + } + + TRANSACTION_STATE_FAIL -> { + llRightWin.isClickable = true + tvWinRightBottom.text = ResUtil.getString(R.string.zero_win_state_failed) + } + + TRANSACTION_STATE_ONGOING -> { + llRightWin.isClickable = false + tvWinRightBottom.text = ResUtil.getString(R.string.zero_win_state_withdrarw_ongoing) + } + + TRANSACTION_STATE_SUCCESS -> { + llRightWin.isClickable = false + tvWinRightBottom.text = ResUtil.getString(R.string.zero_win_state_withdrarw_success) + } + } + + llRightWin.setOnClickListener { + onWithdrawCallback(item) + } + } } } } diff --git a/app/src/main/java/com/gamedog/vididin/features/zero/dialogs/ZeroBuyWinDialog.kt b/app/src/main/java/com/gamedog/vididin/features/zero/dialogs/ZeroBuyWinDialog.kt index a8c92ba..8503688 100644 --- a/app/src/main/java/com/gamedog/vididin/features/zero/dialogs/ZeroBuyWinDialog.kt +++ b/app/src/main/java/com/gamedog/vididin/features/zero/dialogs/ZeroBuyWinDialog.kt @@ -54,29 +54,7 @@ class ZeroBuyWinDialog(context: Activity, private val item: ZeroBuyItem) : Bindi private fun handleWithdraw(item: ZeroBuyItem) { ZeroManager.instance().addWinWithdrawItem(item) - val zeroWithdrawInfoItem = ZeroManager.instance().getZeroWithdrawItem(item) - - if (ZeroManager.instance().couldStartWithdraw(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) - } - } - } + ZeroManager.instance().startWithdrawProcess(mActivity, item) } diff --git a/app/src/main/java/com/gamedog/vididin/manager/ZeroManager.kt b/app/src/main/java/com/gamedog/vididin/manager/ZeroManager.kt index b4138d8..a3df068 100644 --- a/app/src/main/java/com/gamedog/vididin/manager/ZeroManager.kt +++ b/app/src/main/java/com/gamedog/vididin/manager/ZeroManager.kt @@ -1,5 +1,6 @@ package com.gamedog.vididin.manager +import android.app.Activity import com.ama.core.architecture.util.AndroidUtil import com.ama.core.architecture.util.DeviceUtil import com.ama.core.architecture.util.MD5Util @@ -9,6 +10,8 @@ import com.gamedog.vididin.VidiConst.ZEROBUY_SECRET import com.gamedog.vididin.beans.ZeroBuyItem import com.gamedog.vididin.beans.ZeroBuyResp 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_FAIL import com.gamedog.vididin.manager.WithdrawManager.Companion.TRANSACTION_STATE_ONGOING import com.gamedog.vididin.manager.WithdrawManager.Companion.TRANSACTION_STATE_SUCCESS @@ -182,6 +185,32 @@ class ZeroManager private constructor() { } } + fun startWithdrawProcess(activity: Activity, item: ZeroBuyItem) { + val zeroWithdrawInfoItem = getZeroWithdrawItem(item) + + if (couldStartWithdraw(item)) { + val onConfirmed: (cashNum: Float)->Unit = { + + } + + if (AccountManager.isBankAccountExist()) { + WithdrawInfoConfirmDialog(activity, onConfirmed).setWithDrawCashNumStr(zeroWithdrawInfoItem.winCashNumStr!!).show() + } else { + WithdrawBindBankDialog(activity = activity, 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) + } + } + } + } + } diff --git a/app/src/main/res/layout/zero_record_win.xml b/app/src/main/res/layout/zero_record_win.xml index 8b2160d..5e3843d 100644 --- a/app/src/main/res/layout/zero_record_win.xml +++ b/app/src/main/res/layout/zero_record_win.xml @@ -111,6 +111,7 @@ android:layout_marginEnd="5dp" android:background="@mipmap/bg_record_lost_rgiht" android:gravity="center" + android:visibility="gone" > Converter notas Você resgatou %d moedas de ouro. + + Pendente + Processando + Falhou + Concluído \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 0633b57..22d3379 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -207,4 +207,11 @@ You have claimed this reward. + + Pending + Processing + Failed + Paid + + \ No newline at end of file