theo 3 лет назад
Родитель
Сommit
81a836e519

+ 10 - 2
common/helpers/bonus/Calc/CalcConsole.php

@@ -110,7 +110,7 @@ if (empty($period)){
             if(($nowMin!=0 || $nowSec >= 5 ) || Period::isProcessing($periodNum)){ // 当不是整点小时,当计算中,不计算
                 return;
             }
-            print_r("该预结算".$nowMin.PHP_EOL.$nowSec);
+            print_r($periodNum."该预结算".$nowMin.PHP_EOL.$nowSec);
             //设置计算进行中标识
             Period::updatePeriodIsProcessing($periodNum, Period::IS_PROCESSING);
             //设置自动计算标识
@@ -149,7 +149,15 @@ if (empty($period)){
         if (empty($period)){
             return true;
         }
-        if (2 == $period['IS_PREPARE'] && 1 == $period['IS_PERFED']) {
+
+        $businessPeriod = Period::find()->where(['PERIOD_NUM' => $period['PERIOD_NUM']])->asArray()->one();
+
+        if (
+            2 == $period['IS_PREPARE']
+            && 1 == $businessPeriod['IS_PROCESSING']
+            && 3 == $period['IS_PERFED']
+            && $period['PERFED_AT']>$businessPeriod['START_EXEC_TIME']
+        ) {
             //拉取期业绩
             CalcRecord::record($period['PERIOD_NUM'], '第' . $period['PERIOD_NUM'] . '期的预计算业绩数据已生成');
             CalcRecord::record($period['PERIOD_NUM'], '开始获取第' . $period['PERIOD_NUM'] . '期的预计算期业绩数据');

+ 2 - 1
common/helpers/bonus/Calc/PullPerfDataFromCalc.php

@@ -52,6 +52,7 @@ class PullPerfDataFromCalc extends BasePerfBusiness
 //            2 == $data['IS_PREPARE'] //计算业绩阶段
 //            &&
             1 == $data['IS_PERFED']  //1表示累计业绩已完成
+            || 3 == $data['IS_PERFED']
         ) {
             return true;
         }
@@ -130,4 +131,4 @@ class PullPerfDataFromCalc extends BasePerfBusiness
     }
 
 
-}
+}