lmw
2024-10-25 314b67e56f24f7bce040ae2b5d57c7eac7b197a9
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
package com.sinata.xqmuse.ui.mine
 
import android.os.Bundle
import cn.sinata.xldutils.activity.BaseActivity
import cn.sinata.xldutils.utils.myToast
import com.github.zackratos.ultimatebar.UltimateBar
import com.sinata.xqmuse.R
import com.sinata.xqmuse.dialog.TipDialog
import com.sinata.xqmuse.dialog.WithdrawDialog
import com.sinata.xqmuse.network.HttpManager
import com.sinata.xqmuse.network.request
import com.sinata.xqmuse.utils.Const
import com.sinata.xqmuse.utils.event.EmptyEvent
import com.sinata.xqmuse.utils.extention.clickDelay
import com.sinata.xqmuse.utils.interfaces.StringCallback
import kotlinx.android.synthetic.main.activity_wallet.*
import org.greenrobot.eventbus.EventBus
import org.greenrobot.eventbus.Subscribe
import org.jetbrains.anko.startActivity
 
class WalletActivity : BaseActivity() {
    private var balance = 0.0
 
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_wallet)
        initView()
        initClick()
    }
 
    private fun initClick() {
        iv_back.setOnClickListener { finish() }
 
        tv_action.setOnClickListener {
            startActivity<RechargeActivity>()
        }
 
        tv_withdraw.clickDelay {
            startActivity<WithdrawActivity>("balance" to balance)
        }
 
        tv_detail.setOnClickListener {
            startActivity<BalanceDetailActivity>("balance" to balance)
        }
    }
 
    private fun withdraw(){
        WithdrawDialog.show(supportFragmentManager,balance,object :StringCallback{
            override fun onResult(rst: String) {
                HttpManager.withdrawal(rst.toDouble()).request(this@WalletActivity,false, {_,_->
                    startActivity<WithdrawRecordActivity>()
                    myToast("提交成功")
                    getData()
                }){_,msg->
                    if (msg.contains("绑定")){
                        TipDialog.show(supportFragmentManager,"提现失败,请先绑定银行卡。",object : TipDialog.OnClickCallback{
                            override fun onOk() {
                                startActivity<BindCardActivity>()
                            }
 
                            override fun onCancel() {
 
                            }
                        },"去绑定")
                    }else
                        myToast(msg)
                }
            }
        })
    }
 
    private fun initView() {
        EventBus.getDefault().register(this)
        UltimateBar.with(this)
            .statusDark(false)
            .create().immersionBar() //沉浸状态栏
        getData()
 
    }
 
    @Subscribe
    fun onRefresh(e:EmptyEvent){
        if (e.code == Const.EventCode.REFRESH_WALLET){
            getData()
        }
    }
 
    private fun getData(){
        HttpManager.wallet().request(this,success = {_,data->
            balance = data?.balance?:0.0
            tv_balance.text = "%.2f".format(balance)
            tv_recharge_money.text = "%.2f".format(data?.recharge?:0.0)
            tv_income.text = "%.2f".format(data?.income?:0.0)
        })
    }
 
    override fun onDestroy() {
        super.onDestroy()
        EventBus.getDefault().unregister(this)
    }
}