package Ġcom . fp w ag . admin . domain . service . impl Ċ Ċ import Ġcom . fp w ag . admin . domain . dto . input . Update Status Cmd Ċ import Ġcom . fp w ag . admin . domain . dto . input . command . Dict Add Cmd Ċ import Ġcom . fp w ag . admin . domain . dto . input . command . Dict Edit Cmd Ċ import Ġcom . fp w ag . admin . domain . dto . input . query . Dict Query Ċ import Ġcom . fp w ag . admin . domain . dto . output . Dict Dto Ċ import Ġcom . fp w ag . admin . domain . entity . Dict Ċ import Ġcom . fp w ag . admin . domain . mapper . Dict Mapper Ċ import Ġcom . fp w ag . admin . domain . repository . Dict Repository Ċ import Ġcom . fp w ag . admin . domain . service . Dict Service Ċ import Ġcom . fp w ag . admin . infrastructure . mybatis . Wrapper Utils Ċ import Ġcom . fp w ag . boot . core . exception . Assert Ċ import Ġcom . fp w ag . boot . data . mybatis . My batis Page Mapper Ċ import Ġcom . fp w ag . boot . data . mybatis . Page Result Ċ import Ġorg . springframework . beans . factory . annotation . Autowired Ċ import Ġorg . springframework . cache . annotation . Cache Config Ċ import Ġorg . springframework . cache . annotation . Cache Ev ict Ċ import Ġorg . springframework . cache . annotation . Cache able Ċ import Ġorg . springframework . data . domain . Page able Ċ import Ġorg . springframework . stereotype . Service Ċ import Ġorg . springframework . transaction . annotation . Propagation Ċ import Ġorg . springframework . transaction . annotation . Transactional Ċ Ċ @ Service Ċ @ Cache Config ( cache Names Ġ= Ġ[" dict _ cache "]) Ċ @ Transactional ( propagation Ġ= ĠPro pagation . SUPPORT S , ĠreadOnly Ġ= Ġtrue , Ġrollback For Ġ= Ġ[ Exception :: class ]) Ċ class ĠDict ServiceImpl Ġ: ĠDict Service Ġ{ ĊĠĠĠ Ġ@ Autowired ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġmapper : ĠDict Mapper ĊĊĠĠĠ Ġ@ Autowired ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġrepository : ĠDict Repository ĊĊĠĠĠ Ġ@ Cache able ĊĠĠĠ Ġoverride Ġfun Ġfind Page ( query : ĠDict Query ?, Ġpage able : ĠPage able ?): ĠPage Result < Dict Dto > Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpage Ġ= ĠMy batis Page Mapper . page able To Page < Dict >( page able ) ĊĠĠĠĠĠĠĠ Ġval Ġwrapper Ġ= ĠWrapper Utils . build < Dict , ĠDict Query >( query ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġquery ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! it . code . isNull Or Blank ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis . eq (" code ", Ġit . code ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( page . orders . isEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis . orderBy Desc (" create _ time ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġentity Page Ġ= Ġthis . repository . select Page ( page , Ġwrapper ) ĊĠĠĠĠĠĠĠ Ġreturn ĠPage Result . of ( entity Page ) Ġ{ Ġthis . mapper . to Dto ( it ) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Cache able ĊĠĠĠ Ġoverride Ġfun ĠfindAll (): ĠMutable List < Dict Dto > Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġlist Ġ= Ġthis . repository . select List ( null ) ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . mapper . to Dto ( list ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Cache able ( key Ġ= Ġ"' dict _ id _' Ġ+ Ġ# p 0 ") ĊĠĠĠ Ġoverride Ġfun Ġfind ById ( id : ĠString ?): ĠDict Dto ? Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( id . isNull Or Blank ()) Ġreturn Ġnull ĊĠĠĠĠĠĠĠ Ġval Ġentity Ġ= Ġthis . repository . select ById ( id ) ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . mapper . to Dto ( entity ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Cache Ev ict ( all Entries Ġ= Ġtrue ) ĊĠĠĠ Ġ@ Transactional ĊĠĠĠ Ġoverride Ġfun Ġsave ( command : ĠDict Add Cmd ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġentity Ġ= Ġthis . mapper . map ( command ) ĊĠĠĠĠĠĠĠ Ġval Ġflag Ġ= Ġthis . repository . insert ( entity ) ĊĠĠĠĠĠĠĠ ĠAssert . isTrue ( flag Ġ> Ġ 0 , Ġ" æĽ´æĸ° å¤±è´¥ ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Cache Ev ict ( all Entries Ġ= Ġtrue ) ĊĠĠĠ Ġ@ Transactional ĊĠĠĠ Ġoverride Ġfun Ġupdate ( command : ĠDict Edit Cmd ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġentity Ġ= Ġthis . mapper . map ( command ) ĊĠĠĠĠĠĠĠ Ġval Ġflag Ġ= Ġthis . repository . update ById ( entity ) ĊĠĠĠĠĠĠĠ ĠAssert . isTrue ( flag Ġ> Ġ 0 , Ġ" æĽ´æĸ° å¤±è´¥ ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Cache Ev ict ( all Entries Ġ= Ġtrue ) ĊĠĠĠ Ġ@ Transactional ĊĠĠĠ Ġoverride Ġfun Ġupdate Status ( command : ĠUpdate Status Cmd ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġentity Ġ= ĠDict ( command . id ) ĊĠĠĠĠĠĠĠ Ġentity . status Ġ= Ġcommand . status ĊĠĠĠĠĠĠĠ Ġval Ġflag Ġ= Ġthis . repository . update ById ( entity ) ĊĠĠĠĠĠĠĠ ĠAssert . isTrue ( flag Ġ> Ġ 0 , Ġ" æĽ´æĸ° å¤±è´¥ ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Cache Ev ict ( all Entries Ġ= Ġtrue ) ĊĠĠĠ Ġ@ Transactional ĊĠĠĠ Ġoverride Ġfun Ġdelete ( ids : ĠMutable Set < String >) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġflag Ġ= Ġthis . repository . delete Batch Ids ( ids ) ĊĠĠĠĠĠĠĠ ĠAssert . isTrue ( flag Ġ> Ġ 0 , Ġ" åĪłéĻ¤ å¤±è´¥ ") ĊĠĠĠ Ġ} Ċ } Ċ