fix
lmw
2024-11-09 d1a9e3312387b6c47e6186af506787a8a66369d1
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
102
103
104
105
106
107
108
109
110
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.Apis
import com.sinata.xqmuse.network.HttpManager
import com.sinata.xqmuse.network.request
import com.sinata.xqmuse.ui.H5Activity
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
    private val userId by lazy { intent.getStringExtra("userId") }
 
    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)
        }
        tv_share.setOnClickListener {
            startActivity<ShareActivity>("userId" to userId)
        }
        tv_push_list.setOnClickListener {
            startActivity<H5Activity>("title" to "我的推荐","url" to Apis.PUSH_LIST.format(userId),"type" to 0)
        }
    }
 
    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)
    }
}