package Ġfm . force . quiz . core . repository Ċ Ċ import Ġfm . force . quiz . security . entity . User Ċ import Ġjava . util . Optional Ċ import Ġorg . springframework . data . jpa . repository . Query Ċ import Ġorg . springframework . data . repository . query . Param Ċ Ċ interface ĠCommon Repository < T > Ġ{ ĊĠĠĠ Ġfun Ġfind ById And Owner ( id : ĠLong , Ġowner : ĠUser ): ĠOptional < T > ĊĊĠĠĠ Ġ@ Query (" select Ġt . id Ġfrom Ġ#{ # entityName } Ġt Ġwhere Ġt . id Ġin Ġ: ids Ġand Ġt . owner . id Ġ= Ġ: owner Id ") ĊĠĠĠ Ġfun Ġfind Owned Ids ( ĊĠĠĠĠĠĠĠ Ġ@ Param (" ids ") ĊĠĠĠĠĠĠĠ Ġids : ĠCollection < Long >, ĊĠĠĠĠĠĠĠ Ġ@ Param (" owner Id ") ĊĠĠĠĠĠĠĠ Ġowner Id : ĠLong ĊĠĠĠ Ġ): ĠList < Long > ĊĊĠĠĠ Ġ@ Query (" select Ġt Ġfrom Ġ#{ # entityName } Ġt Ġwhere Ġt . id Ġin Ġ: ids Ġand Ġt . owner . id Ġ= Ġ: owner Id ") ĊĠĠĠ Ġfun Ġfind Owned ( ĊĠĠĠĠĠĠĠ Ġ@ Param (" ids ") ĊĠĠĠĠĠĠĠ Ġids : ĠCollection < Long >, ĊĠĠĠĠĠĠĠ Ġ@ Param (" owner Id ") ĊĠĠĠĠĠĠĠ Ġowner Id : ĠLong ĊĠĠĠ Ġ): ĠList < T > ĊĊĠĠĠ Ġ@ Query ( ĊĠĠĠĠĠĠĠ Ġ""" ĊĠĠĠĠĠĠĠ Ġselect ĠĊĠĠĠĠĠĠĠĠĠĠĠ Ġcase Ġwhen Ġcount ( c )> Ġ 0 Ġthen Ġtrue Ġelse Ġfalse Ġend ĠĊĠĠĠĠĠĠĠ Ġfrom Ġ#{ # entityName } Ġc ĠĊĠĠĠĠĠĠĠ Ġwhere ĠĊĠĠĠĠĠĠĠĠĠĠĠ Ġc . id Ġ= Ġ: id Ġand Ġc . owner . id Ġ= Ġ: owner Id ĊĠĠĠ Ġ""" ĊĠĠĠ Ġ) ĊĠĠĠ Ġfun Ġexists ById And OwnerId ( ĊĠĠĠĠĠĠĠ Ġ@ Param (" id ") ĊĠĠĠĠĠĠĠ Ġid : ĠLong , ĊĠĠĠĠĠĠĠ Ġ@ Param (" owner Id ") ĊĠĠĠĠĠĠĠ Ġowner Id : ĠLong ĊĠĠĠ Ġ): ĠBoolean Ċ } Ċ