Example #1
0
 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);
 }