У меня есть две записи в доменном объекте, которые я хочу объединить. Давайте назовем родительский дом и детскую комнату. У меня есть ситуация, когда я хочу объединить два доменных домена, которые на самом деле одинаковы. У меня есть логика, чтобы сделать это слияние верхнего уровня.
Однако я хочу знать, есть ли способ, позволяющий Grails легко сказать: «Пройдите через доменные объекты и, где есть указатель fk на House, обновите этот fk до нового значения».
код будет примерно таким
houseInst1.magicMerge(houseInst2)
Это запустит слияние House, а также проверит каждый объект домена, имеющий указатель (fk) на House, и обновит место, где он изначально указывает на houseInst2, чтобы указывать на houseInst1.
Обновление: одна из ключевых особенностей заключается в том, что мне бы хотелось, чтобы это работало, если бы кто-то добавил еще один объект домена со ссылкой на главный объект. например. если кто-то добавил ипотечные кредиты позже, я не хочу обновлять всю мою логику слияния, он должен пойти и обнаружить, что ипотечные кредиты являются дочерними для Хауса, и обновить соответствующим образом.