From 718f31c92e2029d05260810435a2c70cef6e6ce5 Mon Sep 17 00:00:00 2001 From: lmw <125975490@qq.com> Date: 星期四, 24 四月 2025 10:45:55 +0800 Subject: [PATCH] save --- app/src/main/java/com/sinata/xqmuse/ui/mine/BindCardActivity.kt | 81 +++++++++++++++++++--------------------- 1 files changed, 39 insertions(+), 42 deletions(-) diff --git a/app/src/main/java/com/sinata/xqmuse/ui/mine/BindCardActivity.kt b/app/src/main/java/com/sinata/xqmuse/ui/mine/BindCardActivity.kt index 04dab7a..829389c 100644 --- a/app/src/main/java/com/sinata/xqmuse/ui/mine/BindCardActivity.kt +++ b/app/src/main/java/com/sinata/xqmuse/ui/mine/BindCardActivity.kt @@ -1,33 +1,39 @@ 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() @@ -35,9 +41,14 @@ 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() @@ -45,13 +56,15 @@ 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,code).request(this,success = {_,_-> + setResult(RESULT_OK) + myToast("添加成功") finish() }){_,_-> tv_action.isEnabled = true @@ -60,31 +73,15 @@ } 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}s后可重新获取" + } } } } -- Gitblit v1.7.1