public function actionDelRequest($id) { $request = Requests::findOne($id); if ($request->delete()) { Yii::$app->getSession()->setFlash('success', 'Запрос удален'); } else { Yii::$app->getSession()->setFlash('error', 'Возникли проблемы. Попробуйте позже'); } return $this->redirect(['/certificates/requests', 'tasks_id' => $request->tasks_id]); }
public function createExcels($tasks_id) { $this->tasks_id = $tasks_id; $requests_array = []; $requests = Requests::find()->where(['tasks_id' => $tasks_id])->all(); foreach ($requests as $request) { $requested_certificates = RequestedCertificates::find()->where(['requests_id' => $request->id])->all(); foreach ($requested_certificates as $requested_certificate) { $wagons = $this->parseWagons($requested_certificate->wagons); foreach ($wagons as $wagon) { $requests_array[$requested_certificate->certificate->code][] = $wagon; } } } $dir = 'uploads/certificates/certificates_excel/task_' . $tasks_id . '_' . date('d.m.Y'); if (!is_dir($dir)) { mkdir($dir, 0777, true); } foreach ($requests_array as $certificate => $wagons) { $this->writeOneCertificate($wagons, $certificate, $dir); } $this->createTaskZip($tasks_id); }
public function getRequestAmount() { return Requests::find()->where(['tasks_id' => $this->id])->count(); }
/** * @return \yii\db\ActiveQuery */ public function getRequest() { return $this->hasOne(Requests::className(), ['id' => 'requests_id']); }