public void CreateStock(GoodsMovements GoodsMovements)
        {
            //add to producto to storage location
            // see if product exist in stock
            var   checkProductAdd = _context.Stock.FirstOrDefault(x => x.Idproduct == GoodsMovements.Idproduct && x.IdstorageLocation == GoodsMovements.IdstorageLocationTo && x.IsDeleted == false);
            Stock stockAdd        = new Stock();

            if (checkProductAdd is null) // no exist this product
            {
                stockAdd.Idproduct         = GoodsMovements.Idproduct;
                stockAdd.IdstorageLocation = GoodsMovements.IdstorageLocationTo;
                stockAdd.Quantity          = GoodsMovements.Quantity;
                stockAdd.IsDeleted         = false;
                _context.Stock.Add(stockAdd);
            }
            else  // existe the product
            {
                stockAdd           = checkProductAdd;
                stockAdd.Quantity += GoodsMovements.Quantity;
                _context.Stock.Update(stockAdd);
            }

            _context.SaveChanges();

            // dismiss producto from storage location
            // see if product exist in stock
            var   checkProduct = _context.Stock.FirstOrDefault(x => x.Idproduct == GoodsMovements.Idproduct && x.IdstorageLocation == GoodsMovements.IdstorageLocationFrom && x.IsDeleted == false);
            Stock stockDM      = new Stock();

            if (checkProduct is null) // no exist this product
            {
                stockDM.Idproduct         = GoodsMovements.Idproduct;
                stockDM.IdstorageLocation = GoodsMovements.IdstorageLocationFrom;
                stockDM.Quantity         -= GoodsMovements.Quantity;
                stockDM.IsDeleted         = false;
                _context.Stock.Add(stockDM);
            }
            else  // existe the product
            {
                stockDM           = checkProduct;
                stockDM.Quantity -= GoodsMovements.Quantity;
                _context.Stock.Update(stockDM);
            }

            _context.SaveChanges();
        }
 public void DeleteGoodsMovements(GoodsMovements GoodsMovements)
 {
     GoodsMovements.IsDeleted = true;
     _context.GoodsMovements.Update(GoodsMovements);
     _context.SaveChanges();
 }
 public void UpdateGoodsMovements(GoodsMovements GoodsMovements)
 {
     _context.GoodsMovements.Update(GoodsMovements);
     _context.SaveChanges();
 }
 public void CreateGoodsMovements(GoodsMovements GoodsMovements)
 {
     _context.GoodsMovements.Add(GoodsMovements);
     _context.SaveChanges();
 }
 public void  CreateStock([FromBody] GoodsMovements GoodsMovements)
 {
     _repository.CreateStock(GoodsMovements);
 }
 public void  DeleteGoodsMovements([FromBody] GoodsMovements GoodsMovements)
 {
     _repository.DeleteGoodsMovements(GoodsMovements);
 }
 public void  UpdateGoodsMovements([FromBody] GoodsMovements GoodsMovements)
 {
     _repository.UpdateGoodsMovements(GoodsMovements);
 }