123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165 |
- package com.quansu.heifengwuliu.vmodel
- import android.app.Activity
- import android.app.Application
- import android.text.TextUtils
- import androidx.databinding.Bindable
- import androidx.lifecycle.MutableLiveData
- import com.hwangjr.rxbus.RxBus
- import com.quansu.heifengwuliu.BR
- import com.quansu.heifengwuliu.activity.HomeActivity
- import com.quansu.heifengwuliu.config.ConfigRx
- import com.quansu.heifengwuliu.model.Idcard
- import com.quansu.heifengwuliu.model.LoginBean
- import com.quansu.heifengwuliu.model.User
- import com.quansu.heifengwuliu.repository.PersonalVerifyRepository
- import com.quansu.heifengwuliu.utils.ChosePhotoUtils
- import com.quansu.heifengwuliu.utils.VerifyUtils
- import com.quansu.heifengwuliu.utils.net.NetEngine
- import com.tencent.mmkv.MMKV
- import com.ysnows.base.base.BViewModel
- import com.ysnows.base.utils.UiSwitch
- class PersonalVerityVModel(application: Application) : BViewModel<PersonalVerifyRepository>(application) {
- //https://cdnheifengwuliu.qs110.com/idcard/xuzgomb3/android/v/mmexport1599207639412.jpg
- var imgIDMan: MutableLiveData<String> = MutableLiveData("")
- var imgIDEmblem: MutableLiveData<String> = MutableLiveData("")
- var type:String="1"//1:身份证正面 2:身份证背面
- var isShow: MutableLiveData<Boolean> = MutableLiveData(true)
- var nameID:String=""
- var iDNumberID:String=""
- @Bindable
- var name: String? = null
- set(value) {
- field = value
- notifyPropertyChanged(BR.name)
- }
- @Bindable
- var iDNumber: String? = null
- set(value) {
- field = value
- notifyPropertyChanged(BR.iDNumber)
- }
- fun choseImg(type:Int){
- if(!isShow.value!!){
- return
- }
- //选择照片
- this.type=type.toString()
- ChosePhotoUtils.getChosePhoto(view()!!.context(), 1)
- }
- fun toSubmit(){
- if(TextUtils.isEmpty(imgIDMan.value)){
- toast("请上传身份证人像面图片")
- return
- }
- if(TextUtils.isEmpty(imgIDEmblem.value)){
- toast("请上传国徽面图片")
- return
- }
- if(TextUtils.isEmpty(name)){
- toast("请输入姓名")
- return
- }
- //验证姓名的格式
- if(!VerifyUtils.isLegalName(name!!)){
- toast("姓名格式不对,请核实!")
- return
- }
- //判断是否和图片上的一致
- if(!TextUtils.isEmpty(nameID)&&(!name.equals(nameID))){
- toast("输入姓名和身份证上姓名不一致,请核实!")
- return
- }
- if(TextUtils.isEmpty(iDNumber)){
- toast("请输入身份证号")
- return
- }
- if(!VerifyUtils.isLegalId(iDNumber!!)){
- toast("身份证格式不对,请核实!")
- return
- }
- //判断是否和图片上的一致
- if(!TextUtils.isEmpty(iDNumberID)&&(!iDNumber.equals(iDNumberID))){
- toast("输入身份证号和身份证上的身份证号不一致,请核实!")
- return
- }
- repository().rxLreq(NetEngine.service.setInfo(imgIDMan.value, imgIDEmblem.value,name,iDNumber))
- .doOnNext {
- if (it.ok(true)) {
- var user = User.get()
- user!!.is_info = 2
- user.save()
- RxBus.get().post(ConfigRx.REFRESH_USER, "")
- (repository().context as Activity).finish()
- }
- }
- .subscribe()
- }
- fun getInfo(){
- //获取个人信息
- repository().rxPreq(NetEngine.service.getInfo("1"))
- .doOnNext {
- if (it.ok(false)) {
- var bean=it.data()
- if(null!=bean){
- isShow.value = bean.status != "2"
- //设置值
- imgIDMan.value=bean.idcard_z
- imgIDEmblem.value=bean.idcard_f
- name=bean.name
- iDNumber=bean.idcard
- }
- }
- }
- .subscribe()
- }
- fun discernID(img:String){//识别身份证
- repository().rxLreq(NetEngine.service.cvIdcard(img))
- .doOnNext {
- if (it.ok(true)) {
- var bean=it.data() as Idcard
- name=bean.name
- iDNumber=bean.id
- nameID=bean.name
- iDNumberID=bean.id
- }
- }
- .subscribe()
- }
- override fun createRepository(): PersonalVerifyRepository {
- return PersonalVerifyRepository()
- }
- }
|