Exemple #1
0
 public RedirectToRouteResult AttributeValueEdit(int productId, AttributeViewModel attributeViewModel)
 {
     using (ShopDbDataContext db = new ShopDbDataContext())
     {
         foreach (KeyValuePair <string, string> attrVal in attributeViewModel.AttributeValuesDict)
         {
             var ifExistAttrValue = db.AttributeValues.First(av => av.ProductId == productId && av.AttributeId == int.Parse(attrVal.Key));
             if (ifExistAttrValue != null)
             {
                 ifExistAttrValue.Value = attrVal.Value;
                 db.SubmitChanges();
             }
             else
             {
                 AttributeValues attributeValues = new AttributeValues
                 {
                     ProductId   = productId,
                     AttributeId = int.Parse(attrVal.Key),
                     Value       = attrVal.Value
                 };
                 db.AttributeValues.InsertOnSubmit(attributeValues);
                 db.SubmitChanges();
             }
         }
     }
     return(RedirectToAction("ProductEdit", "Admin"));
 }
 public PartialViewResult GetListOfCategoriesPartial()
 {
     using (ShopDbDataContext db = new ShopDbDataContext())
     {
         ViewBag.Categories = db.Categories.ToList();
         return(PartialView());
     }
 }
 public ActionResult GetShopNamePartial()
 {
     using (ShopDbDataContext db = new ShopDbDataContext())
     {
         ViewBag.ShopName = db.AllNames.First(m => m.Name == "ShopName");
         return(PartialView());
     }
 }
Exemple #4
0
 public RedirectToRouteResult AttributeDelete(int id)
 {
     using (ShopDbDataContext db = new ShopDbDataContext())
     {
         var attributeToDelete = db.Attributes.First(c => c.Id == id);
         db.Attributes.DeleteOnSubmit(attributeToDelete);
         db.SubmitChanges();
     }
     return(RedirectToAction("AttributeEdit", "Admin"));
 }
Exemple #5
0
 public RedirectToRouteResult CategoryDelete(int id)
 {
     using (ShopDbDataContext db = new ShopDbDataContext())
     {
         var categoryToDelete = db.Categories.First(c => c.Id == id);
         db.Categories.DeleteOnSubmit(categoryToDelete);
         db.SubmitChanges();
     }
     return(RedirectToAction("CategoryEdit", "Admin"));
 }
Exemple #6
0
 public RedirectToRouteResult ProductDelete(int id)
 {
     using (ShopDbDataContext db = new ShopDbDataContext())
     {
         var productToDelete = db.Products.First(c => c.Id == id);
         db.Products.DeleteOnSubmit(productToDelete);
         db.SubmitChanges();
     }
     return(RedirectToAction("ProductEdit", "Admin"));
 }
Exemple #7
0
        public ActionResult CategoryEdit()
        {
            List <Categories> categories;

            using (ShopDbDataContext db = new ShopDbDataContext())
            {
                categories = db.Categories.ToList();
            }
            return(View(categories));
        }
Exemple #8
0
 public RedirectToRouteResult CategoryEdit(int id, string name)
 {
     using (ShopDbDataContext db = new ShopDbDataContext())
     {
         var categoryToEdit = db.Categories.First(c => c.Id == id);
         categoryToEdit.Name = name;
         db.SubmitChanges();
     }
     return(RedirectToAction("CategoryEdit", "Admin"));
 }
Exemple #9
0
 public RedirectToRouteResult PasswordEdit(RegisterUserViewModel registerUserViewModel)
 {
     using (ShopDbDataContext db = new ShopDbDataContext())
     {
         var userToChangePassword = db.ApplicationUsers.First(u => u.Id == registerUserViewModel.Id);
         userToChangePassword.PasswordHash = registerUserViewModel.GetPasswordHash();
         db.SubmitChanges();
     }
     return(RedirectToAction("UserEdit", "Admin"));
 }
Exemple #10
0
 public RedirectToRouteResult ManufacturerEdit(int id, string name)
 {
     using (ShopDbDataContext db = new ShopDbDataContext())
     {
         var manufacturerToEdit = db.Manufacturers.First(c => c.Id == id);
         manufacturerToEdit.Name = name;
         db.SubmitChanges();
     }
     return(RedirectToAction("ManufacturerEdit", "Admin"));
 }
