public IEnumerable<ProductViewModel> Create(ProductViewModel product) { using (var northwind = new Northwind()) { // Create a new Product entity and set its properties from target var target = new Product { ProductName = product.ProductName, UnitPrice = product.UnitPrice, UnitsInStock = product.UnitsInStock, Discontinued = product.Discontinued }; // Add the entity northwind.Products.AddObject(target); // Insert all created product to the database northwind.SaveChanges(); product.ProductID = target.ProductID; // Return the inserted product - the Kendo Grid needs their ProductID which is generated by SQL server during insertion return new[] { product }; } }
public ActionResult Details(ProductViewModel productDetails) { IEnumerable<Product> lstProduct = null; if (!string.IsNullOrEmpty(productDetails.PID)) { lstProduct = ProductService.FindBy(p => p.PID == productDetails.PID); } else { productDetails.ToDate = new DateTime(productDetails.ToDate.Year, productDetails.ToDate.Month, productDetails.ToDate.Day, 23, 59, 59); if (productDetails.ToDate.Year >= 1900 && productDetails.FromDate.Year >= 1900) { lstProduct = ProductService.FindBy(p => p.CreatedDate >= productDetails.FromDate && p.CreatedDate <= productDetails.ToDate); } else if (productDetails.ToDate.Year >= 1900 && productDetails.FromDate.Year <= 1900) { lstProduct = ProductService.FindBy(p => p.CreatedDate >= DateTime.MinValue && p.CreatedDate <= productDetails.ToDate); } else if (productDetails.ToDate.Year <= 1900 && productDetails.FromDate.Year >= 1900) { lstProduct = ProductService.FindBy(p => p.CreatedDate >= productDetails.FromDate && p.CreatedDate <= DateTime.MaxValue); } else { lstProduct = ProductService.FindBy(p => p.CreatedDate >= DateTime.MinValue && p.CreatedDate <= DateTime.MaxValue); } } productDetails.lstProducts = lstProduct; ViewBag.ResultMessage = lstProduct.Count() == 0 ? "No Record Found" : ""; return View(productDetails); }
public Product Map(ProductViewModel model) { return new Product { Name = model.Name, }; }
public Action Create(ProductViewModel productViewModel) { var product = _mapper.Map(productViewModel); ShoppingCart cart = _shoppingCartService.AddShoppingCart(product); return null; }
public ActionResult Index() { var productViewModel = new ProductViewModel(); productViewModel.Products = _productService.GetAllProducts().ToList(); return View(productViewModel); }
public static List<ProductViewModel> ProductListToProductViewModelList(List<Product> products, int userId, Vote vote) { List<ProductViewModel> prods = new List<ProductViewModel>(); int votedProductId = 0; if (vote != null) { votedProductId = vote.ProductId; } foreach (var item in products) { ProductViewModel prod = new ProductViewModel(); prod.Id = item.Id; prod.Name = item.Name; prod.Description = item.Description; prod.ImagePath = item.ImagePath; prod.VotesAmount = (item.Votes != null) ? item.Votes.Count() : 0; prod.ButtonClass = (item.Id == votedProductId) ? EnumDescription.GetEnumDescription(ButtonClass.Voted) : EnumDescription.GetEnumDescription(ButtonClass.Default); prod.EditActionLink = "/Home/Edit/" + item.Id; prods.Add(prod); } return prods; }
public async Task<ActionResult> Details(int? id) { if (id == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } var product = await _db.Products.Where(p => p.ProductId == id).Include(p => p.SoftwarePolicy).Include(p => p.ProductCategory).Include(p => p.ProductType).Include(p => p.LocalAccountVerification).Include(p => p.ProductsPermissions).FirstOrDefaultAsync(); if (product == null) { return HttpNotFound("Unable to retrieve the selected product"); } var productViewModel = new ProductViewModel(product); if (ContainsInvalid(productViewModel.Version)) { ViewBag.DetailTitle = productViewModel.Name; } else if (productViewModel.Name.Contains(productViewModel.Version)) { ViewBag.DetailTitle = productViewModel.Name; } else { ViewBag.DetailTitle = $"{productViewModel.Name} {productViewModel.Version}"; } return View(productViewModel); }
public ActionResult Products_Update([DataSourceRequest]DataSourceRequest request, ProductViewModel product) { if (ModelState.IsValid) { using (var northwind = new NorthwindEntities()) { // Create a new Product entity and set its properties from the posted ProductViewModel var entity = new Product { ProductID = product.ProductID, ProductName = product.ProductName, UnitsInStock = product.UnitsInStock }; // Attach the entity northwind.Products.Attach(entity); // Change its state to Modified so Entity Framework can update the existing product instead of creating a new one northwind.Entry(entity).State = EntityState.Modified; // Or use ObjectStateManager if using a previous version of Entity Framework // northwind.ObjectStateManager.ChangeObjectState(entity, EntityState.Modified); // Update the entity in the database northwind.SaveChanges(); } } // Return the updated product. Also return any validation errors. return Json(new[] { product }.ToDataSourceResult(request, ModelState)); }
public ActionResult About( int? id) { if (User.Identity.GetUserId() != null) { var productRepository = new ProductRepository(); var pvm = new ProductViewModel(); var gpab = productRepository.GetPeopleAlsoBought(id); pvm.PeopleAlsoBought = gpab; var idprod = productRepository.GetProductDetails(id); pvm.LargePhoto = idprod.LargePhoto; pvm.listPrice = idprod.listPrice; pvm.Name = idprod.Name; pvm.ProductId = idprod.ProductId; pvm.color = idprod.color; pvm.Weight = idprod.Weight; pvm.size = idprod.size; pvm.description = idprod.description; ViewBag.Message = "Your application description page."; return View(pvm); } else { return RedirectToAction("Login", "Account"); } }
public ActionResult AddOrEditNewProduct(ProductViewModel product) { if (string.IsNullOrEmpty(product.Name)) ModelState.AddModelError("Name", "Ange produktens namn"); if ((product.Prices == null || product.Prices.Count < 1) || product.Prices.First().Price == 0) ModelState.AddModelError("Prices", "Ange ett pris"); if (ModelState.IsValid) { var p = ProductHelper.ViewModelToModel(product); //Take a maximum of 5 prices p.Prices = p.Prices.Where(pr => pr.Price > 0).Take(5).ToList(); if (product.Id != null && Db.Products.GetProductById(product.Id) != null) { //if product isnot xatly the same!update Db.Products.UpdateProduct(p, product.Enterprise); return Json(new { success = true, method = "update" }); } Db.Products.AddProduct(p, product.CategoryId, product.Enterprise); return Json(new { success = true, method = "add" }); } return PartialView("~/Views/Partials/Menu/Edit/_Product.cshtml", product); }
public override ActionResult Index(RenderModel model) { var products = model.Content.Children(); var viewModel = new ProductFolderViewModel(); foreach (var productContent in products) { var productModel = new ProductViewModel(); productModel.Content= productContent.GetPropertyValue<string>("bodyText") .ScrubHtml() .Truncate(200, true, true); productModel.UrlName = productContent.UrlName; productModel.Title = productContent.Name; productModel.NumberOfComments = productContent.Descendants("Comment").Count(); viewModel.Products.Add(productModel); } if (Request.IsAjaxRequest()) { return Json(viewModel); } ViewBag.Model = viewModel; //Do some stuff here, then return the base method return base.Index(model); }
public ActionResult ProductCreate(ProductViewModel firstModel, StorageViewModel secondModel) { try { var product = new ProductBusinessModel() { Name = firstModel.Name, Price = firstModel.Price, StatusCode = firstModel.StatusCode }; _productBl.Add(product); var storage = new StorageBusinessModel() { ProductId = product.Id, Quantity = secondModel.Quantity }; _storageBl.Add(storage); return RedirectToAction("ProductIndex"); } catch { return View("Error"); } }
public ActionResult Index(string permalink) { /* var blogDAC = new BlogDAC(); List<BlogDTO> blogs = new List<BlogDTO>(); BlogViewModels blogModels = new BlogViewModels(); blogModels.Blogs = new List<BlogViewModel>(); blogs = blogDAC.ReadAllBlogs(); foreach (var blogDto in blogs) { var blogModel = new BlogViewModel(); blogModel.Description = blogDto.Description; blogModels.Blogs.Add(blogModel); }*/ var productDAC = new ProductDAC(); List<IProductDTO> products = new List<IProductDTO>(); ProductViewModel blogModels = new ProductViewModel(); blogModels.Products = new List<ProductItemViewModel>(); products = productDAC.ReadAllProducts(); foreach (var blogDto in products) { var blogModel = new ProductItemViewModel(); blogModel.Description = blogDto.Description; blogModel.Name = blogDto.Name; blogModel.SeoTitle = blogDto.SeoTitle; blogModel.ImageURL = blogDto.ImageURL; blogModels.Products.Add(blogModel); } return View(blogModels); }
public async Task<ActionResult> ProductList() { try { ParseQuery<ParseObject> query = ParseObject.GetQuery("Product"); IEnumerable<ParseObject> products = await query.FindAsync(); List<ProductViewModel> _products = new List<ProductViewModel>(); foreach (ParseObject p in products) { ProductViewModel product = new ProductViewModel(p); // Get specification from product Specification sp = new Specification(await p.Get<ParseObject>("specification").FetchIfNeededAsync()); // Add specification into product model product.setSpecification(sp); _products.Add(product); } return View(_products); } catch (ParseException) { return View(); } }
public ActionResult Details(string code) { RestClient<Product> productsRestClient = new RestClient<Product>("http://localhost:3001/"); var product = productsRestClient.Get("products/code/" + code).Result; // TODO: Fix this in EF product.Supplier = new Supplier { Id = product.SupplierId, Name = "My Supplier" }; var productViewModel = new ProductViewModel() { Id = product.Id, Code = product.Code, Name = product.DisplayName, Price = product.UnitPrice, SupplierName = product.Supplier.Name }; ProductViewModel another = Mapper.Map<ProductViewModel>(product); return View(another); }
public ActionResult Products_Destroy([DataSourceRequest]DataSourceRequest request, ProductViewModel product) { if (ModelState.IsValid) { using (var northwind = new NorthwindEntities()) { // Create a new Product entity and set its properties from the posted ProductViewModel var entity = new Product { ProductID = product.ProductID, ProductName = product.ProductName, UnitsInStock = product.UnitsInStock }; // Attach the entity northwind.Products.Attach(entity); // Delete the entity northwind.Products.Remove(entity); // Or use DeleteObject if using a previous versoin of Entity Framework // northwind.Products.DeleteObject(entity); // Delete the entity in the database northwind.SaveChanges(); } } // Return the removed product. Also return any validation errors. return Json(new[] { product }.ToDataSourceResult(request, ModelState)); }
/// <summary> /// Get Product Information /// </summary> /// <param name="viewModel"></param> /// <returns></returns> /// /// <summary> /// Product Inquiry /// </summary> /// <param name="viewModel"></param> /// <returns></returns> public ProductViewModel GetProductInformation(int productID) { Product product = new Product(); ProductViewModel productViewModel = new ProductViewModel(); if (productID == 0) { List<String> returnMessage = new List<String>(); returnMessage.Add("An invalid product ID was entered."); productViewModel.ReturnMessage = returnMessage; productViewModel.ReturnStatus = false; return productViewModel; } ProductDataAccessService productDataAccessService = new ProductDataAccessService(); product = productDataAccessService.GetProductInformation(productID); productViewModel.Product = product; productViewModel.ReturnStatus = true; if (product.ProductID == 0) { List<String> returnMessage = new List<String>(); returnMessage.Add(productID.ToString() + " is not a valid product ID"); productViewModel.ReturnMessage = returnMessage; productViewModel.ReturnStatus = false; } return productViewModel; }
/// <summary> /// Добавление курса в репозиторий /// </summary> /// <param name="product"></param> public void Add(ProductViewModel product) { product.CreatedDate = product.UpdatedDate = DateTime.Now; if (product.AssignedUserId == 0) product.AssignedUserId = null; productRepository.Add(ConvertFromProductViewModelToProduct(product)); }
public ProductViewModel GetProductViewModel(int? selectedCategoryId) { // Get categories var categories = _productService.GetCategories(); // Get products var products = _productService.GetProducts(selectedCategoryId); // Set selected category Category selectedCategory = null; int categoryId = selectedCategoryId.GetValueOrDefault(); if (categories.Count() > 0) { if (categoryId > 0) { selectedCategory = (from c in categories where c.CategoryId == categoryId select c).FirstOrDefault(); } } // Return product view model ProductViewModel productViewModel = new ProductViewModel { Categories = categories, SelectedCategory = selectedCategory, Products = products }; return productViewModel; }
public async Task<ActionResult> ProductList() { try { ParseQuery<ParseObject> query = ParseObject.GetQuery("Product"); IEnumerable<ParseObject> productList = await query.FindAsync(); List<ProductViewModel> _productList = new List<ProductViewModel>(); foreach (ParseObject p in productList) { ProductViewModel model = new ProductViewModel(p); ParseQuery<ParseObject> q = ParseObject.GetQuery("Specification"); ParseObject specification = await q.GetAsync(model.specification.specificationId); } return View(); } catch (ParseException pe) { return View(); } }
public ProductViewModel DefaultBrickData() { ProductViewModel productViewModel = new ProductViewModel(); productViewModel.Products = new List<ProductEntity>(); for (int i = 1; i < 8; i++) { var product = new ProductEntity(); product.Id = i; if(i%2 == 0) { product.Name = "Antique Stratford"; product.Description = "A look of modern elegance; Antique Stratford has a deep maroon body with a soft splash of white accent."; product.SampleImagePath = "brickSample.png"; product.Images = new List<string> {"AntiqueStratford_1.jpg", "AntiqueStratford_2.jpg", "AntiqueStratford_3.jpg"}; } else { product.Name = "Cambridge"; product.Description = "Cambridge is a traditional deep red brick boasting a uniform color with a classic marbled texture."; product.SampleImagePath = "brickSample.png"; product.Images = new List<string> { "Cambridge_1.jpg", "Cambridge_2.jpg", "Cambridge_3.jpg" }; } productViewModel.Products.Add(product); } return productViewModel; }
public ActionResult Create(ProductViewModel productViewModel) { try { if (ModelState.IsValid) { ViewBag.Message = "Valid"; var product = _dataMapper.GetWrapper<Product, ProductViewModel>(productViewModel); _uow.ProductRepository.Insert(product); _uow.Save(); return RedirectToAction("Index"); } ViewBag.Message = "Non Valid"; return View(); } catch { ViewBag.Message = "Non Valid"; return View(); } }
public async Task<IHttpActionResult> GetAll() { var user = await _authRepository.FindUser(HttpContext.Current.User as ClaimsPrincipal); var isAdmin = await _authRepository.IsAdmin(HttpContext.Current.User as ClaimsPrincipal); if (!isAdmin) { var userOrders = await _unitOfWork.Orders.FindAsync(o => o.UserId == user.Id); var orderedProducts = new List<ProductViewModel>(); foreach (var order in userOrders) { var viewModel = new ProductViewModel(); viewModel.Create(order.Product); orderedProducts.Add(viewModel); } return Ok(orderedProducts); } var allOrders = await _unitOfWork.Orders.GetAllAsync(); var allProducts = new List<ProductViewModel>(); foreach (var order in allOrders) { var viewModel = new ProductViewModel(); viewModel.Create(order.Product); viewModel.UserName = order.User.UserName; allProducts.Add(viewModel); } return Ok(allProducts); }
// // GET: /Shop/ public ActionResult Index() { if (Session["Cart"] == null) // haven't been to db yet { try { ProductViewModel prod = new ProductViewModel(); List<ProductViewModel> Prods = prod.GetAll(); if (Prods.Count() > 0) { CartItem[] myCart = new CartItem[Prods.Count]; // array int ctr = 0; // build CartItem array from List contents foreach (ProductViewModel p in Prods) { CartItem item = new CartItem(); item.ProdCd = p.ProdCode; item.ProdName = p.ProdName; item.Graphic = p.Graphic; item.Msrp = p.Msrp; item.Description = p.Description; item.Qty = 0; myCart[ctr++] = item; } Session["Cart"] = myCart; // load to session } } catch (Exception ex) { ViewBag.Message = "Catalogue Problem - " + ex.Message; } } return View(); }
public ActionResult Discontinue(ProductViewModel product) { RestClient<Product> productsRestClient = new RestClient<Product>("http://localhost:3001/"); var result = productsRestClient.Post("products/code/" + product.Code + "/discontinue", new Product { Id = product.Id }).Result; return RedirectToAction("Index") .WithSuccess("Product discontinued!"); }
public ProductViewModel GetCategoryProducts(string category) { ProductDataAccessService productDataAccessService = new ProductDataAccessService(); ProductViewModel viewModel = new ProductViewModel(); viewModel.Products = productDataAccessService.GetCategoryProducts(category); return viewModel; }
public ActionResult Index() { ProductViewModel vm = new ProductViewModel(); vm.HandleRequest(); return View(vm); }
public ProductViewModel GetProducts() { ProductDataAccessService productDataAccessService = new ProductDataAccessService(); ProductViewModel viewModel = new ProductViewModel(); viewModel.Products = productDataAccessService.GetProducts(); return viewModel; }
public ActionResult Edit([Bind(Include = "ProductID,Name,ProductNumber,ListPrice,Size,Weight")] Product product) { ProductViewModel prod = new ProductViewModel(); ProductDAL pd = new ProductDAL(); prod.AllProducts = pd.ListProducts(); prod.Product = product; return View("Index", prod); }
public ActionResult Create() { var model = new ProductViewModel(); PopulateSelectLists(model); return View(model); }
public bool AddProduct(ProductViewModel productVieWModel) { var model = Mapper.Map <Product>(productVieWModel); return(ProductRepository.AddProduct(model)); }
public bool UpdateProduct(ProductViewModel categoryVieWModel) { var model = Mapper.Map <Product>(categoryVieWModel); return(ProductRepository.UpdateProduct(model)); }
public ActionResult Index(SiteProduct currentContent) { var model = ProductViewModel.Create(currentContent); return(View(model)); }
public async Task <IActionResult> AddProduct([FromRoute] string incidentSignal, [FromBody] ProductViewModel newProduct) { try { var newSimsProduct = mapper.Map <SimsProduct>(newProduct); return(incidentSignal.ToLower() switch { IncidentOrSignalOrOnlineForm.Incidents => new OkObjectResult(await this.simsApp.Incidents.Products.Add(newProduct.HostId, newSimsProduct)), IncidentOrSignalOrOnlineForm.Signals => new OkObjectResult(await this.simsApp.Signals.Products.Add(newProduct.HostId, newSimsProduct)), IncidentOrSignalOrOnlineForm.OnlineForm => new OkObjectResult(await this.simsApp.OnlineForms.Products.Add(newProduct.HostId, newSimsProduct)), _ => BadRequest("Unknown route") }); }
protected override async Task OnInitializedAsync() { Products = await _ProductViewModel.GetAllProducts(); ProductViewModel = await _ProductViewModel.GetOrderProduct(ProductId); }
public ActionResult Products_Destroy([DataSourceRequest] DataSourceRequest request, ProductViewModel product) { this.Products.Delete(Mapper.Map <Product>(product)); return(this.Json(new[] { product }.ToDataSourceResult(request, this.ModelState))); }
//[HttpGet] public dynamic GetProduct(int?Product = -1) { var model = ProductViewModel.GetProductList(Product); return(model); }
public ActionResult Index(int id, string placeslug, string slug) { var product = _db.ProductRepository.GetByID(id); var place = _db.PlaceRepository.GetByID(product.PlaceId); string url = UrlBuilder.ProductUrl(id, product.Address.Trim().Replace(" ", "-").Replace("/", "-").Replace(".", "-").Replace("å", "a").Replace("ä", "a").Replace("ö", "o").Replace("!", "-").ToLower(), Resources.Resources.Url_Product, place.Name.Trim().Replace(" ", "-").Replace("/", "-").Replace(".", "-").Replace("å", "a").Replace("ä", "a").Replace("ö", "o").Replace("!", "-").ToLower()); if (place.Name.Trim().Replace(" ", "-").Replace("/", "-").Replace(".", "-").Replace("å", "a").Replace("ä", "a").Replace("ö", "o").Replace("!", "-").ToLower() != placeslug || product.Address.Trim().Replace(" ", "-").Replace("/", "-").Replace(".", "-").Replace("å", "a").Replace("ä", "a").Replace("ö", "o").Replace("!", "-").ToLower() != slug) { return(RedirectPermanent(url)); } var model = new ProductViewModel(); var user = _db.UserRepository.GetByID(product.SalesResponsibleId); model.Header = product.Address; model.PlaceHeader = GetPlaceHeader(product.PlaceId); model.Description = product.Description; model.ExternalLink = product.ExternalLink; model.ExternalPicLink = string.IsNullOrEmpty(product.ExternalPicLink) ? product.ExternalLink : product.ExternalPicLink; model.Images = GetBlobImages(id); model.TopImage = _topImage; model.LivingSpace = product.LivingSpace; model.NumberOfRooms = product.NumberOfRooms; model.SalesResponsibleName = GetResponsibleSales(user); model.Url = url; model.CustomerId = product.SalesResponsibleId; model.BrokerDescription = user.BrokerDescription; if (!string.IsNullOrEmpty(product.Lat) && !string.IsNullOrEmpty(product.Long)) { model.Lat = product.Lat; model.Long = product.Long; model.ShowMap = true; } if (product.YearBuilt.HasValue) { model.YearBuilt = product.YearBuilt.Value.Year; } if (product.Price.HasValue) { model.Price = product.Price.Value.ToString("C0", new System.Globalization.CultureInfo("fr-FR")); } if (product.MonthlyCharge.HasValue) { model.MonthlyCharge = product.MonthlyCharge.Value.ToString("C0", new System.Globalization.CultureInfo("fr-FR")); } if (product.SquareMeterPrice.HasValue) { model.SquareMeterPrice = product.SquareMeterPrice.Value.ToString("C0", new System.Globalization.CultureInfo("fr-FR")); } var breadcrumbs = new List <BreadCrumbItem>(); breadcrumbs = GetBreadCrumbs(place.Id, GetPlaceDisplayName(place, model.Host), product.Address); model.BreadCrumbs = breadcrumbs; model.PageTitle = string.Format("{0}, {1}", product.Address, GetPlaceDisplayName(place, model.Host)); return(View(model)); }
public dynamic GetProductById(int?Product = 0) { var model = ProductViewModel.GetProductById(Product); return(model); }
public ActionResult Editing_Create([DataSourceRequest] DataSourceRequest request, ProductViewModel product) { var results = new List <ProductViewModel>(); if (product != null && ModelState.IsValid) { productService.Create(product); results.Add(product); } return(Json(results.ToDataSourceResult(request, ModelState))); }
public IActionResult UpdateProduct(ProductViewModel model) { _productService.UpdateProduct(model); return(RedirectToAction("ModifyProduct", "Products")); }
public ActionResult Products_Create([DataSourceRequest] DataSourceRequest request, ProductViewModel product) { this.TempData["Categories"] = this.Cache.Get( "categories", () => this.Categories.GetAll() .Select(c => new SelectListItem { Value = c.Id.ToString(), Text = c.Name }) .ToList(), 30 * 60); var newId = 0; if (this.ModelState.IsValid) { var entity = new Product { Name = product.Name, Sku = product.Sku, Barcode = product.Barcode, HeigthInCm = product.HeigthInCm, WidthInCm = product.WidthInCm, WeightInGr = product.WeightInGr, DeliveryUnit = product.DeliveryUnit, MinDayOfExpiryInDays = product.MinDayOfExpiryInDays, IsBlocked = product.IsBlocked, SupplierId = this.UserProfile.Organization.Id }; this.Products.Add(entity); product.Id = entity.Id; } var productsToDisplay = this.Products.All() .Project() .To <ProductViewModel>() .FirstOrDefault(x => x.Id == newId); return(this.Json(new[] { productsToDisplay }.ToDataSourceResult(request, this.ModelState))); }
public ActionResult Editing_Destroy([DataSourceRequest] DataSourceRequest request, ProductViewModel product) { if (product != null) { productService.Destroy(product); } return(Json(ModelState.ToDataSourceResult())); }
public ActionResult Products_Update([DataSourceRequest] DataSourceRequest request, ProductViewModel product) { this.TempData["Categories"] = this.Cache.Get( "categories", () => this.Categories.GetAll() .Select(c => new SelectListItem { Value = c.Id.ToString(), Text = c.Name }) .ToList(), 30 * 60); if (this.ModelState.IsValid) { this.Products.Update(Mapper.Map <Product>(product)); } var postToDisplay = this.Products.All().Project() .To <ProductViewModel>() .FirstOrDefault(x => x.Id == product.Id); return(this.Json(new[] { postToDisplay }.ToDataSourceResult(request, this.ModelState))); }
private async Task <ProductViewModel> GetCaterers(ProductViewModel model) { model.Caterers = _mapper.Map <IEnumerable <CatererViewModel> >(await _repoCaterer.GetAll()); return(model); }
public ActionResult Editing_Update([DataSourceRequest] DataSourceRequest request, ProductViewModel product) { if (product != null && ModelState.IsValid) { productService.Update(product); } return(Json(ModelState.ToDataSourceResult())); }
public dynamic AddProducts(Product product) { var model = ProductViewModel.AddProduct(product); return(model); }
public dynamic UpdateProducts(Product product) { var model = ProductViewModel.UpdateProductData(product); return(model); }
public async Task <IActionResult> InsertProductConfirm(ProductViewModel model) { string nvm; var currentUser = await userManager.FindByNameAsync(User.Identity.Name); if (ModelState.IsValid == false) { nvm = NotificationHandler.SerializeMessage <string>(NotificationHandler.Wrong_Values, contentRootPath); return(RedirectToAction("ShowProduct", new { notification = nvm })); } //Check Unique Product Code -- Start var IsCodeExist = dbProductFeature.GetAll().Where(e => e.ProductCode == model.Code).FirstOrDefault(); if (IsCodeExist != null) { nvm = NotificationHandler.SerializeMessage <string>(NotificationHandler.DuplicatedValue, contentRootPath); return(RedirectToAction("ShowProduct", new { notification = nvm })); } //Check Unique Product Code -- End try { ProductAbstract productAbstract = new ProductAbstract() { Name = model.Name, BrandId = model.BrandI, CategoryId = model.CategoryId, Status = model.Status, UserId = currentUser.Id, BasePrice = model.BasePrice, ContentAvailable = model.ContentAvailable, RegDateTime = DateTime.Now }; int id = dbProductAbstract.Insert(productAbstract); ProductFeature productFeature = new ProductFeature() { ProductAbstractId = id, ProductCode = model.Code, Status = model.Status, UserId = currentUser.Id, RegDateTime = DateTime.Now, Count = 10 }; dbProductFeature.Insert(productFeature); //Insert Main Image - Start if (model.MainImage != null) { ProductImage productImage = new ProductImage() { ProductId = id, UserId = currentUser.Id, GrayScale = false, Compressed = false, IsMainImage = true }; string folderPath = _configuration.GetSection("DefaultPaths").GetSection("ProductImage").Value; string savePath = await FileManager.SaveImageInDirectory(contentRootPath, folderPath, model.MainImage, true, id); string thumnailSavePath = FileManager.SaveThumbnail(savePath, contentRootPath, folderPath, ImageFormat.Png, true, id); productImage.ImagePath = savePath; productImage.ImageThumbnailPath = thumnailSavePath; dbProductImage.Insert(productImage); } //Insert Main Image - End //Insert Other Images -Start if (model.img != null) { foreach (var item in model.img) { ProductImage productImage = new ProductImage() { ProductId = id, UserId = currentUser.Id, GrayScale = false, Compressed = false }; string folderPath = _configuration.GetSection("DefaultPaths").GetSection("ProductImage").Value; string savePath = await FileManager.SaveImageInDirectory(contentRootPath, folderPath, item, true, id); string thumnailSavePath = FileManager.SaveThumbnail(savePath, contentRootPath, folderPath, ImageFormat.Png, true, id); productImage.ImagePath = savePath; productImage.ImageThumbnailPath = thumnailSavePath; dbProductImage.Insert(productImage); } } //Insert Other Images -End nvm = NotificationHandler.SerializeMessage <string>(NotificationHandler.Success_Insert, contentRootPath); return(RedirectToAction("ShowProduct", new { notification = nvm })); } catch (Exception) { nvm = NotificationHandler.SerializeMessage <string>(NotificationHandler.Failed_Insert, contentRootPath); return(RedirectToAction("ShowProduct", new { notification = nvm })); } }
public async Task <IActionResult> EditProductConfirm(ProductViewModel model) { string nvm; int id = model.Id; var currentUser = await userManager.FindByNameAsync(User.Identity.Name); if (ModelState.IsValid == false) { nvm = NotificationHandler.SerializeMessage <string>(NotificationHandler.Wrong_Values, contentRootPath); return(RedirectToAction("ShowProduct", new { notification = nvm })); } try { var entityProductAbstract = dbProductAbstract.GetInclude(e => e.ProductImage).Where(e => e.Id == model.Id).FirstOrDefault(); if (entityProductAbstract != null) { entityProductAbstract.Name = model.Name; entityProductAbstract.BrandId = model.BrandI; entityProductAbstract.CategoryId = model.CategoryId; entityProductAbstract.Status = model.Status; entityProductAbstract.UserId = currentUser.Id; entityProductAbstract.BasePrice = model.BasePrice; entityProductAbstract.ContentAvailable = model.ContentAvailable; } var entityProductFeature = dbProductFeature.GetAll().Where(e => e.ProductAbstractId == id).FirstOrDefault(); if (entityProductFeature != null) { entityProductFeature.ProductAbstractId = id; entityProductFeature.ProductCode = model.Code; entityProductFeature.Status = model.Status; entityProductFeature.UserId = currentUser.Id; } //Insert Main Image - Start if (model.MainImage != null) { var _mainImage = entityProductAbstract.ProductImage.Where(e => e.IsMainImage == true); if (_mainImage.FirstOrDefault() != null) { var mainImage = _mainImage.FirstOrDefault(); bool status = dbProductImage.DeleteById(mainImage.Id); if (status) { bool imgDel = FileManager.DeleteFile(contentRootPath, mainImage.ImagePath); bool thumbnailImgDel = FileManager.DeleteFile(contentRootPath, mainImage.ImageThumbnailPath); ProductImage productImage = new ProductImage() { ProductId = id, UserId = currentUser.Id, GrayScale = false, Compressed = false, IsMainImage = true }; string folderPath = _configuration.GetSection("DefaultPaths").GetSection("ProductImage").Value; string savePath = await FileManager.SaveImageInDirectory(contentRootPath, folderPath, model.MainImage, true, id); string thumnailSavePath = FileManager.SaveThumbnail(savePath, contentRootPath, folderPath, ImageFormat.Png, true, id); productImage.ImagePath = savePath; productImage.ImageThumbnailPath = thumnailSavePath; dbProductImage.Insert(productImage); } } } //Insert Main Image - End //Insert Other Images -Start if (model.img != null) { foreach (var item in model.img) { ProductImage productImage = new ProductImage() { ProductId = id, UserId = currentUser.Id, GrayScale = false, Compressed = false }; string folderPath = _configuration.GetSection("DefaultPaths").GetSection("ProductImage").Value; string savePath = await FileManager.SaveImageInDirectory(contentRootPath, folderPath, item, true, id); string thumnailSavePath = FileManager.SaveThumbnail(savePath, contentRootPath, folderPath, ImageFormat.Png, true, id); productImage.ImagePath = savePath; productImage.ImageThumbnailPath = thumnailSavePath; dbProductImage.Insert(productImage); } } //Insert Other Images -End dbProductAbstract.Update(entityProductAbstract); dbProductFeature.Update(entityProductFeature); nvm = NotificationHandler.SerializeMessage <string>(NotificationHandler.Success_Update, contentRootPath); return(RedirectToAction("ShowProduct", new { notification = nvm })); } catch (Exception) { nvm = NotificationHandler.SerializeMessage <string>(NotificationHandler.Failed_Update, contentRootPath); return(RedirectToAction("ShowProduct", new { notification = nvm })); } }
public bool UpdateProduct(ProductViewModel model) { try { ProductImage image = new ProductImage(); Product product = new Product(); if (model.ProductImageId != null && model.ProductImage != null) { image = _context.ProductImage.Where(x => x.ProductImageId == model.ProductImageId).FirstOrDefault(); byte[] imageByte = new byte[model.ProductImage.Length]; using (var memoryStream = new MemoryStream()) { model.ProductImage.CopyTo(memoryStream); imageByte = memoryStream.ToArray(); } image.Image = imageByte; _context.ProductImage.Update(image); _context.SaveChanges(); product.ProductImageId = image?.ProductImageId; } if (model.ProductImageId == null && model.ProductImage != null) { byte[] imageByte; using (var memoryStream = new MemoryStream()) { model.ProductImage.CopyTo(memoryStream); imageByte = memoryStream.ToArray(); } image = new ProductImage { Image = imageByte }; _context.ProductImage.Add(image); _context.SaveChanges(); product.ProductImageId = image?.ProductImageId; } product = _context.Product.Where(x => x.ProductId == model.Id).FirstOrDefault(); product.ProductName = model.ProductName; product.Price = model.Price; product.SerialNumber = model.SerialNumber; product.ProductCategoryId = model.ProductCategoryID; product.ShopId = model.ShopID; _context.Product.Update(product); _context.SaveChanges(); return(true); } catch (Exception) { return(false); } }
public ActionResult ThankYouBuyProduct(ProductViewModel model) { return(View(model)); }
public ActionResult Women() { try { DBEntities db = new DBEntities(); var perfumes = db.Perfumes.Where(x => x.Type == 2).ToList <Perfume>(); if (Request.IsAuthenticated) { string userId = User.Identity.GetUserId(); var result = (from a in db.Carts join b in db.Perfumes on a.ProductId equals b.Id where a.UserId == userId select new CartViewModel { Id = a.Id, ProductId = a.ProductId, ProductName = b.Name, Price = b.Price, Quantity = a.Quantity, Image = b.Image }).ToList <CartViewModel>(); ViewData["cart"] = result; var customCart = (from a in db.CustomOrders join b in db.CustomOrderScents on a.Id equals b.CustomOrderId where a.UserId == userId select new CustomCartViewModel { Id = a.Id, Name = a.Name, Quantity = a.Quantity, Size = a.BottleSize, ScentId = b.ScentId }).ToList <CustomCartViewModel>(); List <CustomCartViewModel> noDuplicate = new List <CustomCartViewModel>(); List <int?> noDup = new List <int?>(); foreach (var i in customCart) { if (noDup.Contains(i.Id)) { foreach (CustomCartViewModel k in noDuplicate) { if (i.Id == k.Id) { var scnt = db.Scents.Where(x => x.Id == i.ScentId).FirstOrDefault(); k.ScentList.Add(scnt); } } } else { var scnt = db.Scents.Where(x => x.Id == i.ScentId).FirstOrDefault(); i.ScentList.Add(scnt); noDuplicate.Add(i); noDup.Add(i.Id); } } ViewData["customCart"] = noDuplicate; } var latest = db.Perfumes.Take(5).ToList <Perfume>(); List <ProductViewModel> products = new List <ProductViewModel>(); foreach (var i in latest as List <Perfume> ) { ProductViewModel pr = new ProductViewModel() { Id = i.Id, Name = i.Name, Price = i.Price, Photo = i.Image }; products.Add(pr); } ViewData["latest"] = products; ViewData["all"] = perfumes; } catch (Exception exp) { return(Content(exp.Message)); } return(View()); }
private async Task <ProductViewModel> HandleCategories(ProductViewModel productViewModel) { productViewModel.Categories = await _productAppService.GetAllCategories(); return(productViewModel); }
public App() { InitializeComponent(); MainPage = new ProductViewModel(); }
protected void GVLbReiew_Command(object sender, CommandEventArgs e) { ScriptManager.RegisterStartupScript(this.Page, Page.GetType(), "text", "openReviewModal();", true); ProductViewModel product = new ProductViewModel(); double overAllRating; int fiveStars = 0, fourStars = 0, threeStars = 0, twoStars = 0, oneStars = 0, ratingSum = 0; product = productServices.GetProductWithReviewsById(Convert.ToInt32(e.CommandName)); lblReviewMOdalTitle.Text = "Reviews For " + product.ProductName; if (product.Reviews != null && product.Reviews.Count != 0) { foreach (var li in product.Reviews) { ratingSum += li.Star; if (li.Star == 5) { fiveStars += 1; } else if (li.Star == 4) { fourStars += 1; } else if (li.Star == 3) { threeStars += 1; } else if (li.Star == 2) { twoStars += 1; } else { oneStars += 1; } } overAllRating = Math.Round((Convert.ToDouble(ratingSum) / Convert.ToDouble(product.Reviews.Count)), 1); lblOverAllRating.Text = overAllRating.ToString(); lblNoOfReviews.Text = product.Reviews.Count.ToString(); lblNoOfReviews2.Text = product.Reviews.Count.ToString(); lblNoOf1Star.Text = oneStars.ToString(); lblNoOf2Star.Text = twoStars.ToString(); lblNoOf3Star.Text = threeStars.ToString(); lblNoOf4Star.Text = fourStars.ToString(); lblNoOf5Star.Text = fiveStars.ToString(); rptrReview.DataSource = product.Reviews; rptrReview.DataBind(); } else { lblOverAllRating.Text = "0.0"; lblNoOfReviews.Text = "0"; lblNoOfReviews2.Text = "0"; lblNoOf1Star.Text = "0"; lblNoOf2Star.Text = "0"; lblNoOf3Star.Text = "0"; lblNoOf4Star.Text = "0"; lblNoOf5Star.Text = "0"; rptrReview.DataSource = ""; rptrReview.DataBind(); } }
// GET: Product/Edit/5 public ActionResult Edit(ProductViewModel prod) { return(View()); }
#pragma warning disable 1998 public async override global::System.Threading.Tasks.Task ExecuteAsync() { #line 1 "\\Mac\Home\Desktop\Casestudy\Casestudy\Views\Tray\Index.cshtml" ViewData["Title"] = "Index"; Layout = "~/Views/Shared/_Layout.cshtml"; #line default #line hidden BeginContext(88, 132, true); WriteLiteral("<div class=\"card\">\r\n <div class=\"card-title text-center mt-5\">\r\n <h3 class=\"font-weight-bold\">Tray Contents</h3>\r\n "); EndContext(); BeginContext(220, 79, false); __tagHelperExecutionContext = __tagHelperScopeManager.Begin("img", global::Microsoft.AspNetCore.Razor.TagHelpers.TagMode.SelfClosing, "9e3ae875984747f2b93a649b895dc9b5", async() => { } ); __Microsoft_AspNetCore_Mvc_Razor_TagHelpers_UrlResolutionTagHelper = CreateTagHelper <global::Microsoft.AspNetCore.Mvc.Razor.TagHelpers.UrlResolutionTagHelper>(); __tagHelperExecutionContext.Add(__Microsoft_AspNetCore_Mvc_Razor_TagHelpers_UrlResolutionTagHelper); __tagHelperExecutionContext.AddHtmlAttribute(__tagHelperAttribute_0); __tagHelperExecutionContext.AddHtmlAttribute(__tagHelperAttribute_1); await __tagHelperRunner.RunAsync(__tagHelperExecutionContext); if (!__tagHelperExecutionContext.Output.IsContentModified) { await __tagHelperExecutionContext.SetOutputContentAsync(); } Write(__tagHelperExecutionContext.Output); __tagHelperExecutionContext = __tagHelperScopeManager.End(); EndContext(); BeginContext(299, 89, true); WriteLiteral("\r\n <p>Products Currently Selected</p>\r\n </div>\r\n <div class=\"text-center\">\r\n"); EndContext(); #line 12 "\\Mac\Home\Desktop\Casestudy\Casestudy\Views\Tray\Index.cshtml" Dictionary <int, object> tray = Context.Session.Get <Dictionary <int, Object> >("tray"); decimal totalItem = 0; decimal total = 0; decimal totalTax = 0; #line default #line hidden BeginContext(612, 360, true); WriteLiteral(@" <table class=""table table-striped""> <tr style=""font-weight:bolder;""> <th class=""text-center"">Code</th> <th class=""text-left"">Name</th> <th class=""text-left"">Msrp</th> <th class=""text-left"">Qty</th> <th class=""text-left"">Extended</th> </tr> "); EndContext(); #line 26 "\\Mac\Home\Desktop\Casestudy\Casestudy\Views\Tray\Index.cshtml" if (tray != null) { foreach (var key in tray.Keys) { ProductViewModel item = JsonConvert.DeserializeObject <ProductViewModel> (Convert.ToString(tray[key])); if (item.Qty > 0) { totalItem = item.CostPrice * item.Qty; total += totalItem; totalTax += totalItem * 0.13m; #line default #line hidden BeginContext(1545, 90, true); WriteLiteral(" <tr>\r\n <td class=\"text-center\">"); EndContext(); BeginContext(1636, 7, false); #line 42 "\\Mac\Home\Desktop\Casestudy\Casestudy\Views\Tray\Index.cshtml" Write(item.Id); #line default #line hidden EndContext(); BeginContext(1643, 61, true); WriteLiteral("</td>\r\n <td class=\"text-left\">"); EndContext(); BeginContext(1705, 16, false); #line 43 "\\Mac\Home\Desktop\Casestudy\Casestudy\Views\Tray\Index.cshtml" Write(item.ProductName); #line default #line hidden EndContext(); BeginContext(1721, 61, true); WriteLiteral("</td>\r\n <td class=\"text-left\">"); EndContext(); BeginContext(1783, 40, false); #line 44 "\\Mac\Home\Desktop\Casestudy\Casestudy\Views\Tray\Index.cshtml" Write(String.Format("{0:C}", (item.CostPrice))); #line default #line hidden EndContext(); BeginContext(1823, 61, true); WriteLiteral("</td>\r\n <td class=\"text-left\">"); EndContext(); BeginContext(1885, 8, false); #line 45 "\\Mac\Home\Desktop\Casestudy\Casestudy\Views\Tray\Index.cshtml" Write(item.Qty); #line default #line hidden EndContext(); BeginContext(1893, 61, true); WriteLiteral("</td>\r\n <td class=\"text-left\">"); EndContext(); BeginContext(1955, 35, false); #line 46 "\\Mac\Home\Desktop\Casestudy\Casestudy\Views\Tray\Index.cshtml" Write(String.Format("{0:C}", (totalItem))); #line default #line hidden EndContext(); BeginContext(1990, 42, true); WriteLiteral("</td>\r\n </tr>\r\n"); EndContext(); #line 48 "\\Mac\Home\Desktop\Casestudy\Casestudy\Views\Tray\Index.cshtml" } } } #line default #line hidden BeginContext(2116, 209, true); WriteLiteral(" </table><hr />\r\n <table class=\"table table-striped\">\r\n <tr>\r\n <td class=\"text-right font-weight-bold\">Sub total: </td>\r\n <td class=\"text-left\" id=\"chol\">"); EndContext(); BeginContext(2326, 31, false); #line 56 "\\Mac\Home\Desktop\Casestudy\Casestudy\Views\Tray\Index.cshtml" Write(String.Format("{0:C}", (total))); #line default #line hidden EndContext(); BeginContext(2357, 161, true); WriteLiteral("</td>\r\n </tr>\r\n <tr>\r\n <td class=\"text-right font-weight-bold\">Tax: </td>\r\n <td class=\"text-left\" id=\"fibre\">"); EndContext(); BeginContext(2519, 34, false); #line 60 "\\Mac\Home\Desktop\Casestudy\Casestudy\Views\Tray\Index.cshtml" Write(String.Format("{0:C}", (totalTax))); #line default #line hidden EndContext(); BeginContext(2553, 168, true); WriteLiteral("</td>\r\n </tr>\r\n <tr>\r\n <td class=\"text-right font-weight-bold\">Order total: </td>\r\n <td class=\"text-left\" id=\"salt\">"); EndContext(); BeginContext(2722, 42, false); #line 64 "\\Mac\Home\Desktop\Casestudy\Casestudy\Views\Tray\Index.cshtml" Write(String.Format("{0:C}", (total + totalTax))); #line default #line hidden EndContext(); BeginContext(2764, 96, true); WriteLiteral("</td>\r\n </tr>\r\n </table>\r\n <div class=\"text-center mb-2\">\r\n "); EndContext(); BeginContext(2860, 409, false); __tagHelperExecutionContext = __tagHelperScopeManager.Begin("form", global::Microsoft.AspNetCore.Razor.TagHelpers.TagMode.StartTagAndEndTag, "a5546884a5214fa1bc726c1567de3052", async() => { BeginContext(2935, 2, true); WriteLiteral("\r\n"); EndContext(); #line 69 "\\Mac\Home\Desktop\Casestudy\Casestudy\Views\Tray\Index.cshtml" if (Context.Session.Get(SessionVariables.User) != null) { #line default #line hidden BeginContext(3030, 106, true); WriteLiteral(" <button type=\"submit\" class=\"btn btn-sm btn-primary\" id=\"modalbtn\">Add Tray</button>\r\n"); EndContext(); #line 72 "\\Mac\Home\Desktop\Casestudy\Casestudy\Views\Tray\Index.cshtml" } #line default #line hidden BeginContext(3155, 107, true); WriteLiteral(" <a href=\"/Tray/ClearTray\" class=\"btn btn-sm btn-success\">Clear Tray</a>\r\n "); EndContext(); } ); __Microsoft_AspNetCore_Mvc_TagHelpers_FormTagHelper = CreateTagHelper <global::Microsoft.AspNetCore.Mvc.TagHelpers.FormTagHelper>(); __tagHelperExecutionContext.Add(__Microsoft_AspNetCore_Mvc_TagHelpers_FormTagHelper); __Microsoft_AspNetCore_Mvc_TagHelpers_RenderAtEndOfFormTagHelper = CreateTagHelper <global::Microsoft.AspNetCore.Mvc.TagHelpers.RenderAtEndOfFormTagHelper>(); __tagHelperExecutionContext.Add(__Microsoft_AspNetCore_Mvc_TagHelpers_RenderAtEndOfFormTagHelper); __Microsoft_AspNetCore_Mvc_TagHelpers_FormTagHelper.Controller = (string)__tagHelperAttribute_2.Value; __tagHelperExecutionContext.AddTagHelperAttribute(__tagHelperAttribute_2); __Microsoft_AspNetCore_Mvc_TagHelpers_FormTagHelper.Action = (string)__tagHelperAttribute_3.Value; __tagHelperExecutionContext.AddTagHelperAttribute(__tagHelperAttribute_3); __Microsoft_AspNetCore_Mvc_TagHelpers_FormTagHelper.Method = (string)__tagHelperAttribute_4.Value; __tagHelperExecutionContext.AddTagHelperAttribute(__tagHelperAttribute_4); __tagHelperExecutionContext.AddHtmlAttribute(__tagHelperAttribute_5); await __tagHelperRunner.RunAsync(__tagHelperExecutionContext); if (!__tagHelperExecutionContext.Output.IsContentModified) { await __tagHelperExecutionContext.SetOutputContentAsync(); } Write(__tagHelperExecutionContext.Output); __tagHelperExecutionContext = __tagHelperScopeManager.End(); EndContext(); BeginContext(3269, 40, true); WriteLiteral("\r\n </div>\r\n\r\n </div>\r\n</div>\r\n"); EndContext(); }
public ProductViewModel saveProduct(ProductViewModel productViewModel) { Product product = new Product(); if (productViewModel.productModel.Id > 0) //Record to update { product = _unitOfWork.productRepository.Get(productViewModel.productModel.Id); if (product == null) { productViewModel.operationStatus = OperationStatus.Error; productViewModel.OperationMessage = "Product not found while updating!"; return(productViewModel); } productViewModel.productModel.UpdatedOnUtc = DateTime.Now; } else // Record to add new { productViewModel.productModel.CreatedOnUtc = DateTime.Now; productViewModel.productModel.UpdatedOnUtc = DateTime.Now; _unitOfWork.productRepository.Add(product); } foreach (var propDest in product.GetType().GetProperties()) { //Find property in source based on destination name var propSrc = productViewModel.productModel.GetType().GetProperty(propDest.Name); if (propSrc != null) { //Get value from source and assign it to destination propDest.SetValue(product, propSrc.GetValue(productViewModel.productModel)); } } //bool BRresult = false; //BRresult = product.processBusinessRules(); //if (BRresult == false) //{ // productViewModel.operationStatus = OperationStatus.Error; // productViewModel.OperationMessage = product.ecvBRMessage; // return productViewModel; //} var objValidataionList = product.ecvGetRuleViolations(); if (objValidataionList.Count() > 0) { productViewModel.operationStatus = OperationStatus.Error; productViewModel.ecvRuleViolation = objValidataionList; return(productViewModel); } int intCompeteState = 0; intCompeteState = _unitOfWork.Complete(); if (intCompeteState > 0) { productViewModel.operationStatus = OperationStatus.Success; productViewModel.OperationMessage = ""; } else { productViewModel.operationStatus = OperationStatus.Error; productViewModel.OperationMessage = _unitOfWork.ecvError; } return(productViewModel); }
public async Task <ShopViewModel> GetFullShop(long id) { using (HttpClient httpClient = new HttpClient()) { var response = await httpClient.GetAsync(uri + "Shops/" + id + "/Products"); if (response.IsSuccessStatusCode != true) { return(null); } var shopResponse = await response.Content.ReadAsStringAsync(); dynamic json = JsonConvert.DeserializeObject(shopResponse); ShopViewModel Shop = new ShopViewModel(); Shop.Id = Convert.ToInt64(json["Id"]); Shop.UserId = json["UserId"].ToString(); Shop.Title = json["Title"].ToString(); Shop.Description = json["Description"].ToString(); Shop.DescriptionFull = json["DescriptionFull"].ToString(); Shop.Views = Convert.ToInt64(json["Views"]); Shop.IsActive = Convert.ToInt32(json["IsActive"]); Shop.CreatedAt = DateTime.Parse(json["CreatedAt"].ToString()); Shop.UpdatedAt = DateTime.Parse(json["UpdatedAt"].ToString()); //Get list of products var Products = ((ProductFullModel[])Newtonsoft.Json.JsonConvert.DeserializeObject(json["Products"].ToString(), typeof(ProductFullModel[]))); List <ProductViewModel> productList = new List <ProductViewModel>(); foreach (var product in Products) { ProductViewModel Product = new ProductViewModel(); Product.Id = product.Id; Product.Title = product.Title; Product.Description = product.Description; Product.DescriptionFull = product.DescriptionFull; Product.Views = product.Views; Product.IsActive = product.IsActive; Product.CreatedAt = product.CreatedAt; Product.UpdatedAt = product.UpdatedAt; Product.ShopId = product.ShopId; Product.Stock = product.Stock; Product.Price = product.Price; Product.Image = product.Images[0]; List <long> categoryList = new List <long>(); List <string> categoryNameList = new List <string>(); var categories = product.Categories; foreach (var category in categories) { categoryList.Add(category.Id); categoryNameList.Add(category.Title); } Product.Category = categoryList; Product.CategoryName = categoryNameList; productList.Add(Product); } Shop.Products = productList; response = await httpClient.GetAsync(uri + "ShopConfigurations/" + id); if (response.IsSuccessStatusCode != true) { return(null); } shopResponse = await response.Content.ReadAsStringAsync(); Shop.Configuration = ((ShopConfigurationModel)Newtonsoft.Json.JsonConvert.DeserializeObject(shopResponse, typeof(ShopConfigurationModel))); return(Shop); } }