2013-12-10 37 views
2

我有這樣的對象:HQL和的hasMany財產

class Employee { 

    String firstName 
    String lastName 
    String username 
    String password 
    String email 

和:

class HappyHourGroup { 

    enum EventEnum { 
     HAPPY_HOUR, RESTAURANT_CLOSE, OTHER 
    } 

    String name 
    Employee creator 
    Date date 
    Double recieveBack 
    Double totalCost 
    EventEnum event 

    static hasMany = [employees: Employee] 

我想對於一個給定的員工對象,最晚一班(日期),他是在員工這個組。我嘗試了很少的HQL,但它根本不起作用。 我該怎麼做才能做到這一點?

感謝

回答

1

如果我理解你的權利,你需要many-to-many關係,所以加

static hasMany = [groups: HappyHourGroup] 
static belongTo = HappyHourGroup 

給員工。請注意,歸屬於可能會去HappyHourGroup?這取決於你想要的級聯行爲。 要獲取組的列表試試這個代碼:

Employee employee = employees.findBy..... 
HappyHourGroup.withCriteria { 
    employees { 
    eq('id',employee) 
    } 
    maxResults(1) 
    order("date", "desc") 
} 

更多信息,請參見criteria