public async Task <ResultDTO> AddProduct([FromBody] ProductAddDTO model, [FromForm(Name = "file")] IFormFile uploadedImage) { if (!ModelState.IsValid) { return(new ResultDTO { Status = 500, Message = "Error", Errors = Validation.GetErrorsByModel(ModelState) }); } else { var product = new Product() { Name = model.Name, CompanyName = model.CompanyName, Price = model.Price, Description = model.Description, Image = "", Data = model.Data, }; _context.Products.Add(product); _context.SaveChanges(); int idProduct = (from v in _context.Products orderby v.Id descending select v).FirstOrDefault().Id; var systemrequirements = new SystemRequirements() { OS = model.sysreqProduct.OS, Processor = model.sysreqProduct.Processor, Graphics = model.sysreqProduct.Graphics, Memory = model.sysreqProduct.Memory, Storege = model.sysreqProduct.Storege, ProdctId = idProduct }; _context.SystemRequirementsProduct.Add(systemrequirements); foreach (var item in model.listIdLang) { ProductLanguages temp = new ProductLanguages(); temp.ProdctId = idProduct; temp.LanguageId = item; _context.ProductLanguages.Add(temp); } foreach (var item in model.listIdCateg) { ProductCategories temp = new ProductCategories(); temp.ProdctId = idProduct; temp.CategoryId = item; _context.ProductCategories.Add(temp); } _context.SaveChanges(); return(new ResultDTO { Status = 200 }); } }
public ResultDTO EditUser([FromRoute] int id, [FromBody] ProductEditDTO model) { var product = _context.Products.FirstOrDefault(t => t.Id == id); product.Name = model.Name; product.CompanyName = model.CompanyName; product.Price = model.Price; product.Description = model.Description; product.Image = model.Image; product.Data = model.Data; product.SystemRequirementProduct.OS = model.sysreqProduct.OS; product.SystemRequirementProduct.Processor = model.sysreqProduct.Processor; product.SystemRequirementProduct.Graphics = model.sysreqProduct.Graphics; product.SystemRequirementProduct.Memory = model.sysreqProduct.Memory; product.SystemRequirementProduct.Storege = model.sysreqProduct.Storege; foreach (var item in _context.ProductCategories) { if (item.ProdctId == id) { _context.ProductCategories.Remove(item); } } foreach (var item in _context.ProductLanguages) { if (item.ProdctId == id) { _context.ProductLanguages.Remove(item); } } foreach (var item in model.listIdLang) { ProductLanguages temp = new ProductLanguages(); temp.ProdctId = id; temp.LanguageId = item; _context.ProductLanguages.Add(temp); } foreach (var item in model.listIdCateg) { ProductCategories temp = new ProductCategories(); temp.ProdctId = id; temp.CategoryId = item; _context.ProductCategories.Add(temp); } _context.SaveChanges(); return(new ResultDTO { Status = 200, Message = "OK" }); }