| | |
| | | package com.sinata.xqmuse.ui.mine |
| | | |
| | | import android.app.Activity |
| | | import android.content.Intent |
| | | import cn.sinata.xldutils.activity.SelectPhotoDialog |
| | | import android.os.CountDownTimer |
| | | import cn.sinata.xldutils.utils.isValidIdCard |
| | | import cn.sinata.xldutils.utils.isValidPhone |
| | | import cn.sinata.xldutils.utils.myToast |
| | | import com.sinata.xqmuse.R |
| | | import com.sinata.xqmuse.network.HttpManager |
| | | import com.sinata.xqmuse.network.request |
| | | import com.sinata.xqmuse.ui.TransparentStatusBarActivity |
| | | import com.sinata.xqmuse.utils.extention.uploadWithCompress |
| | | import com.sinata.xqmuse.utils.interfaces.StringCallback |
| | | import kotlinx.android.synthetic.main.activity_bind_card.* |
| | | import org.jetbrains.anko.startActivityForResult |
| | | |
| | | class BindCardActivity : TransparentStatusBarActivity() { |
| | | override fun setContentView() = R.layout.activity_bind_card |
| | | |
| | | private var cardImg = "" |
| | | private lateinit var timer: CountDownTimer |
| | | |
| | | override fun initClick() { |
| | | iv_photo.setOnClickListener { |
| | | startActivityForResult<SelectPhotoDialog>(1) |
| | | tv_code.setOnClickListener { |
| | | val phone = et_phone.text.toString() |
| | | if (!phone.isValidPhone()) |
| | | myToast("请输入正确的手机号") |
| | | else { |
| | | tv_code.isEnabled = false |
| | | HttpManager.getCode(phone, 6).request(this@BindCardActivity, success = { _, _ -> |
| | | timer.start() |
| | | }) { _, _ -> |
| | | tv_code.isEnabled = true |
| | | } |
| | | } |
| | | } |
| | | |
| | | tv_action.setOnClickListener { |
| | | val name = et_name.text.toString() |
| | | if (name.isNullOrEmpty()){ |
| | | myToast("请输入开户名") |
| | | val bank = et_bank.text.toString() |
| | | if (bank.isNullOrEmpty()){ |
| | | myToast("请输入开户行") |
| | | return@setOnClickListener |
| | | } |
| | | val num = et_num.text.toString() |
| | |
| | | myToast("请输入卡号") |
| | | return@setOnClickListener |
| | | } |
| | | val bank = et_bank.text.toString() |
| | | if (bank.isNullOrEmpty()){ |
| | | myToast("请输入开户行") |
| | | val name = et_name.text.toString() |
| | | if (name.isNullOrEmpty()){ |
| | | myToast("请输入持卡人姓名") |
| | | return@setOnClickListener |
| | | } |
| | | val idCard = et_id_card.text.toString() |
| | | if (!idCard.isValidIdCard()){ |
| | | myToast("请输入正确的身份证号") |
| | | return@setOnClickListener |
| | | } |
| | | val phone = et_phone.text.toString() |
| | |
| | | myToast("请输入正确的手机号") |
| | | return@setOnClickListener |
| | | } |
| | | if (cardImg.isEmpty()){ |
| | | myToast("请上传银行卡正面照") |
| | | val code = et_code.text.toString() |
| | | if (code.length!=6){ |
| | | myToast("请输入正确的验证码") |
| | | return@setOnClickListener |
| | | } |
| | | tv_action.isEnabled = false |
| | | HttpManager.updateBankCard(name,phone,num,bank,cardImg).request(this,success = {_,_-> |
| | | myToast("绑定成功") |
| | | HttpManager.addBank(bank, name, phone, idCard, num).request(this,success = {_,_-> |
| | | setResult(RESULT_OK) |
| | | myToast("添加成功") |
| | | finish() |
| | | }){_,_-> |
| | | tv_action.isEnabled = true |
| | |
| | | } |
| | | |
| | | override fun initView() { |
| | | getData() |
| | | } |
| | | |
| | | private fun getData() { |
| | | HttpManager.getBankInfo().request(this){_,data-> |
| | | if (!data?.bankCard.isNullOrEmpty()){ |
| | | et_name.setText(data!!.accountName) |
| | | et_num.setText(data.bankCard) |
| | | et_bank.setText(data.bankName) |
| | | et_phone.setText(data.bankPhone) |
| | | cardImg = data.bankCardImg |
| | | iv_photo.setImageURI(cardImg) |
| | | timer = object : CountDownTimer(60000, 1000) { |
| | | override fun onFinish() { |
| | | tv_code.isEnabled = true |
| | | tv_code.text = "重新获取" |
| | | } |
| | | } |
| | | } |
| | | |
| | | override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { |
| | | super.onActivityResult(requestCode, resultCode, data) |
| | | if (resultCode == Activity.RESULT_OK&&data!=null){ |
| | | data.getStringExtra("path")!!.uploadWithCompress(this, object : StringCallback { |
| | | override fun onResult(rst: String) { |
| | | cardImg = rst |
| | | iv_photo.setImageURI(rst) |
| | | } |
| | | }) |
| | | override fun onTick(millisUntilFinished: Long) { |
| | | tv_code.text = "${millisUntilFinished / 1000}s123" |
| | | } |
| | | } |
| | | } |
| | | } |