Ну да, сидишь такой офисный весь, эффективный....ждешь отчетик, а тут на тебе такой подарок: выполняться будет 10 минут....ну что ж....подождем
а если так - пользователь запускает задачу, запускается лоадер, и пользователь переключается на другие пункты админки, через мин 5 заглядывает обратно, а там лоадер уже исчез, и появилась надпись, что задача выполнена?
да, тогда как выше описал. При открытии страницы смотришь активна ли запись в поле tasks
я бы сделал так: 1) Создаем идентификатор для джоба и прокидываем его в джоб, далее возвращаем на фронтэнд. 2) Фронтэнд показывает лоадер и раз в Н-времени проверяет статус через отдельный метод 3) Джоб после выполнения кидает в статус идентификатора, что выполнено 4) При следующей итерации клиент получит уведомление
в первом пункте , как я понимаю, так надо сделать : $id = Yii::$app->queue->delay(0)->push(new PicomedApiUpdateJob()); а как прокинуть ид в джоб?
\Yii::$app->queue->push(new PauseJob([ 'ext' => $ext ]));
Обсуждают сегодня