【买量】游戏中没有区分买量和非买量的小额提现规则
This commit is contained in:
parent
68d4bc2948
commit
1995e0b43f
|
|
@ -56,7 +56,7 @@ object VididinEvents {
|
||||||
const val EVENT_WITHDRAW_SELECTED_SUB_ITEM_CHANGED = 501
|
const val EVENT_WITHDRAW_SELECTED_SUB_ITEM_CHANGED = 501
|
||||||
const val EVENT_WITHDRAW_RESULT_UPDATED = 502
|
const val EVENT_WITHDRAW_RESULT_UPDATED = 502
|
||||||
const val EVENT_WITHDRAW_ITEM_LIST_CHANGED = 503
|
const val EVENT_WITHDRAW_ITEM_LIST_CHANGED = 503
|
||||||
const val EVENT_WITHDRAW_BANK_ACCOUNT_CHANGED = 504
|
const val EVENT_WITHDRAW_SMALL_AD_FINISHED = 504
|
||||||
|
|
||||||
|
|
||||||
// zero withdraw events
|
// zero withdraw events
|
||||||
|
|
|
||||||
|
|
@ -184,7 +184,7 @@ class WatchAdActivity : AppViewsEmptyViewModelActivity<ViewBinding>(), OnTabStyl
|
||||||
if (TestingManager.instance().isRewardAdDisable()) {
|
if (TestingManager.instance().isRewardAdDisable()) {
|
||||||
lifecycleScope.launch {
|
lifecycleScope.launch {
|
||||||
delay(2000)
|
delay(2000)
|
||||||
mRewardedDollarNum = 0.5
|
mRewardedDollarNum = 0.02
|
||||||
notifyAdWatchFinish()
|
notifyAdWatchFinish()
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|
|
||||||
|
|
@ -19,6 +19,7 @@ import com.gamedog.vididin.VidiConst
|
||||||
import com.viddin.videos.free.R
|
import com.viddin.videos.free.R
|
||||||
import com.gamedog.vididin.VididinEvents
|
import com.gamedog.vididin.VididinEvents
|
||||||
import com.gamedog.vididin.beans.RecordCash
|
import com.gamedog.vididin.beans.RecordCash
|
||||||
|
import com.gamedog.vididin.beans.WatchAdNotifyBean
|
||||||
import com.gamedog.vididin.core.login.login.AccountManager
|
import com.gamedog.vididin.core.login.login.AccountManager
|
||||||
import com.gamedog.vididin.features.withdraw.dialogs.WithdrawBindBankDialog
|
import com.gamedog.vididin.features.withdraw.dialogs.WithdrawBindBankDialog
|
||||||
import com.gamedog.vididin.features.withdraw.dialogs.WithdrawFailDialog
|
import com.gamedog.vididin.features.withdraw.dialogs.WithdrawFailDialog
|
||||||
|
|
@ -28,6 +29,7 @@ import com.gamedog.vididin.features.withdraw.dialogs.WithdrawWatchAdDialog
|
||||||
import com.gamedog.vididin.features.withdraw.widget.WithDrawItemView
|
import com.gamedog.vididin.features.withdraw.widget.WithDrawItemView
|
||||||
import com.gamedog.vididin.manager.GuideManager
|
import com.gamedog.vididin.manager.GuideManager
|
||||||
import com.gamedog.vididin.manager.TaskManager
|
import com.gamedog.vididin.manager.TaskManager
|
||||||
|
import com.gamedog.vididin.manager.WithdrawItem
|
||||||
import com.gamedog.vididin.manager.WithdrawManager
|
import com.gamedog.vididin.manager.WithdrawManager
|
||||||
import com.gamedog.vididin.manager.WithdrawManager.Companion.STATE_COULD_WITHDRAW
|
import com.gamedog.vididin.manager.WithdrawManager.Companion.STATE_COULD_WITHDRAW
|
||||||
import com.gamedog.vididin.manager.WithdrawManager.Companion.STATE_WITHDRAW_SUCCESS
|
import com.gamedog.vididin.manager.WithdrawManager.Companion.STATE_WITHDRAW_SUCCESS
|
||||||
|
|
@ -160,7 +162,7 @@ class WithDrawActivity : AppViewsEmptyViewModelActivity<ViewBinding>() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun udpateItemListUI() {
|
private fun updateItemListUI() {
|
||||||
mItemViewList.forEach {
|
mItemViewList.forEach {
|
||||||
it.updateProgressAndButUI()
|
it.updateProgressAndButUI()
|
||||||
}
|
}
|
||||||
|
|
@ -180,8 +182,9 @@ class WithDrawActivity : AppViewsEmptyViewModelActivity<ViewBinding>() {
|
||||||
}
|
}
|
||||||
|
|
||||||
VididinEvents.EVENT_AD_WATCHED_FOR_WITHDRAW_SMALL -> {
|
VididinEvents.EVENT_AD_WATCHED_FOR_WITHDRAW_SMALL -> {
|
||||||
WithdrawManager.instance().saveSmallWithdrawHasWatchedAd()
|
val adNotifyBean = data.mData as WatchAdNotifyBean<Double>
|
||||||
handleGotoWithdraw(0)
|
WithdrawManager.instance().addAdEarnForSubBean(0, 0,
|
||||||
|
adNotifyBean.earnMoneyNum * VidiConst.WITHDRAW_REWARD_AD_REVENUE_PERCENT)
|
||||||
}
|
}
|
||||||
|
|
||||||
VididinEvents.EVENT_WITHDRAW_RESULT_UPDATED -> {
|
VididinEvents.EVENT_WITHDRAW_RESULT_UPDATED -> {
|
||||||
|
|
@ -198,19 +201,29 @@ class WithDrawActivity : AppViewsEmptyViewModelActivity<ViewBinding>() {
|
||||||
}
|
}
|
||||||
|
|
||||||
VididinEvents.EVENT_WITHDRAW_ITEM_LIST_CHANGED -> {
|
VididinEvents.EVENT_WITHDRAW_ITEM_LIST_CHANGED -> {
|
||||||
udpateItemListUI()
|
updateItemListUI()
|
||||||
}
|
}
|
||||||
|
|
||||||
VididinEvents.EVENT_BANK_INFO_CHANGED -> {
|
VididinEvents.EVENT_BANK_INFO_CHANGED -> {
|
||||||
withdrawPix2.updateBankAccountInfo()
|
withdrawPix2.updateBankAccountInfo()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
VididinEvents.EVENT_WITHDRAW_SUB_ITEM_PROGRESS_UPDATED -> {
|
||||||
|
updateItemListUI()
|
||||||
|
}
|
||||||
|
|
||||||
|
VididinEvents.EVENT_WITHDRAW_SMALL_AD_FINISHED -> {
|
||||||
|
handleGotoWithdraw(0)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}, VididinEvents.Event_Account_Cash_Changed,
|
}, VididinEvents.Event_Account_Cash_Changed,
|
||||||
VididinEvents.EVENT_AD_WATCHED_FOR_WITHDRAW_SMALL,
|
VididinEvents.EVENT_AD_WATCHED_FOR_WITHDRAW_SMALL,
|
||||||
VididinEvents.EVENT_WITHDRAW_RESULT_UPDATED,
|
VididinEvents.EVENT_WITHDRAW_RESULT_UPDATED,
|
||||||
VididinEvents.EVENT_WITHDRAW_ITEM_LIST_CHANGED,
|
VididinEvents.EVENT_WITHDRAW_ITEM_LIST_CHANGED,
|
||||||
VididinEvents.EVENT_BANK_INFO_CHANGED)
|
VididinEvents.EVENT_BANK_INFO_CHANGED,
|
||||||
|
VididinEvents.EVENT_WITHDRAW_SUB_ITEM_PROGRESS_UPDATED,
|
||||||
|
VididinEvents.EVENT_WITHDRAW_SMALL_AD_FINISHED)
|
||||||
|
|
||||||
readTransactionsAndShowResult()
|
readTransactionsAndShowResult()
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,14 @@
|
||||||
package com.gamedog.vididin.features.withdraw.widget
|
package com.gamedog.vididin.features.withdraw.widget
|
||||||
|
|
||||||
|
import android.accounts.AccountManager
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
import android.util.AttributeSet
|
import android.util.AttributeSet
|
||||||
import android.view.LayoutInflater
|
import android.view.LayoutInflater
|
||||||
import android.widget.LinearLayout
|
import android.widget.LinearLayout
|
||||||
import com.ama.core.architecture.util.ResUtil
|
import com.ama.core.architecture.util.ResUtil
|
||||||
|
import com.ama.core.architecture.util.SpUtil
|
||||||
import com.ama.core.architecture.util.setOnClickBatch
|
import com.ama.core.architecture.util.setOnClickBatch
|
||||||
|
import com.gamedog.statisticreporter.adjust.SpHelper.Companion.KEY_USER_FROM_TYPE
|
||||||
import com.gamedog.vididin.manager.WithdrawManager
|
import com.gamedog.vididin.manager.WithdrawManager
|
||||||
import com.gamedog.vididin.manager.WithdrawManager.Companion.STATE_WITHDRAWING
|
import com.gamedog.vididin.manager.WithdrawManager.Companion.STATE_WITHDRAWING
|
||||||
import com.viddin.videos.free.R
|
import com.viddin.videos.free.R
|
||||||
|
|
@ -55,6 +58,10 @@ class WithDrawItemView @JvmOverloads constructor(
|
||||||
fun updateProgressAndButUI() {
|
fun updateProgressAndButUI() {
|
||||||
var itemProgress = WithdrawManager.instance().getItemProgress(mItemIndex) * 100
|
var itemProgress = WithdrawManager.instance().getItemProgress(mItemIndex) * 100
|
||||||
|
|
||||||
|
/*if (mItemIndex == 0 && SpUtil.instance().getInt(KEY_USER_FROM_TYPE) == 2 && itemProgress > 0) {
|
||||||
|
itemProgress = 100.0
|
||||||
|
}*/
|
||||||
|
|
||||||
with(mBinding) {
|
with(mBinding) {
|
||||||
progressBar.setProgress(itemProgress.toInt())
|
progressBar.setProgress(itemProgress.toInt())
|
||||||
tvProgress.text = String.format("%.2f", itemProgress) + ResUtil.getString(R.string.percent)
|
tvProgress.text = String.format("%.2f", itemProgress) + ResUtil.getString(R.string.percent)
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,7 @@ import com.ama.core.architecture.util.NetUtil
|
||||||
import com.ama.core.architecture.util.SpUtil
|
import com.ama.core.architecture.util.SpUtil
|
||||||
import com.ama.core.architecture.util.eventbus.NotifyMan
|
import com.ama.core.architecture.util.eventbus.NotifyMan
|
||||||
import com.gamedog.statisticreporter.StatisticUtil
|
import com.gamedog.statisticreporter.StatisticUtil
|
||||||
|
import com.gamedog.statisticreporter.adjust.SpHelper.Companion.KEY_USER_FROM_TYPE
|
||||||
import com.gamedog.vididin.VidiConst
|
import com.gamedog.vididin.VidiConst
|
||||||
import com.gamedog.vididin.VididinEvents
|
import com.gamedog.vididin.VididinEvents
|
||||||
import com.gamedog.vididin.beans.RECORD_CASH_WITHDRAW
|
import com.gamedog.vididin.beans.RECORD_CASH_WITHDRAW
|
||||||
|
|
@ -21,7 +22,6 @@ import com.gamedog.vididin.core.login.login.AccountManager
|
||||||
import com.gamedog.vididin.manager.WithdrawManager.Companion.STATE_NEED_WATCH_AD
|
import com.gamedog.vididin.manager.WithdrawManager.Companion.STATE_NEED_WATCH_AD
|
||||||
import com.gamedog.vididin.netbase.NetworkUtil
|
import com.gamedog.vididin.netbase.NetworkUtil
|
||||||
import com.gamedog.vididin.netbase.Result
|
import com.gamedog.vididin.netbase.Result
|
||||||
import com.mbridge.msdk.thrid.okhttp.internal.http2.c
|
|
||||||
import com.viddin.videos.free.R
|
import com.viddin.videos.free.R
|
||||||
import kotlinx.coroutines.CoroutineScope
|
import kotlinx.coroutines.CoroutineScope
|
||||||
import kotlinx.coroutines.Dispatchers
|
import kotlinx.coroutines.Dispatchers
|
||||||
|
|
@ -116,7 +116,7 @@ class WithdrawManager private constructor() {
|
||||||
|
|
||||||
private fun generateItemList(): MutableList<WithdrawItem> {
|
private fun generateItemList(): MutableList<WithdrawItem> {
|
||||||
val itemList = mutableListOf<WithdrawItem>()
|
val itemList = mutableListOf<WithdrawItem>()
|
||||||
itemList.add(WithdrawItem(0, 0.1, 100, generateSmallItemList(), isBigWithDraw = false))
|
itemList.add(WithdrawItem(0, 0.1, 0, generateSmallItemList(), isBigWithDraw = false))
|
||||||
itemList.add(WithdrawItem(1, 1.0, AndroidUtil.randomInt(50, 70), generateSubItemList(1.0)))
|
itemList.add(WithdrawItem(1, 1.0, AndroidUtil.randomInt(50, 70), generateSubItemList(1.0)))
|
||||||
itemList.add(WithdrawItem(2, 10.0, AndroidUtil.randomInt(50, 70), generateSubItemList(10.0)))
|
itemList.add(WithdrawItem(2, 10.0, AndroidUtil.randomInt(50, 70), generateSubItemList(10.0)))
|
||||||
itemList.add(WithdrawItem(3, 20.0, AndroidUtil.randomInt(50, 70), generateSubItemList(20.0)))
|
itemList.add(WithdrawItem(3, 20.0, AndroidUtil.randomInt(50, 70), generateSubItemList(20.0)))
|
||||||
|
|
@ -139,7 +139,7 @@ class WithdrawManager private constructor() {
|
||||||
|
|
||||||
private fun generateSmallItemList(): List<WithdrawSubItem> {
|
private fun generateSmallItemList(): List<WithdrawSubItem> {
|
||||||
val subItemList = mutableListOf<WithdrawSubItem>()
|
val subItemList = mutableListOf<WithdrawSubItem>()
|
||||||
subItemList.add(WithdrawSubItem(0, 0.1, 100, 100F, 0.1))
|
subItemList.add(WithdrawSubItem(0, 0.1, 0, 0F, 0.0))
|
||||||
return subItemList
|
return subItemList
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -194,18 +194,29 @@ class WithdrawManager private constructor() {
|
||||||
|
|
||||||
private fun calculateSubBeanProgress(subBean: WithdrawSubItem) {
|
private fun calculateSubBeanProgress(subBean: WithdrawSubItem) {
|
||||||
val needEarnProgress = 100 - subBean.startAdProgress
|
val needEarnProgress = 100 - subBean.startAdProgress
|
||||||
if (subBean.hasEarnMoneyByAd >= subBean.cashTotal) {
|
if (subBean.hasEarnMoneyByAd >= subBean.cashTotal || buyUserHasWatchedSmallWithdrawAd(subBean)) {
|
||||||
subBean.currentAdProgress = 100F
|
subBean.currentAdProgress = 100F
|
||||||
// update state
|
// update state
|
||||||
if (subBean.withdrawState == STATE_NEED_WATCH_AD) {
|
if (subBean.withdrawState == STATE_NEED_WATCH_AD) {
|
||||||
subBean.withdrawState = STATE_COULD_WITHDRAW
|
subBean.withdrawState = STATE_COULD_WITHDRAW
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (subBean.cashTotal < 1) {
|
||||||
|
NotifyMan.instance().sendEvent(VididinEvents.EVENT_WITHDRAW_SMALL_AD_FINISHED, null)
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
val newProgress = subBean.startAdProgress + (needEarnProgress * (subBean.hasEarnMoneyByAd / subBean.cashTotal)).toFloat()
|
val newProgress = subBean.startAdProgress + (needEarnProgress * (subBean.hasEarnMoneyByAd / subBean.cashTotal)).toFloat()
|
||||||
subBean.currentAdProgress = if (newProgress >= 100F) 100F else newProgress
|
subBean.currentAdProgress = if (newProgress >= 100F) 100F else newProgress
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun buyUserHasWatchedSmallWithdrawAd(subBean: WithdrawSubItem) : Boolean {
|
||||||
|
if (subBean.cashTotal < 1.0 && SpUtil.instance().getInt(KEY_USER_FROM_TYPE) == 2) {
|
||||||
|
return subBean.hasEarnMoneyByAd > 0.0
|
||||||
|
}
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
|
||||||
fun updateSubBeanState(subBean: WithdrawSubItem, newState: Int) {
|
fun updateSubBeanState(subBean: WithdrawSubItem, newState: Int) {
|
||||||
subBean.withdrawState = newState
|
subBean.withdrawState = newState
|
||||||
saveInfos2Sp(mWithdrawItemList)
|
saveInfos2Sp(mWithdrawItemList)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue