public async Task <ActionResult <Product> > PostProduct([FromBody] Product product) { _context.Products.Add(product); await _context.SaveChangesAsync(); return(CreatedAtAction("GetProduct", new { id = product.Id }, product)); }
//CREATE PRODUCT public async Task <int> ProductCreate(ProductCreateRequest request) { var languages = _context.Languages; var translations = new List <ProductTranslation>(); foreach (var language in languages) { if (language.Id == request.LanguageId) { translations.Add(new ProductTranslation() { Name = request.Name, ShortDescription = request.Description, FullDescription = request.Details, SeoDescription = request.SeoDescription, SeoAlias = request.SeoAlias, SeoTitle = request.SeoTitle, LanguageId = request.LanguageId }); } else { translations.Add(new ProductTranslation() { Name = SystemConstant.ProductConstants.NA, ShortDescription = SystemConstant.ProductConstants.NA, SeoAlias = SystemConstant.ProductConstants.NA, LanguageId = language.Id }); } } var product = new Product() { Price = request.Price, OriginalPrice = request.OriginalPrice, Stock = request.Stock, ViewCount = 0, DateCreated = DateTime.Now, ProductTranslations = translations }; //Save image if (request.ThumbnailImage != null) { product.ProductImages = new List <ProductImage>() { new ProductImage() { Caption = "Thumbnail image", CreatedDate = DateTime.Now, FileSize = request.ThumbnailImage.Length, ImagePath = await this.SaveFile(request.ThumbnailImage), IsDefault = true, SortOrder = 1 } }; } _context.Products.Add(product); await _context.SaveChangesAsync(); return(product.Id); }