public function postPay() { $bill_id = Input::get('transaction'); $provider_id = Input::get('shop'); $bill = Bill::getBill($bill_id, $provider_id); //Предполагаем ошибку статуса $error = 'Ошибка оплаты, проверьте статус.'; if ($bill) { try { $result = DB::connection('ff-qiwi-gate')->transaction(function () use($bill_id) { if (Bill::doPay($bill_id)) { SendCallback::jobBillToQueue($bill_id); SendEmail::emailToQueue($bill_id); return array('message' => 'Счёт успешно оплачен.'); } return null; }); if ($result) { return $result; } } catch (Exception $e) { } } else { //Меняем ошибку на Счёт не найден $error = 'Счет не найден.'; } return array('error' => true, 'message' => $error); }
/** * Отправить callback * * @param $bill_id */ public function sendCallback($bill_id) { SendEmail::emailToQueue($bill_id); SendCallback::jobBillToQueue($bill_id); }