guoziyun 9 月之前
父节点
当前提交
97fbfd7da6
共有 2 个文件被更改,包括 7 次插入2 次删除
  1. 3 1
      oms/dist/src/scripts/migrate-done-rates.js
  2. 4 1
      oms/src/scripts/migrate-done-rates.ts

+ 3 - 1
oms/dist/src/scripts/migrate-done-rates.js

@@ -84,13 +84,15 @@ async function migrateDoneRates() {
         const cursor = OldDoneRate.find({}).lean().cursor();
         // 逐条处理游标中的数据
         for await (const doc of cursor) {
+            // 检查并重新计算 completionRate,以校正旧数据中的不合理值
+            const correctedCompletionRate = doc.startCount > 0 ? (doc.doneCount / doc.startCount) * 100 : 0;
             // 格式化数据以匹配本地模型
             const newRecord = {
                 date: doc.collectionName,
                 res: doc.res,
                 startCount: doc.startCount,
                 doneCount: doc.doneCount,
-                completionRate: doc.completionRate,
+                completionRate: correctedCompletionRate, // 使用校正后的值
             };
             batch.push(newRecord);
             // 如果达到批次大小,则执行批量插入

+ 4 - 1
oms/src/scripts/migrate-done-rates.ts

@@ -72,13 +72,16 @@ async function migrateDoneRates() {
 
     // 逐条处理游标中的数据
     for await (const doc of cursor) {
+      // 检查并重新计算 completionRate,以校正旧数据中的不合理值
+      const correctedCompletionRate = doc.startCount > 0 ? (doc.doneCount / doc.startCount) * 100 : 0;
+
       // 格式化数据以匹配本地模型
       const newRecord = {
         date: doc.collectionName,
         res: doc.res,
         startCount: doc.startCount,
         doneCount: doc.doneCount,
-        completionRate: doc.completionRate,
+        completionRate: correctedCompletionRate, // 使用校正后的值
       };
       batch.push(newRecord);