예제 #1
0
        public IActionResult Submit()
        {
            using (var transaction = _db.Database.BeginTransaction()){
                _db.Orders.Add(new Order()
                {
                    OrderCreated = UsersOrder.Storage().OrderCreated,
                    LocationId   = UsersOrder.Storage().Location.Id,
                    UserId       = CurrentUser.Storage().Id
                });

                _db.SaveChanges();
                var fetchOrderId = _db.Orders.Single(o => o.OrderCreated == UsersOrder.Storage().OrderCreated).Id;
                foreach (var PizzaObject in UsersOrder.Storage().Pizzas)
                {
                    _db.Pizzas.Add(new Pizza()
                    {
                        CrustId     = PizzaObject.Crust.Id,
                        SizeId      = PizzaObject.Size.Id,
                        Cost        = PizzaObject.Cost,
                        Description = PizzaObject.Description,
                        OrderId     = fetchOrderId
                    });
                }
                _db.SaveChanges();
                transaction.Commit();
            }
            CurrentUser.Storage().UserAbleToOrder = false;
            UsersOrder.DeleteStorage();
            //remove order infomation
            return(RedirectToAction("Receipt", "Order"));
        }
예제 #2
0
        public Pizza Post(Pizza pizza)
        {
            pizza.PizzaToppings = null;
            _context.Pizzas.Add(pizza);
            _context.SaveChanges();

            return(pizza);
        }
예제 #3
0
        public bool PostOrder(Store store, User user)
        {
            var o = new Order();

            o.OrderId = GetOrders().Count() + 1;
            o.StoreId = store.StoreId;
            o.UserId  = user.UserId;

            _db.Order.Add(o);
            return(_db.SaveChanges() == 1);
        }
예제 #4
0
        public IActionResult Create(Crust crust)
        {
            if (ModelState.IsValid)
            {
                _db.Crusts.Add(crust);
                _db.SaveChanges();

                return(RedirectToAction("Read"));
            }

            return(View());
        }
예제 #5
0
        public domain.User CreateUser(string email)
        {
            var entUser = new User();

            domain.User newUser = new domain.User();
            entUser.Email = email;
            newUser.Email = email;

            _db.Add(entUser);
            _db.SaveChanges();
            newUser.Id = entUser.UserId;

            return(newUser);
        }
        public OrderModel Create(int userId, int storeId)
        {
            OrderModel order = new OrderModel()
            {
                User  = _db.Users.SingleOrDefault(u => u.Id == userId),
                Store = _db.Stores.SingleOrDefault(s => s.Id == storeId),
            };

            order.Name = order.User.Name;

            _db.Orders.Add(order);
            _db.SaveChanges();
            return(order);
        }
예제 #7
0
 public void AddSize(Size size)
 {
     if (db.Sizes.Any(s => s.SizeName == size.SizeName) || size.SizeName == null)
     {
         Console.WriteLine($"Size {size.SizeName} already exists and cannot be added");
         return;
     }
     else
     {
         Console.WriteLine($"Adding size {size.SizeName}...");
         db.Sizes.Add(Mapper.MapSize(size));
         db.SaveChanges();
         Console.WriteLine($"Size {size.SizeName} added successfully");
     }
 }
 public void AddStore(Store store)
 {
     if (db.Stores.Any(s => s.StoreLocation == store.StoreLocation) || store.StoreLocation == null)
     {
         Console.WriteLine($"Store {store.StoreLocation} already exists and cannot be added");
         return;
     }
     else
     {
         Console.WriteLine($"Adding store {store.StoreLocation}...");
         db.Stores.Add(Mapper.MapStore(store));
         db.SaveChanges();
         Console.WriteLine($"Store {store.StoreLocation} added successfully");
     }
 }
 public void AddCrust(CrustType crust)
 {
     if (db.CrustTypes.Any(c => c.CrustName == crust.CrustName))
     {
         Console.WriteLine($"Crust type {crust.CrustName} already exists and cannot be added");
         return;
     }
     else
     {
         Console.WriteLine($"Adding crust type {crust.CrustName}...");
         db.CrustTypes.Add(Mapper.MapCrustType(crust));
         db.SaveChanges();
         Console.WriteLine($"Crust type {crust.CrustName} added successfully");
     }
 }
 public void AddPresetPizza(PresetPizza pizza)
 {
     if (db.PresetPizzas.Any(p => p.PresetName == pizza.PresetName) || pizza.PresetName == null)
     {
         Console.WriteLine($"Preset pizza {pizza.PresetName} already exists and cannot be added");
         return;
     }
     else
     {
         Console.WriteLine($"Adding preset pizza {pizza.PresetName}...");
         db.PresetPizzas.Add(Mapper.MapPresetPizza(pizza));
         db.SaveChanges();
         Console.WriteLine($"User {pizza.PresetName} added successfully");
     }
 }
