|
|
@@ -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);
|
|
|
}
|
|
|
}
|