public void Add(ProductDataViewModel productDataViewModel) { if (!(_productDataRepository.GetAll().Where(pd => pd.PropertyID == productDataViewModel.PropertyID && pd.ProductID == productDataViewModel.ProductID).Any())) { ProductData productData = MapFromViewModel(productDataViewModel); _productDataRepository.Add(productData); } }
public ActionResult Edit([Bind(Include = "ProductID,SubcategoryID,PropertyID,Value")] ProductDataViewModel ProductData) { if (ModelState.IsValid) { _productDataService.Edit(ProductData); return(RedirectToAction("Index", new { id = ProductData.ProductID })); } return(View(ProductData)); }
public IEnumerable<ProductDataViewModel> GetAll() { List<ProductDataViewModel> prodDataViewModels = new List<ProductDataViewModel>(); foreach (ProductData productData in _productDataRepository.GetAll()) { ProductDataViewModel productDataViewModel = MapToViewModel(productData); prodDataViewModels.Add(productDataViewModel); } return prodDataViewModels; }
public ActionResult EditCustomerData(ProductDataViewModel model) { if (ModelState.IsValid) { _productService.EditCustomerData(model.ProductId, model.CustomerProductCodeList); this.ShowNotification(NotificationType.Success, "Product successfully updated.", true); return(RedirectToAction("Index")); } FillLookups(); return(PartialView("_EditCustomerData", model)); }
public ActionResult Edit(int?id) { if ((id == null)) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ProductDataViewModel ProductData = _productDataService.GetById((int)id); if (ProductData == null) { return(HttpNotFound()); } return(View(ProductData)); }
public ProductDataViewModel GetAllCustomerData(int id) { var customersProductData = _customerRepository.GetCustomersProductData(id); var result = new ProductDataViewModel { //#if DEBUG // CustomerProductCodeList = customersProductData.Take(100).ToArray(), //#else CustomerProductCodeList = customersProductData.ToArray(), //#endif //CustomerProductCodeList = Enumerable.Empty<ProductCodeItem>(), CustomerProductCodeExists = customersProductData.Any(), ProductId = id }; return(result); }
private ProductDataViewModel GetProductData(string operationNumber) { var model = new ProductDataViewModel(); var response = _productProfileService.GetProductData(operationNumber); model.BasicData = response.BasicData; model.ResponsibilityData = response.ResponsibilityData; model.IsOperationClosed = response.IsOperationClosed; SetViewBagErrorMessageInvalidResponse(response); model.FieldAccessList = _securityModelRepository.GetFieldBehaviorByPermissions( IDBContext.Current.Operation, AttributeCPD.PAGE_NAME_BASIC_DATA + '|' + AttributeCPD.PAGE_NAME_RESPONSABILITY_DATA, IDBContext.Current.Permissions, 0, 0) .ToList(); return(model); }
public IActionResult GetProduct(int id) { dataContext.Attributes.Include(x => x.AttributeSceme).Load(); dataContext.Products.Include(x => x.Category).Include(x => x.Attributes).Include(x => x.Tags).Load(); ProductModel product = dataContext.Products.Find(id); ProductDataViewModel vm = new ProductDataViewModel(); vm.Name = product.Name; vm.MetaName = product.MetaName; vm.Discount = product.Discount; vm.IsNew = product.IsNew; vm.InStock = product.InStock; vm.Tags = string.Join(", ", product.Tags.Select(x => x.Name)); vm.Category = product.Category.MetaName; vm.Prise = product.Prise; vm.Attributes = product.Attributes.Select(x => new AttributeDataViewModel() { Name = x.AttributeSceme.Name, IsGeneral = x.AttributeSceme.IsGeneral, Value = x.Value }); return(Json(vm)); }
protected override string ProductDataToString(ProductDataViewModel productDataViewModel) { return($"{productDataViewModel.Amount:0.##} {productDataViewModel.Unit}"); }
protected abstract string ProductDataToString(ProductDataViewModel productDataViewModel);
private ProductData MapFromViewModel(ProductDataViewModel productDataViewModel) { ProductData productData = Mapper.Map<ProductData>(productDataViewModel); return productData; }
private ProductDataViewModel MapToViewModel(ProductData productData) { ProductDataViewModel productDataViewModel = Mapper.Map<ProductDataViewModel>(productData); return productDataViewModel; }
public ProductDataViewModel GetById(int id) { ProductData productData = _productDataRepository.GetById(id); ProductDataViewModel productDataViewModel = MapToViewModel(productData); return productDataViewModel; }
public async Task <IActionResult> AddProduct(ProductDataViewModel model) { if (dataContext.Products.FirstOrDefault(x => x.MetaName == model.MetaName) is not null) { ModelState.AddModelError("", "Товар с таким ключем уже существует!"); } List <string> errors = new List <string>(); if (ModelState.IsValid) { ProductModel product = new ProductModel(); product.Name = model.Name; product.MetaName = model.MetaName; product.Discount = model.Discount; product.IsNew = model.IsNew; product.InStock = model.InStock; product.Prise = model.Prise; product.Category = dataContext.Categories.Where(x => x.MetaName == model.Category).First(); product.Tags = (model.Tags ?? "").Split(",").Select(x => new TagModel() { Name = x.Trim() }).ToList(); product.Attributes = new List <AttributeModel>(); foreach (var attr in model.Attributes) { AttributeScemeModel scheme = dataContext.AttributeScemes.Where(x => x.Name == attr.Name).FirstOrDefault() ?? new AttributeScemeModel() { Name = attr.Name, IsGeneral = attr.IsGeneral }; AttributeModel attributeModel = new AttributeModel() { AttributeSceme = scheme, Value = attr.Value }; product.Attributes.Add(attributeModel); } product.Pictures = new List <ImageStorageModel>(); foreach (var image in model.Images) { var path = "/img/" + image.FileName; using (var fileStream = new FileStream(appEnvironment.WebRootPath + path, FileMode.Create)) { await image.CopyToAsync(fileStream); } product.Pictures.Add(new ImageStorageModel() { ImageSource = path, }); } dataContext.Products.Add(product); await dataContext.SaveChangesAsync(); } else { foreach (var v in ModelState.Values) { foreach (var error in v.Errors) { errors.Add(error.ErrorMessage); } } return(BadRequest(errors)); } return(Ok()); }
public async Task <IActionResult> EditProduct(int id, ProductDataViewModel model) { List <string> errors = new List <string>(); if (ModelState.IsValid) { ProductModel product = await dataContext.Products.FindAsync(id); product.Name = model.Name; product.MetaName = model.MetaName; product.Discount = model.Discount; product.IsNew = model.IsNew; product.InStock = model.InStock; product.Prise = model.Prise; product.Category = dataContext.Categories.Where(x => x.MetaName == model.Category).First(); dataContext.Attributes.Include(x => x.AttributeSceme).Load(); dataContext.Products.Include(x => x.Tags).Include(x => x.Attributes).Load(); var newTags = new List <TagModel>(); foreach (var tag in (model.Tags ?? "").Split(",")) { var value = tag.Trim(); TagModel tagModel = product.Tags.Where(x => x.Name == value).FirstOrDefault() ?? new TagModel(); tagModel.Name = value; newTags.Add(tagModel); } product.Tags = newTags; var newAttrib = new List <AttributeModel>(); if (model.Attributes is not null) { foreach (var attr in model.Attributes) { AttributeScemeModel scheme = dataContext.AttributeScemes.Where(x => x.Name == attr.Name).FirstOrDefault() ?? new AttributeScemeModel() { Name = attr.Name, IsGeneral = attr.IsGeneral }; AttributeModel attributeModel = product.Attributes.Where(x => x.Value == attr.Value).FirstOrDefault() ?? new AttributeModel(); scheme.IsGeneral = attr.IsGeneral; attributeModel.AttributeSceme = scheme; attributeModel.Value = attr.Value; newAttrib.Add(attributeModel); } } product.Attributes = newAttrib; await dataContext.SaveChangesAsync(); } else { foreach (var v in ModelState.Values) { foreach (var error in v.Errors) { errors.Add(error.ErrorMessage); } } return(BadRequest(errors)); } return(Ok()); }
public void Edit(ProductDataViewModel productDataViewModel) { ProductData productData = MapFromViewModel(productDataViewModel); _productDataRepository.Edit(productData); }
protected override string ProductDataToString(ProductDataViewModel productDataViewModel) { string localizedPrice = CurrencyLocalizationService.ToLocalizedString(productDataViewModel.GetUnitGrossPrice()); return($"{localizedPrice}/{productDataViewModel.Unit}"); }
protected override string ProductDataToString(ProductDataViewModel productDataViewModel) { return(CurrencyLocalizationService.ToLocalizedString(productDataViewModel.GetTotalGrossPrice())); }