This repository has been archived on 2024-08-10. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
Final_OOP/Controladora/ControladoraPresupuestos.cs

61 lines
2.2 KiB
C#

using System.Collections.ObjectModel;
using Entidades;
using Modelo;
namespace Controladora
{
public class ControladoraPresupuestos : Singleton<ControladoraPresupuestos>
{
public string Añadir(Presupuesto t)
{
if (t == null) return "El Presupuesto es nulo fallo la carga";
return (RepositorioPresupuesto.Instance.Add(t)) ?
$"El Presupuesto {t.Id} se cargo correctamente":
$"Fallo la carga del Presupuesto {t.Id}";
}
public string Eliminar(Presupuesto t)
{
if (t == null) return "El Presupuesto es nulo fallo la carga";
return (RepositorioPresupuesto.Instance.Del(t)) ?
$"El Presupuesto {t.Id} se Elimino correctamente":
$"Fallo la Eliminacion del Presupuesto {t.Id}";
}
public string Modificar(Presupuesto t)
{
if (t == null) return "El Presupuesto es nulo fallo la carga";
return (RepositorioPresupuesto.Instance.Mod(t)) ?
$"El Presupuesto {t.Id} se Modifico correctamente":
$"Fallo la Modificacion del Presupuesto {t.Id}";
}
public string AceptarPresupuesto(Presupuesto t)
{
if (t == null) return "El Presupuesto es nulo fallo la carga";
if (t.Aceptado == true) return "El presupuesto ya fue aceptado";
return (RepositorioPresupuesto.Instance.AceptarPresupuesto(t)) ?
$"El Presupuesto {t.Id} se Acepto correctamente":
$"Fallo la aceptacion del Presupuesto {t.Id}";
}
public ReadOnlyCollection<Presupuesto> Listar()
{
return RepositorioPresupuesto.Instance.Listar().Where(x => x.Habilitado == true)
.ToList().AsReadOnly();
}
public ReadOnlyCollection<DetallePresupuesto> ListarDetalles(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();
}
}
}