예제 #11
0
 public void AddOrder(Order order)
 {
     if (db.Orders.Any(o => o.OrderId == order.OrderId))
     {
         Console.WriteLine($"Order with ID {order.OrderId} already exists and cannot be added");
         return;
     }
     else
     {
         Console.WriteLine($"Adding order...");
         db.Orders.Add(Mapper.MapOrder(order));
         db.SaveChanges();
         Console.WriteLine($"Order added successfully");
     }
 }
예제 #12
0
        public bool SubmitOrder(int customerID, int restaurantID)
        {
            currOrder = new Orders();

            currOrder.CustomerId   = customerID;
            currOrder.RestaurantId = restaurantID;
            currOrder.TotalPrice   = GetSubtotal();

            // add order
            db.Orders.Add(currOrder);
            db.SaveChanges();

            // add to orderpizzasmap
            int currOrderID = currOrder.OrderId;

            Dictionary <int, int> pizzaIDCount = new Dictionary <int, int>();

            foreach (Pizza p in currPizzas)
            {
                if (pizzaIDCount.ContainsKey(p.PizzaId))
                {
                    // already in dict
                    pizzaIDCount[p.PizzaId]++;
                }
                else
                {
                    pizzaIDCount.Add(p.PizzaId, 1);
                }
            }

            var currPizzasDistinct = currPizzas.Select(p => p.PizzaId).Distinct();

            foreach (int pizzaId in currPizzasDistinct)
            {
                db.OrderPizzasMap.Add(new OrderPizzasMap()
                {
                    OrderId = currOrderID, PizzaId = pizzaId, Quantity = pizzaIDCount[pizzaId]
                });
            }
            db.SaveChanges();

            Console.WriteLine("\n" + "You dropped $ " + currOrder.TotalPrice.Value.ToString("0.00"));
            Console.ReadKey(true);
            RemoveCurrOrder();


            return(true);
        }
        public bool RegisterCustomer(string username, string password, string fname, string lname)
        {
            // change name to proper case
            string fistnameTitle = textInfo.ToTitleCase(fname);
            string lastnameTitle = textInfo.ToTitleCase(lname);

            Customers c = new Customers();

            c.Username  = username;
            c.Password  = password;
            c.FirstName = fistnameTitle;
            c.LastName  = lastnameTitle;


            db.Customers.Add(c);

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateException e)
            {
                // fail
                // log exception

                return(false);
            }
            catch (Exception e)
            {
                return(false);
            }
            // success
            return(true);
        }
        public Customer Post(Customer customer)
        {
            _context.Customers.Add(customer);
            _context.SaveChanges();

            return(customer);
        }
예제 #15
0
        public bool Put(T right, PizzaBoxDbContext ctx)
        {
            T left = this.Get(right.GetID());

            left = right;
            return(ctx.SaveChanges() >= 1);
        }
예제 #16
0
        public IActionResult Data(Pizza pizza, Crust crust, Size size, List <string> toppings)
        {
            int count = int.Parse(TempData["ToppingCount"].ToString());

            pizza.Name = TempData["PizzaName"].ToString();
            crust.Name = TempData["CrustName"].ToString();
            size.Name  = TempData["SizeName"].ToString();

            switch (count)
            {
            case 1:
                toppings.Add(TempData["ToppingName"].ToString());
                break;

            case 2:
                toppings.Add(TempData["ToppingName"].ToString());
                toppings.Add(TempData["ToppingName1"].ToString());
                break;

            case 3:
                toppings.Add(TempData["ToppingName"].ToString());
                toppings.Add(TempData["ToppingName1"].ToString());
                toppings.Add(TempData["ToppingName2"].ToString());
                break;

            case 4:
                toppings.Add(TempData["ToppingName"].ToString());
                toppings.Add(TempData["ToppingName1"].ToString());
                toppings.Add(TempData["ToppingName2"].ToString());
                toppings.Add(TempData["ToppingName3"].ToString());
                break;

            case 5:
                toppings.Add(TempData["ToppingName"].ToString());
                toppings.Add(TempData["ToppingName1"].ToString());
                toppings.Add(TempData["ToppingName2"].ToString());
                toppings.Add(TempData["ToppingName3"].ToString());
                toppings.Add(TempData["ToppingName4"].ToString());
                break;
            }


            pizza.Crust = _db.Crusts.ToList().Find(c => c.Name.Contains(crust.Name));
            pizza.Size  = _db.Sizes.ToList().Find(s => s.Name.Contains(size.Name));

            List <Topping> tops = new List <Topping>();

            for (int i = 0; i < count; i++)
            {
                tops.Add(_db.Toppings.ToList().Find(t => t.Name.Contains(toppings[i])));
            }

            pizza.Toppings = tops;

            _db.Pizzas.Add(pizza);
            _db.SaveChanges();

            return(RedirectToAction("Read"));
        }
        public void AddUser(User user)
        {
            //throw new NotImplementedException();

            if (db.Users.Any(u => u.UserName == user.UserName) || user.UserName == null)
            {
                Console.WriteLine($"User {user.UserName} already exists and cannot be added");
                return;
            }
            else
            {
                Console.WriteLine($"Adding user {user.UserName}...");
                db.Users.Add(Mapper.MapUser(user));
                db.SaveChanges();
                Console.WriteLine($"User {user.UserName} added successfully");
            }
        }