Exemple #11
0
 public RedirectToRouteResult ManufacturerDelete(int id)
 {
     using (ShopDbDataContext db = new ShopDbDataContext())
     {
         var manufacturerToDelete = db.Manufacturers.First(c => c.Id == id);
         db.Manufacturers.DeleteOnSubmit(manufacturerToDelete);
         db.SubmitChanges();
     }
     return(RedirectToAction("ManufacturerEdit", "Admin"));
 }
Exemple #12
0
        public ActionResult ManufacturerEdit()
        {
            List <Manufacturers> manufacturers;

            using (ShopDbDataContext db = new ShopDbDataContext())
            {
                manufacturers = db.Manufacturers.ToList();
            }
            return(View(manufacturers));
        }
Exemple #13
0
        public ActionResult AttributeEdit()
        {
            AttributeViewModel attributeViewModel = new AttributeViewModel();

            using (ShopDbDataContext db = new ShopDbDataContext())
            {
                attributeViewModel.Attributes = db.Attributes.ToList();
                attributeViewModel.Categories = db.Categories.ToList();
            }
            return(View(attributeViewModel));
        }
Exemple #14
0
 public RedirectToRouteResult AttributeEdit(int id, string name, int categoryId)
 {
     using (ShopDbDataContext db = new ShopDbDataContext())
     {
         var attributeToEdit = db.Attributes.First(c => c.Id == id);
         attributeToEdit.Name       = name;
         attributeToEdit.CategoryId = categoryId;
         db.SubmitChanges();
     }
     return(RedirectToAction("AttributeEdit", "Admin"));
 }
Exemple #15
0
 public RedirectToRouteResult ManufacturerCreate(string name)
 {
     using (ShopDbDataContext db = new ShopDbDataContext())
     {
         Manufacturers newManufacturer = new Manufacturers
         {
             Name = name
         };
         db.Manufacturers.InsertOnSubmit(newManufacturer);
         db.SubmitChanges();
     }
     return(RedirectToAction("ManufacturerEdit", "Admin"));
 }
Exemple #16
0
 public RedirectToRouteResult CategoryCreate(string name)
 {
     using (ShopDbDataContext db = new ShopDbDataContext())
     {
         Categories newCategory = new Categories
         {
             Name = name
         };
         db.Categories.InsertOnSubmit(newCategory);
         db.SubmitChanges();
     }
     return(RedirectToAction("CategoryEdit", "Admin"));
 }
        public List <string> Validate(ShopDbDataContext db)
        {
            List <string> errors = new List <string>();

            if (db.ApplicationUsers.Any(u => u.UserName == this.UserName))  // Валидация UserName
            {
                errors.Add("Такой пользователь уже существует");
            }
            if (this.Password.Length < 6)  // Валидация длины пароля
            {
                errors.Add("Длина пароля должна быть больше 6 символов");
            }
            return(errors);
        }
Exemple #18
0
        public ActionResult UserEdit()
        {
            if (Session["userId"] == null || Session["isAdmin"].ToString() == false.ToString())
            {
                return(RedirectToAction("Index", "Shop"));
            }
            List <ApplicationUsers> users;

            using (ShopDbDataContext db = new ShopDbDataContext())
            {
                users = db.ApplicationUsers.ToList();
            }
            return(View(users));
        }
Exemple #19
0
 public RedirectToRouteResult AttributeCreate(string name, int categoryId)
 {
     using (ShopDbDataContext db = new ShopDbDataContext())
     {
         Attributes newAttribute = new Attributes
         {
             Name       = name,
             CategoryId = categoryId
         };
         db.Attributes.InsertOnSubmit(newAttribute);
         db.SubmitChanges();
     }
     return(RedirectToAction("AttributeEdit", "Admin"));
 }
