public async Task Update(ProductPutModel putModel) { if (putModel == null) { throw new InvalidArgumentException($"{typeof(ProductPutModel).Name} was null!"); } var item = await _readOnly.ExistsAsync <Product>(q => q.Id == putModel.Id); if (item == false) { throw new NotFoundException($"Can't find a {typeof(Product).Name} with ID = {putModel.Id}"); } var entity = _mapper.Map <Product>(putModel); await _fileService.UploadImage(entity.Image); await _writeOnly.SaveChangesAsync(entity); if (entity.Image != null) { await _writeOnly.SaveChangesAsync(entity.Image); } }
public async Task <ActionResult <ProductModel> > PostProductModel(ProductPutModel productModel) { var entity = _context.Products.Add(new Product { ProductCategoryId = productModel.ProductCategoryId, Specification = productModel.Specification, Name = productModel.Name, Description = productModel.Description }); await _context.SaveChangesAsync(); return(CreatedAtAction(nameof(GetProductModel), new { id = entity.Entity.Id }, productModel)); }
public async Task <ProductModel> UpdateAsync(ProductPutModel product) { var entity = await repository.GetByIdAsync(product.Id); if (entity == null) { throw new NotFoundException("Product not found"); } var updatedEntity = mapper.Map(product, entity); await repository.UpdateAsync(updatedEntity); var model = mapper.Map <ProductModel>(updatedEntity); return(model); }
public async Task <IActionResult> PutProductModel(int id, ProductPutModel productModel) { var product = await _context.Products.FindAsync(id); if (!product.Exist()) { return(NotFound()); } product.ProductCategoryId = productModel.ProductCategoryId; product.Specification = productModel.Specification; product.Name = productModel.Name; product.Description = productModel.Description; await _context.SaveChangesAsync(); return(NoContent()); }
public async Task <IActionResult> Update(ProductPutModel product) { var serviceRepsonse = await productService.UpdateAsync(product); return(Ok(serviceRepsonse)); }
public async Task <NoContentResult> Update([FromBody] ProductPutModel model) { await _productService.Update(model); return(NoContent()); }