diff --git a/src/main/java/net/hostsharing/hsadminng/hs/office/partner/HsOfficePartnerController.java b/src/main/java/net/hostsharing/hsadminng/hs/office/partner/HsOfficePartnerController.java index a0bcc25d..f7440eaf 100644 --- a/src/main/java/net/hostsharing/hsadminng/hs/office/partner/HsOfficePartnerController.java +++ b/src/main/java/net/hostsharing/hsadminng/hs/office/partner/HsOfficePartnerController.java @@ -185,7 +185,22 @@ public class HsOfficePartnerController implements HsOfficePartnersApi { private void optionallyUpdateRelatedRelations(final HsOfficePartnerRbacEntity saved, final HsOfficePersonRealEntity previousPartnerPerson) { final var partnerPersonHasChanged = !saved.getPartnerRel().getHolder().getUuid().equals(previousPartnerPerson.getUuid()); if (partnerPersonHasChanged) { - + em.createNativeQuery(""" + UPDATE hs_office.relation + SET anchorUuid = :newPartnerPersonUuid + WHERE anchorUuid = :oldPartnerPersonUuid + """) + .setParameter("oldPartnerPersonUuid", previousPartnerPerson.getUuid()) + .setParameter("newPartnerPersonUuid", saved.getPartnerRel().getHolder().getUuid()) + .executeUpdate(); + em.createNativeQuery(""" + UPDATE hs_office.relation + SET holderUuid = :newPartnerPersonUuid + WHERE holderUuid = :oldPartnerPersonUuid AND type = 'DEBITOR' + """) + .setParameter("oldPartnerPersonUuid", previousPartnerPerson.getUuid()) + .setParameter("newPartnerPersonUuid", saved.getPartnerRel().getHolder().getUuid()) + .executeUpdate(); } }