Parcourir la source

fix #6147: 修复同步作品时显示'0/?'的问题

- 修复了当平台未返回总作品数时显示'0/?'的问题
- 改为只在能获取到总数时才显示比例,否则只显示当前数量
- 修复了 declaredTotal 为 0 时被错误处理为未知的问题
ethanfly il y a 4 jours
Parent
commit
63000030f0
1 fichiers modifiés avec 3 ajouts et 3 suppressions
  1. 3 3
      server/src/services/WorkService.ts

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

@@ -251,11 +251,11 @@ export class WorkService {
     onProgress?.(0.1, `获取作品列表中:${account.accountName || account.id} (${platform})`);
     const accountInfo = await headlessBrowserService.fetchAccountInfo(platform, cookieList, {
       onWorksFetchProgress: (info) => {
-        const declaredTotal = typeof info.declaredTotal === 'number' ? info.declaredTotal : 0;
-        const ratio = declaredTotal > 0 ? Math.min(1, info.totalSoFar / declaredTotal) : 0;
+        const declaredTotal = typeof info.declaredTotal === 'number' ? info.declaredTotal : null;
+        const ratio = declaredTotal !== null && declaredTotal > 0 ? Math.min(1, info.totalSoFar / declaredTotal) : 0;
         onProgress?.(
           0.1 + ratio * 0.2,
-          `拉取作品中:${account.accountName || account.id} (${platform}) ${info.totalSoFar}/${declaredTotal || '?'}`
+          `拉取作品中:${account.accountName || account.id} (${platform}) ${declaredTotal !== null ? `${info.totalSoFar}/${declaredTotal}` : info.totalSoFar}`
         );
       },
     });