Пример #1
0
        // GET: Order
        public ActionResult Index()
        {
            Customer            user    = this.getCustomer();
            FlowerOrderManager  manager = new FlowerOrderManager();
            IList <FlowerOrder> list    = manager.GetFlowerOrdersByCustomer(user.Id);

            return(View(list));
        }
Пример #2
0
        // GET: Report/Purchases

        public ActionResult Purchases(int?customerId)
        {
            FlowerOrderManager           manager = new FlowerOrderManager();
            IList <FlowerPurchaseReport> report  = new List <FlowerPurchaseReport>();

            if (customerId.HasValue)
            {
                report = manager.FlowerPurchaseReport(customerId.Value);
            }

            ViewBag.customers = new CustomerManager().GetCustomers();
            return(View(report));
        }
Пример #3
0
        // GET: Order/Details/5
        public ActionResult Details(int id)
        {
            FlowerOrderManager manager = new FlowerOrderManager();
            FlowerOrder        model   = manager.GetFlowerOrderById(id);

            IList <Flower> flowers = new FlowerManager().GetFlowers();

            model.OrderItems = manager.GetOrderItems(model.Id);
            foreach (OrderItem orderItem in model.OrderItems)
            {
                orderItem.Flower = flowers.First(f => f.Id == orderItem.FlowerId);
            }

            return(View(model));
        }
Пример #4
0
        public ActionResult Checkout(FlowerOrder order)
        {
            try
            {
                Customer            user         = this.getCustomer();
                ShoppingCartManager cartManager  = new ShoppingCartManager();
                FlowerOrderManager  orderManager = new FlowerOrderManager();
                order.CustomerId    = user.Id;
                order.CreatedAt     = DateTime.Now;
                order.ProcessStatus = FlowerOrder.UNDER_PROCESS;

                orderManager.CreateOrder(order);
                // refetching just created order from db,
                // since id property is required for the following logic
                order = orderManager.GetLastFlowerOrderFOrCustomer(user.Id);

                IList <ShoppingCartItem> cartItems = cartManager.GetItemsByCustomer(user.Id);
                foreach (ShoppingCartItem cartItem in cartItems)
                {
                    OrderItem orderItem = new OrderItem()
                    {
                        OrderId  = order.Id,
                        FlowerId = cartItem.FlowerId,
                        Quantity = cartItem.Quantity
                    };
                    orderManager.CreateOrderItem(orderItem);
                    // delete cart item afterwards
                    cartManager.DeleteItem(cartItem.Id, user.Id);
                }
                return(RedirectToAction("Index"));
            }
            catch
            {
                return(View());
            }
        }