package Ġcom . ruby food . features . daily Plan . pr sent ation Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . os . Bundle Ċ import Ġandroidx . recyclerview . widget . Linear LayoutManager Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . ImageView Ċ import Ġandroid . widget . Relative Layout Ċ import Ġcom . am uly ak h are . text drawable . Text Drawable Ċ import Ġcom . am uly ak h are . text drawable . util . Color Generator Ċ import Ġcom . el vis he w . x log . X Log Ċ import Ġcom . ruby food . R Ċ import Ġcom . ruby food . app . Network Constant Ċ import Ġcom . ruby food . app . utils . App Utils Ċ import Ġcom . ruby food . base . presentation . Base Activity Ċ import Ġcom . ruby food . base . presentation . Base Fragment Ċ import Ġcom . ruby food . features . daily Plan . api . Plan Repo Provider Ċ import Ġcom . ruby food . features . daily Plan . model . Get Plan Details DataModel Ċ import Ġcom . ruby food . features . daily Plan . model . Get Plan Details Response Model Ċ import Ġcom . ruby food . features . daily Plan . model . Get Plan List DataModel Ċ import Ġcom . ruby food . features . dashboard . presentation . Dashboard Activity Ċ import Ġcom . ruby food . widgets . App Custom TextView Ċ import Ġcom . pn ik osis . material ish progress . Progress Wheel Ċ import Ġio . reactivex . android . schedul ers . Android Schedulers Ċ import Ġio . reactivex . schedul ers . Schedulers Ċ Ċ /** Ċ Ġ* ĠCreated Ġby ĠSa ik at Ġon Ġ 2 3 - 1 2 - 2 0 1 9 . Ċ Ġ*/ Ċ class ĠPlan Details Fragment Ġ: ĠBase Fragment () Ġ{ ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar ĠmContext : ĠContext ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġrv _ plan _ details _ list : ĠRecyclerView ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġprogress _ wheel : ĠProgress Wheel ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġtv _ shop _ name : ĠApp Custom TextView ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġtv _ shop _ address : ĠApp Custom TextView ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġtv _ no _ data : ĠApp Custom TextView ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġiv _ shop _ initial : ĠImageView ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġrl _ view _ all _ plan _ main : ĠRelative Layout ĊĊĠĠĠ Ġprivate Ġvar Ġget Plan List DataModel : ĠGet Plan List DataModel ? Ġ= Ġnull ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġfun Ġnew Instance ( objects : ĠAny ): ĠPlan Details Fragment Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfragment Ġ= ĠPlan Details Fragment () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( objects Ġis ĠGet Plan List DataModel ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbundle Ġ= ĠBundle () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbundle . put Serializable (" get _ plan _ list ", Ġobjects ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfragment . arguments Ġ= Ġbundle ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfragment ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Attach ( context : ĠContext ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Attach ( context ) ĊĠĠĠĠĠĠĠ ĠmContext Ġ= Ġcontext ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĊĠĠĠĠĠĠĠ Ġget Plan List DataModel Ġ= Ġarguments ?. get Serializable (" get _ plan _ list ") Ġas ĠGet Plan List DataModel ? ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( in flater : ĠLayoutInflater , Ġcontainer : ĠViewGroup ?, ĠsavedInstanceState : ĠBundle ?): ĠView ? Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate View ( in flater , Ġcontainer , ĠsavedInstanceState ) ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= Ġinflater . inflate ( R . layout . fragment _ daily _ plan _ details , Ġcontainer , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġinit View ( view ) ĊĠĠĠĠĠĠĠ Ġget Plan Details () ĊĠĠĠĠĠĠĠ Ġreturn Ġview ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinit View ( view : ĠView ) Ġ{ ĊĠĠĠĠĠĠĠ Ġrv _ plan _ details _ list Ġ= Ġview . findViewById ( R . id . rv _ plan _ details _ list ) ĊĠĠĠĠĠĠĠ Ġrv _ plan _ details _ list . layout Manager Ġ= ĠLinearLayoutManager ( mContext ) ĊĊĠĠĠĠĠĠĠ Ġprogress _ wheel Ġ= Ġview . findViewById ( R . id . progress _ wheel ) ĊĠĠĠĠĠĠĠ Ġprogress _ wheel . stop Spin ning () ĊĊĠĠĠĠĠĠĠ Ġtv _ shop _ name Ġ= Ġview . findViewById ( R . id . tv _ shop _ name ) ĊĠĠĠĠĠĠĠ Ġtv _ shop _ address Ġ= Ġview . findViewById ( R . id . tv _ shop _ address ) ĊĠĠĠĠĠĠĠ Ġtv _ no _ data Ġ= Ġview . findViewById ( R . id . tv _ no _ data ) ĊĠĠĠĠĠĠĠ Ġiv _ shop _ initial Ġ= Ġview . findViewById ( R . id . iv _ shop _ initial ) ĊĊĠĠĠĠĠĠĠ Ġrl _ view _ all _ plan _ main Ġ= Ġview . findViewById ( R . id . rl _ view _ all _ plan _ main ) ĊĠĠĠĠĠĠĠ Ġrl _ view _ all _ plan _ main . setOnClickListener ( null ) ĊĊĠĠĠĠĠĠĠ Ġtv _ shop _ name . text Ġ= Ġget Plan List DataModel ?. party _ name ĊĠĠĠĠĠĠĠ Ġtv _ shop _ address . text Ġ= Ġget Plan List DataModel ?. location ĊĊĠĠĠĠĠĠĠ Ġval Ġdrawable Ġ= ĠText Drawable . builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build Round Rect ( get Plan List DataModel ?. party _ name ?. trim ()?. toUpperCase ()?. take ( 1 ), ĠColor Generator . MAT ERIAL . random Color , Ġ 1 2 0 ) ĊĊĠĠĠĠĠĠĠ Ġiv _ shop _ initial . setImage Drawable ( drawable ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġget Plan Details () Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ(! App Utils . is Online ( mContext )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ( mContext Ġas ĠDashboard Activity ). show Sn ack Message ( getString ( R . string . no _ internet )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtv _ no _ data . visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġrepository Ġ= ĠPlan Repo Provider . plan List Repo Provider () ĊĠĠĠĠĠĠĠ Ġprogress _ wheel . spin () ĊĠĠĠĠĠĠĠ ĠBase Activity . composite Disposable . add ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrepository . get Plan Details ( get Plan List DataModel ?. plan _ id !! ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. observe On ( Android Schedulers . main Thread ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe On ( Schedulers . io ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe ({ Ġresult Ġ-> ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprogress _ wheel . stop Spin ning () ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġplan Details Response Ġ= Ġresult Ġas ĠGet Plan Details Response Model ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( plan Details Response . status Ġ== ĠNetwork Constant . SUCCESS ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( plan Details Response . plan _ data _ details Ġ!= Ġnull Ġ&& Ġplan Details Response . plan _ data _ details !!. size Ġ> Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtv _ no _ data . visibility Ġ= ĠView . GONE ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinit Adapter ( plan Details Response . plan _ data _ details !! ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtv _ no _ data . visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( mContext Ġas ĠDashboard Activity ). show Sn ack Message ( plan Details Response . message !! ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtv _ no _ data . visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( mContext Ġas ĠDashboard Activity ). show Sn ack Message ( plan Details Response . message !! ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}, Ġ{ Ġerror Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBase Activity . is Api Initi ated Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġerror . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprogress _ wheel . stop Spin ning () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtv _ no _ data . visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( mContext Ġas ĠDashboard Activity ). show Sn ack Message ( getString ( R . string . something _ w ent _ wrong )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠX Log . d (" Daily Plan Details ĠERROR : Ġ" Ġ+ Ġerror . localized Message ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinit Adapter ( plan Data Details : ĠArrayList < Get Plan Details DataModel >) Ġ{ ĊĠĠĠĠĠĠĠ Ġrv _ plan _ details _ list . adapter Ġ= ĠDaily Plan Details Adapter ( mContext , Ġplan Data Details ) ĊĠĠĠ Ġ} Ċ }