package Ġcom . hand control . server . service Ċ Ċ import Ġcom . hand control . server . entity . Pro the sis Ċ import Ġcom . hand control . server . mqtt . command . dto . gesture . Get Gest ures Dto Ċ import Ġcom . hand control . server . mqtt . command . dto . settings . Get Settings Dto Ċ import Ġcom . hand control . server . service . dao . Pro the sis Repository Ċ import Ġorg . springframework . stereotype . Service Ċ import Ġjava . util .* Ċ Ċ @ Service Ċ class ĠPro the sis ServiceImpl ( val Ġrepository : ĠPro the sis Repository ) Ġ: ĠPro the sis Service Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġget Pro the sis ById ( id : ĠString ): ĠOptional < Pro the sis > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġrepository . findById ( id ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetAll Online Pro the ses (): ĠList < Pro the sis > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġrepository . findAll By Is Online ( true ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġsave ( pro the sis : ĠPro the sis ): ĠPro the sis Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġrepository . save ( pro the sis ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdelete ( id : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġrepository . delete ById ( id ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdelete Offline () Ġ{ ĊĠĠĠĠĠĠĠ Ġrepository . delete All By Online ( false ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Offline ( id : ĠString ): ĠPro the sis Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġprost hesis : ĠPro the sis Ġ= Ġrepository . findById ( id ). orElse Get Ġ{ ĠPro the sis . create With ( id ) Ġ} ĊĠĠĠĠĠĠĠ Ġprost hesis . is Online Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġreturn Ġrepository . save ( pro st hesis ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Online ( id : ĠString ): ĠPro the sis Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġprost hesis : ĠPro the sis Ġ= Ġrepository . findById ( id ). orElse Get Ġ{ ĠPro the sis . create With ( id ) Ġ} ĊĠĠĠĠĠĠĠ Ġprost hesis . is Online Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġreturn Ġrepository . save ( pro st hesis ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġis Online ( id : ĠString ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġfind Opt Ġ= Ġrepository . findById ( id ) ĊĠĠĠĠĠĠĠ Ġreturn Ġfind Opt . map Ġ{ Ġit . is Online Ġ}. orElse ( false ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġchange Pro the sis ( pro the sis : ĠPro the sis , Ġid : ĠString ): ĠPro the sis Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpro the sis New : ĠPro the sis Ġ= Ġrepository . findById ( id ). get () ĊĠĠĠĠĠĠĠ Ġrepository . save ( pro the sis ) ĊĠĠĠĠĠĠĠ Ġreturn Ġpro the sis New ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġupdate Settings ( id : ĠString , Ġsettings : ĠGet Settings Dto ): ĠPro the sis Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġprost hesis : ĠPro the sis Ġ= Ġrepository . findById ( id ). orElse Get Ġ{ ĠPro the sis . create With ( id ) Ġ} ĊĠĠĠĠĠĠĠ Ġprost hesis . is Online Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġprost hesis . settings Ġ= Ġsettings ĊĠĠĠĠĠĠĠ Ġreturn Ġrepository . save ( pro st hesis ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġupdate Gest ures ( id : ĠString , Ġgest ures : ĠGet Gest ures Dto ): ĠPro the sis Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġprost hesis : ĠPro the sis Ġ= Ġrepository . findById ( id ). orElse Get Ġ{ ĠPro the sis . create With ( id ) Ġ} ĊĠĠĠĠĠĠĠ Ġprost hesis . is Online Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġprost hesis . gest ures Ġ= Ġgest ures ĊĠĠĠĠĠĠĠ Ġreturn Ġrepository . save ( pro st hesis ) ĊĠĠĠ Ġ} Ċ Ċ }