package Ġcom . nik ich xp . tg bot . service Ċ Ċ import Ġcom . nik ich xp . tg bot . dto . User Ċ import Ġorg . springframework . data . annotation . Id Ċ import Ġorg . springframework . data . mongodb . core . Mongo Template Ċ import Ġorg . springframework . data . mongodb . core . findById Ċ import Ġorg . springframework . stereotype . Service Ċ Ċ @ Service Ċ class ĠUserInfo Provider ( ĊĠĠĠ Ġprivate Ġval Ġmongo Template : ĠMongo Template Ċ ) Ġ{ ĊĊĠĠĠ Ġfun ĠgetUser Info ( user : ĠUser ): ĠUserInfo Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġmongo Template . findById ( user . id ) Ġ?: ĠUserInfo ( user ). also Ġ{ Ġmongo Template . insert ( user ) Ġ} ĊĠĠĠ Ġ} Ċ Ċ } Ċ Ċ data Ġclass ĠUserInfo ( ĊĠĠĠ Ġ@ Id Ġval Ġid : ĠLong , ĊĠĠĠ Ġvar Ġusername : ĠString ?, ĊĠĠĠ Ġvar Ġrating : ĠDouble Ġ= Ġ 0 . 0 Ċ ) Ġ{ ĊĊĠĠĠ Ġconstructor ( user : ĠUser ) Ġ: Ġthis ( id Ġ= Ġuser . id , Ġusername Ġ= Ġuser . username , Ġrating Ġ= Ġ 0 . 0 ) Ċ Ċ }