package Ġno . nav . sy fo . rules Ċ Ċ import Ġno . nav . sy fo . model . Per i ode Ċ import Ġno . nav . sy fo . model . Rule Metadata Ċ import Ġno . nav . sy fo . model . Status Ċ import Ġjava . time . DayOfWeek Ċ import Ġjava . time . LocalDate Ċ import Ġjava . time . temporal . Ch rono Unit Ċ Ċ enum Ġclass ĠPeriod Logic Rule Chain ( ĊĠĠĠ Ġoverride Ġval Ġrule Id : ĠInt ?, ĊĠĠĠ Ġoverride Ġval Ġstatus : ĠStatus , ĊĠĠĠ Ġoverride Ġval Ġmessage ForUser : ĠString , ĊĠĠĠ Ġoverride Ġval Ġmessage For Sender : ĠString , ĊĠĠĠ Ġoverride Ġval Ġpredicate : Ġ( Rule Data < Rule Metadata >) Ġ-> ĠBoolean Ċ ) Ġ: ĠRule < Rule Data < Rule Metadata >> Ġ{ ĊĠĠĠ Ġ@ Description (" H vis Ġing en Ġperiod er Ġer Ġopp git t Ġskal Ġsy k meld ingen Ġav v ises .") ĊĠĠĠ ĠPER IO DER _ MAN GL ER ( ĊĠĠĠĠĠĠĠĠ 1 2 0 0 , ĊĠĠĠĠĠĠĠ ĠStatus . INVALID , ĊĠĠĠĠĠĠĠ Ġ" Det Ġer Ġik ke Ġopp git t Ġh vil ken Ġper i ode Ġsy k meld ingen Ġg jel der Ġfor .", ĊĠĠĠĠĠĠĠ Ġ" Sy k meld ingen Ġkan Ġik ke Ġret tes , Ġdet ĠmÃ¥ Ġsk rives Ġen Ġny . ĠPas ient en Ġhar Ġf Ã¥ tt Ġbes kj ed Ġom ĠÃ¥ Ġv ente ĠpÃ¥ Ġny Ġsy k meld ing Ġf ra Ġdeg . ĠG run net Ġf Ã¸ l gende :" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" H vis Ġing en Ġperiod er Ġer Ġopp git t Ġskal Ġsy k meld ingen Ġav v ises .", ĊĠĠĠĠĠĠĠ Ġ{ Ġ( health Information , Ġ_) Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhealth Information . period er . isNull OrEmpty () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ), ĊĊĠĠĠ Ġ@ Description (" H vis Ġt ild ato Ġfor Ġen Ġper i ode Ġlig ger Ġf Ã¸ r Ġf rad ato Ġav v ises Ġme ld ingen Ġog Ġh vil ken Ġper i ode Ġdet Ġg jel der Ġopp gis .") ĊĠĠĠ ĠF RAD AT O _ ET TER _ T ILD AT O ( ĊĠĠĠĠĠĠĠĠ 1 2 0 1 , ĊĠĠĠĠĠĠĠ ĠStatus . INVALID , ĊĠĠĠĠĠĠĠ Ġ" Det Ġer Ġlag t Ġinn Ġdat o er Ġsom Ġik ke Ġstem mer Ġinn by r des .", ĊĠĠĠĠĠĠĠ Ġ" Sy k meld ingen Ġkan Ġik ke Ġret tes , Ġdet ĠmÃ¥ Ġsk rives Ġen Ġny . ĠPas ient en Ġhar Ġf Ã¥ tt Ġbes kj ed Ġom ĠÃ¥ Ġv ente ĠpÃ¥ Ġny Ġsy k meld ing Ġf ra Ġdeg . ĠG run net Ġf Ã¸ l gende :" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" H vis Ġt ild ato Ġfor Ġen Ġper i ode Ġlig ger Ġf Ã¸ r Ġf rad ato Ġav v ises Ġme ld ingen Ġog Ġh vil ken Ġper i ode Ġdet Ġg jel der Ġopp gis .", ĊĠĠĠĠĠĠĠ Ġ{ Ġ( health Information , Ġ_) Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhealth Information . period er . any Ġ{ Ġit . f om . is After ( it . tom ) Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ), ĊĊĠĠĠ Ġ@ Description (" H vis Ġen Ġeller Ġfl ere Ġperiod er Ġer Ġover l app ende Ġav v ises Ġme ld ingen Ġog Ġh vil ken Ġper i ode Ġdet Ġg jel der Ġopp gis .") ĊĠĠĠ ĠOVER L APP EN DE _ PER IO DER ( ĊĠĠĠĠĠĠĠĠ 1 2 0 2 , ĊĠĠĠĠĠĠĠ ĠStatus . INVALID , ĊĠĠĠĠĠĠĠ Ġ" Period ene ĠmÃ¥ Ġik ke Ġoverlap pe Ġh ver andre .", ĊĠĠĠĠĠĠĠ Ġ" Sy k meld ingen Ġkan Ġik ke Ġret tes , Ġdet ĠmÃ¥ Ġsk rives Ġen Ġny . ĠPas ient en Ġhar Ġf Ã¥ tt Ġbes kj ed Ġom ĠÃ¥ Ġv ente ĠpÃ¥ Ġny Ġsy k meld ing Ġf ra Ġdeg . ĠG run net Ġf Ã¸ l gende :" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" H vis Ġen Ġeller Ġfl ere Ġperiod er Ġer Ġover l app ende Ġav v ises Ġme ld ingen Ġog Ġh vil ken Ġper i ode Ġdet Ġg jel der Ġopp gis .", ĊĠĠĠĠĠĠĠ Ġ{ Ġ( health Information , Ġ_) Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhealth Information . period er . any Ġ{ Ġperiod A Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġhealth Information . period er ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. filter Ġ{ Ġperiod B Ġ-> Ġperiod B Ġ!= Ġperiod A Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. any Ġ{ Ġperiod B Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġperiod A . f om Ġin Ġperiod B . range () Ġ|| Ġperiod A . tom Ġin Ġperiod B . range () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ), ĊĊĠĠĠ Ġ@ Description (" H vis Ġdet Ġfin nes Ġopp hold Ġmel lom Ġperiod er Ġi Ġsy k meld ingen Ġav v ises Ġme ld ingen .") ĊĠĠĠ ĠOP PH OLD _ ME L LO M _ PER IO DER ( ĊĠĠĠĠĠĠĠĠ 1 2 0 3 , ĊĠĠĠĠĠĠĠ ĠStatus . INVALID , ĊĠĠĠĠĠĠĠ Ġ" Det Ġer Ġopp hold Ġmel lom Ġsy k meld ing sper iod ene .", ĊĠĠĠĠĠĠĠ Ġ" Sy k meld ingen Ġkan Ġik ke Ġret tes , Ġdet ĠmÃ¥ Ġsk rives Ġen Ġny . ĠPas ient en Ġhar Ġf Ã¥ tt Ġbes kj ed Ġom ĠÃ¥ Ġv ente ĠpÃ¥ Ġny Ġsy k meld ing Ġf ra Ġdeg . ĠG run net Ġf Ã¸ l gende :" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" H vis Ġdet Ġfin nes Ġopp hold Ġmel lom Ġperiod er Ġi Ġsy k meld ingen Ġav v ises Ġme ld ingen .", ĊĠĠĠĠĠĠĠ Ġ{ Ġ( health Information , Ġ_) Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġranges Ġ= Ġhealth Information . period er ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. sorted By Ġ{ Ġit . f om Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Ġ{ Ġit . f om Ġto Ġit . tom Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġgap Between Periods Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( i Ġin Ġ 1 .. ( ranges . size Ġ- Ġ 1 )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgap Between Periods Ġ= Ġwork days Between ( ranges [ i Ġ- Ġ 1 ]. second , Ġranges [ i ]. first ) Ġ> Ġ 0 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( gap Between Periods Ġ== Ġtrue ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbreak ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgap Between Periods ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ), ĊĊĠĠĠ Ġ@ Description (" H vis Ġdet Ġik ke Ġer Ġopp git t Ġtype Ġfor Ġperiod en Ġskal Ġsy k meld ingen Ġav v ises .") ĊĠĠĠ ĠIK KE _ DEFIN ERT _ PER IO DE ( ĊĠĠĠĠĠĠĠĠ 1 2 0 4 , ĊĠĠĠĠĠĠĠ ĠStatus . INVALID , ĊĠĠĠĠĠĠĠ Ġ" Det Ġer Ġik ke Ġopp git t Ġtype Ġfor Ġsy k meld ingen Ġ( den ĠmÃ¥ Ġv Ã¦ re Ġent en Ġ 1 0 0 Ġpro sent , Ġgrad ert , Ġav vent ende , Ġre i set il sku dd Ġeller Ġbe hand lings d ager ). ", ĊĠĠĠĠĠĠĠ Ġ" Sy k meld ingen Ġkan Ġik ke Ġret tes , Ġdet ĠmÃ¥ Ġsk rives Ġen Ġny . ĠPas ient en Ġhar Ġf Ã¥ tt Ġbes kj ed Ġom ĠÃ¥ Ġv ente ĠpÃ¥ Ġny Ġsy k meld ing Ġf ra Ġdeg . ĠG run net Ġf Ã¸ l gende :" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Det Ġer Ġik ke Ġopp git t Ġtype Ġfor Ġsy k meld ingen Ġ( den ĠmÃ¥ Ġv Ã¦ re Ġent en Ġ 1 0 0 Ġpro sent , Ġgrad ert , Ġav vent ende , Ġre i set il sku dd Ġeller Ġbe hand lings d ager ). ", ĊĠĠĠĠĠĠĠ Ġ{ Ġ( health Information , Ġ_) Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhealth Information . period er . any Ġ{ Ġit . aktiv itet Ik ke Mul ig Ġ== Ġnull Ġ&& Ġit . grad ert Ġ== Ġnull Ġ&& Ġit . av vent ende In n sp ill Til Ar be id sg iver . isNull OrEmpty () Ġ&& Ġ! it . rei set il sku dd Ġ&& Ġ( it . be hand lings d ager Ġ== Ġnull Ġ|| Ġit . be hand lings d ager Ġ== Ġ 0 ) Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ), ĊĊĠĠĠ Ġ@ Description (" Sy k meld ing es Ġf om - dat o Ġer Ġmer Ġen n Ġ 3 ĠÃ¥ r Ġtil b ake Ġi Ġtid .") ĊĠĠĠ ĠT IL BA K ED AT ERT _ MER _ EN N _ 3 _ AR ( ĊĠĠĠĠĠĠĠĠ 1 2 0 6 , ĊĠĠĠĠĠĠĠ ĠStatus . INVALID , ĊĠĠĠĠĠĠĠ Ġ" Start dat o en Ġer Ġmer Ġen n Ġtre ĠÃ¥ r Ġtil b ake .", ĊĠĠĠĠĠĠĠ Ġ" Sy k meld ingen Ġkan Ġik ke Ġret tes , Ġdet ĠmÃ¥ Ġsk rives Ġen Ġny . ĠPas ient en Ġhar Ġf Ã¥ tt Ġbes kj ed Ġom ĠÃ¥ Ġv ente ĠpÃ¥ Ġny Ġsy k meld ing Ġf ra Ġdeg . ĠG run net Ġf Ã¸ l gende :" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Sy k meld ing es Ġf om - dat o Ġer Ġmer Ġen n Ġ 3 ĠÃ¥ r Ġtil b ake Ġi Ġtid .", ĊĠĠĠĠĠĠĠ Ġ{ Ġ( health Information , Ġ_) Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhealth Information . period er . sorted FO M Date (). first (). at Start OfDay (). is Before ( LocalDate . now (). minus Years ( 3 ). at Start OfDay ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ), ĊĊĠĠĠ Ġ@ Description (" H vis Ġsy k meld ingen Ġer Ġfre md at ert Ġmer Ġen n Ġ 3 0 Ġd ager Ġet ter Ġk ons ult as j ons dat o / sign atur dat o Ġav v ises Ġme ld ingen .") ĊĠĠĠ ĠF RE MD AT ERT ( ĊĠĠĠĠĠĠĠĠ 1 2 0 9 , ĊĠĠĠĠĠĠĠ ĠStatus . INVALID , ĊĠĠĠĠĠĠĠ Ġ" Sy k meld ingen Ġer Ġdat ert Ġmer Ġen n Ġ 3 0 Ġd ager Ġfram Ġi Ġtid .", ĊĠĠĠĠĠĠĠ Ġ" Sy k meld ingen Ġkan Ġik ke Ġret tes , Ġdet ĠmÃ¥ Ġsk rives Ġen Ġny . ĠPas ient en Ġhar Ġf Ã¥ tt Ġbes kj ed Ġom ĠÃ¥ Ġv ente ĠpÃ¥ Ġny Ġsy k meld ing Ġf ra Ġdeg . ĠG run net Ġf Ã¸ l gende :" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" H vis Ġsy k meld ingen Ġer Ġfre md at ert Ġmer Ġen n Ġ 3 0 Ġd ager Ġet ter Ġbe hand let D ato Ġav v ises Ġme ld ingen .", ĊĠĠĠĠĠĠĠ Ġ{ Ġ( sy k meld ing , Ġrule Metadata ) Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsy k meld ing . period er . sorted FO M Date (). first () Ġ> Ġrule Metadata . be hand let Tid sp unkt . plus Days ( 3 0 ). to LocalDate () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ), ĊĊĠĠĠ Ġ@ Description (" H vis Ġsy k meld ingen Ġf Ã¸ r ste Ġf om Ġog Ġsist e Ġtom Ġhar Ġein Ġvar ig het Ġsom Ġer Ġover Ġ 1 ĠÃ¥ r . Ġav v ises Ġme ld ingen .") ĊĠĠĠ ĠTOT AL _ VAR IGH ET _ OVER _ ET T _ A AR ( ĊĠĠĠĠĠĠĠĠ 1 2 1 1 , ĊĠĠĠĠĠĠĠ ĠStatus . INVALID , ĊĠĠĠĠĠĠĠ Ġ" Den Ġkan Ġik ke Ġha Ġen Ġvar ig het ĠpÃ¥ Ġover Ġett ĠÃ¥ r .", ĊĠĠĠĠĠĠĠ Ġ" Sy k meld ingen Ġkan Ġik ke Ġret tes , Ġdet ĠmÃ¥ Ġsk rives Ġen Ġny . ĠPas ient en Ġhar Ġf Ã¥ tt Ġbes kj ed Ġom ĠÃ¥ Ġv ente ĠpÃ¥ Ġny Ġsy k meld ing Ġf ra Ġdeg . ĠG run net Ġf Ã¸ l gende :" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Sy k meld ingen Ġf Ã¸ r ste Ġf om Ġog Ġsist e Ġtom Ġhar Ġein Ġvar ig het Ġsom Ġer Ġover Ġ 1 ĠÃ¥ r ", ĊĠĠĠĠĠĠĠ Ġ{ Ġ( health Information , Ġ_) Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfirst F om Date Ġ= Ġhealth Information . period er . sorted FO M Date (). first (). at Start OfDay (). to LocalDate () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlast Tom Date Ġ= Ġhealth Information . period er . sorted TOM Date (). last (). at Start OfDay (). to LocalDate () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ( first F om Date .. last Tom Date ). days Between () Ġ> Ġ 3 6 5 ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ), ĊĊĠĠĠ Ġ@ Description (" H vis Ġbe handle td ato Ġer Ġet ter Ġdat o Ġfor Ġmot tak Ġav Ġme ld ingen Ġav v ises Ġme ld ingen ") ĊĠĠĠ ĠBE HAND LING SD AT O _ ET TER _ MOT T AT TD AT O ( ĊĠĠĠĠĠĠĠĠ 1 1 2 3 , ĊĠĠĠĠĠĠĠ ĠStatus . INVALID , ĊĠĠĠĠĠĠĠ Ġ" Be hand lings dat o en ĠmÃ¥ Ġret tes .", ĊĠĠĠĠĠĠĠ Ġ" Sy k meld ingen Ġkan Ġik ke Ġret tes , Ġdet ĠmÃ¥ Ġsk rives Ġen Ġny . ĠPas ient en Ġhar Ġf Ã¥ tt Ġbes kj ed Ġom ĠÃ¥ Ġv ente ĠpÃ¥ Ġny Ġsy k meld ing Ġf ra Ġdeg . ĠG run net Ġf Ã¸ l gende :" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Be hand lings dat o en Ġer Ġet ter Ġdat o Ġfor Ġn Ã¥r ĠNAV Ġmot tok Ġme ld ingen ", ĊĠĠĠĠĠĠĠ Ġ{ Ġ( health Information , Ġrule Metadata ) Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhealth Information . be hand let Tid sp unkt Ġ> Ġrule Metadata . received Date . plus Days ( 1 ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ), ĊĊĠĠĠ Ġ@ Description (" H vis Ġav vent ende Ġsy k meld ing Ġer Ġfun net Ġog Ġdet Ġfin nes Ġfl ere Ġperiod er ") ĊĠĠĠ ĠAV VENT EN DE _ SY K ME LD ING _ KO MB IN ERT ( ĊĠĠĠĠĠĠĠĠ 9 9 9 9 , ĊĠĠĠĠĠĠĠ ĠStatus . INVALID , ĊĠĠĠĠĠĠĠ Ġ" En Ġav vent ende Ġsy k meld ing Ġkan Ġbare Ġin ne hol de ĠÃ© n Ġper i ode .", ĊĠĠĠĠĠĠĠ Ġ" Sy k meld ingen Ġkan Ġik ke Ġret tes , Ġdet ĠmÃ¥ Ġsk rives Ġen Ġny . ĠPas ient en Ġhar Ġf Ã¥ tt Ġbes kj ed Ġom ĠÃ¥ Ġv ente ĠpÃ¥ Ġny Ġsy k meld ing Ġf ra Ġdeg . ĠG run net Ġf Ã¸ l gende :" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Av vent ende Ġsy k meld ing Ġkan Ġik ke Ġin ne hol de Ġfl ere Ġperiod er .", ĊĠĠĠĠĠĠĠ Ġ{ Ġ( health Information , Ġ_) Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhealth Information . period er . count Ġ{ Ġit . av vent ende In n sp ill Til Ar be id sg iver Ġ!= Ġnull Ġ} Ġ!= Ġ 0 Ġ&& ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġhealth Information . period er . size Ġ> Ġ 1 ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ), ĊĊĠĠĠ Ġ@ Description (" H vis Ġinn sp ill Ġtil Ġar be id sg iver Ġom Ġtil ret te leg ging Ġi Ġpkt Ġ 4 . 1 . 3 Ġik ke Ġer Ġutf y lt Ġved Ġav vent ende Ġsy k meld ing Ġav v ises Ġme ld ingen ") ĊĠĠĠ ĠMAN GL EN DE _ IN NS PI LL _ T IL _ AR BE ID SG IVER ( ĊĠĠĠĠĠĠĠĠ 1 2 4 1 , ĊĠĠĠĠĠĠĠ ĠStatus . INVALID , ĊĠĠĠĠĠĠĠ Ġ" En Ġav vent ende Ġsy k meld ing Ġfor ut setter Ġat Ġdu Ġkan Ġjob be Ġh vis Ġar be id sg iver en Ġdin Ġleg ger Ġtil Ġret te Ġfor Ġdet . ĠDen Ġsom Ġhar Ġsy k meld t Ġdeg Ġhar Ġik ke Ġf ores l Ã¥ tt Ġh va Ġar be id sg iver en Ġkan Ġg j Ã¸ re , Ġno e Ġsom Ġk re ves Ġfor Ġden ne Ġty pen Ġsy k meld ing .", ĊĠĠĠĠĠĠĠ Ġ" Sy k meld ingen Ġkan Ġik ke Ġret tes , Ġdet ĠmÃ¥ Ġsk rives Ġen Ġny . ĠPas ient en Ġhar Ġf Ã¥ tt Ġbes kj ed Ġom ĠÃ¥ Ġv ente ĠpÃ¥ Ġny Ġsy k meld ing Ġf ra Ġdeg . ĠG run net Ġf Ã¸ l gende :" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" H vis Ġinn sp ill Ġtil Ġar be id sg iver Ġom Ġtil ret te leg ging Ġi Ġpkt Ġ 4 . 1 . 3 Ġik ke Ġer Ġutf y lt Ġved Ġav vent ende Ġsy k meld ing Ġav v ises Ġme ld ingen ", ĊĠĠĠĠĠĠĠ Ġ{ Ġ( health Information , Ġ_) Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhealth Information . period er ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. any Ġ{ Ġit . av vent ende In n sp ill Til Ar be id sg iver Ġ!= Ġnull Ġ&& Ġit . av vent ende In n sp ill Til Ar be id sg iver ?. trim (). isNull OrEmpty () Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ), ĊĊĠĠĠ Ġ@ Description (" H vis Ġav vent ende Ġsy k meld ing Ġben yt tes Ġ uto ver Ġar be id sg iver period en ĠpÃ¥ Ġ 1 6 Ġkal ender d ager , Ġav v ises Ġme ld ingen .") ĊĠĠĠ ĠAV VENT EN DE _ SY K ME LD ING _ OVER _ 1 6 _ D AGER ( ĊĠĠĠĠĠĠĠĠ 1 2 4 2 , ĊĠĠĠĠĠĠĠ ĠStatus . INVALID , ĊĠĠĠĠĠĠĠ Ġ" En Ġav vent ende Ġsy k meld ing Ġkan Ġbare Ġg is Ġfor Ġ 1 6 Ġd ager .", ĊĠĠĠĠĠĠĠ Ġ" Sy k meld ingen Ġkan Ġik ke Ġret tes , Ġdet ĠmÃ¥ Ġsk rives Ġen Ġny . ĠPas ient en Ġhar Ġf Ã¥ tt Ġbes kj ed Ġom ĠÃ¥ Ġv ente ĠpÃ¥ Ġny Ġsy k meld ing Ġf ra Ġdeg . ĠG run net Ġf Ã¸ l gende :" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" H vis Ġav vent ende Ġsy k meld ing Ġben yt tes Ġ uto ver Ġar be id sg iver period en ĠpÃ¥ Ġ 1 6 Ġkal ender d ager , Ġav v ises Ġme ld ingen .", ĊĠĠĠĠĠĠĠ Ġ{ Ġ( health Information , Ġ_) Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhealth Information . period er ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. filter Ġ{ Ġit . av vent ende In n sp ill Til Ar be id sg iver Ġ!= Ġnull Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. any Ġ{ Ġ( it . f om .. it . tom ). days Between () Ġ> Ġ 1 6 Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ), ĊĊĠĠĠ Ġ@ Description (" H vis Ġant all Ġd ager Ġopp git t Ġfor Ġbe hand lings d ager Ġper i ode Ġer Ġfor Ġh Ã¸ yt Ġi Ġfor hold Ġtil Ġperiod ens Ġl eng de Ġav v ises Ġme ld ingen . ĠMer Ġen n Ġen Ġdag Ġper Ġu ke Ġer Ġfor Ġh Ã¸ yt . Ġ 1 Ġdag Ġper ĠpÃ¥ beg ynt Ġu ke .") ĊĠĠĠ ĠFOR _ MAN GE _ BE HAND LING SD AGER _ PER _ U KE ( ĊĠĠĠĠĠĠĠĠ 1 2 5 0 , ĊĠĠĠĠĠĠĠ ĠStatus . INVALID , ĊĠĠĠĠĠĠĠ Ġ" Det Ġer Ġan git t Ġfor Ġm ange Ġbe hand lings d ager . ĠDet Ġkan Ġbare Ġan gis ĠÃ© n Ġbe hand lings dag Ġper Ġu ke .", ĊĠĠĠĠĠĠĠ Ġ" Sy k meld ingen Ġkan Ġik ke Ġret tes , Ġdet ĠmÃ¥ Ġsk rives Ġen Ġny . ĠPas ient en Ġhar Ġf Ã¥ tt Ġbes kj ed Ġom ĠÃ¥ Ġv ente ĠpÃ¥ Ġny Ġsy k meld ing Ġf ra Ġdeg . ĠG run net Ġf Ã¸ l gende :" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" H vis Ġant all Ġd ager Ġopp git t Ġfor Ġbe hand lings d ager Ġper i ode Ġer Ġfor Ġh Ã¸ yt Ġi Ġfor hold Ġtil Ġperiod ens Ġl eng de Ġav v ises Ġme ld ingen . ĠMer Ġen n Ġen Ġdag Ġper Ġu ke Ġer Ġfor Ġh Ã¸ yt . Ġ 1 Ġdag Ġper ĠpÃ¥ beg ynt Ġu ke .", ĊĠĠĠĠĠĠĠ Ġ{ Ġ( health Information , Ġ_) Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhealth Information . period er . any Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . be hand lings d ager Ġ!= Ġnull Ġ&& Ġit . be hand lings d ager !! Ġ> Ġit . range (). started Week s Between () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ), ĊĊĠĠĠ Ġ@ Description (" H vis Ġsy k meld ings grad Ġer Ġmind re Ġen n Ġ 2 0 % Ġfor Ġgrad ert Ġsy k meld ing , Ġav v ises Ġme ld ingen ") ĊĠĠĠ ĠGR AD ERT _ SY K ME LD ING _ UNDER _ 2 0 _ PRO SENT ( ĊĠĠĠĠĠĠĠĠ 1 2 5 1 , ĊĠĠĠĠĠĠĠ ĠStatus . INVALID , ĊĠĠĠĠĠĠĠ Ġ" Sy k meld ings grad en Ġkan Ġik ke Ġv Ã¦ re Ġmind re Ġen n Ġ 2 0 Ġ% .", ĊĠĠĠĠĠĠĠ Ġ" Sy k meld ingen Ġkan Ġik ke Ġret tes , Ġdet ĠmÃ¥ Ġsk rives Ġen Ġny . ĠPas ient en Ġhar Ġf Ã¥ tt Ġbes kj ed Ġom ĠÃ¥ Ġv ente ĠpÃ¥ Ġny Ġsy k meld ing Ġf ra Ġdeg . ĠG run net Ġf Ã¸ l gende :" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" H vis Ġsy k meld ings grad Ġer Ġmind re Ġen n Ġ 2 0 % Ġfor Ġgrad ert Ġsy k meld ing , Ġav v ises Ġme ld ingen ", ĊĠĠĠĠĠĠĠ Ġ{ Ġ( health Information , Ġ_) Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhealth Information . period er . any Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . grad ert Ġ!= Ġnull Ġ&& Ġit . grad ert !!. grad Ġ< Ġ 2 0 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ), ĊĊĠĠĠ Ġ@ Description (" H vis Ġsy k meld ings grad Ġer Ġh Ã¸ y ere Ġen n Ġ 9 9 % Ġfor Ġdel vis Ġsy k meld ing Ġav v ises Ġme ld ingen ") ĊĠĠĠ ĠGR AD ERT _ SY K ME LD ING _ OVER _ 9 9 _ PRO SENT ( ĊĠĠĠĠĠĠĠĠ 1 2 5 2 , ĊĠĠĠĠĠĠĠ ĠStatus . INVALID , ĊĠĠĠĠĠĠĠ Ġ" Sy k meld ings grad en Ġkan Ġik ke Ġv Ã¦ re Ġmer Ġen n Ġ 9 9 % Ġfor di Ġdet Ġer Ġen Ġgrad ert Ġsy k meld ing .", ĊĠĠĠĠĠĠĠ Ġ" Sy k meld ingen Ġkan Ġik ke Ġret tes , Ġdet ĠmÃ¥ Ġsk rives Ġen Ġny . ĠPas ient en Ġhar Ġf Ã¥ tt Ġbes kj ed Ġom ĠÃ¥ Ġv ente ĠpÃ¥ Ġny Ġsy k meld ing Ġf ra Ġdeg . ĠG run net Ġf Ã¸ l gende :" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" H vis Ġsy k meld ings grad Ġer Ġh Ã¸ y ere Ġen n Ġ 9 9 % Ġfor Ġdel vis Ġsy k meld ing Ġav v ises Ġme ld ingen ", ĊĠĠĠĠĠĠĠ Ġ{ Ġ( health Information , Ġ_) Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhealth Information . period er . map NotNull Ġ{ Ġit . grad ert Ġ}. any Ġ{ Ġit . grad Ġ> Ġ 9 9 Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ), ĊĊĠĠĠ Ġ@ Description (" Sy k meld ing Ġin ne holder Ġbe hand lings d ager ") ĊĠĠĠ ĠSY K ME LD ING _ MED _ BE HAND LING SD AGER ( ĊĠĠĠĠĠĠĠĠ 1 2 5 3 , ĊĠĠĠĠĠĠĠ ĠStatus . MAN UAL _ PROCESS ING , ĊĠĠĠĠĠĠĠ Ġ" Sy k meld ing Ġin ne holder Ġbe hand lings d ager .", ĊĠĠĠĠĠĠĠ Ġ" Sy k meld ing Ġin ne holder Ġbe hand lings d ager Ġ( f elt Ġ 4 . 4 ). ", ĊĠĠĠĠĠĠĠ Ġ{ Ġ( health Information , Ġ_) Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhealth Information . period er . any Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . be hand lings d ager Ġ!= Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ) Ċ } Ċ Ċ fun ĠList < Per i ode >. sorted FO M Date (): ĠList < LocalDate > Ġ= ĊĠĠĠ Ġmap Ġ{ Ġit . f om Ġ}. sorted () Ċ Ċ fun ĠList < Per i ode >. sorted TOM Date (): ĠList < LocalDate > Ġ= ĊĠĠĠ Ġmap Ġ{ Ġit . tom Ġ}. sorted () Ċ Ċ fun Ġwork days Between ( a : ĠLocalDate , Ġb : ĠLocalDate ): ĠInt Ġ= Ġ( 1 .. ( Ch rono Unit . DAYS . between ( a , Ġb ) Ġ- Ġ 1 )) ĊĠĠĠ Ġ. map Ġ{ Ġa . plus Days ( it ) Ġ} ĊĠĠĠ Ġ. filter Ġ{ Ġit . day OfWeek Ġ! in ĠarrayOf ( DayOfWeek . S ATUR DAY , ĠDay OfWeek . S UND AY ) Ġ} ĊĠĠĠ Ġ. count () Ċ Ċ fun ĠClosed Range < LocalDate >. days Between (): ĠLong Ġ= ĠCh rono Unit . DAYS . between ( start , Ġend Inclusive ) Ċ fun ĠClosed Range < LocalDate >. started Week s Between (): ĠInt Ġ= ĠCh rono Unit . W EE KS . between ( start , Ġend Inclusive ). toInt () Ġ+ Ġ 1 Ċ fun ĠPer i ode . range (): ĠClosed Range < LocalDate > Ġ= Ġf om . range To ( tom ) Ċ