From 1aea476277fe3c12fe569f42e29cdb7ea84b9f4e Mon Sep 17 00:00:00 2001 From: renhaoting <370797079@qq.com> Date: Mon, 22 Dec 2025 17:12:54 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BC=80=E5=90=AF=E5=8F=96=E7=8E=B0item?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E5=90=8E=EF=BC=8C=E4=BA=8B=E4=BB=B6=E9=80=9A?= =?UTF-8?q?=E7=9F=A5=E5=8F=8A=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/gamedog/vididin/VididinEvents.kt | 1 + .../features/withdraw/WithDrawActivity.kt | 19 +++++++++++++++++-- .../vididin/manager/WithdrawManager.kt | 18 ++++++++++++++++++ 3 files changed, 36 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/com/gamedog/vididin/VididinEvents.kt b/app/src/main/java/com/gamedog/vididin/VididinEvents.kt index 9a5ba6d..a233a3d 100644 --- a/app/src/main/java/com/gamedog/vididin/VididinEvents.kt +++ b/app/src/main/java/com/gamedog/vididin/VididinEvents.kt @@ -48,6 +48,7 @@ object VididinEvents { const val EVENT_WITHDRAW_SUB_ITEM_PROGRESS_UPDATED = 500 const val EVENT_WITHDRAW_SELECTED_SUB_ITEM_CHANGED = 501 const val EVENT_WITHDRAW_CHECK_RESULT_UPDATED = 502 + const val EVENT_WITHDRAW_ITEM_LIST_CHANGED = 503 } \ No newline at end of file diff --git a/app/src/main/java/com/gamedog/vididin/features/withdraw/WithDrawActivity.kt b/app/src/main/java/com/gamedog/vididin/features/withdraw/WithDrawActivity.kt index 811e18f..f7e137f 100644 --- a/app/src/main/java/com/gamedog/vididin/features/withdraw/WithDrawActivity.kt +++ b/app/src/main/java/com/gamedog/vididin/features/withdraw/WithDrawActivity.kt @@ -122,7 +122,10 @@ class WithDrawActivity : AppViewsEmptyViewModelActivity() { if (!hasBindBank) { WithdrawBindBankDialog(this@WithDrawActivity, { cashNum -> requestInit(cashNum) }).setWithDrawCashNum(cashNum).show() } else { - WithdrawInfoConfirmDialog(this@WithDrawActivity, { cashNum -> requestInit(cashNum) }).setWithDrawCashNum(cashNum).show() + WithdrawInfoConfirmDialog(this@WithDrawActivity, { + cashNum -> requestInit(cashNum) + WithdrawManager.instance().setItemStarted(0) + }).setWithDrawCashNum(cashNum).show() } } } @@ -136,6 +139,12 @@ class WithDrawActivity : AppViewsEmptyViewModelActivity() { } } + private fun udpateItemListUI() { + mItemViewList.forEach { + it.updateProgressAndButUI() + } + } + override fun ViewBinding.initListeners() { registerEvents({ data-> @@ -161,11 +170,16 @@ class WithDrawActivity : AppViewsEmptyViewModelActivity() { e.printStackTrace() } } + + VididinEvents.EVENT_WITHDRAW_ITEM_LIST_CHANGED -> { + udpateItemListUI() + } } }, VididinEvents.Event_Account_Cash_Changed, VididinEvents.EVENT_AD_WATCHED_FOR_WITHDRAW_SMALL, - VididinEvents.EVENT_WITHDRAW_CHECK_RESULT_UPDATED,) + VididinEvents.EVENT_WITHDRAW_CHECK_RESULT_UPDATED, + VididinEvents.EVENT_WITHDRAW_ITEM_LIST_CHANGED) readTransactionsAndShowResult() @@ -287,6 +301,7 @@ class WithDrawActivity : AppViewsEmptyViewModelActivity() { private fun gotoWithdrawSubActivity(selectedIndex: Int) { Router.WithdrawSub.startActivity(this, selectedIndex) + WithdrawManager.instance().setItemStarted(selectedIndex) } 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 7905cee..e1c9a45 100644 --- a/app/src/main/java/com/gamedog/vididin/manager/WithdrawManager.kt +++ b/app/src/main/java/com/gamedog/vididin/manager/WithdrawManager.kt @@ -169,6 +169,11 @@ class WithdrawManager private constructor() { NotifyMan.instance().sendEvent(VididinEvents.EVENT_WITHDRAW_SELECTED_SUB_ITEM_CHANGED, NotifyMan.NotifyData(subBean.index)) } + private fun notifyItemListChanged() { + NotifyMan.instance().sendEvent(VididinEvents.EVENT_WITHDRAW_ITEM_LIST_CHANGED, null) + } + + private fun calculateSubBeanProgress(subBean: WithdrawSubItem) { val needEarnProgress = 100 - subBean.startProgress if (subBean.hasEarnMoneyByAd >= subBean.cashTotal) { @@ -472,6 +477,19 @@ class WithdrawManager private constructor() { return itemProgress } + fun setItemStarted(itemIndex: Int) { + if (itemIndex in 0..mItemList.size-1) { + val curItem = mItemList[itemIndex] + if (!curItem.hasStarted) { + curItem.hasStarted = true + curItem.startMs = System.currentTimeMillis() + + saveInfos2Sp(mItemList) + notifyItemListChanged() + } + } + } + }