editácia a pridávanie dieťaťa a príbuzných
Jeden komponent na pridávanie aj editáciu dieťaťa a príbuzných - čo to je sa rozhodne na základe toho, či v activatedRoute paramMap príde id dieťaťa (inšpirovať sa dá v EventEditComponent).
V tomto komponente sa nerieši do akej triedy dieťa patrí, ani či príbuzný má konto v keycloaku - teda pri nových príbuzných na nevypĺňa idUser.
Základná vec, ktorá sa má pri pridávaní zabezpečiť, aby príbuzní neboli v databáze 2x, teda ak ide o dieťa, ktoré už malo v škôlke súrodencov, malo väzbu s tými istými entitami príbuzných ako jeho súrodenec.
Dá sa to napríklad vyriešiť tak, že sa pri pridávaní spýtame používateľa, či už súrodenec bol v škôlke. Ak áno, umožníme ho nájsť a automaticky priradiť k novému dieťaťu príbuzných.
Ak používateľ sa chová, ako že nemá súrodenca, defaultne je zobrazený formulárik pre 2 príbuzných s predpísanými rolami mamka a ocko a cez tlačidlo "Ďalší príbuzný" pridávame ďalších (ideálne ako FormArray, kde prvky sú FormGroup s údajmi o príbuznom). Do databázy sa ukladajú iba príbuzní, ktorí majú uvedené aspoň meno a priezvisko a rolu. Pri editácii príbuzného treba dať pozor na to, aby sa nezmazalo idUser.
Ak je pri pridávaní "nového" príbuzného konflikt na serveri v mene+priezvisku, pýtame sa, či je to ten istý ako entita z DB v konflikte, ktorú ukážeme (môžu byť menovci, takže ak používateľ povie že nie, je to v poriadku, bude to nová entita). Zakázané je však mať konflikt v telefóne alebo emaili - zakáže sa mu odoslať formulár (buď zmení mail alebo telefón alebo si vyberie človeka z DB). Ak si vyberie príbuzného z DB, entita sa nahradí vrátane id a idUser.