public bool ExisteProducto(Producto producto) { if (ProductoBodegas == null) { return(false); } return(ProductoBodegas.FirstOrDefault(x => x.Producto.Codigo == producto.Codigo) != null); }
public ProductoBodega SacarProducto(Producto producto, int cantidad) { if (!ExisteProducto(producto)) { return(null); } ProductoBodega productoBodega = ProductoBodegas.FirstOrDefault(x => x.Producto == producto); if (productoBodega.RestarCantidad(cantidad) > 0) { return(new ProductoBodega { Producto = producto, Cantidad = cantidad }); } return(null); }
public ProductoBodega AgregarProducto(Producto producto, int cantidad) { var errores = PuedeAgregarProducto(producto, cantidad); if (errores.Any()) { throw new System.InvalidOperationException(string.Join(",", errores)); } if (!ExisteProducto(producto)) { ProductoBodegas.Add(new ProductoBodega { Producto = producto, Cantidad = cantidad }); } else { ProductoBodegas.FirstOrDefault(x => x.Producto == producto).Cantidad += cantidad; } return(ProductoBodegas.FirstOrDefault(x => x.Producto == producto)); }