예제 #1
0
        public async Task <IActionResult> create([FromForm] ProductCreateSerializer request)
        {
            var productId = await _manageProductServices.create(request);

            if (productId == 0)
            {
                return(BadRequest());
            }

            var product = await _manageProductServices.GetProductById(productId, request.languageId);

            return(Created(nameof(GetProductById), product));
        }
        public async Task <int> create(ProductCreateSerializer request)
        {
            var product = new Product()
            {
                price               = request.price,
                originalPrice       = request.originalPrice,
                inventory           = request.inventory,
                viewCount           = 0,
                created             = DateTime.UtcNow,
                productTranslations = new List <ProductTranslation>()
                {
                    new ProductTranslation()
                    {
                        name       = request.name,
                        brief      = request.brief,
                        title      = request.title,
                        slug       = request.slug,
                        languageId = request.languageId,
                    }
                }
            };

            // Save image
            if (request.thumbnail != null)
            {
                product.productImages = new List <ProductImage>()
                {
                    new ProductImage()
                    {
                        created   = DateTime.UtcNow,
                        imagePath = await this.SaveFile(request.thumbnail),
                        isDefault = true,
                        sortOrder = 1,
                    }
                }
            }
            ;

            _context.Products.Add(product);
            await _context.SaveChangesAsync();

            return(product.id);
        }