public function notify(Request $request) { $request->on(Request::EVENT_AFTER_UPDATE, function ($event) { /** @var $request Request */ $request = $event->sender; \Yii::$app->mailer->compose('rso-agreement-updated', ['request' => $request])->setFrom([\Yii::$app->params['email.admin'] => \Yii::$app->name])->setTo($request->owner->email)->setSubject('Изменение статуса согласования заявки с РСО')->send(); }); }
public function notify(Request $request) { if ($request->rsoAgreement === Request::RSO_AGREEMENT_IN_PROCESS) { $eventName = $request->isNewRecord ? Request::EVENT_AFTER_INSERT : Request::EVENT_AFTER_UPDATE; $request->on($eventName, function ($event) { $query = User::find()->where(['_id' => \Yii::$app->authManager->getUserIdsByRole(SystemRole::RSO)])->asArray(); $emails = ArrayHelper::getColumn($query->all(), 'email'); \Yii::$app->mailer->compose('rso-new-agreement', ['request' => $event->sender])->setFrom([\Yii::$app->params['email.admin'] => \Yii::$app->name])->setTo($emails)->setSubject('Необходимо согласование заявки')->send(); }); } }