Exemple #20
0
        public ActionResult AttributeValueEdit(int productId)
        {
            ProductViewModel productViewModel = new ProductViewModel();

            using (ShopDbDataContext db = new ShopDbDataContext())
            {
                productViewModel.Product         = db.Products.First(p => p.Id == productId);
                productViewModel.Manufacturer    = db.Manufacturers.First(m => m.Id == productViewModel.Product.ManufacturerId);
                productViewModel.Category        = db.Categories.First(c => c.Id == productViewModel.Product.CategoryId);
                productViewModel.Attributes      = db.Attributes.Where(a => a.CategoryId == productViewModel.Category.Id).ToList();
                productViewModel.AttributeValues = db.AttributeValues.Where(av => av.ProductId == productId).ToList();
            }
            return(View(productViewModel));
        }
        public ActionResult OrderDetails(int?id)
        {
            OrderViewModel orderViewModel = new OrderViewModel();

            using (ShopDbDataContext db = new ShopDbDataContext())
            {
                orderViewModel.Order         = db.Orders.First(o => o.Id == id);
                orderViewModel.ProductOrders = db.ProductOrders.Where(po => po.OrderId == id).ToList();
                var productsId = orderViewModel.ProductOrders.Select(po => po.ProductId).ToList();
                orderViewModel.Products = db.Products.Where(p => productsId.Contains(p.Id)).ToList();
                var manufId = orderViewModel.Products.Select(p => p.ManufacturerId).ToList();
                orderViewModel.Manufacturers = db.Manufacturers.Where(m => manufId.Contains(m.Id)).ToList();
            }
            return(View(orderViewModel));
        }
        public ActionResult Index(int?id)
        {
            if (id == null || id != int.Parse(Session["userId"].ToString()))
            {
                return(Redirect("/Shop/"));
            }
            UserViewModel userViewModel = new UserViewModel();

            using (ShopDbDataContext db = new ShopDbDataContext())
            {
                userViewModel.User   = db.ApplicationUsers.First(u => u.Id == id);
                userViewModel.Orders = db.Orders.Where(o => o.UserId == id).ToList();
            }
            return(View(userViewModel));
        }
Exemple #23
0
 public RedirectToRouteResult ProductCreate(Products newProduct, HttpPostedFileBase Image)
 {
     if (Image != null)
     {
         string newFileName = System.IO.Path.GetFileName(Image.FileName);
         using (ShopDbDataContext db = new ShopDbDataContext())
         {
             newProduct.Image = newFileName;
             db.Products.InsertOnSubmit(newProduct);
             db.SubmitChanges();
             Image.SaveAs(Server.MapPath("~/Content/Img/" + newFileName));
         }
     }
     return(RedirectToAction("AttributeValueEdit", "Admin", new { productId = newProduct.Id }));
 }
Exemple #24
0
 public RedirectToRouteResult UserEdit(RegisterUserViewModel user)
 {
     if (Session["userId"] == null || Session["isAdmin"].ToString() == false.ToString())
     {
         return(RedirectToAction("Index", "Shop"));
     }
     using (ShopDbDataContext db = new ShopDbDataContext())
     {
         var userToEdit = db.ApplicationUsers.First(u => u.Id == user.Id);
         userToEdit.UserName    = user.UserName;
         userToEdit.Email       = user.Email;
         userToEdit.PhoneNumber = user.PhoneNumber;
         userToEdit.Address     = user.Address;
         userToEdit.IsAdmin     = user.IsAdmin;
         db.SubmitChanges();
     }
     return(RedirectToAction("UserEdit", "Admin"));
 }
Exemple #25
0
 public RedirectToRouteResult UserDelete(int?id)
 {
     if (Session["userId"] == null || Session["isAdmin"].ToString() == false.ToString())
     {
         return(RedirectToAction("Index", "Shop"));
     }
     if (id != null)
     {
         using (ShopDbDataContext db = new ShopDbDataContext())
         {
             var userToDelete = db.ApplicationUsers.First(u => u.Id == id);
             db.ApplicationUsers.DeleteOnSubmit(userToDelete);
             db.SubmitChanges();
             return(RedirectToRoute("UserDeleteRoute"));
         }
     }
     return(RedirectToAction("UserDelete", "Admin"));
 }
        public ActionResult Cart()
        {
            CartViewModel cartViewModel = new CartViewModel();

            using (ShopDbDataContext db = new ShopDbDataContext())
            {
                if (Session["userId"] == null)
                {
                    return(Redirect("/Account/Login/"));
                }
                cartViewModel.Cart = db.Carts.Where(c => c.UserId == (int)Session["userId"]).ToList();
                var productsId = cartViewModel.Cart.Select(c => c.ProductId).ToList();
                cartViewModel.Products = db.Products.Where(p => productsId.Contains(p.Id)).ToList();
                var manufId = cartViewModel.Products.Select(p => p.ManufacturerId).ToList();
                cartViewModel.Manufacturers = db.Manufacturers.Where(m => manufId.Contains(m.Id)).ToList();
            }
            return(View(cartViewModel));
        }
