lmw
2023-05-12 f67802a41f9e01444d1115f34ecc6e1beb05fc3b
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
package com.fuban.user.ui.mine
 
import android.os.CountDownTimer
import cn.sinata.xldutils.utils.hidePhone
import cn.sinata.xldutils.utils.myToast
import cn.sinata.xldutils.utils.optInt
import com.fuban.user.R
import com.fuban.user.network.HttpManager
import com.fuban.user.network.request
import com.fuban.user.ui.TransparentStatusBarActivity
import kotlinx.android.synthetic.main.activity_verify_phone_for_pwd.*
import org.jetbrains.anko.sdk27.coroutines.onClick
import org.jetbrains.anko.startActivity
 
class VerifyPhoneForUpdatePwdActivity : TransparentStatusBarActivity() {
    override fun setContentView() = R.layout.activity_verify_phone_for_pwd
 
    private val countDownTimer = object : CountDownTimer(60 * 1000, 1000) {
        override fun onFinish() {
            tv_get_code.text = "重新获取"
            tv_get_code.isEnabled = true
        }
 
        override fun onTick(millisUntilFinished: Long) {
            tv_get_code.text = String.format("%d秒后重新获取", millisUntilFinished / 1000)
        }
    }
    private val phone by lazy {
        intent.getStringExtra("phone")
    }
 
    override fun initClick() {
        tv_get_code.onClick {
            sendSms()
        }
        tv_action.onClick {
            val s = et_code.text.toString()
            if (s.length != 4) {
                myToast("请输入4位验证码")
            } else {
                HttpManager.checkCode(s,phone).request(this@VerifyPhoneForUpdatePwdActivity){ _, data->
                    if (data?.optInt("ok") == 1){
                        startActivity<ChangePwdActivity>("phone" to phone)
                        finish()
                    }else{
                        myToast("验证码错误")
                    }
                }
            }
        }
    }
 
    override fun initView() {
        title = "设置密码"
        tv_phone.text = "设置密码需先验证您的手机号" + phone.hidePhone()
    }
 
    private fun sendSms() {
        showDialog()
        tv_get_code.isEnabled = false
        HttpManager.sendSms(phone,4).request(this,success = { msg, _ ->
            myToast("发送成功")
            countDownTimer.start()
        }){_,_->
            tv_get_code.isEnabled = true
        }
    }
}