/// <summary> /// Obtiene una determinada orden de pago segun su identificador /// </summary> /// <param name="id">Identificador de la orden de pago</param> /// <returns>Orden de pago encontrada</returns> public OrdenPago Obtener(int id) { Datos.OrdenesPagoDAL dalOrdenesPago = dal.ObtenerOrdenesPagoDAL(); Datos.OrdenPago ordenPagoDAL = dalOrdenesPago.Obtener(id); return(Obtener(ordenPagoDAL)); }
/// <summary> /// Obtiene el listado de ordenes de pago segun si ya fueron pagadas o no /// </summary> /// <param name="pagadas">Determina si se quiere consultar las ordenes de pago pagas o impagas</param> /// <returns>Listado de ordenes de pago</returns> public IEnumerable <OrdenPago> Obtener(bool pagadas) { Datos.OrdenesPagoDAL dalOrdenesPago = dal.ObtenerOrdenesPagoDAL(); IEnumerable <Datos.OrdenPago> ordenesPagoDAL = dalOrdenesPago.Obtener(pagadas); return(Obtener(ordenesPagoDAL)); }
/// <summary> /// Obtiene el listado de ordenes de pago por proveedor /// </summary> /// <param name="proveedor">Proveedor del cual se quiere consultar sus ordenes de pago</param> /// <returns>Listado de ordenes de pago del proveedor</returns> public IEnumerable <OrdenPago> Obtener(Proveedor proveedor) { if (proveedor == null) { throw new OBMCateringException(Resources.BL_Validaciones_ProveedorNull); } Datos.ProveedoresDAL dalProveedores = dal.ObtenerProveedoresDAL(); Datos.Proveedor proveedorDAL = dalProveedores.Obtener(proveedor.CUIT); if (proveedorDAL == null) { throw new OBMCateringException(string.Format(Resources.BL_Validaciones_ProveedorInvalido, proveedor.CUIT)); } Datos.OrdenesPagoDAL dalOrdenesPago = dal.ObtenerOrdenesPagoDAL(); IEnumerable <Datos.OrdenPago> ordenesPagoDAL = dalOrdenesPago.Obtener(proveedorDAL); return(Obtener(ordenesPagoDAL)); }
/// <summary> /// Actualiza los datos de una determinada orden de pago en el sistema /// Los datos que se permiten actualizar son los precios de los items y el estado de la orden, es decir si esta pagada o no /// </summary> /// <param name="ordenPago">Orden de pago a actualizar</param> public void Actualizar(OrdenPago ordenPago) { ValidarOrdenPago(ordenPago); Datos.OrdenesPagoDAL dalOrdenesPago = dal.ObtenerOrdenesPagoDAL(); Datos.OrdenPago ordenPagoDAL = dalOrdenesPago.Obtener(ordenPago.Id); if (ordenPagoDAL == null) { throw new OBMCateringException(Resources.BL_Validaciones_OrdenPagoInvalida); } foreach (Datos.ItemOrdenPago itemDAL in ordenPagoDAL.ItemsOrdenesPago) { ItemOrdenPago itemOrdenPago = null; foreach (ItemOrdenPago item in ordenPago.Items) { if (item.ItemOrdenCompra.Ingrediente.Nombre == itemDAL.ItemOrdenCompra.Ingrediente.Nombre) { itemOrdenPago = item; break; } } if (itemOrdenPago != null) { itemDAL.Precio = itemOrdenPago.Precio; } } ordenPagoDAL.Pagada = ordenPago.Pagada; dalOrdenesPago.Actualizar(ordenPagoDAL); dal.Guardar(); }