package Ġjav ab ase . lo ren wang . common _ base _ frame . kotlin Extend Ċ Ċ import Ġjav ab ase . lo ren wang . common _ base _ frame . S bcb fl w Common Ċ import Ġjav ab ase . lo ren wang . common _ base _ frame . controller . REQUEST _ SET _ USER _ INFO _ KEY Ċ import Ġjav ab ase . lo ren wang . common _ base _ frame . controller . S bcb fl w Base Controller Ċ import Ġjav ab ase . lo ren wang . common _ base _ frame . controller . S bcb fl w Base HttpServletRequest Wrapper Ċ import Ġjav ab ase . lo ren wang . common _ base _ frame . database . repository . S bcb fl w UserInfo Repository Ċ import Ġjav ab ase . lo ren wang . common _ base _ frame . database . repository . S bcb fl w User Permission Repository Ċ import Ġjav ab ase . lo ren wang . common _ base _ frame . database . table . S bcb fl w Base UserInfo Tb Ċ import Ġjav ab ase . lo ren wang . common _ base _ frame . database . table . S bcb fl w Base User Permission Tb Ċ import Ġjav ab ase . lo ren wang . common _ base _ frame . database . table . S bcb fl w Base UserRole Tb Ċ import Ġjav ab ase . lo ren wang . common _ base _ frame . service . S bcb fl w User Permission Service Ċ import Ġjav ab ase . lo ren wang . common _ base _ frame . utils . S bcb f Base All Utils Ċ import Ġkotlin base . lo ren wang . tools . extend . k tt lw Empty Check Ċ import Ġkotlin base . lo ren wang . tools . extend . k tt lw Format Conversion Ċ import Ġkotlin base . lo ren wang . tools . extend . k tt lw Get NotEmpty Data Ċ import Ġkotlin base . lo ren wang . tools . extend . k tt lw Have Empty Check Ċ Ċ /** Ċ Ġ* Ġ åĬŁèĥ½ ä½ľçĶ¨ ï¼ļ æİ¥åı£ è¯·æ±Ĥ å¤ĦçĲĨ æī©å±ķ Ċ Ġ* ĠåĪĽå»º æĹ¶éĹ´ ï¼ļ 2 0 2 0 - 1 1 - 2 1 Ġ 1 0 : 4 9 Ġä¸ĭåįĪ Ċ Ġ* ĠåĪĽå»º äºº ï¼ļ çİĭ äº ® ï¼Ī L oren ï¼ī Ċ Ġ* Ġ æĢĿ è·¯ ï¼ļ Ċ Ġ* Ġæĸ¹æ³ķ ï¼ļ Ċ Ġ* Ġ æ³¨æĦı ï¼ļ Ċ Ġ* Ġä¿®æĶ¹ äºº ï¼ļ Ċ Ġ* Ġä¿®æĶ¹ æĹ¶éĹ´ ï¼ļ Ċ Ġ* Ġ å¤ĩ æ³¨ ï¼ļ Ċ Ġ* Ċ Ġ* Ġ@ author Ġ çİĭ äº ® ï¼Ī L oren ï¼ī Ċ Ġ*/ Ċ Ċ /** Ċ Ġ* Ġ æİ¥åı£ æ£Ģæµĭ å¹¶ æĵįä½ľ æī©å±ķ Ċ Ġ* Ġ@ param Ġempty Check Array Ġ ç©º æķ°æį® æ£Ģæµĭ Ċ Ġ* Ġ@ param Ġbase Controller Ġ åŁºç¡Ģ æİ¥åı£ æİ§åĪ¶åĻ¨ Ċ Ġ* Ġ@ param Ġoptions Fun Ġ éªĮè¯ģ éĢļè¿ĩ æĵįä½ľ è°ĥçĶ¨ åĩ½æķ° Ċ Ġ*/ Ċ inline Ġfun Ġ< PT , ĠP Ġ: ĠS bcb fl w Base User Permission Tb < ROLE >, ĠROLE Ġ: ĠS bcb fl w Base UserRole Tb < P >, Ġre ified ĠU Ġ: ĠS bcb fl w Base UserInfo Tb < P , ĠROLE >, ĠR Ġ: ĠS bcb fl w Base HttpServletRequest Wrapper , ĠBC Ġ: ĠS bcb fl w Base Controller < R >> Ġsb cb fl w Controller Check And Options ( ĊĠĠĠ Ġempty Check Array : ĠArray <* >, Ġcheck Permission Array : ĠArray < PT >, Ġrequest : ĠR , Ġbase Controller : ĠBC , Ġno inline Ġnot Login Fun : Ġ(() Ġ-> ĠAny )? Ġ= Ġnull , ĊĠĠĠ Ġno inline Ġnot Permission Fun : Ġ(( userInfo Tb : ĠU ) Ġ-> ĠAny )? Ġ= Ġnull , Ġno inline Ġoptions Fun : Ġ(() Ġ-> ĠAny ? )? Ġ= Ġnull ): ĠString Ġ{ ĊĠĠĠ Ġreturn Ġk tt lw Have Empty Check ({ ĊĠĠĠĠĠĠĠ Ġbase Controller . response Error For Params ( request ) ĊĠĠĠ Ġ}, Ġ{ ĊĠĠĠĠĠĠĠ Ġ// æ£Ģæµĭ çĶ¨æĪ· æĺ¯åĲ¦ çĻ»å½ķ ĊĠĠĠĠĠĠĠ Ġvar Ġresult Ġ= Ġsb cb fl w Check User Login Status < P , ĠROLE , ĠU , ĠR , ĠBC >( request , Ġbase Controller , Ġnot Login Fun ) ĊĠĠĠĠĠĠĠ Ġif Ġ( result Ġis ĠU ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// çĶ¨æĪ· å·² çĻ»å½ķ ï¼Į æ£Ģæµĭ çĶ¨æĪ· æĿĥéĻĲ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresult Ġ= Ġsb cb fl w Check Permissions ( request , Ġresult , Ġcheck Permission Array , Ġbase Controller , Ġnot Permission Fun ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( result Ġis ĠU Ġ&& Ġoptions Fun Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// æľī æĿĥéĻĲ ï¼Į æī§è¡Į æĮĩå®ļ æĵįä½ľ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbase Controller . response Data ( request , Ġoptions Fun ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbase Controller . response Data ( request , Ġresult ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbase Controller . response Data ( request , Ġresult ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ}, Ġempty Check Array ) Ċ } Ċ Ċ /** Ċ Ġ* Ġ æİ¥åı£ æ£Ģæµĭ å¹¶ æĵįä½ľ æī©å±ķ Ċ Ġ* Ġ@ param Ġempty Check Array Ġ ç©º æķ°æį® æ£Ģæµĭ Ċ Ġ* Ġ@ param Ġbase Controller Ġ åŁºç¡Ģ æİ¥åı£ æİ§åĪ¶åĻ¨ Ċ Ġ* Ġ@ param Ġoptions Fun Ġ éªĮè¯ģ éĢļè¿ĩ æĵįä½ľ è°ĥçĶ¨ åĩ½æķ° Ċ Ġ*/ Ċ fun Ġ< R Ġ: ĠS bcb fl w Base HttpServletRequest Wrapper , ĠBC Ġ: ĠS bcb fl w Base Controller < R >> Ġsb cb fl w Controller Check And Options ( request : ĠR , Ġempty Check Array : ĠArray <* >, ĊĠĠĠ Ġbase Controller : ĠBC , Ġoptions Fun : Ġ(() Ġ-> ĠAny ? )): ĠString Ġ{ ĊĠĠĠ Ġreturn Ġk tt lw Have Empty Check ({ ĊĠĠĠĠĠĠĠ Ġbase Controller . response Error For Params ( request ) ĊĠĠĠ Ġ}, Ġ{ ĊĠĠĠĠĠĠĠ Ġbase Controller . response Data ( request , Ġoptions Fun ()) ĊĠĠĠ Ġ}, Ġempty Check Array ) Ċ } Ċ Ċ /** Ċ Ġ* Ġæ£Ģ æµĭ çĶ¨æĪ· çĻ»å½ķ çĬ¶æĢģ Ċ Ġ* Ġ@ param Ġrequest Ġè¯·æ±Ĥ request Ċ Ġ* Ġ@ param Ġbase Controller Ġ åŁºç¡Ģ controller Ċ Ġ* Ġ@ param Ġnot Login Fun Ġ æľª çĻ» éĻĨ æī§è¡Į æĵįä½ľ Ċ Ġ* Ġ@ return Ġæ£Ģ æµĭ éĢļè¿ĩ è¿ĶåĽŀ çĶ¨æĪ· ä¿¡æģ¯ ï¼Į åĲ¦åĪĻ è¿ĶåĽŀ å¼Ĥå¸¸ ä¿¡æģ¯ æĪĸ åħ¶ä»ĸ åĩ½æķ° ä¿¡æģ¯ Ċ Ġ*/ Ċ inline Ġfun Ġ< P Ġ: ĠS bcb fl w Base User Permission Tb < ROLE >, ĠROLE Ġ: ĠS bcb fl w Base UserRole Tb < P >, Ġre ified ĠU Ġ: ĠS bcb fl w Base UserInfo Tb < P , ĠROLE >, ĠR Ġ: ĠS bcb fl w Base HttpServletRequest Wrapper , ĠBC Ġ: ĠS bcb fl w Base Controller < R >> Ġsb cb fl w Check User Login Status ( ĊĠĠĠ Ġrequest : ĠR , Ġbase Controller : ĠBC , Ġno inline Ġnot Login Fun : Ġ(() Ġ-> ĠAny ? )? Ġ= Ġnull ): ĠAny ? Ġ{ ĊĠĠĠ Ġ// ä»İ request ä¸Ń èİ·åıĸ token ä¿¡æģ¯ ĊĠĠĠ Ġval Ġtoken By Req Header Ġ= ĠS bcb fl w Common . instance . userService ?. get AccessToken By Req Header ( request ) ĊĠĠĠ Ġ// ä»İ request ä¸Ń èİ·åıĸ çĶ¨æĪ· ä¿¡æģ¯ ï¼Į è¯¥ ä¿¡æģ¯ æĺ¯åľ¨ filter ä¸Ń æĭ ¦ æĪª å¹¶ æ·»åĬł åĪ° attribute ä¸ŃçļĦ ĊĠĠĠ Ġval ĠuserInfo Ġ= Ġrequest . getAttribute ( REQUEST _ SET _ USER _ INFO _ KEY ). k tt lw Empty Check ({ ĊĠĠĠĠĠĠĠ Ġnull ĊĠĠĠ Ġ}, Ġ{ ĊĠĠĠĠĠĠĠ Ġit ĊĠĠĠ Ġ}) ĊĠĠĠ Ġreturn Ġif Ġ( userInfo Ġ== Ġnull Ġ|| ĠuserInfo Ġ! is ĠU Ġ|| Ġtoken By Req Header Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠ ĠS bcb f Base All Utils . log Utils . log Options ( S bcb fl w Base Controller :: class . java , Ġ" çĶ¨æĪ· çĻ»å½ķ ä¿¡æģ¯ ä¸ºç©º ï¼Į çĻ»å½ķ çĬ¶æĢģ éªĮè¯ģ æľª éĢļè¿ĩ ") ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnot Login Fun . k tt lw Empty Check ({ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbase Controller . response Error User Login Empty Or Token None ffect ive ( request ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}, Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( ignore : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbase Controller . response Error User Login Empty Or Token None ffect ive ( request ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠ ĠS bcb f Base All Utils . log Utils . log D ( S bcb fl w Base Controller :: class . java , Ġ" èİ·åıĸ åĪ° çĶ¨æĪ· ä¿¡æģ¯ ï¼Į å¼Ģå§ĭ ä¿¡æģ¯ æŃ£ç¡® æĢ§ éªĮè¯ģ ") ĊĠĠĠĠĠĠĠ Ġreturn Ġtoken By Req Header . let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// è§£ å¯Ĩ token ä¿¡æģ¯ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdecrypt Token Ġ= ĠS bcb fl w Common . instance . userService ?. decrypt AccessToken ( it ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdecrypt Token . k tt lw Empty Check ({ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠS bcb f Base All Utils . log Utils . log Options ( S bcb fl w Base Controller :: class . java , Ġ" çĶ¨æĪ· ä¿¡æģ¯ æĹłæ³ķ è§£ å¯Ĩ ï¼Į çĻ»å½ķ çĬ¶æĢģ éªĮè¯ģ æľª éĢļè¿ĩ ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġbase Controller . response Error User Login Empty Or Token None ffect ive ( request ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}, Ġ{ Ġde Token Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// åĪ¤æĸŃ token æĺ¯åĲ¦ æĺ¯ æŃ£å¸¸ çļĦ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtoken Effective Ġ= ĠS bcb fl w Common . instance . userService ?. check AccessToken Effective ( de Token ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( token Effective ?. status Result . k tt lw Get NotEmpty Data ( false )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// token æĺ¯ æŃ£å¸¸ çļĦ ï¼Į å¼Ģå§ĭ éªĮè¯ģ çĶ¨æĪ· ä¿¡æģ¯ ï¼Į é¦ĸåħĪ èİ·åıĸ çĶ¨æĪ· id ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠS bcb fl w Common . instance . userService ?. getUserId By AccessToken ( de Token ) !!. let Ġ{ Ġtoken UserId Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// åĽłä¸º token å·²ç»ı éªĮè¯ģ è¿ĩ äºĨ ï¼Į æīĢä»¥ id æĺ¯ åı¯ä»¥ æŃ£å¸¸ åıĸ åĢ¼çļĦ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// æİ¥ ä¸ĭ æĿ¥ è¿Ľè¡Į åĴĮ çĶ¨æĪ· ä¿¡æģ¯ çļĦ æ¯Ķè¾ĥ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġstatus Ġ= ĠuserInfo . userId . compareTo ( token UserId ) Ġ== Ġ 0 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠS bcb f Base All Utils . log Utils . log Options ( S bcb fl w Base Controller :: class . java , Ġ" çĶ¨æĪ· ${ userInfo . userId } éªĮè¯ģ ç»ĵæŀľ ï¼ļ ${ status }") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( status ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠuserInfo ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnot Login Fun . k tt lw Empty Check ({ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbase Controller . response Error User Login Empty Or Token None ffect ive ( request ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}, Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( ignore : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbase Controller . response Error User Login Empty Or Token None ffect ive ( request ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnot Login Fun . k tt lw Empty Check ({ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbase Controller . response Error User Login Empty Or Token None ffect ive ( request ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}, Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( ignore : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbase Controller . response Error User Login Empty Or Token None ffect ive ( request ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ /** Ċ Ġ* Ġæ£Ģ æµĭ çĶ¨æĪ· æĿĥéĻĲ Ċ Ġ* Ġ@ param Ġrequest Ġè¯·æ±Ĥ request Ċ Ġ* Ġ@ param ĠuserInfo ĠçĶ¨æĪ· ä¿¡æģ¯ Ċ Ġ* Ġ@ param Ġpermission Check Types Ġ è¦ģ æ£Ģæµĭ çļĦ æĿĥéĻĲ ç±»åŀĭ Ċ Ġ* Ġ@ param Ġbase Controller Ġ åŁºç¡Ģ controller Ċ Ġ* Ġ@ param Ġnot Permission Fun Ġ æĹł æĿĥéĻĲ æĵįä½ľ Ċ Ġ* Ġ@ return Ġæ£Ģ æµĭ éĢļè¿ĩ è¿ĶåĽŀ çĶ¨æĪ· ä¿¡æģ¯ ï¼Į åĲ¦åĪĻ è¿ĶåĽŀ å¼Ĥå¸¸ ä¿¡æģ¯ æĪĸ åħ¶ä»ĸ åĩ½æķ° ä¿¡æģ¯ Ċ Ġ*/ Ċ fun Ġ< P Ġ: ĠS bcb fl w Base User Permission Tb < ROLE >, ĠROLE Ġ: ĠS bcb fl w Base UserRole Tb < P >, ĠU Ġ: ĠS bcb fl w Base UserInfo Tb < P , ĠROLE >, ĠPT , ĠR Ġ: ĠS bcb fl w Base HttpServletRequest Wrapper , ĠPR Ġ: ĠS bcb fl w User Permission Repository < P , ĠROLE >, ĠBC Ġ: ĠS bcb fl w Base Controller < R >> Ġsb cb fl w Check Permissions ( ĊĠĠĠ Ġrequest : ĠR , ĠuserInfo : ĠU , Ġpermission Check Types : ĠArray < PT > ?, Ġbase Controller : ĠBC , Ġnot Permission Fun : Ġ(( userInfo Tb : ĠU ) Ġ-> ĠAny )? Ġ= Ġnull ): ĠAny Ġ{ ĊĠĠĠ ĠS bcb f Base All Utils . log Utils . log Options ( S bcb fl w UserInfo Repository :: class . java , Ġ" çĶ¨æĪ· ${ userInfo . userId } å¼Ģå§ĭ è¿Ľè¡Į æĿĥéĻĲ æ£Ģæµĭ ") ĊĠĠĠ Ġfor Ġ( permission Ġin Ġpermission Check Types !! ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ(! S bcb fl w Common . instance . user Role Permission ?. k tt lw Format Conversion < S bcb fl w User Permission Service < R , ĠP , ĠROLE , ĠU , ĠPT , ĠPR >>() ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ? . check User Have Permission ( request , ĠuserInfo , Ġpermission )?. status Result . k tt lw Get NotEmpty Data ( true )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠS bcb f Base All Utils . log Utils . log I ( S bcb fl w UserInfo Repository :: class . java , Ġ" æĿĥéĻĲ æ£Ģæµĭ ï¼Į çĶ¨æĪ· ${ userInfo . userId } æ²¡æľī çĽ¸åħ³ æĿĥéĻĲ ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnot Permission Fun . k tt lw Empty Check ({ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbase Controller . response Error User Login Empty Or Token None ffect ive ( request ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}, Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit ( userInfo ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( ignore : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbase Controller . response Error Not Permission ( request ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ ĠS bcb f Base All Utils . log Utils . log Options ( S bcb fl w UserInfo Repository :: class . java , Ġ" æĿĥéĻĲ æ£Ģæµĭ ï¼Į çĶ¨æĪ· ${ userInfo . userId } æĿĥéĻĲ æ£Ģæµĭ éĢļè¿ĩ ") ĊĠĠĠ Ġreturn ĠuserInfo Ċ } Ċ