package Ġno . nav . f amil ie . til b ake . be handling sk ont roll . domain Ċ Ċ import Ġno . nav . f amil ie . til b ake . be handling . domain . Be hand lings status Ċ import Ġno . nav . f amil ie . til b ake . common . repository . Sp or bar Ċ import Ġorg . springframework . data . annotation . Id Ċ import Ġorg . springframework . data . annotation . Version Ċ import Ġorg . springframework . data . relational . core . mapping . Column Ċ import Ġorg . springframework . data . relational . core . mapping . Embedded Ċ import Ġjava . time . LocalDate Ċ import Ġjava . util . UUID Ċ Ċ data Ġclass ĠBe hand lings st eg st il stand (@ Id ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġid : ĠUUID Ġ= ĠUUID . randomUUID (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbe handling Id : ĠUUID , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbe hand lings st eg : ĠBe hand lings st eg , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbe hand lings st eg s status : ĠBe hand lings st eg status , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Column (" vent ear sak ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġv ente Ã¥ rs ak : ĠV ente Ã¥ rs ak ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġt ids f rist : ĠLocalDate ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Version ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġvers jon : ĠLong Ġ= Ġ 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Embedded ( on Empty Ġ= ĠEmbedded . On Empty . USE _ EMPTY ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġsp or bar : ĠSp or bar Ġ= ĠSp or bar ()) Ċ Ċ enum Ġclass ĠBe hand lings st eg ( val Ġse kv ens : ĠInt , Ġval Ġkan S aks be handles : ĠBoolean , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġkan B es lut tes : ĠBoolean , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbe hand lings status : ĠBe hand lings status , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġval Ġbes k riv else : ĠString ) Ġ{ ĊĊĠĠĠ ĠVAR SEL ( 1 , Ġfalse , Ġfalse , ĠBe hand lings status . UT RE DES , Ġ" V ur dere Ġom Ġvar sel Ġom Ġtil b ake k re ving Ġskal Ġsen des Ġtil Ġs Ã¸ ker "), ĊĠĠĠ ĠG RUN NL AG ( 2 , Ġfalse , Ġfalse , ĠBe hand lings status . UT RE DES , Ġ" M ott at Ġkr av gr un nl ag Ġf ra ĠÃ ¸ k onom i Ġfor Ġtil b ake k rev ings rev ur der ing "), ĊĠĠĠ ĠVER GE ( 3 , Ġtrue , Ġfalse , ĠBe hand lings status . UT RE DES , Ġ" F ak ta Ġom Ġver ge "), ĊĠĠĠ ĠF AK TA ( 4 , Ġtrue , Ġtrue , ĠBe hand lings status . UT RE DES , Ġ" F ak ta Ġom ĠFe il ut bet aling "), ĊĠĠĠ ĠFORE L DEL SE ( 5 , Ġtrue , Ġtrue , ĠBe hand lings status . UT RE DES , Ġ" V ur der Ġom Ġfe il ut bet al te Ġperiod er Ġer Ġfore l det "), ĊĠĠĠ ĠV IL K Ã ħ R SV UR DER ING ( 6 , Ġtrue , Ġtrue , ĠBe hand lings status . UT RE DES , Ġ" V ur dere Ġom Ġog Ġh va Ġsom Ġskal Ġtil b ake k re ves "), ĊĠĠĠ ĠFORE SL Ã ħ _ VED TA K ( 7 , Ġtrue , Ġtrue , ĠBe hand lings status . UT RE DES , Ġ" F ores l Ã¥r Ġved tak "), ĊĠĠĠ ĠFAT TE _ VED TA K ( 8 , Ġtrue , Ġfalse , ĠBe hand lings status . F ATTER _ VED TA K , Ġ" F atter Ġved tak "), ĊĠĠĠ ĠI VER K SETT _ VED TA K ( 9 , Ġfalse , Ġfalse , ĠBe hand lings status . IVER K SET TER _ VED TA K , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" I ver k set t Ġved tak Ġf ra Ġen Ġbe handling . Ġ ĠFor ut setter Ġat Ġet Ġved tak Ġer Ġf att et "), ĊĠĠĠ ĠAV SL UT TET ( 1 0 , Ġfalse , Ġfalse , ĠBe hand lings status . AV SL UT TET , Ġ" Be handling en Ġer Ġfer dig Ġbe hand let "); ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġfun Ġfin n N este Be hand lings st eg ( be hand lings st eg : ĠBe hand lings st eg , Ġhar V erge : ĠBoolean ): ĠBe hand lings st eg Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġn este Be hand lings st eg Ġ= Ġf ra Se kv ens ( be hand lings st eg . se kv ens Ġ+ Ġ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( nest e Be hand lings st eg Ġ== ĠVER GE Ġ&& Ġ! har V erge ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠH vis Ġbe handling Ġopp ret tes Ġik ke Ġmed Ġver ge , Ġkan Ġbe handling en Ġfly t tes Ġtil Ġn este Ġst eg ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġf ra Se kv ens ( nest e Be hand lings st eg . se kv ens Ġ+ Ġ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġn este Be hand lings st eg ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġfun Ġf ra Se kv ens ( se kv ens : ĠInt ): ĠBe hand lings st eg Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( be hand lings st eg Ġin Ġvalues ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( se kv ens Ġ== Ġbe hand lings st eg . se kv ens ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġbe hand lings st eg ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠIllegalArgumentException (" Be hand lings st eg Ġfin nes Ġik ke Ġmed Ġse kv ens =$ se kv ens ") ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġfun Ġf ra Nav n ( nav n : ĠString ): ĠBe hand lings st eg Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġvalues (). first OrNull Ġ{ Ġit . name Ġ== Ġnav n Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ?: Ġthrow ĠIllegalArgumentException (" U kj ent ĠBe hand lings st eg Ġ$ nav n ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ } Ċ Ċ enum Ġclass ĠBe hand lings st eg status ( private Ġval Ġbes k riv else : ĠString ) Ġ{ ĊĠĠĠ ĠV ENTER (" Ste get Ġer Ġs att ĠpÃ¥ Ġvent , Ġf . eks . Ġv enter ĠpÃ¥ Ġbru k ert il b ake meld ing Ġeller Ġkr av gr un nl ag "), ĊĠĠĠ ĠK L AR (" K lar Ġtil Ġs aks be handling "), ĊĠĠĠ ĠUTF Ã ĺ RT (" Ste get Ġer Ġfer dig Ġutf Ã¸ rt "), ĊĠĠĠ ĠA UT OUT F Ã ĺ RT (" Ste get Ġutf Ã¸ res Ġautomatis k Ġav Ġsyst e met "), ĊĠĠĠ ĠT IL BA KE F Ã ĺ RT (" Ste get Ġer Ġav br utt Ġog Ġtil b ake f Ã¸ rt Ġtil Ġet Ġtid lig ere Ġst eg "), ĊĠĠĠ ĠAV BR UT T (" Ste get Ġer Ġav br utt "); ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġval Ġakt ive St eg Stat user Ġ= ĠlistOf ( VENT ER , ĠK L AR ) ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġutf Ã¸ rte St eg Stat user Ġ= ĠlistOf ( UTF Ã ĺ RT , ĠA UT OUT F Ã ĺ RT ) ĊĊĠĠĠĠĠĠĠ Ġfun Ġer St eg A ktiv ( status : ĠBe hand lings st eg status ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġakt ive St eg Stat user . contains ( status ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġfun Ġer St eg Utf Ã¸ rt ( status : ĠBe hand lings st eg status ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġutf Ã¸ rte St eg Stat user . contains ( status ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ enum Ġclass ĠV ente Ã¥ rs ak ( val Ġdefault V ente Tid IU ker : ĠLong , Ġval Ġbes k riv else : ĠString ) Ġ{ ĊĊĠĠĠ ĠV ENT _ P Ã ħ _ BR UK ERT IL BA KE ME LD ING ( 4 , Ġ" V enter ĠpÃ¥ Ġtil b ake meld ing Ġf ra Ġbru ker "), ĊĠĠĠ ĠV ENT _ P Ã ħ _ T IL BA KE K REV INGS GR UN NL AG ( 4 , Ġ" V enter ĠpÃ¥ Ġkr av gr un nl ag Ġf ra ĠÃ ¸ k onom i "), ĊĠĠĠ ĠAV VENT ER _ DO K UMENT AS J ON ( 0 , Ġ" Av vent er Ġdokument as jon "), ĊĠĠĠ ĠUT VID ET _ T IL SV AR _ FR IST ( 0 , Ġ" Ut vide t Ġt ils var sf rist "), ĊĠĠĠ ĠEND RE _ T IL KJ ENT _ Y TEL SE ( 0 , Ġ" Mul ig Ġend ring Ġi Ġtil kj ent Ġy t else "), ĊĠĠĠ ĠV ENT _ P Ã ħ _ MUL IG _ MOT REG NING ( 0 , Ġ" Mul ig Ġmot reg ning Ġmed Ġan nen Ġy t else "); ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġfun Ġv enter P Ã¥ B ru ker ( vent e Ã¥ rs ak : ĠV ente Ã¥ rs ak ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġv ente Ã¥ rs ak Ġin ĠlistOf ( VENT _ P Ã ħ _ BR UK ERT IL BA KE ME LD ING , ĠUT VID ET _ T IL SV AR _ FR IST , ĠAV VENT ER _ DO K UMENT AS J ON ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġfun Ġv enter P Ã¥ Ã ĺ k onom i ( vent e Ã¥ rs ak : ĠV ente Ã¥ rs ak ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġv ente Ã¥ rs ak Ġin ĠlistOf ( VENT _ P Ã ħ _ T IL BA KE K REV INGS GR UN NL AG , ĠV ENT _ P Ã ħ _ MUL IG _ MOT REG NING ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊ Ċ } Ċ