void ComleteOrder(OrderMainPart order)
        {
            EmailSettings es = new EmailSettings();

            es.MailToAdress = order.ShippingDetails.Email;
            try
            {
                EmailOrderProcessor emailProc = new EmailOrderProcessor(es);
                emailProc.ProcessorOrder(order);
            }
            catch (Exception e)
            {
                System.Diagnostics.Debug.WriteLine(e.Message);
            }
        }
Esempio n. 2
0
        public object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
        {
            OrderMainPart CurrentOrder = null;

            if (controllerContext.HttpContext.Session != null)
            {
                CurrentOrder = (OrderMainPart)controllerContext.HttpContext.Session[sessionkey];
            }
            if (CurrentOrder == null)
            {
                CurrentOrder = new OrderMainPart();
                if (controllerContext.HttpContext.Session != null)
                {
                    controllerContext.HttpContext.Session[sessionkey] = CurrentOrder;
                }
            }
            return(CurrentOrder);
        }
        public void AddUserOrder(int userID, ShippingDetails shippingDetails)
        {
            try
            {
                var user = context.Users
                           .Include(x => x.Orders)
                           .Include(x => x.ShoppingCart)
                           .Include(x => x.ShoppingCart.Select(p => p.Product))
                           .FirstOrDefault(x => x.userID == userID);
                DateTime now     = DateTime.Now;
                DateTime timeNow = new DateTime(now.Year, now.Month, now.Day, now.Hour, now.Minute, 0);
                List <OrderExtension> extension = new List <OrderExtension>();
                foreach (var line in user.ShoppingCart)
                {
                    extension.Add(new OrderExtension {
                        Product = line.Product, Quantity = line.Quantity
                    });
                }
                OrderMainPart order = new OrderMainPart
                {
                    OrderTime       = timeNow,
                    User            = user,
                    ShippingDetails = shippingDetails,
                    OrderExtension  = extension
                };

                user.Orders.Add(order);
                context.CartLines.RemoveRange(user.ShoppingCart.AsEnumerable());
                context.SaveChanges();
                ComleteOrder(order);
            }
            catch (Exception e)
            {
                System.Diagnostics.Debug.WriteLine(e.Message);
            }
        }