public async Task <IActionResult> Create([FromForm] ProductCreatedRequest request) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var productId = await _manageProductService.Create(request); if (productId == 0) { return(BadRequest()); } var product = await _manageProductService.GetById(productId, request.LanguageId); return(CreatedAtAction(nameof(GetById), new { id = productId }, product)); }
public async Task <int> Create(ProductCreatedRequest request) { var product = new Product() { Price = request.Price, OriginalPrice = request.OriginalPrice, Stock = request.Stock, ViewCount = 0, DateCreated = DateTime.Now, ProductTranslations = new List <ProductTranslation>() { new ProductTranslation() { Name = request.Name, Description = request.Description, Details = request.Details, SeoDescription = request.SeoDescription, SeoAlias = request.SeoAlias, SeoTitle = request.SeoTitle, LanguageId = request.LanguageId } } }; //Save image if (request.ThumbnailImage != null) { product.ProductImages = new List <ProductImage>() { new ProductImage() { Caption = "Thumbnail image", DateCreated = 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); }