Closed daniel-illi closed 2 months ago
Hallo @daniel-illi und @mtnstar
Eine Role
hat deleted_at
und delete_on
. Im Issue steht:
noch weitere Rollen besitzt, inkl. gelöschten Rollen
Heisst dies für mich, dass ich die Person löschen darf, wenn sie keine Rollen im Sinne vom gesetzten Scope (deleted_at
) hat? Das SQL vom Scope sieht so aus:
SELECT `roles`.* FROM `roles` WHERE `roles`.`deleted_at` IS NULL AND `roles`.`person_id` = 123
@daniel-illi Was soll für Neuanmeldung (Zusatzsektion)
passieren? Das wurde bisher noch nicht behandelt:
https://github.com/hitobito/hitobito_sac_cas/assets/1105080/2b61fbce-f78a-4087-b598-583982b7c375
@openscript oh das war ich mir nicht bewusst 😯
Die Neuanmeldung (Zusatzsektion)
sollten genau gleich behandelt werden wie die `Neuanmeldung (Stammsektion).
Zur Frage wegen der gelöschten Rollen, sobald die Person andere Rollen besitzt neben derjenigen welche gerade behandelt wird, dann darf die Person nicht gelöscht werden. Das gilt auch wenn die anderen Rollen als "gelöscht" markiert sind.
Im default scope werden die "gelöschten" Rollen herausgefiltert. Du musst also den scope with_deleted
verwenden, der diese auch berücksichtigt.
@openscript oh das war ich mir nicht bewusst 😯 Die
Neuanmeldung (Zusatzsektion)
sollten genau gleich behandelt werden wie die `Neuanmeldung (Stammsektion).
Kein Problem. Ich baue es gerne noch ein :)
Aktuell wird beim Ablehnen einer Neuanmeldung diese Rolle gelöscht, aber die Person bleibt erhalten.
Neu soll die Person komplett gelöscht werden, falls die Neuanmeldungsrolle die einzige Rolle der Person ist (gelöschte Rollen berücksichtigen).
Tech-Spec
Anpassung in
People::Neuanmeldungen::Reject
:#applicable_roles
prüfen, ob die Person noch weitere Rollen besitzt, inkl. gelöschten RollenToDo