package Ġcom . goc ash back . module _ me . activity Ċ Ċ import Ġandroid . support . v 7 . widget . Linear LayoutManager Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . widget . TextView Ċ import Ġcom . alibaba . android . ar outer . facade . annotation . Route Ċ import Ġcom . goc ash back . lib _ common . ACTIVITY _ MY RE B ATE Ċ import Ġcom . goc ash back . lib _ common . LOGIN _ EXTRA Ċ import Ġcom . goc ash back . lib _ common . base . G cb Base Activity Ċ import Ġcom . goc ash back . lib _ common . network . Base Observer Ċ import Ġcom . goc ash back . lib _ common . network . Response Transformer Ċ import Ġcom . goc ash back . lib _ common . network . api . User Api Ċ import Ġcom . goc ash back . lib _ common . network . create Service Ċ import Ġcom . goc ash back . lib _ common . network . model . user . Re b ate Record lf Model Ċ import Ġcom . goc ash back . lib _ common . start Re b ate Detail Activity Ċ import Ġcom . goc ash back . lib _ common . start Withdraw Activity Ċ import Ġcom . goc ash back . lib _ common . utils . money Format Ċ import Ġcom . goc ash back . lib _ common . widget . G cb Filter Popup Window Ċ import Ġcom . goc ash back . lib _ common . widget . G cb Head View Ċ import Ġcom . goc ash back . module _ me . R Ċ import Ġcom . goc ash back . module _ me . adapter . My Re b ate Adapter Ċ import Ġkotlinx . android . synt hetic . main . activity _ my _ reb ate .* Ċ Ċ /** Ċ Ġ* Ġ@ Author Ġ 5 5 HA IT AO Ċ Ġ* Ġ@ Date Ġ 2 0 1 9 - 0 6 - 0 4 Ġ 1 7 : 4 0 Ċ Ġ*/ Ċ @ Route ( path Ġ= ĠACT IVITY _ MY RE B ATE , Ġextras Ġ= ĠLOGIN _ EXTRA ) Ċ class ĠMy Re b ate Activity Ġ: ĠG cb Base Activity () Ġ{ ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġmy Re b ate Adapter : ĠMy Re b ate Adapter ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġtv Available : ĠTextView ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġtv Pending : ĠTextView ĊĠĠĠ Ġprivate Ġvar Ġstatus Ġ= Ġ 0 ĠĠ Ġ// Ġĉ 0 åħ¨éĥ¨ Ġ 1 å¾ħ çĶŁ æķĪ Ġ 2 å·² çĶŁ æķĪ ĊĠĠĠ Ġprivate Ġvar Ġtype Ġ= Ġ 0 ĠĠĠ Ġ// ĠĠ 0 åħ¨éĥ¨ Ġ 1 è®¢åįķ è¿Ķ åĪ© ï¼Į 2 æľ ĭ åıĭ è®¢åįķ è¿Ķ åĪ© ï¼Į 3 æ³¨åĨĮ å¥ĸ åĬ ± ï¼Į 4 éĤ Ģ è¯· å¥ĸ åĬ ± ï¼Į 6 æ´»åĬ¨ å¥ĸ åĬ ± ï¼Į 7 çº¿ ä¸ĭ æ´»åĬ¨ ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġfilter Popup Window : ĠG cb Filter Popup Window ĊĊĠĠĠ Ġoverride Ġfun Ġset Layout Id (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠR . layout . activity _ my _ reb ate ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġinit Views () Ġ{ ĊĠĠĠĠĠĠĠ Ġget Imm ersion Bar ()?. fits System Windows ( true )?. status Bar Color ( R . color . white )?. status Bar Dark Font ( true )?. init () ĊĊĠĠĠĠĠĠĠ Ġ// Ġ å¤´ éĥ¨ æķ°æį® å±ķç¤º ĊĠĠĠĠĠĠĠ Ġval Ġhead Ġ= ĠLayoutInflater . from ( this @ My Re b ate Activity ). inflate ( R . layout . view _ my _ reb ate _ head , Ġnull ) ĊĠĠĠĠĠĠĠ Ġtv Available Ġ= Ġhead . findViewById ( R . id . tv _ available _ count ) ĊĠĠĠĠĠĠĠ Ġtv Pending Ġ= Ġhead . findViewById ( R . id . tv _ pending _ count ) ĊĠĠĠĠĠĠĠ Ġmy Re b ate Adapter Ġ= ĠMy Re b ate Adapter ( this , ĠlistOf ()) ĊĠĠĠĠĠĠĠ Ġmy Re b ate Adapter . add Header View ( head ) ĊĠĠĠĠĠĠĠ Ġry cv _ my _ reb ate . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlayout Manager Ġ= ĠLinearLayoutManager ( this @ My Re b ate Activity ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadapter Ġ= Ġmy Re b ate Adapter ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// Ġ çŃ Ľ éĢī å¼¹ çªĹ ĊĠĠĠĠĠĠĠ Ġval Ġlist Status Ġ= ĠlistOf ( G cb Filter Popup Window . Filter Tag Model ( getString ( R . string . reb ate _ filter _ all ), Ġ 0 , Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ, ĠG cb Filter Popup Window . Filter Tag Model ( getString ( R . string . status _ cash _ pending ), Ġ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ, ĠG cb Filter Popup Window . Filter Tag Model ( getString ( R . string . status _ cash _ available ), Ġ 2 )) ĊĊĠĠĠĠĠĠĠ Ġ// ĠĠ 0 åħ¨éĥ¨ Ġ 1 è®¢åįķ è¿Ķ åĪ© ï¼Į 2 æľ ĭ åıĭ è®¢åįķ è¿Ķ åĪ© ï¼Į 3 æ³¨åĨĮ å¥ĸ åĬ ± ï¼Į 4 éĤ Ģ è¯· å¥ĸ åĬ ± ï¼Į 6 æ´»åĬ¨ å¥ĸ åĬ ± ï¼Į 7 çº¿ ä¸ĭ æ´»åĬ¨ ĊĠĠĠĠĠĠĠ Ġval Ġlist Type Ġ= ĠlistOf ( G cb Filter Popup Window . Filter Tag Model ( getString ( R . string . reb ate _ filter _ all ), Ġ 0 , Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ, ĠG cb Filter Popup Window . Filter Tag Model ( getString ( R . string . reb ate _ type _ order ), Ġ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ, ĠG cb Filter Popup Window . Filter Tag Model ( getString ( R . string . reb ate _ type _ friend _ order ), Ġ 2 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ, ĠG cb Filter Popup Window . Filter Tag Model ( getString ( R . string . reb ate _ type _ register ), Ġ 3 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ, ĠG cb Filter Popup Window . Filter Tag Model ( getString ( R . string . reb ate _ type _ invite ), Ġ 4 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ, ĠG cb Filter Popup Window . Filter Tag Model ( getString ( R . string . reb ate _ type _ activity ), Ġ 6 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ, ĠG cb Filter Popup Window . Filter Tag Model ( getString ( R . string . reb ate _ type _ offline ), Ġ 7 ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġfilter Popup Window Ġ= ĠG cb Filter Popup Window ( this , Ġlist Status , Ġlist Type ) ĊĠĠĠĠĠĠĠ Ġfilter Popup Window . on Confirm Listener Ġ= Ġobject Ġ: ĠG cb Filter Popup Window . On Confirm Listener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Confirm ( status Value : ĠInt , Ġtype Value : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= Ġstatus Value ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtype Ġ= Ġtype Value ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpage Ġ= Ġ 0 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġget Re b ate Record () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġinit Event () Ġ{ ĊĠĠĠĠĠĠĠ Ġ// Ġ åĪ·æĸ° ĊĠĠĠĠĠĠĠ Ġcontent _ view . setOn Refresh Listener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpage Ġ= Ġ 0 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġget Re b ate Record () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ// Ġ å¼¹ åĩº çŃ Ľ éĢī æµ ® å±Ĥ ĊĠĠĠĠĠĠĠ Ġg cb Head View . on Right ClickListener Ġ= Ġobject Ġ: ĠG cb Head View . On Right ClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Right Click () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġshow Filter Popup Window () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ// Ġ åĪĹè¡¨ item çĤ¹åĩ» ĊĠĠĠĠĠĠĠ Ġmy Re b ate Adapter . setOn ItemClickListener Ġ{ Ġ_, Ġ_, Ġposition Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstart Re b ate Detail Activity ( this , Ġmy Re b ate Adapter . data [ position ]. id ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ// Ġ åĬłè½½ æĽ´å¤ļ ĊĠĠĠĠĠĠĠ Ġmy Re b ate Adapter . setOn Load More Listener ({ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpage ++ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġget Re b ate Record () ĊĠĠĠĠĠĠĠ Ġ}, Ġry cv _ my _ reb ate ) ĊĊĠĠĠĠĠĠĠ Ġtv _ withdraw . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstart Withdraw Activity ( this ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġinit Data () Ġ{ ĊĠĠĠĠĠĠĠ Ġm sv . show Loading () ĊĠĠĠĠĠĠĠ Ġget Re b ate Record () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġèİ·åıĸ è¿Ķ åĪ© åĪĹè¡¨ æķ°æį® ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprivate Ġfun Ġget Re b ate Record () Ġ{ ĊĠĠĠĠĠĠĠ Ġcreate Service ( User Api :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. reb ate Record ( page , Ġper Page , Ġstatus , Ġtype ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. compose ( Response Transformer . handle Result ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. compose ( bind To Lifecycle ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe ( object Ġ: ĠBase Observer < Re b ate Record lf Model >( this ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun ĠonSuccess ( t : ĠRe b ate Record lf Model ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm sv . show Content () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontent _ view . is Refresh ing Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġt . data ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( page Ġ== Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġ å¤´ éĥ¨ æķ°æį® ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtv Available . text Ġ= Ġmoney Format ( t . effective _ amount ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtv Pending . text Ġ= Ġmoney Format ( t . pending _ amount ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġ åĪĹè¡¨ æķ°æį® ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmy Re b ate Adapter . set New Data ( it ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmy Re b ate Adapter . addData ( it ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( page Ġ+ Ġ 1 Ġ< Ġt . page _ count ) Ġmy Re b ate Adapter . load More Complete () Ġelse Ġmy Re b ate Adapter . load More End ( true ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( my Re b ate Adapter . data . isNull OrEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm sv . show Empty () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Fail ( code : ĠInt , Ġmsg : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm sv . show Error () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontent _ view . is Refresh ing Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġshow Filter Popup Window () Ġ{ ĊĠĠĠĠĠĠĠ Ġfilter Popup Window . show ( g cb Head View , Ġ 0 , Ġ 0 ) ĊĊĠĠĠ Ġ} Ċ Ċ }