Example #1
0
        public ProductViewModel GetByImg(int id)
        {
            Product product = _productsRepository.GetByImg(id);

            ViewModels.ProductViewModel productViewModel = MapToViewModel(product);
            return(productViewModel);
        }
Example #2
0
 // truyền vào 1 product viewmodel và tạo mới
 // = namespace WatchShopSolution.Application.ViewModels
 public async Task Create(ViewModels.ProductViewModel productViewModel)
 {
     _context.Products.Add(new Product
     {
         Name        = productViewModel.Name,
         Description = productViewModel.Description,
         Value       = productViewModel.Value
     });
     await _context.SaveChangesAsync();
 }
        public ActionResult GetProduct(int id)
        {
            var product = Products.GetProduct(id);

            if (product != null)
            {
                var model = new ViewModels.ProductViewModel();
                Mapper_.Map(product, model);
                return(Json(model, JsonRequestBehavior.AllowGet));
            }
            return(View("Error"));
        }
Example #4
0
        private ViewModels.ProductViewModel StageProduct(ProductData data, string group, string connectionId)
        {
            ViewModels.ProductViewModel resVm = new ViewModels.ProductViewModel();
            int dangerIdx = 0;

            if (string.IsNullOrEmpty(group))
            {
                resVm.ErrorMessage = "stageProduct - no groupname given....";
                resVm.ErrorNumber  = 7710;
                return(resVm);
            }

            if (Utils.ValidationUtils.IsDangerousString(group, out dangerIdx))
            {
                resVm.ErrorMessage = "invalid groupname given....";
                resVm.ErrorNumber  = 7710;
                return(resVm);
            }

            List <string> vmessages = new List <string>();

            if (Utils.ProductUtils.IsValidProductData(data, out vmessages))
            {
                var newProduct = productRepository.ProductAddOrUpdate(new ViewModels.ProductViewModel()
                {
                    Name        = data.Name,
                    Description = data.Description,
                    Owner       = userRepository.GetUserFromSignalR(connectionId),
                    Price       = data.Price,
                    PartNumber  = data.PartNumber
                });

                GlobalHost.ConnectionManager.GetHubContext <ServiceHub>().Clients.Group(group).productStaged(newProduct.ToProductViewModel());
                resVm.Identifier = newProduct.ProductIdentifier;
                resVm.Name       = newProduct.Name;
                resVm.Owner      = newProduct.Owner.ToUserDataViewModel();
                resVm.Price      = newProduct.Price;
            }
            resVm.ErrorMessage = vmessages.FirstOrDefault();;
            return(resVm);
        }
        public ActionResult Search(string search, string sort)
        {
            var model = new ViewModels.ProductViewModel();

            using (var db = new ECommerceDB())
            {
                model.ProductList.AddRange(db.Products
                                           .Select(x => new ViewModels.ProductViewModel.ProductListViewModel
                {
                    Name        = x.Name,
                    Description = x.Beskrivning,
                    Price       = x.Price,
                    CategoryId  = x.CategoryId,
                    ProductId   = x.Id
                }).Where(x => x.Name.Contains(search) || x.Description.Contains(search)));
                if (sort == "NamnAsc")
                {
                    model.ProductList = model.ProductList.OrderBy(p => p.Name).ToList();
                }
                else if (sort == "NamnDesc")
                {
                    model.ProductList = model.ProductList.OrderByDescending(p => p.Name).ToList();
                }


                if (sort == "PriceAsc")
                {
                    model.ProductList = model.ProductList.OrderBy(p => p.Price).ToList();
                }
                else if (sort == "PriceDesc")
                {
                    model.ProductList = model.ProductList.OrderByDescending(p => p.Price).ToList();
                }
                model.Search = search;


                model.CurrentSort = sort;
                return(View(model));
            }
        }
        public ActionResult Index(int id, string sort)
        {
            var model = new ViewModels.ProductViewModel();

            using (var db = new ECommerceDB())
            {
                model.CategoryName = string.Join("", db.ProductCategories.Where(x => x.Id == id).Select(x => x.Name));
                model.ProductList.AddRange(db.Products
                                           .Select(x => new ViewModels.ProductViewModel.ProductListViewModel
                {
                    Name        = x.Name,
                    Description = x.Beskrivning,
                    Price       = x.Price,
                    CategoryId  = x.CategoryId,
                    ProductId   = x.Id
                }).Where(x => x.CategoryId == id));
                if (sort == "NamnAsc")
                {
                    model.ProductList = model.ProductList.OrderBy(p => p.Name).ToList();
                }
                else if (sort == "NamnDesc")
                {
                    model.ProductList = model.ProductList.OrderByDescending(p => p.Name).ToList();
                }


                if (sort == "PriceAsc")
                {
                    model.ProductList = model.ProductList.OrderBy(p => p.Price).ToList();
                }
                else if (sort == "PriceDesc")
                {
                    model.ProductList = model.ProductList.OrderByDescending(p => p.Price).ToList();
                }


                model.CurrentSort = sort;
                return(View(model));
            }
        }
Example #7
0
 public string PostReq(ViewModels.ProductViewModel product)
 {
     return(product.Name);
 }