Просмотр исходного кода

fix(profile): 「我的团队」改为服务商团队人数,修复误用推广引荐人数

根因:我的页「我的团队」瓦片取 getTeamConsumption(3).totalMembers,
该值为 referral_tree(推荐关系物化树)计数,属推广/引荐口径,且该树
无维护逻辑已陈旧(user12 树内17 < users 表实际19直接引荐/22全层级),
与瓦片点击跳转的服务商团队页口径不一致。

修复:loadTeamInfo 改用服务商团队口径——先取 my-teams 列出的全部供应
体系,再逐个取 supply-hierarchy/my 的 totalChildren 求和;非服务商或
无团队显示 0,与团队系统页「团队成员」统计一致。仅改前端,未触碰后端。
Xiaogang Liao 1 неделя назад
Родитель
Сommit
989be9221a
1 измененных файлов с 21 добавлено и 5 удалено
  1. 21 5
      cfc-frontend/pages/profile-main/profile.vue

+ 21 - 5
cfc-frontend/pages/profile-main/profile.vue

@@ -346,7 +346,7 @@ import {
   getTodayTasksByCategory, getChallengeList, getMyMembership,
   verifyPassword, getPointsBalance, getUserInfo,
   cartCount, getOrderCounts, getReferralSummary,
-  getProfileStats, getMyReferrer, getTeamConsumption,
+  getProfileStats, getMyReferrer, getVendorTeamList, getVendorHierarchyInfo,
   getTeacherInfo, getTeacherPendingTasks, getTeacherUnreadCount,
   getReferralCode, extractReferralCode, getShareQrCode, getEnergySandbox,
   vendorStatus
@@ -609,11 +609,27 @@ export default {
     },
     loadTeamInfo() {
       var self = this
-      getTeamConsumption(3).then(function(res) {
-        if (res && res.data && res.data.totalMembers != null) {
-          self.teamMembers = res.data.totalMembers
+      getVendorTeamList().then(function(res) {
+        var teams = (res && res.data) || []
+        if (!teams.length) {
+          self.teamMembers = 0
+          return
         }
-      }).catch(function() {})
+        var reqs = teams.map(function(t) {
+          return getVendorHierarchyInfo(t.id).then(function(h) {
+            return (h && h.data && h.data.totalChildren) || 0
+          }).catch(function() {
+            return 0
+          })
+        })
+        Promise.all(reqs).then(function(counts) {
+          self.teamMembers = counts.reduce(function(a, b) { return a + b }, 0)
+        }).catch(function() {
+          self.teamMembers = 0
+        })
+      }).catch(function() {
+        self.teamMembers = 0
+      })
     },
     async loadMyReferrer() {
       try {