package Ġcom . example . ok credit . Views . activities Ċ Ċ import Ġandroid . app . Activity Ċ import Ġandroid . content . Intent Ċ import Ġandroid . net . Uri Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . util . Log Ċ import Ġandroid . view . View Ċ import Ġandroid . widget . Toast Ċ import Ġandroidx . appcompat . app . AlertDialog Ċ import Ġcom . bump tech . glide . G lide Ċ import Ġcom . bump tech . glide . request . RequestOptions Ċ import Ġcom . example . ok credit . R Ċ import Ġcom . example . ok credit . Views . values . Tools Ċ import Ġcom . example . ok credit . Data . local . Transaction Ċ import Ġcom . san . app . activity . Base Activity Ċ import Ġcom . example . ok credit . Data . local . Customer Ċ import Ġkotlinx . android . synt hetic . main . activity _ transaction .* ĊĊ Ċ class ĠTransaction Activity Ġ: ĠBase Activity (), ĠView . OnClickListener Ġ{ ĊĠĠĠ Ġprivate Ġvar Ġtag : ĠString Ġ= Ġ" Customer Activity " ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġcustomer : ĠCustomer ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġtransaction : ĠTransaction ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ transaction ) ĊĊĠĠĠĠĠĠĠ Ġinit Views () ĊĠĠĠĠĠĠĠ Ġset Customer Data () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Suppress (" NULL ABILITY _ MIS MATCH _ BASE D _ ON _ JAVA _ AN NOT ATIONS ") ĊĠĠĠ Ġprivate Ġfun Ġinit Views () Ġ{ ĊĠĠĠĠĠĠĠ Ġcustomer Ġ= Ġintent . get Parcelable Extra (" customer ") !! ĊĠĠĠĠĠĠĠ Ġtransaction Ġ= Ġintent . get Parcelable Extra (" transaction ") !! ĊĠĠĠĠĠĠĠ ĠLog . d ( tag , Ġ" transaction == => Ġ$ transaction ") ĊĊĠĠĠĠĠĠĠ Ġtoolbar . set Navigation OnClickListener Ġ{ Ġon Back Pressed () Ġ} ĊĊĠĠĠĠĠĠĠ Ġbtn Wp Share . setOnClickListener ( this ) ĊĠĠĠĠĠĠĠ Ġbtn Delete . setOnClickListener ( this ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġset Customer Data () Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( customer . profile Image Ġ!== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠG lide . with ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. load ( Uri . parse ( customer . profile Image )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( RequestOptions . circle Crop Transform ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. into ( iv Profile ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠG lide . with ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. load ( R . drawable . ic _ account _ 1 2 5 dp ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( RequestOptions . circle Crop Transform ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. into ( iv Profile ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġif Ġ(! transaction . image . isNull Or Blank ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠG lide . with ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. load ( transaction . image ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. into ( iv Receipt ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġtv Name . text Ġ= Ġcustomer . name ĊĠĠĠĠĠĠĠ Ġtv Amount . text Ġ= ĠTools . getC urrency ( transaction . amount !! ) ĊĠĠĠĠĠĠĠ Ġtv Cal Date . text Ġ= ĠTools . get Formatted Time ( transaction . createdAt , Ġ" dd ĠM MM Ġy yyy ") ĊĠĠĠĠĠĠĠ Ġtv CreatedAt . text Ġ= ĠTools . get Formatted Time ( transaction . createdAt , Ġ" dd ĠM MM Ġy yyy , Ġhh : mm Ġa ") ĊĠĠĠĠĠĠĠ Ġif Ġ( transaction . note !!. isNotEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnote Container . visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtv Note . text Ġ= Ġtransaction . note ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġif Ġ( transaction . type Ġ== Ġ" debit ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtv Amount . setTextColor ( resources . getColor ( R . color . red )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtv Delete . text Ġ= ĠgetString ( R . string . delete _ credit ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtv Amount . setTextColor ( resources . getColor ( R . color . color Primary Dark )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtv Delete . text Ġ= ĠgetString ( R . string . delete _ payment ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonClick ( v : ĠView ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen Ġ( v ?. id ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . btn Wp Share Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġshare Body Ġ= Ġ" Ud ha ar Ġka Ġsa ara ĠH isa ab Ġap ne ĠPhone Ġme Ġ- ĠInstall Ġk ab son Ġfor ĠFREE " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġsharing Intent Ġ= ĠIntent ( Intent . ACTION _ SEND ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsharing Intent . type Ġ= Ġ" text / plain " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsharing Intent . putExtra ( Intent . EXTRA _ SUBJECT , Ġ" Subject ĠHere ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsharing Intent . putExtra ( Intent . EXTRA _ TEXT , Ġshare Body ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠIntent . create Chooser ( sharing Intent , Ġresources . getString ( R . string . share _ using )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . btn Delete Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġshow Delete Dialog () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġshow Delete Dialog () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġbuilder Ġ= ĠAlertDialog . Builder ( this ) ĊĠĠĠĠĠĠĠ Ġval Ġtitle Ġ= Ġif Ġ( transaction . type Ġ== Ġ" debit ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠgetString ( R . string . delete _ credit ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠgetString ( R . string . delete _ payment ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġbuilder . setTitle ( title ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. setMessage ( R . string . delete _ msg ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Positive Button ( R . string . delete ) Ġ{ Ġdialog , Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdialog . dismiss () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput Extra (" transaction ", Ġtransaction ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput Extra (" transaction _ del ", Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Result ( Activity . RESULT _ OK , Ġintent ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Back Pressed () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Negative Button ( R . string . cancel ) Ġ{ Ġdialog , Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdialog . dismiss () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġbuilder . create () ĊĠĠĠĠĠĠĠ Ġbuilder . show () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġsend Data Back To Home Activity () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent (). apply Ġ{ Ġput Extra (" transaction ", Ġtransaction ) Ġ} ĊĠĠĠĠĠĠĠ Ġset Result ( Activity . RESULT _ OK , Ġintent ) ĊĠĠĠ Ġ} Ċ Ċ }