public StockPurchaseModel CreateStockPurchase(StockPurchaseModel newStockPurchase)
        {
            var stockPurchaseNull = stockPurchases.OrderByDescending(s => s.Id).FirstOrDefault();

            if (stockPurchaseNull == null)
            {
                newStockPurchase.Id = 1;
            }
            else
            {
                var newId = stockPurchases.OrderByDescending(s => s.Id).FirstOrDefault().Id + 1;
                newStockPurchase.Id = newId;
            }

            var amount   = 0;
            var cantidad = 0;

            foreach (var item in products)
            {
                if (item.Stock != 10)
                {
                    cantidad   = 10 - item.Stock;
                    amount     = amount + (cantidad * item.Price);
                    item.Stock = 10;
                }
            }
            newStockPurchase.Amount = amount;
            stockPurchases.Add(newStockPurchase);
            return(newStockPurchase);
        }
        public ActionResult <StockPurchaseModel> CreateStockPurchase([FromBody] StockPurchaseModel stockPurchase)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(BadRequest(ModelState));
                }

                var newStockPurchase = service.CreateStockPurchase(stockPurchase);
                return(Created($"/api/Purchases/{newStockPurchase.Id}", newStockPurchase));
            }
            catch (NotFoundException ex)
            {
                return(NotFound(ex.Message));
            }
            catch (Exception ex)
            {
                return(StatusCode(StatusCodes.Status500InternalServerError, ex.Message));
            }
        }
 public StockPurchaseModel CreateStockPurchase(StockPurchaseModel newStockPurchase)
 {
     return(repository.CreateStockPurchase(newStockPurchase));
 }