box跳转 / 事件
This commit is contained in:
parent
929a95ed9c
commit
9189b845ef
|
|
@ -16,6 +16,8 @@ object VididinEvents {
|
||||||
const val EVENT_DAILY_WATCHED_VIDEO_NUM_CHANGED = 705
|
const val EVENT_DAILY_WATCHED_VIDEO_NUM_CHANGED = 705
|
||||||
const val EVENT_DAILY_WATCHED_AD_NUM_CHANGED = 706
|
const val EVENT_DAILY_WATCHED_AD_NUM_CHANGED = 706
|
||||||
|
|
||||||
|
const val EVENT_BOX_TASK_STATE_CHANGED = 707
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
const val Event_AD_TASK_TYPE_Convert_Gold_2_Cash = 800
|
const val Event_AD_TASK_TYPE_Convert_Gold_2_Cash = 800
|
||||||
|
|
@ -30,6 +32,7 @@ object VididinEvents {
|
||||||
|
|
||||||
// UI jump related
|
// UI jump related
|
||||||
const val EVENT_JUMP_2_FIRST_WITHDRAW = 900
|
const val EVENT_JUMP_2_FIRST_WITHDRAW = 900
|
||||||
const val EVENT_JUMP_2_SIGN = 901
|
const val EVENT_JUMP_2_VIDEO = 901
|
||||||
|
const val EVENT_JUMP_2_SIGN= 902
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
@ -9,9 +9,11 @@ import android.widget.LinearLayout
|
||||||
import androidx.activity.viewModels
|
import androidx.activity.viewModels
|
||||||
import com.ama.core.architecture.appBase.AppViewsActivity
|
import com.ama.core.architecture.appBase.AppViewsActivity
|
||||||
import com.ama.core.architecture.util.ResUtil
|
import com.ama.core.architecture.util.ResUtil
|
||||||
|
import com.ama.core.architecture.util.eventbus.NotifyMan
|
||||||
import com.gamedog.vididin.R
|
import com.gamedog.vididin.R
|
||||||
import com.gamedog.vididin.VididinEvents
|
import com.gamedog.vididin.VididinEvents
|
||||||
import com.gamedog.vididin.features.benefit.widget.BenefitTaskItemView
|
import com.gamedog.vididin.features.benefit.widget.BenefitTaskItemView
|
||||||
|
import com.gamedog.vididin.main.fragments.task.DailySignDialog
|
||||||
import com.gamedog.vididin.main.interfaces.OnTabStyleListener
|
import com.gamedog.vididin.main.interfaces.OnTabStyleListener
|
||||||
import com.gamedog.vididin.manager.TaskManager
|
import com.gamedog.vididin.manager.TaskManager
|
||||||
import com.gamedog.vididin.manager.TaskManager.Companion.BOX_SUB_TASK_TYPE_AD
|
import com.gamedog.vididin.manager.TaskManager.Companion.BOX_SUB_TASK_TYPE_AD
|
||||||
|
|
@ -48,8 +50,16 @@ class BenefitActivity : AppViewsActivity<ViewBinding, UiState, ViewModel>(), OnT
|
||||||
initViewsByTaskState()
|
initViewsByTaskState()
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun ViewBinding.initListeners() {
|
|
||||||
|
|
||||||
|
|
||||||
|
override fun ViewBinding.initListeners() {
|
||||||
|
registerEvents({ data->
|
||||||
|
when (data?.mEventType) {
|
||||||
|
VididinEvents.EVENT_BOX_TASK_STATE_CHANGED -> {
|
||||||
|
updateUI()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, VididinEvents.EVENT_BOX_TASK_STATE_CHANGED)
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun ViewBinding.initObservers() {
|
override fun ViewBinding.initObservers() {
|
||||||
|
|
@ -71,6 +81,11 @@ class BenefitActivity : AppViewsActivity<ViewBinding, UiState, ViewModel>(), OnT
|
||||||
updateTopBoxesUI()
|
updateTopBoxesUI()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun updateUI() {
|
||||||
|
updateSubTasksUI()
|
||||||
|
updateTopBoxesUI()
|
||||||
|
}
|
||||||
|
|
||||||
private fun initAddSubTaskViews() {
|
private fun initAddSubTaskViews() {
|
||||||
val taskStateHelper = TaskManager.instance().boxTaskStatus()
|
val taskStateHelper = TaskManager.instance().boxTaskStatus()
|
||||||
val currentBoxState = taskStateHelper.getStatusBean().tasks[taskStateHelper.getCurrentBoxIndex()]
|
val currentBoxState = taskStateHelper.getStatusBean().tasks[taskStateHelper.getCurrentBoxIndex()]
|
||||||
|
|
@ -98,11 +113,12 @@ class BenefitActivity : AppViewsActivity<ViewBinding, UiState, ViewModel>(), OnT
|
||||||
}
|
}
|
||||||
|
|
||||||
BOX_SUB_TASK_TYPE_SIGN -> {
|
BOX_SUB_TASK_TYPE_SIGN -> {
|
||||||
// TODO -
|
DailySignDialog(this@BenefitActivity).show()
|
||||||
}
|
}
|
||||||
|
|
||||||
BOX_SUB_TASK_TYPE_VIDEO -> {
|
BOX_SUB_TASK_TYPE_VIDEO -> {
|
||||||
|
finish()
|
||||||
|
NotifyMan.instance().sendEvent(VididinEvents.EVENT_JUMP_2_VIDEO, null)
|
||||||
}
|
}
|
||||||
|
|
||||||
BOX_SUB_TASK_TYPE_ZERO_BUY -> {
|
BOX_SUB_TASK_TYPE_ZERO_BUY -> {
|
||||||
|
|
@ -110,7 +126,6 @@ class BenefitActivity : AppViewsActivity<ViewBinding, UiState, ViewModel>(), OnT
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
finish()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun updateSubTasksUI() {
|
private fun updateSubTasksUI() {
|
||||||
|
|
|
||||||
|
|
@ -117,9 +117,13 @@ class MainActivity : AppViewsActivity<ViewBinding, UiState, ViewModel>(), OnTabS
|
||||||
VididinEvents.Event_AD_TASK_TYPE_Watch_Ad_Earn_Gold-> {
|
VididinEvents.Event_AD_TASK_TYPE_Watch_Ad_Earn_Gold-> {
|
||||||
DailySignSuccessDialog(this@MainActivity).initData(VidiConst.WATCH_AD_REWARD_GOLD.toInt(), false).show()
|
DailySignSuccessDialog(this@MainActivity).initData(VidiConst.WATCH_AD_REWARD_GOLD.toInt(), false).show()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
VididinEvents.EVENT_JUMP_2_VIDEO-> {
|
||||||
|
switchTab(0)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}, VididinEvents.Event_AD_TASK_TYPE_Watch_Ad_Earn_Gold)
|
}, VididinEvents.Event_AD_TASK_TYPE_Watch_Ad_Earn_Gold, VididinEvents.EVENT_JUMP_2_VIDEO)
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun ViewBinding.initObservers() {
|
override fun ViewBinding.initObservers() {
|
||||||
|
|
|
||||||
|
|
@ -34,6 +34,7 @@ import com.gamedog.vididin.manager.taskbeans.BaseTaskState.Companion.STATE_FINIS
|
||||||
import com.gamedog.vididin.manager.taskbeans.BaseTaskState.Companion.STATE_ONGOING
|
import com.gamedog.vididin.manager.taskbeans.BaseTaskState.Companion.STATE_ONGOING
|
||||||
import com.gamedog.vididin.router.Router
|
import com.gamedog.vididin.router.Router
|
||||||
import dagger.hilt.android.AndroidEntryPoint
|
import dagger.hilt.android.AndroidEntryPoint
|
||||||
|
import kotlinx.coroutines.Runnable
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
import kotlin.getValue
|
import kotlin.getValue
|
||||||
import com.gamedog.vididin.databinding.VididinappFeatureMessageFragmentMessageBinding as ViewBinding
|
import com.gamedog.vididin.databinding.VididinappFeatureMessageFragmentMessageBinding as ViewBinding
|
||||||
|
|
@ -252,8 +253,12 @@ class TasksFragment : AppViewsFragment<ViewBinding, UiState, ViewModel>(), OnTab
|
||||||
}
|
}
|
||||||
|
|
||||||
VididinEvents.EVENT_JUMP_2_FIRST_WITHDRAW -> {
|
VididinEvents.EVENT_JUMP_2_FIRST_WITHDRAW -> {
|
||||||
|
binding?.newbieContainer?.postDelayed(object : Runnable {
|
||||||
|
override fun run() {
|
||||||
scroll2FirstWithdraw()
|
scroll2FirstWithdraw()
|
||||||
}
|
}
|
||||||
|
},1000)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}, VididinEvents.Event_Sign_State_Changed, VididinEvents.Event_Account_Cash_Changed,
|
}, VididinEvents.Event_Sign_State_Changed, VididinEvents.Event_Account_Cash_Changed,
|
||||||
VididinEvents.Event_Account_Gold_Changed, VididinEvents.EVENT_DAILY_WATCHED_VIDEO_NUM_CHANGED,
|
VididinEvents.Event_Account_Gold_Changed, VididinEvents.EVENT_DAILY_WATCHED_VIDEO_NUM_CHANGED,
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@ package com.gamedog.vididin.manager.helpers
|
||||||
|
|
||||||
import com.ama.core.architecture.util.DateUtil
|
import com.ama.core.architecture.util.DateUtil
|
||||||
import com.ama.core.architecture.util.SpUtil
|
import com.ama.core.architecture.util.SpUtil
|
||||||
|
import com.ama.core.architecture.util.eventbus.NotifyMan
|
||||||
import com.gamedog.vididin.R
|
import com.gamedog.vididin.R
|
||||||
import com.gamedog.vididin.VididinEvents
|
import com.gamedog.vididin.VididinEvents
|
||||||
import com.gamedog.vididin.main.fragments.task.BoxTaskRoot
|
import com.gamedog.vididin.main.fragments.task.BoxTaskRoot
|
||||||
|
|
@ -82,12 +83,17 @@ class BoxTaskHelper: BaseTaskHelper<TaskStateBoxRoot, BoxTaskRoot>() {
|
||||||
&& !isBoxSubTaskFinished(currentBoxIndex, index)) {
|
&& !isBoxSubTaskFinished(currentBoxIndex, index)) {
|
||||||
subTask.finishedNum++
|
subTask.finishedNum++
|
||||||
saveState2Sp()
|
saveState2Sp()
|
||||||
// TODO - if need notify
|
|
||||||
|
notifyEvent()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun notifyEvent() {
|
||||||
|
NotifyMan.instance().sendEvent(VididinEvents.EVENT_BOX_TASK_STATE_CHANGED, null)
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
private fun isBoxRootTaskExpired(taskStateBoxRoot: TaskStateBoxRoot): Boolean {
|
private fun isBoxRootTaskExpired(taskStateBoxRoot: TaskStateBoxRoot): Boolean {
|
||||||
var totalDurationDays = 0
|
var totalDurationDays = 0
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue