diff --git a/app/src/main/java/com/gamedog/vididin/features/benefit/BenefitActivity.kt b/app/src/main/java/com/gamedog/vididin/features/benefit/BenefitActivity.kt index 8495da6..b2b6a41 100644 --- a/app/src/main/java/com/gamedog/vididin/features/benefit/BenefitActivity.kt +++ b/app/src/main/java/com/gamedog/vididin/features/benefit/BenefitActivity.kt @@ -7,7 +7,6 @@ import android.view.View import android.view.ViewGroup import android.widget.LinearLayout import androidx.activity.viewModels -import androidx.appcompat.app.ActionBar import com.ama.core.architecture.appBase.AppViewsActivity import com.ama.core.architecture.util.ResUtil import com.gamedog.vididin.R @@ -40,7 +39,6 @@ class BenefitActivity : AppViewsActivity(), OnT override fun ViewBinding.initViews() { titlebar.setTitleText(R.string.benefit) - loadTaskState() initViewsByTaskState() } @@ -60,9 +58,6 @@ class BenefitActivity : AppViewsActivity(), OnT } - private fun loadTaskState() { - val taskStateHelper = TaskManager.instance().boxTaskStatus() - } private fun initViewsByTaskState() { initAddSubTaskViews() @@ -161,6 +156,17 @@ class BenefitActivity : AppViewsActivity(), OnT isClickable = false } } + + + // 总进度条, 奖励金额 + val totalProgress = taskStateHelper.getCurrentBoxTotalProgress() + progressTasks.setProgress(totalProgress) + tvProgressNum.text = "($totalProgress%)" + tvHintRewardNum.text = buildString { + append(ResUtil.getString(R.string.cash)) + append(" ") + append(taskStateHelper.getStatusBean().tasks[taskStateHelper.getCurrentBoxIndex()].reward_value) + } } } diff --git a/app/src/main/java/com/gamedog/vididin/manager/helpers/BoxTaskHelper.kt b/app/src/main/java/com/gamedog/vididin/manager/helpers/BoxTaskHelper.kt index d214a31..fa62a4f 100644 --- a/app/src/main/java/com/gamedog/vididin/manager/helpers/BoxTaskHelper.kt +++ b/app/src/main/java/com/gamedog/vididin/manager/helpers/BoxTaskHelper.kt @@ -170,4 +170,25 @@ class BoxTaskHelper: BaseTaskHelper() { return 0 } + fun getCurrentBoxTotalProgress(): Int { + val currentBoxIndex = getCurrentBoxIndex() + val boxList = mStateBean.tasks + if (currentBoxIndex >= 0 && currentBoxIndex < boxList.size) { + var totalFinished = 0 + var totalRequired = 0 + val currentBox = boxList[currentBoxIndex] + + currentBox.tasks.forEach { + totalFinished += it.finishedNum + totalRequired += it.required_count + } + + if (totalRequired > 0) { + val totalProgress = (100 * totalFinished) / totalRequired + return if (totalProgress > 100) 100 else totalProgress + } + } + return 0 + } + } \ No newline at end of file