package Ġcom . ze ong it . web . controller Ċ Ċ import Ġcom . ze ong it . data . constant . BlockState Ċ import Ġcom . ze ong it . share . annotations . Auth Ċ import Ġcom . ze ong it . share . annotations . Current UserInfo Id Ċ import Ġcom . ze ong it . share . annotations . Rest ful Pack Ċ import Ġcom . ze ong it . share . exception . Program Exception Ċ import Ġcom . ze ong it . web . core . com mun al . UserInfo Vo Abstract Ċ import Ġcom . ze ong it . web . service .* Ċ import Ġcom . ze ong it . web . vo . Black Hole Vo Ċ import Ġcom . ze ong it . web . vo . Tag Black Hole Vo Ċ import Ġcom . ze ong it . web . vo . User Black Hole Vo Ċ import Ġcom . ze ong it . web . vo . UserInfo Vo Ċ import Ġorg . springframework . data . domain . Page Ċ import Ġorg . springframework . data . domain . Page Impl Ċ import Ġorg . springframework . data . domain . Page able Ċ import Ġorg . springframework . data . web . Page able Default Ċ import Ġorg . springframework . web . bind . annotation .* Ċ import Ġjava . util .* ĊĊ Ċ /** Ċ Ġ* Ġ@ author Ġf jj Ċ Ġ* ĠçĶ¨æĪ· é»ĳ åĲį åįķ çļĦ æİ§åĪ¶åĻ¨ Ċ Ġ*/ Ċ @ RestController Ċ @ RequestMapping (" user Black Hole ") Ċ class ĠUser Black Hole Controller ( ĊĠĠĠĠĠĠĠ Ġoverride Ġval ĠuserInfo Service : ĠUserInfo Service , ĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġfollow Service : ĠFollow Service , ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġpicture Document Service : ĠPicture Document Service , ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġuser Black Hole Service : ĠUser Black Hole Service , ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġtag Black Hole Service : ĠTag Black Hole Service Ċ ) Ġ: ĠUserInfo Vo Abstract () Ġ{ ĊĊĠĠĠ Ġclass ĠSave Dto Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġtarget Id : ĠInt Ġ= Ġ 0 ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Auth ĊĠĠĠ Ġ@ PostMapping (" block ") ĊĠĠĠ Ġ@ Rest ful Pack ĊĠĠĠ Ġfun Ġblock (@ Current UserInfo Id ĠuserId : ĠInt , Ġ@ RequestBody Ġdto : ĠSave Dto ): ĠBlock State Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtarget Id Ġ= Ġdto . target Id ĊĠĠĠĠĠĠĠ ĠuserId Ġ== Ġtarget Id Ġ&& Ġthrow ĠProgram Exception (" æĵįä½ľ æľī è¯¯ ") ĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( user Black Hole Service . exists ( userId , Ġtarget Id )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġuser Black Hole Service . remove ( userId , Ġtarget Id ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠBlock State . NORMAL ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġuser Black Hole Service . save ( target Id ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠBlock State . SH I ELD ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġèİ·åıĸ å±ı èĶ ½ çĬ¶æĢģ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Auth ĊĠĠĠ Ġ@ GetMapping (" get ") ĊĠĠĠ Ġ@ Rest ful Pack ĊĠĠĠ Ġfun Ġget (@ Current UserInfo Id ĠuserId : ĠInt , Ġtarget Id : ĠInt ): ĠBlack Hole Vo Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġvo Ġ= ĠgetUser Vo ( target Id , ĠuserId ) ĊĠĠĠĠĠĠĠ Ġreturn ĠBlack Hole Vo ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠUser Black Hole Vo ( target Id , Ġvo . avatar Url , Ġvo . nickname , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( user Black Hole Service . exists ( userId , Ġtarget Id )) ĠBlock State . SH I ELD Ġelse ĠBlock State . NORMAL ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpicture Document Service . list Tag By UserId ( target Id ). map Ġ{ ĠTag Black Hole Vo ( it . key AsString , Ġif Ġ( tag Black Hole Service . exists ( userId , Ġit . key AsString )) ĠBlock State . SH I ELD Ġelse ĠBlock State . NORMAL ) Ġ} ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Auth ĊĠĠĠ Ġ@ GetMapping (" paging ") ĊĠĠĠ Ġ@ Rest ful Pack ĊĠĠĠ Ġfun Ġpaging (@ Current UserInfo Id ĠuserId : ĠInt , Ġ@ Page able Default ( value Ġ= Ġ 2 0 ) Ġpage able : ĠPage able , ĠstartDate : ĠDate ?, ĠendDate : ĠDate ?): ĠPage < User Black Hole Vo > Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpage Ġ= Ġuser Black Hole Service . paging ( page able , ĠuserId , ĠstartDate , ĠendDate ) ĊĠĠĠĠĠĠĠ Ġval Ġuser Vo List Ġ= Ġpage . content . map Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġinfo Ġ= ĠgetUser Vo ( it . target Id , ĠuserId ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠUser Black Hole Vo ( info . id , Ġinfo . avatar Url , Ġinfo . nickname , ĠBlock State . SH I ELD ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn ĠPage Impl ( user Vo List , Ġpage . page able , Ġpage . total Elements ) ĊĠĠĠ Ġ} Ċ }