From 114f7befbcf389542209e00a4f619422c5d7b269 Mon Sep 17 00:00:00 2001 From: renhaoting <370797079@qq.com> Date: Wed, 3 Dec 2025 17:54:48 +0800 Subject: [PATCH] =?UTF-8?q?=E6=80=BB=E8=BF=9B=E5=BA=A6=E5=8F=8A=E9=87=91?= =?UTF-8?q?=E9=A2=9D=20=E8=AF=BB=E5=8F=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../features/benefit/BenefitActivity.kt | 16 +++++++++----- .../vididin/manager/helpers/BoxTaskHelper.kt | 21 +++++++++++++++++++ 2 files changed, 32 insertions(+), 5 deletions(-) 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