Ejemplo n.º 1
0
 public function manualClosePayAction($payId)
 {
     $pay = \Money\Pay::get((int) $payId);
     $result = new Server\Result();
     if ($pay && $pay->pay_status_id == 1) {
         $pay->pay_status_id = 2;
         $pay->save();
         if ($pay->callback_module && $pay->callback_method) {
             \App::$primary->{$pay->callback_module}->{$pay->callback_method}(['status' => 'success', 'payId' => $pay->id, 'pay' => $pay]);
         }
         $result->successMsg = 'Счет был проведен';
         $result->send();
     }
     $result->success = false;
     $result->content = 'Такой счет не найден';
     $result->send();
 }
Ejemplo n.º 2
0
<?php

return ['name' => 'Онлайн оплата', 'handler' => function ($cart) {
    if (\App::$cur->money) {
        $sums = $cart->finalSum();
        foreach ($sums->sums as $currency_id => $sum) {
            if (!$currency_id) {
                continue;
            }
            $pay = \Money\Pay::get([['data', $cart->id], ['currency_id', $currency_id], ['user_id', \Users\User::$cur->id]]);
            if (!$pay) {
                $pay = new Money\Pay(['data' => $cart->id, 'currency_id' => $currency_id, 'user_id' => \Users\User::$cur->id, 'sum' => $sum, 'description' => 'Оплата заказа №' . $cart->id . ' в онлайн-магазине', 'type' => 'pay', 'pay_status_id' => 1, 'callback_module' => 'Ecommerce', 'callback_method' => 'cartPayRecive']);
                $pay->save();
            } elseif ($pay->sum != $sum) {
                $pay->sum = $sum;
                $pay->save();
            }
        }
        return ['/money/merchants/pay/?data=' . $cart->id, 'Ваш заказ был создан. Вам необходимо оплатить счета, после чего с вами свяжется администратор для уточнения дополнительной информации', 'success'];
    }
}];