Преглед изворни кода

feat: NG-15: 新会员注册时增加国家与语言选项.

zhangl пре 1 година
родитељ
комит
891f0ab13f
1 измењених фајлова са 7 додато и 6 уклоњено
  1. 7 6
      common/helpers/bonus/Calc/CalcConsole.php

+ 7 - 6
common/helpers/bonus/Calc/CalcConsole.php

@@ -153,25 +153,26 @@ class CalcConsole extends BaseBusiness
         $currentPeriod = Period::find()->where('START_TIME< :NOW_TIME',['NOW_TIME'=>$nowTs])->where('END_TIME>= :NOW_TIME',['NOW_TIME'=>$nowTs-6])->asArray()->one();
         $periodNum = $currentPeriod['PERIOD_NUM'];
         $prevPeriodNum = $periodNum - 1;
-        if (Period::isPreparing($periodNum)) {
-            return;
-        }
 
         $nowDate = date("d", $nowTs);
         $nowHour = date("H", $nowTs);
+        $nowMinuter = date('i', $nowTs);
 
         // 当计算中,则跳过
         if(Period::isPreparing($periodNum)){ // 当计算中,则跳过
+            echo('自动计算未开始. 【计算中】' . date('Y-m-d H:i:s') . ' 期数:' . $periodNum . PHP_EOL);
             return;
         }
+
         // 自动计算:次月1号凌晨计算一次上一期
-        if ($nowDate == 1 && $nowHour == 0) {
+        if ($nowDate == 1 && $nowHour == 0 && $nowMinuter == 0) {
+            echo('自动计算开始(1). ' . date('Y-m-d H:i:s') . ' 期数:' . $prevPeriodNum . PHP_EOL);
             self::processAutoExec($prevPeriodNum);
             return;
         }
         // 自动计算:从每月10号0点开始,每2小时自动计算一次
-        if ($nowDate >= 10 && $nowHour % 2 == 0) {
-            echo('自动计算开始. ' . date('Y-m-d H:i:s') . ' 期数:' . $periodNum . PHP_EOL);
+        if ($nowDate >= 10 && $nowHour % 2 == 0 && $nowMinuter == 0) {
+            echo('自动计算开始(2). ' . date('Y-m-d H:i:s') . ' 期数:' . $periodNum . PHP_EOL);
             self::processAutoExec($periodNum);
         }
     }