public static function getFinalSum($pay, $method) { $sum = parent::getFinalSum($pay, $method); if ($pay->data && ($cart = \Ecommerce\Cart::get($pay->data))) { $extra = '0.' . (strlen((string) $cart->id) > 1 ? substr((string) $cart->id, -2) : $cart->id); } else { $extra = 0; } return $sum + $extra; }
public function parseOrders($orders) { foreach ($orders as $order) { $cart = \Ecommerce\Cart::get((string) $order->Номер); if (!$cart) { continue; } $reqs = []; foreach ($order->ЗначенияРеквизитов->ЗначениеРеквизита as $req) { $reqs[(string) $req->Наименование] = (string) $req->Значение; } $payed = false; $cancel = false; if (!empty($reqs['Дата оплаты по 1С']) && $reqs['Дата оплаты по 1С'] != 'T') { $payed = true; $date = new \DateTime((string) $reqs['Дата оплаты по 1С']); $cart->payed_date = $date->format('Y-m-d H:i:s'); } elseif (!empty($reqs['Отменен']) && $reqs['Отменен'] == 'true' || !empty($reqs['Дата оплаты по 1С']) && $reqs['Дата оплаты по 1С'] == 'T') { $cancel = true; } $this->updateCartItems($cart, $order->Товары->Товар); $cart->payed = $payed; if ($payed && $cart->cart_status_id == 5) { } elseif ($payed && $cart->cart_status_id == 3) { $cart->cart_status_id = 5; $cart->save(); } elseif ($cancel && $cart->cart_status_id == 3) { $cart->cart_status_id = 4; } if ($cart->warehouse_block && !$payed && !$cancel && !empty($reqs['Проведен']) && $reqs['Проведен'] == 'true') { $cart->warehouse_block = 0; foreach ($cart->cartItems as $cci) { if ($cci->price && $cci->price->offer) { $cci->price->offer->changeWarehouse('-' . (double) $cci->count); } } } //$cart->cc_exported = 1; $cart->save(); } }
public function refillAction($id = 0) { $cart = \Ecommerce\Cart::get((int) $id); if ($cart->user_id != Users\User::$cur->id) { Tools::redirect('/', 'Это не ваша корзина'); } if (!empty($_SESSION['cart']['cart_id'])) { unset($_SESSION['cart']['cart_id']); } $newCart = $this->ecommerce->getCurCart(); foreach ($cart->cartItems as $cartitem) { $newCart->addItem($cartitem->item_offer_price_id, $cartitem->count); } $newCart->save(); Tools::redirect('/ecommerce/cart/'); }