예제 #18
0
        public IActionResult CreateSize(Size s)
        {
            if (ModelState.IsValid)
            {
                try{
                    _db.Sizes.Add(s);
                    _db.SaveChanges();
                }
                catch
                {
                    return(RedirectToAction("WrongInput", "Pizza"));
                }

                return(RedirectToAction("Index", "Pizza"));
            }
            return(View());
        }
예제 #19
0
        //CREATE, READ, UPDATE, DELETE

        public void CreatePizza(PizzaModel pizza)
        {
            pizza.Crust = db.Crust.FirstOrDefault(c => c.Name == pizza.Crust.Name);
            pizza.Size  = db.Size.FirstOrDefault(s => s.Name == pizza.Size.Name);

            foreach (ToppingModel top in pizza.Toppings)
            {
                ToppingModel top2 = db.Topping.FirstOrDefault(t => t.Name == top.Name);

                db.PizzaToppings.Add(new PizzaToppings()
                {
                    Topping = top2, Pizza = pizza
                });
            }

            db.SaveChanges();
        }
예제 #20
0
 public void Create(string name)
 {
     _db.Users.Add(new UserModel()
     {
         Name = name
     });
     _db.SaveChanges();
 }
예제 #21
0
        public bool UpdateInventory(Store store, Pizza pizza, int new_inventory)
        {
            var sp = Get(store, pizza);

            sp.Inventory = new_inventory;

            _db.StorePizza.Update(sp);
            return(_db.SaveChanges() == 1);
        }
예제 #22
0
 public IActionResult SignUp(PizzaBox.Domain.Models.DbModels.User newUser)
 {
     if (ModelState.IsValid)
     {
         _db.Users.Add(newUser);
         _db.SaveChanges();
     }
     return(RedirectToActionPermanent("Index", "Home"));
 }
예제 #23
0
        public IActionResult Create(Size size)
        {
            if (ModelState.IsValid)
            {
                _db.Sizes.Add(size);
                _db.SaveChanges();

                return(RedirectToAction("Read"));
            }

            return(View());
        }
예제 #24
0
    public IActionResult Create(Location location)
    {
      if (ModelState.IsValid)
      {
        _db.Locations.Add(location);
        _db.SaveChanges();

        return RedirectToAction("Read");
      }
      
      return View();
    }
예제 #25
0
        public IActionResult Create(Topping topping)
        {
            if (ModelState.IsValid)
            {
                _db.Toppings.Add(topping);
                _db.SaveChanges();

                return(RedirectToAction("Read"));
            }

            return(View());
        }
예제 #26
0
        //CREATE

        public void AddPizzaUser(PizzaUser pizzauser)
        {
            if (db.PizzaUser.Any(e => e.Username == pizzauser.Username) || pizzauser.Username == null)
            {
                Console.WriteLine($"This username : {pizzauser.Username} already exists. Please choose another");
                return;
            }


            db.PizzaUser.Add(Mapper.Map(pizzauser));
            db.SaveChanges();
        }
예제 #27
0
        public IActionResult Create(User user)
        {
            if (ModelState.IsValid)
            {
                _db.Users.Add(user);
                _db.SaveChanges();

                return(RedirectToAction("Login"));
            }

            return(View());
        }
예제 #28
0
        public void AddPizzaStore(PizzaStore pizzastore)
        {
            if (db.PizzaStore.Any(e => e.Storename == pizzastore.Storename) || pizzastore.Storename == null)
            {
                Console.WriteLine($"This Storename : {pizzastore.Storename} already exists. Please choose another Storename or Sign Up");
                return;
            }


            db.PizzaStore.Add(Mapper.Map(pizzastore));
            db.SaveChanges();
        }
예제 #29
0
        public void AddUser(Users user)
        {
            if (db.User.Any(c => c.Username == user.Username) || user.Username == null)
            {
                Console.WriteLine($"Sorry! The username, {user.Username} , already exists");

                return;
            }
            else
            {
                db.User.Add(user);
                db.SaveChanges();
            }
        }
예제 #30
0
        // METHODS

        public void AddPizzaOrder(PizzaOrder pizzaorder) //(string username, string storename, float cost, int pid) {

        /*
         * check users last order location and place to see if they can order from new place
         * if (db.PizzaOrder.Any(e => (e.Username == pizzaorder.Username) & (e.OrderDate -DateTime(now )  //|| Ordered.Username == null)
         * {
         *  Console.WriteLine($"This order : {pizzaorder.Orderid} already exists. Please try again");
         *  return;
         * }
         */

        {
            db.PizzaOrder.Add(Mapper.Map(pizzaorder));
            db.SaveChanges();
        }