Мне сейчас трудно строить свои ограничения, у меня есть 3 класса предметной области, а именно: Больница, Доктор и Пациент , где Больница и Доктор имеет отношение 1: m, а Доктор и Пациент также имеет отношение 1: m.Поэтому меня попросили создать фиктивные данные, в которых мне нужно было создать 2 разные больницы с врачами и пациентами.Вот мой код для класса домена Больница .
class Hospital {
String name
String location
static transients = ['patients']
static hasMany = [doctor: Doctor, patient: Patient]
static constraints = {
name(blank:false)
location(blank:false)
doctor(nullable:false)
} }
-> и вот мой код для класса домена Доктор .
class Doctor {
String name
String specialization
static hasMany = [patient: Patient]
static belongsTo = [hospital: Hospital]
static constraints = {
name(blank:false)
specialization(blank:false)
patient(nullable:true)
hospital(nullable:false)
} }
-> и для Пациента класса домена
class Patient {
String name
String ailment
int age
Date dateAdmit, dateDischarge
static belongsTo = [doctor: Doctor, hospital: Hospital]
static constraints = {
name(blank:false, maxSize:100)
ailment(blank:false)
age(size:1..200)
dateAdmit(nullable:true)
dateDischarge(nullable:true)
doctor(nullable:false)
hospital(nullable:false)
}}
-> Я спас 2 больницы, а именно hospitalA и больница B с врачами и пациентами, моя проблема в том, что мне нужно убедиться, что врач из больницыB не может иметь пациента из больницыA иливрач и пациент должны находиться в одной больнице.Я считаю, что мне нужно сделать это с помощью пользовательского валидатора.но я не знаю, как, так как я должен сравнивать свойства из разных доменных calsses.пожалуйста, помогите мне ...