diff --git a/backend/services/admin-service/src/infrastructure/persistence/repositories/user-detail-query.repository.impl.ts b/backend/services/admin-service/src/infrastructure/persistence/repositories/user-detail-query.repository.impl.ts index b4786e84..55f525c8 100644 --- a/backend/services/admin-service/src/infrastructure/persistence/repositories/user-detail-query.repository.impl.ts +++ b/backend/services/admin-service/src/infrastructure/persistence/repositories/user-detail-query.repository.impl.ts @@ -529,18 +529,25 @@ export class UserDetailQueryRepositoryImpl implements IUserDetailQueryRepository const teamAddressCount = teamMembers.length; - // 2. 获取团队认种量:汇总所有团队成员的有效认种树数 + // 2. 获取团队认种量:汇总所有团队成员的有效认种订单数 + // 使用 PlantingOrderQueryView 而不是 PlantingPositionQueryView,保持与个人认种量一致 let teamAdoptionCount = 0; if (teamMembers.length > 0) { - const teamUserIds = teamMembers.map((m) => m.userId); - const positions = await this.prisma.plantingPositionQueryView.findMany({ + const teamAccountSequences = await this.prisma.referralQueryView.findMany({ where: { - userId: { in: teamUserIds }, + userId: { in: teamMembers.map((m) => m.userId) }, }, - select: { effectiveTreeCount: true }, + select: { accountSequence: true }, }); - teamAdoptionCount = positions.reduce((sum, p) => sum + p.effectiveTreeCount, 0); + const count = await this.prisma.plantingOrderQueryView.count({ + where: { + accountSequence: { in: teamAccountSequences.map((t) => t.accountSequence) }, + status: 'MINING_ENABLED', + }, + }); + + teamAdoptionCount = count; } return { teamAddressCount, teamAdoptionCount };