Возможно, вы могли бы просто использовать between
:
def firstDayOfMonthInYear, lastDayOfMonthInYear;
/* set the two values using Calendar or some other mechanism */
Event.withCriteria {
between('date', firstDayOfMonthInYear, lastDayOfMonthInYear)
}
Я не уверен в инклюзивности between
- вам может понадобиться скорректировать даты начала / окончания, если она не включена для обоихзаканчивается.