Bladeren bron

Merge branch 'fix/bug-6088-6084-6082-6080-6079'

# Conflicts:
#	client/src/views/Publish/index.vue
ethanfly 2 weken geleden
bovenliggende
commit
8dcdb6a8f0
2 gewijzigde bestanden met toevoegingen van 9 en 12 verwijderingen
  1. 3 3
      server/src/services/AnalyticsService.ts
  2. 6 9
      server/src/services/HeadlessBrowserService.ts

+ 3 - 3
server/src/services/AnalyticsService.ts

@@ -25,7 +25,7 @@ export class AnalyticsService {
 
     const queryBuilder = this.analyticsRepository
       .createQueryBuilder('data')
-      .select('SUM(data.fansCount)', 'totalFans')
+      .select('MAX(data.fansCount)', 'totalFans')
       .addSelect('SUM(data.fansIncrease)', 'totalFansIncrease')
       .addSelect('SUM(data.viewsCount)', 'totalViews')
       .addSelect('SUM(data.likesCount)', 'totalLikes')
@@ -63,7 +63,7 @@ export class AnalyticsService {
     const queryBuilder = this.analyticsRepository
       .createQueryBuilder('data')
       .select('data.date', 'date')
-      .addSelect('SUM(data.fansCount)', 'fansCount')
+      .addSelect('MAX(data.fansCount)', 'fansCount')
       .addSelect('SUM(data.viewsCount)', 'viewsCount')
       .addSelect('SUM(data.likesCount)', 'likesCount')
       .addSelect('SUM(data.commentsCount)', 'commentsCount')
@@ -108,7 +108,7 @@ export class AnalyticsService {
       .createQueryBuilder('data')
       .select('account.platform', 'platform')
       .addSelect('account.accountName', 'accountName')
-      .addSelect('SUM(data.fansCount)', 'fansCount')
+      .addSelect('MAX(data.fansCount)', 'fansCount')
       .addSelect('SUM(data.fansIncrease)', 'fansIncrease')
       .addSelect('SUM(data.viewsCount)', 'viewsCount')
       .addSelect('SUM(data.likesCount)', 'likesCount')

+ 6 - 9
server/src/services/HeadlessBrowserService.ts

@@ -971,22 +971,19 @@ class HeadlessBrowserService {
         const hasNextCursor = next !== undefined && next !== null && next !== '' && next !== -1 && next !== '-1';
 
         if (hasNextCursor) {
-          const key = String(next);
+          const key = String(next).trim();
           if (seenCursors.has(key)) break;
           seenCursors.add(key);
           cursor = next;
         } else {
-          if (platform === 'douyin') break;
           cursor = (typeof cursor === 'number' ? cursor + 1 : pageIndex + 1);
         }
 
-        // 抖音:仅当无下一页游标或本页 0 条时停止
-        if (platform === 'douyin') {
-          if (!hasNextCursor || pageWorks.length === 0) break;
-        } else {
-          const expectedMore = declaredTotal && declaredTotal > 0 ? allWorks.length < declaredTotal : !!result.has_more;
-          if (!expectedMore || pageWorks.length === 0 || newCount === 0) break;
-        }
+        // 仅当无下一页游标或本页 0 条时停止
+        if (!hasNextCursor || pageWorks.length === 0) break;
+
+        // 额外检查:若已达声明总量则停止
+        if (declaredTotal && declaredTotal > 0 && allWorks.length >= declaredTotal) break;
       } else {
         if (!result.has_more || pageWorks.length === 0 || newCount === 0) break;
       }