/// <summary> /// Obtiene la lista de costos filtrada por una lista de tipos de gasto /// </summary> /// <param name="pagina"></param> /// <param name="filtro"></param> /// <returns></returns> public ResultadoInfo <CostoInfo> ObtenerPorPaginaCostoPorTiposGasto(PaginacionInfo pagina, CostoInfo filtro) { ResultadoInfo <CostoInfo> costoLista; try { Logger.Info(); var costoDAL = new CostoDAL(); var lista = costoDAL.ObtenerTodos(EstatusEnum.Activo); costoLista = new ResultadoInfo <CostoInfo>(); lista = lista.Where(id => id.CostoID != 1).ToList(); var filteredItems = (from costo in lista from tipo in filtro.ListaTipoCostos where costo.TipoCosto.TipoCostoID == tipo.TipoCostoID select costo).ToList(); filteredItems = filteredItems.Where( p => p.Descripcion.ToUpper().Contains(filtro.Descripcion)).ToList(); costoLista.Lista = filteredItems; costoLista.TotalRegistros = filteredItems.Count; } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } return(costoLista); }
/// <summary> /// Obtiene una lista de costo filtrando por su estatus /// </summary> /// <param name="estatus"> </param> /// <returns></returns> internal IList <CostoInfo> ObtenerTodos(EstatusEnum estatus) { try { Logger.Info(); var costoDAL = new CostoDAL(); IList <CostoInfo> lista = costoDAL.ObtenerTodos(estatus); return(lista); } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }