diff --git a/app/src/main/java/com/gamedog/vididin/features/withdraw/WithDrawSubActivity.kt b/app/src/main/java/com/gamedog/vididin/features/withdraw/WithDrawSubActivity.kt index 425e2af..c2d2401 100644 --- a/app/src/main/java/com/gamedog/vididin/features/withdraw/WithDrawSubActivity.kt +++ b/app/src/main/java/com/gamedog/vididin/features/withdraw/WithDrawSubActivity.kt @@ -3,16 +3,18 @@ package com.gamedog.vididin.features.withdraw import android.app.Activity import android.content.Intent import android.view.LayoutInflater +import androidx.core.view.isVisible import androidx.recyclerview.widget.LinearLayoutManager import com.ama.core.architecture.appBase.AppViewsEmptyViewModelActivity import com.ama.core.architecture.util.AndroidUtil import com.ama.core.architecture.util.CommonItemDecoration import com.ama.core.architecture.util.DateUtil -import com.ama.core.architecture.util.ResUtil import com.ama.core.architecture.util.setOnClickBatch import com.gamedog.vididin.VidiConst import com.gamedog.vididin.VididinEvents import com.gamedog.vididin.beans.WatchAdNotifyBean +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.WithdrawItemBean import com.gamedog.vididin.manager.WithdrawManager @@ -51,12 +53,12 @@ class WithDrawSubActivity : AppViewsEmptyViewModelActivity() { when(this) { flAction -> { when (mCurItem.subItemList[mSelectingIndex].withdrawState) { - 0 -> { + WithdrawManager.STATE_NEED_WATCH_AD -> { gotoWatchAd() } - 1 -> { - WithdrawInfoConfirmDialog(this@WithDrawSubActivity).show() + WithdrawManager.STATE_COULD_WITHDRAW -> { + tryRequestWithdraw() } } } @@ -64,6 +66,15 @@ class WithDrawSubActivity : AppViewsEmptyViewModelActivity() { } } + private fun tryRequestWithdraw() { + val subBean = mCurItem.subItemList[mSelectingIndex] + if (AccountManager.isBankAccountExist()) { + WithdrawInfoConfirmDialog(this@WithDrawSubActivity).setWithDrawCashNum(subBean.cashTotal).show() + } else { + WithdrawBindBankDialog(this@WithDrawSubActivity).setWithDrawCashNum(subBean.cashTotal).show() + } + } + private fun handleSubItemClicked(itemIndex: Int) { val mMaxDayIndex = DateUtil.getDaysPassed(mCurItem.startMs) if (itemIndex >= 0 && itemIndex <= mMaxDayIndex) { @@ -118,12 +129,13 @@ class WithDrawSubActivity : AppViewsEmptyViewModelActivity() { with(binding) { mAdapter.mSelectedSubIndex = mSelectingIndex mAdapter.submitList(mCurItem.subItemList) + mAdapter.notifyDataSetChanged() recyclerView.scrollToPosition(mSelectingIndex) tvCashTotal.text = mCurItem.totalCashNum.toString() progressBar.enableTouch(false) progressBar.setBarColor(forColor = R.color.green_ce) - progressBar.setProgress(mCurItem.subItemList[mSelectingIndex].currentProgress) + updateProgressUI() } } @@ -133,29 +145,29 @@ class WithDrawSubActivity : AppViewsEmptyViewModelActivity() { val curProgress = subBean.currentProgress progressBar.setProgress(curProgress) - tvAction.setCompoundDrawables(if (curProgress < 100) ResUtil.getDrawable(R.mipmap.task_video) else null, null, null, null) + ivAction.isVisible = curProgress < 100 if (curProgress < 100) { tvAction.setText(R.string.withdraw_cash_out) - tvAction.isClickable = true + flAction.isClickable = true flAction.alpha = 1F } else { var actionText = R.string.withdraw_cash_out when(subBean.withdrawState) { - 0 -> { + WithdrawManager.STATE_COULD_WITHDRAW -> { actionText = R.string.withdraw_cash_out - tvAction.isClickable = true + flAction.isClickable = true flAction.alpha = 1F } - 1 -> { + WithdrawManager.STATE_WITHDRAWING -> { actionText = R.string.pending - tvAction.isClickable = false + flAction.isClickable = false flAction.alpha = 0.6F } - 2 -> { + WithdrawManager.STATE_HAS_WITHDRAWED -> { actionText = R.string.withdraw_success - tvAction.isClickable = false + flAction.isClickable = false flAction.alpha = 0.6F } } diff --git a/app/src/main/java/com/gamedog/vididin/login/AccountManager.kt b/app/src/main/java/com/gamedog/vididin/login/AccountManager.kt index 0a051e3..bad52ca 100644 --- a/app/src/main/java/com/gamedog/vididin/login/AccountManager.kt +++ b/app/src/main/java/com/gamedog/vididin/login/AccountManager.kt @@ -130,6 +130,10 @@ object AccountManager { } } + fun isBankAccountExist(): Boolean { + return !mAccount?.bankInfo?.bankAccount.isNullOrEmpty() + } + } 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 f8806de..b8748d4 100644 --- a/app/src/main/java/com/gamedog/vididin/manager/WithdrawManager.kt +++ b/app/src/main/java/com/gamedog/vididin/manager/WithdrawManager.kt @@ -122,7 +122,7 @@ class WithdrawManager private constructor() { fun startItem(curItem: WithdrawItemBean) { if (curItem.startMs <= 0L) { - curItem.startMs = DateUtil.getCurTimeMs() + curItem.startMs = DateUtil.getCurTimeMs() - (if (curItem.totalCashNum == 50F) 24 * 3600000 * 4 else 0) saveInfos2Sp(mItemList) } } diff --git a/app/src/main/res/layout/activity_withdraw_sub.xml b/app/src/main/res/layout/activity_withdraw_sub.xml index ff0756f..edb3dd4 100644 --- a/app/src/main/res/layout/activity_withdraw_sub.xml +++ b/app/src/main/res/layout/activity_withdraw_sub.xml @@ -1,5 +1,6 @@ @@ -182,17 +183,29 @@ android:layout_gravity="center_horizontal" android:layout_marginTop="5dp" android:padding="12dp"> - + android:orientation="horizontal"> + + +