Exemple #27
0
 public RedirectToRouteResult ProductEdit(Products editedProduct, HttpPostedFileBase Image)
 {
     using (ShopDbDataContext db = new ShopDbDataContext())
     {
         var productToEdit = db.Products.First(c => c.Id == editedProduct.Id);
         productToEdit.Name           = editedProduct.Name;
         productToEdit.ManufacturerId = editedProduct.ManufacturerId;
         productToEdit.CategoryId     = editedProduct.CategoryId;
         productToEdit.Price          = editedProduct.Price;
         if (Image != null)
         {
             string newFileName = System.IO.Path.GetFileName(Image.FileName);
             productToEdit.Image = newFileName;
             Image.SaveAs(Server.MapPath("~/Content/Img/" + newFileName));
         }
         db.SubmitChanges();
         return(RedirectToAction("AttributeValueEdit", "Admin", new { productId = productToEdit.Id }));
     }
 }
Exemple #28
0
 public ActionResult UserAdd(RegisterUserViewModel user)
 {
     if (Session["userId"] == null || Session["isAdmin"].ToString() == false.ToString())
     {
         return(RedirectToAction("Index", "Shop"));
     }
     if (ModelState.IsValid)
     {
         using (ShopDbDataContext db = new ShopDbDataContext())
         {
             var validateResult = user.Validate(db);
             if (validateResult.Count() > 0)  // В случае неуспешной валидации выводим ошибки
             {
                 foreach (string error in validateResult)
                 {
                     ModelState.AddModelError("", error);
                 }
                 return(View());
             }
             else
             {
                 ApplicationUsers newUser = new ApplicationUsers
                 {
                     UserName     = user.UserName,
                     PasswordHash = user.GetPasswordHash(),
                     Email        = user.Email,
                     PhoneNumber  = user.PhoneNumber,
                     Address      = user.Address,
                     IsAdmin      = user.IsAdmin
                 };
                 db.ApplicationUsers.InsertOnSubmit(newUser);
                 db.SubmitChanges();
                 return(RedirectToAction("Index", "Admin"));
             }
         }
     }
     else
     {
         return(View());
     }
 }
        public ActionResult Product(int?id)   // Страница продукта
        {
            if (id == null)
            {
                return(Redirect("/Shop/Index"));
            }
            ProductViewModel productViewModel = new ProductViewModel();

            using (ShopDbDataContext db = new ShopDbDataContext())
            {
                productViewModel.Product         = db.Products.FirstOrDefault(p => p.Id == id);
                productViewModel.Manufacturer    = productViewModel.Product.Manufacturers;
                productViewModel.Category        = productViewModel.Product.Categories;
                productViewModel.Attributes      = db.Attributes.Where(a => a.CategoryId == productViewModel.Category.Id).ToList();
                productViewModel.AttributeValues = db.AttributeValues.Where(av => av.ProductId == id).ToList();;
            }
            if (productViewModel.Product == null)
            {
                return(HttpNotFound());
            }
            return(View(productViewModel));
        }
        public ActionResult Order(CartViewModel cartViewModel)
        {
            if (Session["userId"] == null)
            {
                return(Redirect("/Account/Login/"));
            }
            OrderViewModel orderViewModel = new OrderViewModel();

            if (cartViewModel.ProductsToBuy == null)
            {
                return(Redirect("/shop/"));
            }
            using (ShopDbDataContext db = new ShopDbDataContext())
            {
                orderViewModel.UserId        = int.Parse(Session["userId"].ToString());
                orderViewModel.User          = db.ApplicationUsers.First(a => a.Id == orderViewModel.UserId);
                orderViewModel.Address       = orderViewModel.User.Address;
                orderViewModel.Phone         = orderViewModel.User.PhoneNumber;
                orderViewModel.Price         = cartViewModel.FinalSum;
                orderViewModel.ProductsToBuy = cartViewModel.ProductsToBuy;
            }
            return(View(orderViewModel));
        }