Búsquedas por Día filterDayWithoutHour()

En algunos casos tenemos formularios donde se almacenan en formato dd/MM/yyyy hh:mm:ss

  • Necesitamos hacer búsquedas por ejemplo de un solo dia sin tomar en cuenta las horas.

Por ejemplo si creamos la fecha de inicio con 01/02/2018 05:00:00, y hacemos una busqueda directa por el campofechainicio(), pasandole solo el dia no lo encontraría en la lista, ya que necesita los demàs datos (horas ,minutps y segundos). En este caso recurrimos al mètodo filterDateWithOutHour(), que hace busquedas en un dia sin tomar en cuenta la hora.

Resultado:

Devuelve los documentos qBúsquedas en Fecha filterDayWithoutHour()ue estén filtrados en ese dìa sin tomar en cuenta horas, minutos y segundos.

Se usa para consultar un dia especifico.

Mètodo

List<T> filterDayWithoutHourPagination(String secondaryfield,String secondaryfieldvalue, String fielddate, Date datevalue, Integer pageNumber, Integer rowsForPage, Document... docSort)

Filtra la fecha de un dia con un and por la llave primaria (String) u otro atributo, y no toma en cuenta las horas. Por ejemplo cuando deseamos consultar los datos de un dia sin tomar en cuenta las horas.

List<T> filterDayWithoutHourPagination(String secondaryfield,Integer secondaryfieldvalue, String fielddate, Date datBúsquedas por Día filterDayWithoutHour()evalue, Integer pageNumber, Integer rowsForPage, Document... docSort)

Filtra la fecha de un dia con un and de llave primaria u otro atributo entero. Ignorando las horas del dìa.

List<T> filterDayWithoutHour(String secondaryfield,String secondaryfieldvalue, String fielddate, Date datevalue, Document... docSort)

Filtra por la fecha y otro atributo entero excluyendo la hora y sin paginaciòn.

List<T> filterDayWithoutHour(String secondaryfield,Integer secondaryfieldvalue, String fielddate, Date datevalue, Document... docSort)

Filtra por la fecha y el otro atributo entero excluyendo la hora y sin paginaciòn.

List<T> filterDayWithoutHour(String fielddate, Date datevalue, Document... docSort)

Filtra toda la colecciòn sin paginaciòn para devolver el dia que se indica sin tomar en cuenta las horas.

List<T> filterDayWithoutHourPagination(String fielddate, Date datevalue, Integer pageNumber, Integer rowsForPage, Document... docSort)

Filtra toda la colecciòn con paginaciòn para devolver el dia que se indica sin tomar en cuenta las horas.

Parametros

Pàrametro

Descripciòn

secondaryfield

Nombre de campo adicional para el filtro. Por ejemplo filtrar por fecha y por el idagente.

secondaryfieldvalue

Valor del campo secundario de filtro

datefield

nombre del campo fecha a buscar

valuedate

valor del campo fecha a buscar excluyendo la hora.

docSort

Document con la ordenaciòn.

pageNumber

Nùmero de pagina actual

rowsForPage

numero de filas por pagina.

Ejemplo

permisoList = permisoRepository.filterDayWithoutHourPagination("agente.idagente", agente.getIdagente(), "fechainicio", 
                                                      permisoSearch.getFechainicio(),page,rowPage, new Document("idpermiso", -1));

Si fuese manual construir el filtro de la siguiente manera:

 Bson filter = Filters.and( 
                       Filters.eq("agente.idagente",agente.getIdagente())
                    ,  Filters.gte("fechainicio", permisoSearch.getFechainicio()),
                       Filters.lte("fechainicio", permisoSearch.getFechainicio()));

 permisoList  = permisoRepository.filters(filter, new Document("idpermiso", -1));

Last updated