diff --git a/pages/mine/index.vue b/pages/mine/index.vue
index 8a2f1a2..bc525c4 100644
--- a/pages/mine/index.vue
+++ b/pages/mine/index.vue
@@ -67,7 +67,8 @@
奖衔,小区仅需
{{
- awards.sumRealPv
+
+ sprintProgress.achieved
}}
@@ -124,7 +125,7 @@
:style="{ width: sprintProgress.percentageString }"
>
- 已完成 {{ sprintProgress.achieved }} / 目标 {{ sprintProgress.target }}
+ 已完成 {{ awards.sumRealPv }} / 目标 {{ sprintProgress.target }}
@@ -481,17 +482,15 @@ export default {
let achievedPv = 0;
let percentage = 0;
- let displayTargetPv = (isNaN(targetPv) ? 0 : targetPv).toFixed(2);
+ const numericTargetPv = Math.floor((isNaN(targetPv) ? 0 : targetPv) * 100) / 100;
if (!isNaN(targetPv) && targetPv > 0) {
// sumRealPv 是差距,所以已完成的是 targetPv - sumRealPv
achievedPv = targetPv - (isNaN(sumRealPv) ? 0 : sumRealPv);
- // 确保 achievedPv 不会小于0(如果 sumRealPv > targetPv,理论上不应发生)
- // 且不会大于 targetPv (如果 sumRealPv 是负数,表示已超额)
achievedPv = Math.max(0, Math.min(achievedPv, targetPv));
- percentage = (achievedPv / targetPv) * 100;
+ percentage = (sumRealPvStr / targetPv) * 100;
} else if (!isNaN(targetPv) && targetPv === 0 && !isNaN(sumRealPv) && sumRealPv <=0) {
// 如果目标是0,且差距也是0或负数(表示已满足或超越0目标),则认为是100%
achievedPv = 0;
@@ -502,9 +501,9 @@ export default {
const clampedPercentage = Math.min(100, Math.max(0, percentage));
return {
- percentageString: `${clampedPercentage.toFixed(0)}%`,
- achieved: achievedPv.toFixed(2),
- target: displayTargetPv,
+ percentageString: `${Math.floor(clampedPercentage)}%`,
+ achieved: (Math.floor(achievedPv * 100) / 100).toFixed(2),
+ target: numericTargetPv.toFixed(2),
rawPercentage: clampedPercentage
};
}