Retorna registros entre duas Datas
22/12/2016 14:24
0
Olá galera, tenho o seguinte cenário, tenho um atributo do tipo Date dateRegister = new Date();

As informações no BD estão da seguinte forma:
2016-12-15 10:25:51
2016-12-15 11:02:34
2016-12-15 12:35:45

Preciso retornar os registros passando uma data, exemplo passando a data 2016-12-15 deve me retornar todos os registros daquele dia.

Tentei utilizar o LocalDate.toDateTimeAtStartOfDay() mas resolve o meu problema somente para registros no mesmo dia, sendo que o objetivo final e passar no restfull os parâmetros dataInicial e Final ex: localhost:8080/myaplication/api/classTesteDatas?datainicial=15-12-2016&datafinal=21-12-2016
Tags: Grails


0
Douglas, tente algo assim 

findByBetween(dataInicial, dataFinal)

documentação: http://gorm.grails.org/6.0.x/hibernate/manual/


0
findBySeuAtributoDataBetween(dataInicial, dataFinal)


0
Vc tem que pegar os parametros e transformar para um tipo data e hora, sendo que na data inicial você considera a hora 00:00:00, e na data final você considera a hora 23:59:59, daí só buscar pelo dynamic finder.

Se quiser partir pra hql provavelmente deve ter como fazer o cast do atributo tipo date time para apenas data, e aí dá pra comparar com a sua data inicial e final sem precisar fazer essa transformação com as horas


0
Obrigado pelas respostas galera.


0
Para zerar a hora de data inicial você só precisa digitar o objeto

objetoData.clearTime()?
28/12/2016 16:47



Ainda não faz parte da comunidade???

Para se registrar, clique aqui.


Aprenda Groovy e Grails com a Formação itexto!

Newsletter Semana Groovy

Assinar

Envie seu link!


Livro de Grails


/dev/All

Os melhores blogs de TI (e em português) em um único lugar!

 
Creative Commons
RSS Grails Brasil é mantido por itexto Consultoria.
Em caso de problemas contacte Henrique Lobo Weissmann (Kico) por e-mail: kico@itexto.com.br
Todo o conteúdo presente neste site adota o Creative Commons como licença padrão.
Ver: 4.14.0
itexto