public function actionServiceItem($id) { $service = Services::findOne($id); if ($service && !\Yii::$app->user->isGuest) { $user = User::findOne(\Yii::$app->user->id); $persAcc = PersonalAccount::find()->where('user_id = :user_id', [':user_id' => $user->id])->andWhere('service_id = :service_id', [':service_id' => $id])->one(); $history = PaymentData::find()->where('service_id = :service_id', [':service_id' => $id])->andWhere('personal_acc_id = :personal_acc_id', [':personal_acc_id' => $persAcc->id])->all(); return $this->render('service-item', ['service' => $service, 'history' => $history, 'persAcc' => $persAcc]); } else { return false; } }
public function actionAddBillForUser() { $token = $this->getToken(); if ($token) { $user = User::find()->where('password_reset_token = :token', [':token' => $token])->one(); if (!empty($user)) { if (!empty($_POST['bill']) && !empty($_POST['service_id'])) { $service = Services::findOne($_POST['service_id']); if ($service) { $personal_acc = PersonalAccount::find()->where('service_id = :service_id', [':service_id' => $_POST['service_id']])->andWhere('user_id = :user_id', [':user_id' => $user->id])->one(); if (!$personal_acc) { $personal_acc = new PersonalAccount(); $personal_acc->service_id = $_POST['service_id']; $personal_acc->user_id = $user->id; } $personal_acc->value = $_POST['bill']; if ($personal_acc->save()) { $result = ['status' => ['code' => 200, 'message' => "ОК"]]; } else { $result = ['status' => ['code' => 405, 'message' => "Введены неверные данные"]]; } } else { $result = ['status' => ['code' => 406, 'message' => 'Услуга не найдена']]; } } else { $result = ['status' => ['code' => 403, 'message' => 'Не все обязательные поля заполнены']]; } } else { $result = ['status' => ['code' => 402, 'message' => 'Пользователь не найден']]; } } else { $result = ['status' => ['code' => 400, 'message' => 'Значение Token не задано']]; } return Json::encode($result); }