package Ġcom . jj c . mail shop . controller . backend Ċ Ċ import Ġcom . github . page helper . Page Info Ċ import Ġcom . jj c . mail shop . common . Check User Permission Util Ċ import Ġcom . jj c . mail shop . common . Server Response Ċ import Ġcom . jj c . mail shop . pojo . Product Ċ import Ġcom . jj c . mail shop . service . I Product Service Ċ import Ġcom . sun . ist ack . internal . NotNull Ċ import Ġorg . springframework . beans . factory . annotation . Autowired Ċ import Ġorg . springframework . stereotype . Controller Ċ import Ġorg . springframework . web . bind . annotation . RequestMapping Ċ import Ġorg . springframework . web . bind . annotation . Request Method Ċ import Ġorg . springframework . web . bind . annotation . RequestParam Ċ import Ġorg . springframework . web . bind . annotation . ResponseBody Ċ Ċ import Ġjavax . servlet . http . Http Session Ċ Ċ /** Ċ Ġ* ĠCreated Ġby Ġj jc Ġon Ġ 2 0 1 7 / 6 / 7 . Ċ Ġ* Ċ Ġ* Ġ äº§åĵģ ç®¡çĲĨ æİ§åĪ¶åĻ¨ Ċ Ġ*/ Ċ @ RequestMapping ( value Ġ= Ġ"/ manager / product /") Ċ @ Controller Ċ class ĠProduct Manager Controller Ġ{ ĊĠĠĠ Ġ@ Autowired ĊĠĠĠ Ġinternal Ġvar Ġi Product Service : ĠI Product Service ? Ġ= Ġnull ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġèİ·åıĸ äº§åĵģ è¯¦æĥħ ĊĊĠĠĠĠ Ġ* Ġ@ param ĠproductId Ġ äº§åĵģ ID ĊĠĠĠĠ Ġ* Ġ* ĊĠĠĠĠ Ġ* Ġ@ return ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ RequestMapping ( value Ġ= Ġ" get Product Detail . json ", Ġmethod Ġ= ĠarrayOf ( Request Method . POST )) ĊĠĠĠ Ġ@ ResponseBody ĊĠĠĠ Ġfun Ġget Product Detail (@ NotNull ĠproductId : ĠInt ?): ĠServer Response < Product > Ġ{ ĊĠĠĠĠĠĠĠ Ġ// èİ·åıĸ è¯¦æĥħ ĊĠĠĠĠĠĠĠ Ġreturn Ġi Product Service !!. get Product Detail ( productId ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ äº§åĵģ ä¸Ĭä¸ĭ æŀ¶ ĊĊĠĠĠĠ Ġ* Ġ@ param ĠproductId Ġ äº§åĵģ ID ĊĠĠĠĠ Ġ* Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġstatus ĠĠĠĠ 0 Ġä¸ĭ æŀ¶ Ġï¼Į 1 Ġä¸Ĭ æŀ¶ ĊĠĠĠĠ Ġ* Ġ* ĊĠĠĠĠ Ġ* Ġ@ return ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ RequestMapping ( value Ġ= Ġ" set Product Sale Status . json ", Ġmethod Ġ= ĠarrayOf ( Request Method . POST )) ĊĠĠĠ Ġ@ ResponseBody ĊĠĠĠ Ġfun Ġset Product Sale Status (@ NotNull ĠproductId : ĠInt ?, Ġ@ NotNull Ġstatus : ĠInt , Ġsession : ĠHttp Session ): ĠServer Response < String > Ġ{ ĊĠĠĠĠĠĠĠ Ġ// çĬ¶æĢģ ä¸į æŃ£ç¡® ĊĠĠĠĠĠĠĠ Ġif Ġ( status Ġ!== Ġ 0 Ġ&& Ġstatus Ġ!== Ġ 1 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠServer Response . create By ErrorMessage < String >(" åıĤæķ° status ä¸į æŃ£ç¡® ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ// æ£ĢæŁ¥ çĻ»å½ķ ä¸İ æĿĥéĻĲ ĊĠĠĠĠĠĠĠ Ġval Ġpermission Ġ= ĠCheck User Permission Util . check Admin Login And Permission ( session ) ĊĠĠĠĠĠĠĠ Ġif Ġ( permission Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġpermission ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ// ä¿®æĶ¹ çĬ¶æĢģ ĊĠĠĠĠĠĠĠ Ġreturn Ġi Product Service !!. set Sale Status ( productId , Ġstatus ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġä¿®æĶ¹ äº§åĵģ ä¿¡æģ¯ ĊĊĠĠĠĠ Ġ* Ġ@ param Ġproduct Ġ äº§åĵģ ä¿¡æģ¯ ĊĠĠĠĠ Ġ* Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġsession ĊĠĠĠĠ Ġ* Ġ* ĊĠĠĠĠ Ġ* Ġ@ return ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ RequestMapping ( value Ġ= Ġ" update Product . json ", Ġmethod Ġ= ĠarrayOf ( Request Method . POST )) ĊĠĠĠ Ġ@ ResponseBody ĊĠĠĠ Ġfun Ġupdate Product ( product : ĠProduct , Ġsession : ĠHttp Session ): ĠServer Response < String > Ġ{ ĊĠĠĠĠĠĠĠ Ġ// æ£ĢæŁ¥ çĻ»å½ķ ä¸İ æĿĥéĻĲ ĊĠĠĠĠĠĠĠ Ġval Ġpermission Ġ= ĠCheck User Permission Util . check Admin Login And Permission ( session ) ĊĠĠĠĠĠĠĠ Ġif Ġ( permission Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġpermission ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// æ£ĢæŁ¥ ä¸ĢäºĽ åıĤæķ° ĊĠĠĠĠĠĠĠ Ġif Ġ( product . id Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠServer Response . create By ErrorMessage < String >(" id ä¸įèĥ½ä¸ºç©º ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ// è°ĥçĶ¨ æİ¥åı£ è¿Ľè¡Į ä¿®æĶ¹ ĊĠĠĠĠĠĠĠ Ġreturn Ġi Product Service !!. update Product ( product ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ RequestMapping ( value Ġ= Ġ" add Product . json ", Ġmethod Ġ= ĠarrayOf ( Request Method . POST )) ĊĠĠĠ Ġ@ ResponseBody ĊĠĠĠ Ġfun Ġadd Product ( product : ĠProduct , Ġsession : ĠHttp Session ): ĠServer Response < String > Ġ{ ĊĠĠĠĠĠĠĠ Ġ// æ£ĢæŁ¥ çĻ»å½ķ ä¸İ æĿĥéĻĲ ĊĠĠĠĠĠĠĠ Ġval Ġpermission Ġ= ĠCheck User Permission Util . check Admin Login And Permission ( session ) ĊĠĠĠĠĠĠĠ Ġif Ġ( permission Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġpermission ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// æ£ĢæŁ¥ ä¸ĢäºĽ åıĤæķ° ĊĠĠĠĠĠĠĠ Ġif Ġ( product . id Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġproduct . id Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ// è°ĥçĶ¨ æİ¥åı£ è¿Ľè¡Į æ·»åĬł ĊĠĠĠĠĠĠĠ Ġreturn Ġi Product Service !!. add Product ( product ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġèİ·åıĸ äº§åĵģ åĪĹè¡¨ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ RequestMapping ( value Ġ= Ġ" get Product List . json ", Ġmethod Ġ= ĠarrayOf ( Request Method . POST )) ĊĠĠĠ Ġ@ ResponseBody ĊĠĠĠ Ġfun Ġget Product List (@ RequestParam ( value Ġ= Ġ" page Index ", ĠdefaultValue Ġ= Ġ" 1 ") Ġpage Index : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ RequestParam ( value Ġ= Ġ" pageSize ", ĠdefaultValue Ġ= Ġ" 1 0 ") ĠpageSize : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsession : ĠHttp Session ): ĠServer Response < Page Info < Product >> Ġ{ ĊĠĠĠĠĠĠĠ Ġ// æ£ĢæŁ¥ çĻ»å½ķ ä¸İ æĿĥéĻĲ ĊĠĠĠĠĠĠĠ Ġval Ġpermission Ġ= ĠCheck User Permission Util . check Admin Login And Permission ( session ) ĊĠĠĠĠĠĠĠ Ġif Ġ( permission Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠServer Response . create By ErrorMessage ( permission . message ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ// è°ĥçĶ¨ æİ¥åı£ èİ·åıĸ æķ°æį® ĊĠĠĠĠĠĠĠ Ġreturn Ġi Product Service !!. get Product List ( page Index , ĠpageSize ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġæ Ĳ ľç´¢ äº§åĵģ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ RequestMapping ( value Ġ= Ġ" search Product . json ", Ġmethod Ġ= ĠarrayOf ( Request Method . POST )) ĊĠĠĠ Ġ@ ResponseBody ĊĠĠĠ Ġfun Ġsearch Product (@ RequestParam ( value Ġ= Ġ" product Name ", ĠdefaultValue Ġ= Ġ"") Ġproduct Name : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ RequestParam ( value Ġ= Ġ" productId ", ĠdefaultValue Ġ= Ġ"") ĠproductId : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ RequestParam ( value Ġ= Ġ" page Index ", ĠdefaultValue Ġ= Ġ" 1 ") Ġpage Index : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ RequestParam ( value Ġ= Ġ" pageSize ", ĠdefaultValue Ġ= Ġ" 1 0 ") ĠpageSize : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsession : ĠHttp Session ): ĠServer Response < Page Info < Product >> Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// æ£ĢæŁ¥ çĻ»å½ķ ä¸İ æĿĥéĻĲ ĊĠĠĠĠĠĠĠ Ġval Ġpermission Ġ= ĠCheck User Permission Util . check Admin Login And Permission ( session ) ĊĠĠĠĠĠĠĠ Ġif Ġ( permission Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠServer Response . create By ErrorMessage ( permission . message ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// è°ĥçĶ¨ æİ¥åı£ æĲľç´¢ æķ°æį® ĊĠĠĠĠĠĠĠ Ġreturn Ġi Product Service !!. search Product List ( product Name , ĠproductId , Ġpage Index , ĠpageSize ) ĊĠĠĠ Ġ} ĊĊ Ċ } Ċ