示例#1
0
        public async Task <IActionResult> Create(SaleDto saleDto)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    var sale = await saleService.ConvertFromDtoAsync(saleDto);

                    var created = await saleService.CreateAsync(sale);

                    foreach (var saleProduct in sale.SaleProduct)
                    {
                        await productService.DecreaseStock(saleProduct.ProductId, saleProduct.Quantity);
                    }

                    var Dto = saleService.ConvertToDto(created);
                    return(CreatedAtAction(nameof(GetSaleById), new { id = Dto.SaleId }, Dto));
                }
                catch (Exception)
                {
                    return(BadRequest());
                }
            }
            return(BadRequest());
        }