public static List <BitacoraMovSISTEMA> consultaFiltrada(String tipoMovimiento, String cveAutor, DateTime?fechaInicio, DateTime?fechaFin) { if (esActiva) { try { SortDefinition <BitacoraMovSISTEMA> sort = new BsonDocument("fechaMovimiento", -1); System.Threading.Tasks.Task <List <BitacoraMovSISTEMA> > query = null; Dictionary <String, object> filtro1 = new Dictionary <string, object>(); Dictionary <String, object> filtro2 = new Dictionary <string, object>(); List <BitacoraMovSISTEMA> listaFiltrada = new List <BitacoraMovSISTEMA>(); var filter = new BsonDocument(); if (!tipoMovimiento.Equals("Todos") && !tipoMovimiento.Equals("")) { filtro1.Add("cveTipoMovimiento", tipoMovimiento); filter.AddRange(filtro1); } if (!cveAutor.Equals("Todos") && !cveAutor.Equals("")) { filtro2.Add("cveAutor", cveAutor); filter.AddRange(filtro2); } query = Movimientos.Find(filter).Sort(sort).ToListAsync(); var lstMovimientos = query.Result; if (fechaInicio != null && fechaFin != null) { listaFiltrada = lstMovimientos.Where(x => x.fechaMovimiento >= fechaInicio.Value && x.fechaMovimiento <= fechaFin.Value.AddDays(1)).ToList(); return(listaFiltrada.OrderByDescending(x => x.fechaMovimiento).ToList()); } if (tipoMovimiento.Equals("Todos") && cveAutor.Equals("Todos")) { ConfiguracionServiceProvider configuracionService = new ConfiguracionServiceProvider(); return(lstMovimientos.Take(int.Parse(configuracionService.getValorDeVariable("maxInicialBitacoraMovs"))).OrderByDescending(x => x.fechaMovimiento).ToList()); } else { return(lstMovimientos.OrderByDescending(x => x.fechaMovimiento).ToList()); } } catch (Exception ex) { Console.WriteLine(ex.Message); return(new List <BitacoraMovSISTEMA>()); } } else { return(new List <BitacoraMovSISTEMA>()); } }
//Devuelve una lista de registros de la bitácora public static List <BitacoraMovSISTEMA> VerTodo() { if (esActiva) { try { SortDefinition <BitacoraMovSISTEMA> sort = new BsonDocument("fechaMovimiento", -1); ConfiguracionServiceProvider configuracionService = new ConfiguracionServiceProvider(); var query = Movimientos.Find(new BsonDocument()).Sort(sort).Limit(int.Parse(configuracionService.getValorDeVariable("maxInicialBitacoraMovs"))).ToListAsync(); return(query.Result); } catch (Exception ex) { Console.WriteLine(ex.Message); return(new List <BitacoraMovSISTEMA>()); } } else { return(new List <BitacoraMovSISTEMA>());; } }