package Ġno . nav . hel se . sp ur v Ċ Ċ import Ġk ot li query . query Of Ċ import Ġk ot li query . session Of Ċ import Ġk ot li query . using Ċ import Ġjava . time . LocalDate Ċ import Ġjavax . sql . DataSource Ċ Ċ internal Ġclass ĠA ktiv it ets logger A ktiv itet Dao ( private Ġval ĠdataSource : ĠDataSource ) Ġ{ ĊĊĠĠĠ Ġfun Ġlag R ap port ( dat o : ĠLocalDate ) Ġ= ĊĠĠĠĠĠĠĠ Ġusing ( session Of ( dataSource )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . run ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġquery Of ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" SELECT Ġtype , Ġme ld ing , ĠCOUNT ( 1 ) ĠFROM Ġaktiv it ets logger _ aktiv itet ĠWHERE Ġdat o Ġ= Ġ? ĠGROUP ĠBY Ġtype , Ġme ld ing ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdat o ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ). map Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTrip le ( it . string ( 1 ), Ġit . string ( 2 ), Ġit . long ( 3 )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. asList ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ}. groupBy Ġ{ Ġit . first Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Values Ġ{ Ġit . value . associate Ġ{ Ġit . second Ġto Ġit . third Ġ} Ġ} ĊĊĠĠĠ Ġfun Ġle gg In nA ktiv itet ( type : ĠString , Ġme ld ing : ĠString , Ġdat o : ĠLocalDate ) Ġ= ĊĠĠĠĠĠĠĠ Ġusing ( session Of ( dataSource )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . run ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġquery Of ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" INSERT ĠINTO Ġ Ġaktiv it ets logger _ aktiv itet Ġ( type , Ġme ld ing , Ġdat o ) ĠVALUES Ġ( ?, Ġ?, Ġ? )", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtype , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġme ld ing , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdat o ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ). as Execute ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} Ċ } Ċ