package Ġcom . tw si han . examples . services Ċ Ċ import Ġcom . tw si han . examples . entities . Country Ċ import Ġtk . mybatis . mapper . week end . Week end Ċ import Ġcom . github . page helper . Page Helper Ċ import Ġtk . mybatis . mapper . entity . Example Ċ import Ġcom . tw si han . examples . map pers . Country Mapper Ċ import Ġorg . springframework . beans . factory . annotation . Autowired Ċ import Ġorg . springframework . stereotype . Service Ċ Ċ @ Service Ċ class ĠCountry Service Ċ { ĊĠĠĠ Ġ@ Autowired ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġcountry Mapper : ĠCountry Mapper ĊĊĊĠĠĠ Ġfun ĠgetAll ( country : ĠCountry ): ĠList < Country > ĊĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( country . page Ġ!= Ġnull Ġ&& Ġcountry . rows Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPage Helper . start Page < Any >( country . page , Ġcountry . rows ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġexample Ġ= ĠExample ( Country :: class . java ) ĊĠĠĠĠĠĠĠ Ġval Ġcriteria Ġ= Ġexample . create Criteria () ĊĠĠĠĠĠĠĠ Ġif Ġ( country . country name !!. isNotEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcriteria . and Like (" country name ", Ġ"% " Ġ+ Ġcountry . country name Ġ+ Ġ"% ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġif Ġ( country . country code !!. isNotEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcriteria . and Like (" country code ", Ġ"% " Ġ+ Ġcountry . country code Ġ+ Ġ"% ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġcountry Mapper . select By Example ( example ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠgetAll By Week end ( country : ĠCountry ): ĠList < Country > ĊĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( country . page Ġ!= Ġnull Ġ&& Ġcountry . rows Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPage Helper . start Page < Any >( country . page , Ġcountry . rows ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġweekend Ġ= ĠWeek end . of ( Country :: class . java ) ĊĠĠĠĠĠĠĠ Ġval Ġcriteria Ġ= Ġweekend . week end Criteria () ĊĠĠĠĠĠĠĠ Ġif Ġ( country . country name !!. isNotEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcriteria . and Like ( country . country name , Ġ"% " Ġ+ Ġcountry . country name Ġ+ Ġ"% ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġif Ġ( country . country code !!. isNotEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcriteria . and Like ( country . country code , Ġ"% " Ġ+ Ġcountry . country code Ġ+ Ġ"% ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġcountry Mapper . select By Example ( week end ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget ById ( id : ĠInt ?): ĠCountry ĊĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġcountry Mapper . select By PrimaryKey ( id ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġdelete ById ( id : ĠInt ?) ĊĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠ Ġcountry Mapper . delete By PrimaryKey ( id ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġsave ( country : ĠCountry ) ĊĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( country . id Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcountry Mapper . update By PrimaryKey ( country ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcountry Mapper . insert ( country ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