package Ġcom . example . goal Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . View Ċ import Ġandroid . widget .* Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġcom . example . goal . model . C of re Ċ import Ġcom . example . goal . service . Rest ApiService Ċ import Ġjava . text . Decimal Format Ċ import Ġjava . text . SimpleDateFormat Ċ import Ġjava . time . LocalDate Ċ import Ġjava . time . LocalDateTime Ċ import Ġjava . time . format . DateTime Formatter Ċ import Ġkotlin . math . round ToInt Ċ Ċ class ĠMeta Activity Ġ: ĠAppCompatActivity () Ġ{ ĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ meta ) ĊĠĠĠĠĠĠĠ Ġsupport ActionBar ?. hide () ĊĊĠĠĠĠĠĠĠ Ġval Ġapi Service Ġ= ĠRest ApiService () ĊĠĠĠĠĠĠĠ Ġval Ġcodigo C of re Ġ= Ġintent . getInt Extra (" codigo C of re ", Ġ 0 ) ĊĊĠĠĠĠĠĠĠ Ġval Ġbutton Sal var Meta Edit ada Ġ= ĠfindViewById < Button >( R . id . button Sal var Meta Edit ada ); ĊĠĠĠĠĠĠĠ Ġval Ġbutton Ex cluir Meta Edit ada Ġ= ĠfindViewById < Button >( R . id . button Ex cluir Meta Edit ada ); ĊĊĠĠĠĠĠĠĠ Ġif ( codigo C of re Ġ== Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbutton Ex cluir Meta Edit ada . setVisibility ( View . GONE ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġedit Meta Percent Ġ= ĠfindViewById < TextView >( R . id . edit Meta Percent ) ĊĠĠĠĠĠĠĠ Ġval Ġedit Meta In cent ivo Ġ= ĠfindViewById < TextView >( R . id . edit Meta In cent ivo ) ĊĠĠĠĠĠĠĠ Ġval Ġedit Nome Da Meta Ġ= ĠfindViewById < EditText >( R . id . edit Nome Da Meta ) ĊĠĠĠĠĠĠĠ Ġval Ġedit Meta Invest imento Ġ= ĠfindViewById < EditText >( R . id . edit Meta Invest imento ) ĊĠĠĠĠĠĠĠ Ġval Ġedit Pr azo Meta Ġ= ĠfindViewById < EditText >( R . id . edit Pr azo Meta ) ĊĠĠĠĠĠĠĠ Ġval Ġedit Categoria Ġ= ĠfindViewById < EditText >( R . id . edit Categoria ) ĊĠĠĠĠĠĠĠ Ġval Ġedit At ual izar Sal do Ġ= ĠfindViewById < EditText >( R . id . edit At ual izar Sal do ) ĊĊĠĠĠĠĠĠĠ Ġapi Service . getP essoa Cont a ( codigo P essoa S ess ao ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( it Ġ!= Ġnull ) Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtxt Sal do Dis pon ivel Para Meta Ġ= ĠfindViewById < TextView >( R . id . txt Sal do Dis pon ivel Para Meta ); ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtxt Sal do Dis pon ivel Para Meta . setText (" R $ Ġ" Ġ+ Ġit . saldo Liv re . toString () Ġ+ Ġ" 0 ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġif Ġ( codigo C of re Ġ!= Ġ 0 ) ĊĠĠĠĠĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġdialog Ġ= ĠProgress . progress Dialog ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdialog . show () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġapi Service . getC of re ( codigo P essoa S ess ao , Ġcodigo C of re ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( it Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġedit Nome Da Meta . setText ( it . nome ); ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġedit Meta Invest imento . setText ( it . valor Meta . toString ()); ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġedit At ual izar Sal do . setText ( it . valor Total . toString ()); ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdata Meta R Ġ: ĠList < String > Ġ= Ġ Ġit . v enc imento Meta . toString (). split ("- ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġedit Pr azo Meta . setText ( data Meta R [ 2 ] Ġ+ Ġ"/" Ġ+ Ġdata Meta R [ 1 ] Ġ+ Ġ"/" Ġ+ Ġdata Meta R [ 0 ]); ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġedit Meta Percent . setText ( Ġ(( it . valor Total / it . valor Meta )* 1 0 0 ). round ToInt (). toString () Ġ+ Ġ"% "); ĊĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠToast . makeText ( this , Ġ" Erro ", ĠToast . LENGTH _ LONG ). show () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdialog . dismiss (); ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġbutton Sal var Meta Edit ada . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġdialog Ġ= ĠProgress . progress Dialog ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdialog . show () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdt At ual Ġ= ĠLocalDate . now () ĊĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// val Ġstring Date Ġ= Ġedit Pr azo Meta . text . toString () ĊĠĠĠĠĠĠĠĠĠĠ Ġ// Ġval Ġformatter Ġ= ĠSimpleDateFormat (" yyyy - MM - dd ") ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif ( edit Pr azo Meta . text . toString (). equals ("")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġedit Pr azo Meta . setText (" 2 0 2 5 - 0 1 - 0 1 ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdata Meta Ġ: ĠList < String > Ġ= Ġ Ġedit Pr azo Meta . text . toString (). split ("/") ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġc of re Ġ= ĠC of re ( codigo C of re , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġedit Nome Da Meta . text . toString (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Descr icao ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdt At ual . toString (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdata Meta [ 2 ] Ġ+ Ġ"-" Ġ+ Ġdata Meta [ 1 ] Ġ+ Ġ"-" Ġ+ Ġdata Meta [ 0 ], ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġedit Meta Invest imento . text . toString (). toDouble (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġedit At ual izar Sal do . text . toString (). toDouble () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif ( codigo C of re Ġ== Ġ 0 ){ ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġapi Service . post C of re ( codigo P essoa S ess ao , Ġc of re ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( it Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( this , MainActivity :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( intent ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdialog . dismiss (); ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠToast . makeText ( this , ĠR . string . erro Api , ĠToast . LENGTH _ LONG ). show () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġdialog Ġ= ĠProgress . progress Dialog ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdialog . show () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġapi Service . put C of re ( codigo P essoa S ess ao , Ġcodigo C of re , Ġc of re ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( it Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( this , MainActivity :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( intent ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdialog . dismiss (); ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠToast . makeText ( this , ĠR . string . erro Api , ĠToast . LENGTH _ LONG ). show () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġbutton Ex cluir Meta Edit ada . setOnClickListener Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġdialog Ġ= ĠProgress . progress Dialog ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdialog . show () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġapi Service . delete C of re ( codigo P essoa S ess ao , Ġcodigo C of re ){ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( it Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif ( it ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( this , ĠMainActivity :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( intent ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} else Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdialog . dismiss (); ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠToast . makeText ( this , Ġ ĠR . string . erro Api , ĠToast . LENGTH _ LONG ). show () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdialog . dismiss (); ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠToast . makeText ( this , Ġ ĠR . string . erro Api , ĠToast . LENGTH _ LONG ). show () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġbtn Vol tar Main Ġ= ĠfindViewById < ImageView >( R . id . btn Vol tar Main ) ĊĠĠĠĠĠĠĠ Ġbtn Vol tar Main . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( this , ĠMainActivity :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( intent ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }