88 lines
3.2 KiB
C#
88 lines
3.2 KiB
C#
using System.Collections.ObjectModel;
|
|
using Entidades;
|
|
using Modelo;
|
|
|
|
namespace Controladora
|
|
{
|
|
public class ControladoraOrdenDeCompras : Singleton<ControladoraOrdenDeCompras>
|
|
{
|
|
public string Añadir(OrdenDeCompra t)
|
|
{
|
|
if (t == null) return "El OrdenDeCompra es nulo fallo la carga";
|
|
|
|
return (RepositorioOrdenDeCompra.Instance.Add(t)) ?
|
|
$"El OrdenDeCompra {t.Id} se cargo correctamente":
|
|
$"Fallo la carga del OrdenDeCompra {t.Id}";
|
|
}
|
|
|
|
public string Eliminar(OrdenDeCompra t)
|
|
{
|
|
if (t == null) return "El OrdenDeCompra es nulo fallo la carga";
|
|
if (t.Id < 0) return "El Id esta mal cargado";
|
|
|
|
return (RepositorioOrdenDeCompra.Instance.Del(t)) ?
|
|
$"El OrdenDeCompra {t.Id} se Elimino correctamente":
|
|
$"Fallo la Eliminacion del OrdenDeCompra {t.Id}";
|
|
}
|
|
|
|
public string Modificar(OrdenDeCompra t)
|
|
{
|
|
if (t == null) return "El OrdenDeCompra es nulo fallo la carga";
|
|
|
|
return (RepositorioOrdenDeCompra.Instance.Mod(t)) ?
|
|
$"El OrdenDeCompra {t.Id} se Modifico correctamente":
|
|
$"Fallo la Modificacion del OrdenDeCompra {t.Id}";
|
|
}
|
|
|
|
public ReadOnlyCollection<OrdenDeCompra> Listar()
|
|
{
|
|
return RepositorioOrdenDeCompra.Instance.Listar();
|
|
}
|
|
|
|
public ReadOnlyCollection<DetalleOrdenDeCompra> ListarDetalles(OrdenDeCompra orden)
|
|
{
|
|
var ordenalistar = RepositorioOrdenDeCompra.Instance.Listar().First(x => x.Id == orden.Id);
|
|
if (ordenalistar == null) return new ReadOnlyCollection<DetalleOrdenDeCompra>(new List<DetalleOrdenDeCompra>());
|
|
return ordenalistar.MostrarDetalles();
|
|
|
|
}
|
|
|
|
public Presupuesto? MostrarPresupuestoPorId(Presupuesto? presupuesto)
|
|
{
|
|
if (presupuesto == null) return null;
|
|
if (presupuesto.Id < 0) return null;
|
|
var pres = RepositorioPresupuesto.Instance.Listar().First(x => x.Id == presupuesto.Id);
|
|
return pres;
|
|
}
|
|
|
|
public object ListarProveedores()
|
|
{
|
|
return RepositorioProveedor.Instance.Listar()
|
|
.Where(x => x.Habilitado == true)
|
|
.ToList()
|
|
.AsReadOnly();
|
|
}
|
|
|
|
public ReadOnlyCollection<DetallePresupuesto> ListarDetallesDePresupuesto(Presupuesto presupuesto)
|
|
{
|
|
Presupuesto pres = RepositorioPresupuesto.Instance.Listar().First(x => x.Id == presupuesto.Id);
|
|
if (pres == null) return new ReadOnlyCollection<DetallePresupuesto>(new List<DetallePresupuesto>());
|
|
return pres.MostrarDetalles();
|
|
}
|
|
|
|
public object ListarPresupuestosPorProveedorHabilitadosAceptado(Proveedor proveedor)
|
|
{
|
|
if (proveedor == null) return null;
|
|
if (proveedor.Cuit < 0) return null;
|
|
var presupuestos = RepositorioPresupuesto.Instance.Listar()
|
|
.Where(x => x.Proveedor.Cuit == proveedor.Cuit)
|
|
.Where(x => x.Habilitado == true)
|
|
.Where(x => x.Aceptado == true)
|
|
.ToList()
|
|
.AsReadOnly();
|
|
return presupuestos;
|
|
}
|
|
}
|
|
}
|
|
|