コード例 #1
0
        public async Task <ActionResult <Product> > PostProduct([FromBody] Product product)
        {
            _context.Products.Add(product);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetProduct", new { id = product.Id }, product));
        }
コード例 #2
0
        //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);
        }