From 6043d2fec8eb49f4d822455783e24115606f613d Mon Sep 17 00:00:00 2001 From: hailin Date: Sat, 17 Jan 2026 08:19:05 -0800 Subject: [PATCH] fix(mining): calculate remainingDistribution from actual distributed amount - Changed from reading config.remainingDistribution to calculating: remainingDistribution = distributionPool - totalDistributed - Ensures data consistency: remaining + distributed = total pool - Added Math.max(0, ...) to prevent negative values Co-Authored-By: Claude Opus 4.5 --- .../mining-service/src/api/controllers/mining.controller.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/backend/services/mining-service/src/api/controllers/mining.controller.ts b/backend/services/mining-service/src/api/controllers/mining.controller.ts index bb1b67e0..8a559b9b 100644 --- a/backend/services/mining-service/src/api/controllers/mining.controller.ts +++ b/backend/services/mining-service/src/api/controllers/mining.controller.ts @@ -68,7 +68,8 @@ export class MiningController { // 计算挖矿进度(用实际已分配数量 / 分配池总量) const distributionPool = Number(config.distributionPool || 0); - const remainingDistribution = Number(config.remainingDistribution || 0); + // 剩余分配池 = 总池 - 实际已分配(保持数据一致性) + const remainingDistribution = Math.max(0, distributionPool - totalDistributedDecimal); const miningProgress = distributionPool > 0 ? (totalDistributedDecimal / distributionPool) * 100 : 0; // 计算剩余分钟数