public function actionIndex() { $searchModel = new ParcelsSearch(); $dataProvider = $searchModel->search(Yii::$app->request->queryParams); if (isset($_POST['new-orders'])) { $count = Parcels::getNewShopOrders(); Yii::$app->session->setFlash('success', 'Добавлено ' . $count . ' заказов.'); } if (isset($_POST['update-orders'])) { $count = Parcels::getUpdateShopOrders(); Yii::$app->session->setFlash('success', 'Обновлено ' . $count . ' заказов.'); } if (isset($_POST['update-status'])) { $count = Parcels::getDeliveryStatus(); Yii::$app->session->setFlash('success', 'Обновлено ' . $count . ' заказов.'); } if (isset($_POST['send-mails'])) { $closed = Parcels::find()->where(['status' => 'enabled'])->andWhere(['IN', 'delivery_status', ["Возврат. Вовремя.", "Вовремя. Доставлено"]])->orderBy('id')->all(); $count_closed = 0; foreach ($closed as $model) { $model->status = 'disabled'; if ($model->save()) { $count_closed++; } } $query = Parcels::find()->where(['status' => 'enabled'])->andWhere(['IN', 'delivery_status', ["Опоздание. Доставлено", "Опоздание. Не доставлено", "Возврат. Опоздание."]])->orderBy('id')->all(); $count_mailed = 0; foreach ($query as $model) { $result = Parcels::SendMail($model); if ($result) { $model->mailed = 'yes'; $model->status = 'disabled'; if ($model->save()) { $count_mailed++; } } } Yii::$app->session->setFlash('success', 'Отправлено ' . $count_mailed . ' писем. Закрыто ' . $count_closed . ' заказов.'); } if (Yii::$app->request->post('hasEditable')) { $model = Parcels::findOne(Yii::$app->request->post('editableKey')); $out = Json::encode(['output' => '', 'message' => '']); $model->delivery_status = current($_POST['Parcels'])['delivery_status']; $model->save(); $output = $_POST['Parcels']['delivery_status']; $out = Json::encode(['output' => $output, 'message' => '']); echo $out; return; } return $this->render('index', ['searchModel' => $searchModel, 'dataProvider' => $dataProvider]); }