예제 #1
0
 /**
  * процессинг по запросу check
  * создает запись в транзакциях на оплату
  */
 private function processCheckRequest()
 {
     $params = $this->parameters();
     // вдруг уже был чек с этими параметрами
     $pay = PaymentCloud::whereCustomerId($params['customer_id'])->whereOrderId($params['order_id'])->wherePaymentId($params['payment_id'])->whereWaiting(1)->first();
     if (!$pay) {
         $pay = new PaymentCloud();
     }
     $pay->unguard();
     $pay->fill($params);
     $pay->card_type = PaymentCloud::getPayCardType4Yam(Input::get('paymentType'));
     $pay->card_pan = '100000...0001';
     $pay->card_holder = 'YANDEX MONEY';
     $pay->failed = 0;
     $pay->save();
     if (!$pay) {
         Reporter::payTransactionFail($params['customer_id'], $params['order_id'], $params['payment_id']);
         return $this->responseError('Ошибка сохранения данных об оплате заказа', 100);
     }
     Reporter::payTransactionCreated($params['customer_id'], $params['order_id'], $params['payment_id'], $pay->id);
     return $this->responseSuccess();
 }