function action_order() { session_start(); $model = $_SESSION['basket']; $login = $_SESSION["login"]; if (!is_null($_SESSION["login"])) { $account = AccountService::GetByName($login, true); $order = OrderHelper::PopulateOrderFromBasketViewModel($model, $account->account_id); $order = OrderService::Create($order); $products = $model->products; for ($i = 0; $i < count($products); $i++) { for ($j = 0; $j < $model->counts[$i]; $j++) { $orderlist = new OrderList(); $orderlist->order_id = $order->order_id; $orderlist->product_id = $products[$i]->Id; OrderListService::Create($orderlist); } } $_SESSION['basket'] = null; EmailService::SendNewOrderMessage($account, $order->order_id, $model->SumPrice()); $data = $order->order_id; $this->view->generate('Order_view.php', 'template_view.php', $data); } else { header('Location: /Account/login'); } }
public static function GetProductsByOrderId($order_id) { $orders = OrderListService::GetByOrderId($order_id); for ($i = 0; $i < count($orders); $i++) { $products[$i] = ProductHelper::PopulateProductViewModel(ProductService::GetById($orders[$i]->product_id)); } return $products; }
public function action_removeproduct() { PermissionHelper::Verification('Editor'); $order_id = $_GET['orderId']; $product_id = $_GET['productId']; $orderList = OrderListService::GetByOrderIdAndProductIdFirst($order_id, $product_id); OrderListService::Delete($orderList); header("Location: " . $_SERVER['HTTP_REFERER'] . ""); }
public static function PopulateOrderDetailViewModel($order) { $model = new OrderDetailViewModel(); $model->id = $order->order_id; $model->branch_name = BranchService::GetById($order->branch_id)->name; $model->date_order = $order->date_order->format('Y-m-d H:i:s'); $model->status_name = Statusorder::find(['statusorder_id' => $order->statusorder_id])->name; $model->account_name = AccountService::GetById($order->account_id)->account_name; $model->products = OrderListService::GetProductsByOrderId($order->order_id); return $model; }