Grails 列表中的Groovy findAll()<;列表>;出错

Grails 列表中的Groovy findAll()<;列表>;出错,grails,groovy,Grails,Groovy,我正试图运行一段代码,却陷入了一段代码中,我发现这段代码相当简单: List<List> nearestAvailableEmployees = Staffing.createCriteria().list { createAlias('employee','e') projections { property('e.id') property('e.name') property('endDate')

我正试图运行一段代码,却陷入了一段代码中,我发现这段代码相当简单:

List<List> nearestAvailableEmployees = Staffing.createCriteria().list {
    createAlias('employee','e')
    projections {
        property('e.id')
        property('e.name')
        property('endDate')
        property('startDate')
    }
    gt('endDate', new Date())
    and{
        order("e.id", "asc")
        order("endDate", "asc")

       }
}

return nearestAvailableEmployees.findAll{
    it[0] == 112
 }
我通过修改代码并在条件查询之后添加以下代码段纠正了错误:

.collect{
    it as List
}
有人能帮我写代码吗。

关于这个代码:

List<List> nearestAvailableEmployees = Staffing.createCriteria().list {
...
}
或者强调NeareStailableEmployees是人员配置对象的列表:

return nearestAvailableEmployees.findAll{
    Staffing staffing ->

    staffing.id == 112
}

什么版本的Grails?我刚刚用2.3.3试过,效果不错。也许可以打印出
neareSavailableEmployees.dump()
并查看您从
list
返回的数据类型?我使用的是Grails 2.1.1版,打印完您所说的内容后,我得到的数据类型是ArrayList。它应该可以工作了。。。你确定那是你所有的密码吗?是的,我确定那是你所有的密码。我可以给你发截图,如果你insistI不会得到一个人员对象列表,因为我使用的是投影,它会给我一些确实是对象的选定字段。
return nearestAvailableEmployees.findAll{
    // it is of type Staffing 
    it.id == 112
}
return nearestAvailableEmployees.findAll{
    Staffing staffing ->

    staffing.id == 112
}