public IActionResult SaveQuantity(PageProductQuantityViewModel model) { if (ModelState.IsValid) { var lstQuantity = new List <ProductQuantityViewModel>(); if (model.JsonTableMyModal != null && model.JsonTableMyModal.Any()) { lstQuantity = JsonConvert.DeserializeObject <List <ProductQuantityViewModel> >(model.JsonTableMyModal); } _productService.CreateQuantities(model.ProductId, lstQuantity); _productService.Save(); return(Json(new JsonResponse() { Success = true, Message = Constants.SaveDataSuccess })); } return(Json(new JsonResponse { Success = false, Message = Constants.SaveDataFailed, Errors = ModelState.Where(modelState => modelState.Value.Errors.Count > 0).ToDictionary( kvp => kvp.Key, kvp => kvp.Value.Errors.Select(e => e.ErrorMessage).FirstOrDefault() ) })); }
public ActionResult ViewQuantities(int id) { var lstQuantities = _productService.GetQuantities(id); var model = new PageProductQuantityViewModel { ProductId = id, Product = _productService.GetById(id) }; foreach (var quantity in lstQuantities) { quantity.Guid = Guid.NewGuid().ToString(); model.ListProductQuantityVm.Add(quantity); } if (model.ListProductQuantityVm != null && model.ListProductQuantityVm.Count > 0) { model.JsonTableMyModal = JsonConvert.SerializeObject(model.ListProductQuantityVm); } else { model.JsonTableMyModal = ""; } var content = _viewRenderService.RenderToStringAsync("Product/_ViewQuantity", model); return(Json(new JsonResponse { Success = true, Message = Constants.GetDataSuccess, StatusCode = Utilities.Constants.StatusCode.GetDataSuccess, Data = content.Result })); }