package Ġcom . ny i . yb sp ayment . activities . top up Ċ Ċ import Ġandroid . app . Activity Ċ import Ġandroid . content . Intent Ċ import Ġandroid . util . Log Ċ import Ġcom . google . gson . Gson Ċ import Ġcom . ny i . yb sp ayment . Y bs Payment Ċ import Ġcom . ny i . yb sp ayment . db . DB Helper Ċ import Ġcom . ny i . yb sp ayment . db . model . Top up Model Ċ import Ġcom . ny i . yb sp ayment . utils . Constants Ċ import Ġcom . ny i . yb sp ayment . utils . Time Util Ċ import Ġcom . ny i . yb sp ayment . vo . Scan Result Ċ import Ġcom . ny i . yb sp ayment . vo . Top up Scan Result Ċ Ċ class ĠTop up Presenter ( val Ġtop up View : ĠTop up Contract . Top up View , Ġval Ġdb Helper : ĠDB Helper Ġ= ĠDB Helper ( Y bs Payment . context )) Ġ: ĠTop up Contract . Top up Presenter { ĊĠĠĠ Ġval Ġgson Ġ= ĠGson () ĊĠĠĠ Ġlateinit Ġvar Ġtop up Scan Result : ĠTop up Scan Result ĊĊĠĠĠ Ġoverride Ġfun Ġset Scanner Result ( result : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ ĠLog . d ( Constants . LOG , Ġ" Top up Presenter Ġ" Ġ+ Ġresult ) ĊĠĠĠĠĠĠĠ Ġval Ġmsg Ġ= Ġ""" ĊĠĠĠĠĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" re charge Amount " Ġ: Ġ 1 0 0 0 ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ""" ĊĊĠĠĠĠĠĠĠ Ġ// TODO ĊĠĠĠĠĠĠĠ Ġ// replace Ġwith Ġactual Ġscan Ġresult ĊĠĠĠĠĠĠĠ Ġtop up Scan Result Ġ= Ġgson . fromJson ( msg , ĠTop up Scan Result :: class . java ) ĊĠĠĠĠĠĠĠ ĠLog . d ( Constants . LOG , Ġ" Top up Presenter Ġbalance Ġ" Ġ+ Ġtop up Scan Result . re charge Amount ) ĊĊĠĠĠĠĠĠĠ Ġval Ġuser Ġ= Ġdb Helper . read All User () ĊĠĠĠĠĠĠĠ Ġval Ġnew Amount Ġ= Ġuser . available AM ount Ġ+ Ġtop up Scan Result . re charge Amount ĊĊĠĠĠĠĠĠĠ Ġdb Helper . update Avail Amount ( user . userID , Ġnew Amount ) ĊĠĠĠĠĠĠĠ Ġdb Helper . insert Top up ( Top up Model ( user . userID , Ġtop up Scan Result . re charge Amount , ĠTime Util . getC ure en Time ())) ĊĊĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent () ĊĠĠĠĠĠĠĠ Ġintent . putExtra ( Constants . arg Top up AM ount , Ġtop up Scan Result . re charge Amount ) ĊĊĠĠĠĠĠĠĠ Ġ/* val Ġtop up List Ġ: ĠList < Top up Model > Ġ= Ġdb Helper . read All Top up () ĊĠĠĠĠĠĠĠ ĠLog . i ( Constants . LOG , Ġ" history Ġcount Ġ" Ġ+ Ġtop up List . size ) ĊĠĠĠĠĠĠĠ Ġfor ( top up Ġin Ġtop up List ){ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLog . i ( Constants . LOG , Ġ" top up Ġhistory Ġ" Ġ+ Ġtop up . top up ID . toString () Ġ+ Ġ" Ġ" Ġ+ Ġtop up . re charge Amount Ġ+ Ġ" Ġ" Ġ+ Ġtop up . top up Date ) ĊĠĠĠĠĠĠĠ Ġ}*/ ĊĊĠĠĠĠĠĠĠ Ġtop up View . finish ( Activity . RESULT _ OK , Ġintent ); ĊĠĠĠ Ġ} Ċ }