update: añadido check de producto

This commit is contained in:
2024-07-14 04:48:23 -03:00
parent 04e6a0b9bb
commit faa80790ee
36 changed files with 14793 additions and 545 deletions

View File

@@ -9,12 +9,28 @@ namespace Controladora
public override string Añadir(OrdenDeCompra t)
{
if (t == null) return "El OrdenDeCompra es nulo fallo la carga";
if (t.Proveedor == null) return "No se cargo el proveedor";
// checkea que los detalles sean validos
if (ProductoCheck(t.MostrarDetalles())) return "Hay referencias a productos no existentes";
return (RepositorioOrdenDeCompra.Instance.Add(t)) ?
$"El OrdenDeCompra {t.Id} se cargo correctamente":
$"Fallo la carga del OrdenDeCompra {t.Id}";
}
private bool ProductoCheck(ReadOnlyCollection<DetalleOrdenDeCompra> ldetalles)
{
bool ret = false;
var lproductos = RepositorioProductos.Instance.Listar();
Parallel.ForEach(ldetalles, (ll) =>
{
var producto = lproductos.FirstOrDefault(x => x.Id == ll.Producto.Id);
ret = (producto == null) ? true : false;
});
return ret;
}
override public string Eliminar(OrdenDeCompra t)
{
if (t == null) return "El OrdenDeCompra es nulo fallo la carga";