Commit c0ab0ad0 authored by Олег Гиммельшпах's avatar Олег Гиммельшпах

Merge branch 'master' of git.task-on.com:ktask/task-on.com

parents 4c90117a 709d1eb7
......@@ -43,24 +43,33 @@ class DefaultController extends BaseController
// Получили текущую дату и время
$timeNow = new DateTime();
// Получили все те сообщения которые еще не обработаны и имеют дату равную или меньше текущей
/** @var TriggerSchedule[] $uncheckedArray */
$uncheckedArray = TriggerSchedule::find()->where('checked=:checked AND time <= :time_now', [':checked' => 0, ':time_now' => $timeNow->format('Y-m-d H:i:s')])->all();
// Получили все актуальные триггеры в базе
$actualTriggers = TriggerTrigger::getActualTriggers();
// Перебираем эти сообщения в цикле
foreach($uncheckedArray as $message) {
$triggerIsUsed = false;
// Проверяем каждое сообщение на срабатывание триггера
foreach($actualTriggers as $trigger) {
// Вызвали срабатывание условий
$triggerResult = Conditions::init()->handleMessageByTriggerId($message, $trigger->getPrimaryKey());
// Если триггер сработал инициируем действие
if ($triggerResult===true) {
$trigger->initAction($message);
$init = $trigger->initAction(['email' => $message->email]);
if ($init===true) {
$triggerIsUsed=true;
} else {
echo $init;
}
}
}
if ($triggerIsUsed===true) {
/** @var TriggerSchedule $model */
$model=TriggerSchedule::findOne($message->getPrimaryKey());
$model->checked=1;
$model->save();
}
}
}
}
<?php
use yii\db\Migration;
class m160226_101540_update_schedule_tinyint_columns extends Migration
{
// Use safeUp/safeDown to run migration code within a transaction
public function safeUp()
{
$this->alterColumn(
'trigger_schedule',
'sended',
$this->integer(1)->defaultValue(0)->notNull()
);
$this->alterColumn(
'trigger_schedule',
'checked',
$this->integer(1)->defaultValue(0)->notNull()
);
}
public function safeDown()
{
$this->alterColumn(
'trigger_schedule',
'sended',
$this->smallInteger(1)->defaultValue(0)->notNull()
);
$this->alterColumn(
'trigger_schedule',
'checked',
$this->smallInteger(1)->defaultValue(0)->notNull()
);
}
}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment