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 día sin tomar en cuenta las horas.

Por ejemplo si creamos la fecha de inicio con 01/02/2018 05:00:00, y hacemos una búsqueda directa por el campofechainicio(), pasandole solo el día no lo encontraría en la lista, ya que necesita los demás datos (horas ,minutos y segundos). En este caso recurrimos al método filterDateWithOutHour(), que hace búsquedas en un día 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 datevalue, 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 paginacion.

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 paginacion.

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

Filtra toda la colección sin paginacion para devolver el día que se indica sin tomar en cuenta las horas.

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

Aplica un filtro adicional al filtro entre fechas.

List<T> filterDayWithoutHourOR(Bson myfilter,String fielddate, Date datevalue, Document... docSort)

Aplica una busqueda por un filtro o por el rango de fechas.

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

Filtra toda la colección con paginacion para devolver el día que se indica sin tomar en cuenta las horas.

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

Aplica un filtro adicional al filtro entre fechas con paginacion

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

Aplica un filtro Bson myfilter o el filtro del rango entre fechas

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