package com.sinata.xqmuse.ui.login
|
|
import android.content.Intent
|
import android.os.CountDownTimer
|
import cn.sinata.xldutils.utils.isValidPhone
|
import cn.sinata.xldutils.utils.myToast
|
import com.sinata.xqmuse.R
|
import com.sinata.xqmuse.dialog.LoginRuleDialog
|
import com.sinata.xqmuse.network.HttpManager
|
import com.sinata.xqmuse.network.request
|
import com.sinata.xqmuse.ui.H5Activity
|
import com.sinata.xqmuse.ui.TransparentStatusBarActivity
|
import com.sinata.xqmuse.utils.extention.clickDelay
|
import kotlinx.android.synthetic.main.activity_bind_phone.*
|
import org.jetbrains.anko.sdk27.coroutines.onClick
|
import org.jetbrains.anko.startActivityForResult
|
|
class BindPhoneActivity : TransparentStatusBarActivity() {
|
override fun setContentView() = R.layout.activity_bind_phone
|
private lateinit var timer: CountDownTimer
|
|
private val openid by lazy { intent.getStringExtra("openid") }
|
private val token by lazy { intent.getStringExtra("token") }
|
|
override fun initClick() {
|
tv_action.onClick {
|
if (!cb_rule.isChecked) {
|
myToast("请阅读并同意用户协议和隐私协议")
|
return@onClick
|
}
|
val phone = et_phone.text.toString()
|
if (!phone.isValidPhone()){
|
myToast("请输入正确的手机号")
|
return@onClick
|
}
|
val code = et_code.text.toString()
|
if (code.length!=6){
|
myToast("请输入6位验证码")
|
return@onClick
|
}
|
HttpManager.verifyCellPhone(token?:"",phone,code,openid?:"").request(this@BindPhoneActivity){_,data->
|
val result = Intent()
|
result.putExtra("token",data?.accessToken?:"")
|
setResult(RESULT_OK,result)
|
finish()
|
}
|
}
|
|
tv_code.onClick {
|
val phone = et_phone.text.toString()
|
if (!phone.isValidPhone())
|
myToast("请输入正确的手机号")
|
else{
|
tv_code.isEnabled = false
|
HttpManager.getCode(phone,4 ).request(this@BindPhoneActivity,success = { _, _->
|
timer.start()
|
}){_,_->
|
tv_code.isEnabled = true
|
}
|
}
|
}
|
|
tv_privacy_rule.clickDelay {
|
HttpManager.getH5(LoginRuleDialog.TYPE_PRIVACY).request(this){ _, data->
|
data?.let {
|
startActivityForResult<H5Activity>(1,"title" to "隐私协议","url" to it)
|
}
|
}
|
}
|
|
tv_user_rule.clickDelay {
|
HttpManager.getH5(LoginRuleDialog.TYPE_USER).request(this){ _, data->
|
data?.let {
|
startActivityForResult<H5Activity>(2,"title" to "用户协议","url" to it)
|
}
|
}
|
}
|
}
|
|
override fun initView() {
|
timer = object :CountDownTimer(60000,1000){
|
override fun onFinish() {
|
tv_code.isEnabled = true
|
tv_code.text = "获取验证码"
|
}
|
|
override fun onTick(millisUntilFinished: Long) {
|
tv_code.text = "${millisUntilFinished / 1000}s后可重新获取"
|
}
|
}
|
|
}
|
|
}
|