package Ġcom . x un fos . box organization be . repository Ċ Ċ import Ġcom . x un fos . box organization be . entity . Box Ċ import Ġkotlinx . coroutines . flow . Flow Ċ import Ġorg . springframework . data . r 2 dbc . repository . Query Ċ import Ġorg . springframework . data . repository . reactive . Reactive Crud Repository Ċ import Ġorg . springframework . stereotype . Repository Ċ import Ġjava . util . UUID Ċ Ċ @ Repository Ċ interface ĠBox Repository Ġ: ĠReactive Crud Repository < Box , ĠUUID > Ġ{ ĊĠĠĠ Ġ@ Query (" SELECT Ġ* Ġfrom Ġitem ĠWHERE Ġuser _ id Ġ= Ġ: userId ĠAND Ġtype Ġ= Ġ' Box '") ĊĠĠĠ Ġsuspend Ġfun ĠfindAll By UserId ( userId : ĠUUID ): ĠFlow < Box > ĊĊĠĠĠ Ġ@ Query (" SELECT Ġ* Ġfrom Ġitem ĠWHERE Ġuser _ id Ġ= Ġ: userId ĠAND Ġid Ġ= Ġ: id ĠAND Ġtype Ġ= Ġ' Box '") ĊĠĠĠ Ġsuspend Ġfun ĠgetBy UserId And Id ( userId : ĠUUID , Ġid : ĠUUID ): ĠBox ĊĊĠĠĠ Ġ@ Query (" SELECT Ġ* Ġfrom Ġitem ĠWHERE Ġuser _ id Ġ= Ġ: userId ĠAND Ġtype Ġ= Ġ' Box ' ĠAND Ġname ĠI LIKE ĠCONCAT ('% ', Ġ: query ,' % ') ") ĊĠĠĠ Ġsuspend Ġfun Ġfind ( userId : ĠUUID , Ġquery : ĠString ): ĠFlow < Box > Ċ } Ċ