diff --git a/app/src/main/java/com/gamedog/vididin/VididinEvents.kt b/app/src/main/java/com/gamedog/vididin/VididinEvents.kt index a19a956..716759d 100644 --- a/app/src/main/java/com/gamedog/vididin/VididinEvents.kt +++ b/app/src/main/java/com/gamedog/vididin/VididinEvents.kt @@ -17,6 +17,9 @@ object VididinEvents { const val EVENT_DAILY_WATCHED_AD_NUM_CHANGED = 706 const val EVENT_BOX_TASK_STATE_CHANGED = 707 + const val EVENT_NEWBIE_NOTIFY_TASK_CHANGED = 708 + const val EVENT_NEWBIE_FIRST_WITHDRAW_TASK_CHANGED = 709 + const val EVENT_NEWBIE_DISCORD_TASK_CHANGED = 710 diff --git a/app/src/main/java/com/gamedog/vididin/main/fragments/TasksFragment.kt b/app/src/main/java/com/gamedog/vididin/main/fragments/TasksFragment.kt index 95bd17f..aa1f7dc 100644 --- a/app/src/main/java/com/gamedog/vididin/main/fragments/TasksFragment.kt +++ b/app/src/main/java/com/gamedog/vididin/main/fragments/TasksFragment.kt @@ -130,7 +130,7 @@ class TasksFragment : AppViewsFragment(), OnTab beginnerTaskEnableNotify.setActionFun { gotoNotification() } - setRewardInfo(TaskManager.instance().getNewbieEnableNotifyTask()!!) + setTaskStateInfo(TaskManager.instance().newbieEnableNotifyStatus()) } @@ -259,10 +259,25 @@ class TasksFragment : AppViewsFragment(), OnTab } },1000) } + + VididinEvents.EVENT_NEWBIE_DISCORD_TASK_CHANGED -> { + + } + + VididinEvents.EVENT_NEWBIE_NOTIFY_TASK_CHANGED -> { + + } + + VididinEvents.EVENT_NEWBIE_FIRST_WITHDRAW_TASK_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_DAILY_WATCHED_AD_NUM_CHANGED, VididinEvents.EVENT_JUMP_2_FIRST_WITHDRAW) + VididinEvents.EVENT_DAILY_WATCHED_AD_NUM_CHANGED, VididinEvents.EVENT_JUMP_2_FIRST_WITHDRAW, + VididinEvents.EVENT_NEWBIE_DISCORD_TASK_CHANGED, VididinEvents.EVENT_NEWBIE_NOTIFY_TASK_CHANGED, + VididinEvents.EVENT_NEWBIE_FIRST_WITHDRAW_TASK_CHANGED,) } private fun scroll2FirstWithdraw() { diff --git a/app/src/main/java/com/gamedog/vididin/main/fragments/task/widget/BeginnerTaskItemView.kt b/app/src/main/java/com/gamedog/vididin/main/fragments/task/widget/BeginnerTaskItemView.kt index e705d1f..ea31438 100644 --- a/app/src/main/java/com/gamedog/vididin/main/fragments/task/widget/BeginnerTaskItemView.kt +++ b/app/src/main/java/com/gamedog/vididin/main/fragments/task/widget/BeginnerTaskItemView.kt @@ -10,6 +10,7 @@ import com.gamedog.vididin.VidiConst import com.gamedog.vididin.databinding.BeginnerTaskItemViewBinding import com.gamedog.vididin.main.fragments.task.Task import com.gamedog.vididin.manager.TaskManager +import com.gamedog.vididin.manager.helpers.NewbieEnableNotifyHelper class BeginnerTaskItemView @JvmOverloads constructor( @@ -59,5 +60,9 @@ class BeginnerTaskItemView @JvmOverloads constructor( mBinding.tvRewardNum.setTextColor(color) } + fun setTaskStateInfo(newbieEnableNotifyStatus: NewbieEnableNotifyHelper) { + + } + } \ No newline at end of file diff --git a/app/src/main/java/com/gamedog/vididin/manager/helpers/NewbieEnableNotifyHelper.kt b/app/src/main/java/com/gamedog/vididin/manager/helpers/NewbieEnableNotifyHelper.kt index fc3a808..bab8757 100644 --- a/app/src/main/java/com/gamedog/vididin/manager/helpers/NewbieEnableNotifyHelper.kt +++ b/app/src/main/java/com/gamedog/vididin/manager/helpers/NewbieEnableNotifyHelper.kt @@ -1,6 +1,10 @@ package com.gamedog.vididin.manager.helpers + import com.ama.core.architecture.util.SpUtil +import com.ama.core.architecture.util.eventbus.NotifyMan +import com.gamedog.vididin.VididinEvents +import com.gamedog.vididin.core.login.login.AccountManager import com.gamedog.vididin.main.fragments.task.Task import com.gamedog.vididin.manager.taskbeans.TaskStateNewBieEnableNotify @@ -8,8 +12,31 @@ class NewbieEnableNotifyHelper: BaseTaskHelper(mSpKey) + if (taskStateBeanInSp == null) { + mStateBean = generateStateBeanFromConfig() + saveState2Sp() + } else { + mStateBean = taskStateBeanInSp + } + } + + private fun generateStateBeanFromConfig(): TaskStateNewBieEnableNotify { + return TaskStateNewBieEnableNotify(mTaskConfig.reward_value) + } + + fun claimReward() { + if (!mStateBean.hasClaimReward) { + AccountManager.addGold(mStateBean.rewardGoldNum) + saveState2Sp() + notifyStateChangeEvent() + } + } + + private fun notifyStateChangeEvent() { + NotifyMan.instance().sendEvent(VididinEvents.EVENT_NEWBIE_NOTIFY_TASK_CHANGED, null) } } \ No newline at end of file diff --git a/app/src/main/java/com/gamedog/vididin/manager/helpers/NewbieFirstWithdrawHelper.kt b/app/src/main/java/com/gamedog/vididin/manager/helpers/NewbieFirstWithdrawHelper.kt index dc881ef..dc2a027 100644 --- a/app/src/main/java/com/gamedog/vididin/manager/helpers/NewbieFirstWithdrawHelper.kt +++ b/app/src/main/java/com/gamedog/vididin/manager/helpers/NewbieFirstWithdrawHelper.kt @@ -1,6 +1,9 @@ package com.gamedog.vididin.manager.helpers import com.ama.core.architecture.util.SpUtil +import com.ama.core.architecture.util.eventbus.NotifyMan +import com.gamedog.vididin.VididinEvents +import com.gamedog.vididin.core.login.login.AccountManager import com.gamedog.vididin.main.fragments.task.Task import com.gamedog.vididin.manager.taskbeans.TaskStateNewBieFirstWithDraw @@ -9,7 +12,29 @@ class NewbieFirstWithdrawHelper: BaseTaskHelper(mSpKey) + if (taskStateBeanInSp == null) { + mStateBean = generateStateBeanFromConfig() + saveState2Sp() + } else { + mStateBean = taskStateBeanInSp + } + } + private fun generateStateBeanFromConfig(): TaskStateNewBieFirstWithDraw { + return TaskStateNewBieFirstWithDraw(mTaskConfig.reward_value) + } + + fun claimReward() { + if (!mStateBean.hasClaimReward) { + AccountManager.addGold(mStateBean.rewardGoldNum) + saveState2Sp() + notifyStateChangeEvent() + } + } + + private fun notifyStateChangeEvent() { + NotifyMan.instance().sendEvent(VididinEvents.EVENT_NEWBIE_FIRST_WITHDRAW_TASK_CHANGED, null) } } \ No newline at end of file diff --git a/app/src/main/java/com/gamedog/vididin/manager/helpers/NewbieJoinDiscordHelper.kt b/app/src/main/java/com/gamedog/vididin/manager/helpers/NewbieJoinDiscordHelper.kt index 2eeba9c..c4e67e9 100644 --- a/app/src/main/java/com/gamedog/vididin/manager/helpers/NewbieJoinDiscordHelper.kt +++ b/app/src/main/java/com/gamedog/vididin/manager/helpers/NewbieJoinDiscordHelper.kt @@ -1,6 +1,9 @@ package com.gamedog.vididin.manager.helpers import com.ama.core.architecture.util.SpUtil +import com.ama.core.architecture.util.eventbus.NotifyMan +import com.gamedog.vididin.VididinEvents +import com.gamedog.vididin.core.login.login.AccountManager import com.gamedog.vididin.main.fragments.task.Task import com.gamedog.vididin.manager.taskbeans.TaskStateNewBieJoinDiscord @@ -9,7 +12,29 @@ class NewbieJoinDiscordHelper: BaseTaskHelper( override val mSpKey = SpUtil.KEY_NEWBIE_JOIN_DISCORD override fun loadTaskFromSp() { + val taskStateBeanInSp = SpUtil.instance().getObject(mSpKey) + if (taskStateBeanInSp == null) { + mStateBean = generateStateBeanFromConfig() + saveState2Sp() + } else { + mStateBean = taskStateBeanInSp + } + } + private fun generateStateBeanFromConfig(): TaskStateNewBieJoinDiscord { + return TaskStateNewBieJoinDiscord(mTaskConfig.reward_value) + } + + fun claimReward() { + if (!mStateBean.hasClaimReward) { + AccountManager.addGold(mStateBean.rewardGoldNum) + saveState2Sp() + notifyStateChangeEvent() + } + } + + private fun notifyStateChangeEvent() { + NotifyMan.instance().sendEvent(VididinEvents.EVENT_NEWBIE_DISCORD_TASK_CHANGED, null) } } \ No newline at end of file diff --git a/app/src/main/java/com/gamedog/vididin/manager/taskbeans/TaskStateNewBieEnableNotify.kt b/app/src/main/java/com/gamedog/vididin/manager/taskbeans/TaskStateNewBieEnableNotify.kt index 93aa14f..4cab36f 100644 --- a/app/src/main/java/com/gamedog/vididin/manager/taskbeans/TaskStateNewBieEnableNotify.kt +++ b/app/src/main/java/com/gamedog/vididin/manager/taskbeans/TaskStateNewBieEnableNotify.kt @@ -6,8 +6,8 @@ import java.io.Serializable data class TaskStateNewBieEnableNotify( - var box: Long = 0, - var watchedVideoNum: Int = 0, + var rewardGoldNum: Int, + var hasClaimReward: Boolean = false, ): Serializable { } diff --git a/app/src/main/java/com/gamedog/vididin/manager/taskbeans/TaskStateNewBieFirstWithDraw.kt b/app/src/main/java/com/gamedog/vididin/manager/taskbeans/TaskStateNewBieFirstWithDraw.kt index d4e02fe..0f52b7c 100644 --- a/app/src/main/java/com/gamedog/vididin/manager/taskbeans/TaskStateNewBieFirstWithDraw.kt +++ b/app/src/main/java/com/gamedog/vididin/manager/taskbeans/TaskStateNewBieFirstWithDraw.kt @@ -6,8 +6,8 @@ import java.io.Serializable data class TaskStateNewBieFirstWithDraw( - var box: Long = 0, - var watchedVideoNum: Int = 0, + var rewardGoldNum: Int, + var hasClaimReward: Boolean = false, ): Serializable { } diff --git a/app/src/main/java/com/gamedog/vididin/manager/taskbeans/TaskStateNewBieJoinDiscord.kt b/app/src/main/java/com/gamedog/vididin/manager/taskbeans/TaskStateNewBieJoinDiscord.kt index d04f187..923df6b 100644 --- a/app/src/main/java/com/gamedog/vididin/manager/taskbeans/TaskStateNewBieJoinDiscord.kt +++ b/app/src/main/java/com/gamedog/vididin/manager/taskbeans/TaskStateNewBieJoinDiscord.kt @@ -6,8 +6,8 @@ import java.io.Serializable data class TaskStateNewBieJoinDiscord( - var box: Long = 0, - var watchedVideoNum: Int = 0, + var rewardGoldNum: Int, + var hasClaimReward: Boolean = false, ): Serializable { }