From 0f1a88e087c3bc0f8264df5a38b884f49420a4c1 Mon Sep 17 00:00:00 2001 From: renhaoting <370797079@qq.com> Date: Fri, 26 Dec 2025 12:01:49 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=200=E5=85=83=E8=B4=AD?= =?UTF-8?q?=E8=AE=B0=E5=BD=95=E5=88=B0=20cash=E8=AE=B0=E5=BD=95=E3=80=82?= =?UTF-8?q?=20=E9=A2=9D=E5=A4=96=E5=A2=9E=E5=8A=A0=20=E6=80=BB=E9=99=88?= =?UTF-8?q?=E5=B7=A5=E6=8F=90=E7=8E=B0=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/gamedog/vididin/beans/RecordCash.kt | 1 + .../vididin/manager/WithdrawManager.kt | 5 +++ .../gamedog/vididin/manager/ZeroManager.kt | 44 ++++++++++++++++--- app/src/main/res/layout/activity_withdraw.xml | 2 + 4 files changed, 46 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/com/gamedog/vididin/beans/RecordCash.kt b/app/src/main/java/com/gamedog/vididin/beans/RecordCash.kt index 1ff1540..291a725 100644 --- a/app/src/main/java/com/gamedog/vididin/beans/RecordCash.kt +++ b/app/src/main/java/com/gamedog/vididin/beans/RecordCash.kt @@ -11,6 +11,7 @@ const val RECORD_CASH_PLUS_BOX_TASK: Int = 2 const val RECORD_CASH_PLUS_WITHDRAW_ONGOING: Int = 3 const val RECORD_CASH_PLUS_WITHDRAW_FAIL: Int = 4 const val RECORD_CASH_MINUS_WITHDRAW_SUCCESS: Int = 5 +const val RECORD_CASH_ZERO_WITHDRAW_SUCCESS: Int = 6 abstract class BaseRecord { var dateMs: Long = DateUtil.getCurTimeMs() diff --git a/app/src/main/java/com/gamedog/vididin/manager/WithdrawManager.kt b/app/src/main/java/com/gamedog/vididin/manager/WithdrawManager.kt index c7acb65..e3260c3 100644 --- a/app/src/main/java/com/gamedog/vididin/manager/WithdrawManager.kt +++ b/app/src/main/java/com/gamedog/vididin/manager/WithdrawManager.kt @@ -5,6 +5,7 @@ import com.ama.core.architecture.util.DateUtil import com.ama.core.architecture.util.DeviceUtil import com.ama.core.architecture.util.MD5Util import com.ama.core.architecture.util.NetUtil +import com.ama.core.architecture.util.ResUtil import com.ama.core.architecture.util.SpUtil import com.ama.core.architecture.util.eventbus.NotifyMan import com.gamedog.vididin.VidiConst @@ -128,6 +129,10 @@ class WithdrawManager private constructor() { count += record.cashNum } } + + // extra withdraw count from zeroBuy + count += ZeroManager.instance().getZeroHasWithdrawSuccessCashCount() + return count } 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 6c67d7e..a33e742 100644 --- a/app/src/main/java/com/gamedog/vididin/manager/ZeroManager.kt +++ b/app/src/main/java/com/gamedog/vididin/manager/ZeroManager.kt @@ -4,6 +4,7 @@ import android.app.Activity import android.os.Handler import android.os.Looper import com.ama.core.architecture.util.AndroidUtil +import com.ama.core.architecture.util.DateUtil import com.ama.core.architecture.util.DeviceUtil import com.ama.core.architecture.util.MD5Util import com.ama.core.architecture.util.SpUtil @@ -11,6 +12,8 @@ import com.ama.core.architecture.util.eventbus.NotifyMan import com.gamedog.vididin.VidiConst import com.gamedog.vididin.VidiConst.ZEROBUY_SECRET import com.gamedog.vididin.VididinEvents +import com.gamedog.vididin.beans.RECORD_CASH_ZERO_WITHDRAW_SUCCESS +import com.gamedog.vididin.beans.RecordCash import com.gamedog.vididin.beans.ZeroBuyItem import com.gamedog.vididin.beans.ZeroBuyWithdrawResp import com.gamedog.vididin.core.login.login.AccountManager @@ -66,10 +69,10 @@ class ZeroManager private constructor() { private fun saveWinWithdrawInfos() { SpUtil.instance().putList(SpUtil.KEY_ZEROBUY_WIN_ITEMS, mRecordList) - notifyChangeUpdate() + notifyWithdrawListChanged() } - private fun notifyChangeUpdate() { + private fun notifyWithdrawListChanged() { NotifyMan.instance().sendEvent(VididinEvents.EVENT_ZERO_WITHDRAW_LIST_CHANGED, null) } @@ -235,12 +238,11 @@ class ZeroManager private constructor() { respObj?.let { if (it.code == 0) { - zeroWithdrawItem.orderId = respObj.content zeroWithdrawItem.withdrawState = TRANSACTION_STATE_SUCCESS + zeroWithdrawItem.operateMs = DateUtil.getCurTimeMs() saveWinWithdrawInfos() - - notifyChangeUpdate() - AndroidUtil.showToast(R.string.zero_withdraw_ongoing) + notifyWithdrawListChanged() + saveSuccessWithdraw2CashRecord(zeroWithdrawItem) return@launch } } @@ -255,6 +257,19 @@ class ZeroManager private constructor() { } } + private fun saveSuccessWithdraw2CashRecord(withdrawItem: WinZeroWithdrawInfoItem) { + var withdrawCashNum = 0.0 + try { + if (withdrawItem.winCashNumStr.startsWith("R$") && withdrawItem.winCashNumStr.length > "R$".length) { + withdrawCashNum = withdrawItem.winCashNumStr.substring("R$".length).toDouble() + } + } catch (e: Exception) { + e.printStackTrace() + } + + RecordsManager.instance().appendCashRecord(RecordCash(RECORD_CASH_ZERO_WITHDRAW_SUCCESS, withdrawCashNum, true)) + } + fun startWithdrawProcess(activity: Activity, item: ZeroBuyItem) { val zeroWithdrawInfoItem = getZeroWithdrawItem(item) @@ -325,6 +340,23 @@ class ZeroManager private constructor() { } } + fun getZeroHasWithdrawSuccessCashCount(): Float { + var withdrawSuccessCount = 0F + mRecordList.forEach { + try { + val withdrawItem = it + if (withdrawItem.withdrawState == TRANSACTION_STATE_SUCCESS + && withdrawItem.winCashNumStr.startsWith("R$") + && withdrawItem.winCashNumStr.length > "R$".length) { + withdrawSuccessCount += withdrawItem.winCashNumStr.substring("R$".length).toFloat() + } + } catch (e: Exception) { + + } + } + return withdrawSuccessCount + } + } diff --git a/app/src/main/res/layout/activity_withdraw.xml b/app/src/main/res/layout/activity_withdraw.xml index 5653e3a..14b83f9 100644 --- a/app/src/main/res/layout/activity_withdraw.xml +++ b/app/src/main/res/layout/activity_withdraw.xml @@ -64,7 +64,9 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="14sp" + android:textStyle="bold" android:textColor="@color/black_13" + android:layout_marginStart="3dp" />