学员端小程序
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

194 lines
5.2 KiB

<template>
<view class="pageBgImg">
<topNavbar title="学员报名"></topNavbar>
<view class="pad">
<view class="card">
<view class="row">
<view class="lab">证件类型</view>
<view class="rightCon">
<view class="val" @click="showType=true">
<input v-model="form.typeName" placeholder="请选择" class="input1" style="pointer-events: none;" disabled/></input>
</view>
<view class="icon">
<u-icon name="arrow-right" size="14" color="#686B73" style="margin-left: 12rpx;" ></u-icon>
</view>
</view>
</view>
<view class="row" v-if="form.value==7">
<view class="lab">国籍</view>
<view class="rightCon">
<view class="val">
<input v-model="form.classModel" placeholder="请选择" @click="showType=true" disabled/></input>
</view>
<view class="icon">
<u-icon name="arrow-right" size="14" color="#686B73" style="margin-left: 12rpx;" ></u-icon>
</view>
</view>
</view>
<view class="row" v-if="form.value!=1">
<view class="lab">证件号码</view>
<view class="rightCon">
<view class="val">
<input v-model="form.a" placeholder="请输入" /></input>
</view>
</view>
</view>
</view>
<view class="card">
<view class="row">
<view class="lab">实名认证</view>
<view class="rightCon">
<view class="val" v-if="vuex_userInfo.applyStep>1" style="color: #1989FA;">已认证</view>
<view class="val" v-else>待认证</view>
</view>
</view>
</view>
<view class="btnBg" @click="goNext">下一步</view>
</view>
<u-picker :show="showType" :columns="typeArr" keyName="label" @confirm="confirmType" @cancel="showType=false"></u-picker>
</view>
</template>
<script>
import { getpersonface, GetDetectInfoEnhanced, getCardType } from '@/config/api.js'
export default {
data() {
return {
form: {
value: 1,
typeName: '身份证'
},
showType: false,
typeArr: [],
}
// 报名进度(0:待报名,1:已选驾校,2:已实名制,3:已填写报名信息,4:已签署合同,5:待支付,6:已支付)
},
onLoad() {
// this.GetDetectInfoEnhancedFn()
this.getCardTypeFn()
},
methods: {
// 获取证件类型
async getCardTypeFn() {
const {data: res} = await getCardType()
this.typeArr = [res]
await this.$store.dispatch('getUserInfo')
if(this.vuex_userInfo.applyStep>1) {
res.forEach(item=>{
if(item.value==this.vuex_userInfo.cardType ){
this.form.typeName = item.label
}
})
}
console.log(res)
},
confirmType(val) {
let item = val.value[0]
console.log(item)
this.form.value = item.value
this.form.typeName = item.label
this.showType = false
},
async getpersonfaceFn() {
const {data: res} = await getpersonface({ ruleId: 1, RedirectUrl: 'http://192.168.1.44:8001/h5/#/pages/indexEntry/enroll/realName/realName'})
let obj = JSON.parse(res)
this.link = obj.Url
this.$store.commit('updateBizToken', obj.BizToken)
// #ifdef H5
window.open(this.link, '_blank')
// #endif
// var regex = /\[.*?\]/;
// alert(obj.BizToken)
// this.GetDetectInfoEnhancedFn(obj.BizToken)
console.log(obj)
},
async GetDetectInfoEnhancedFn(bizToken) {
let obj = {
ruleId: 1,
redirectUrl: 'http://192.168.1.44:8002/h5/#/pages/indexEntry/enroll/registInfo/registInfo',
bizToken: 'C9C2BC8E-8336-4071-84B3-8170E283E6CA',
userId: this.userId
}
const {data: res} = await GetDetectInfoEnhanced(obj)
let obj2 = JSON.parse(res)
console.log(obj2)
console.log('请求结果来了')
console.log(obj2.Text.ErrMsg=='成功')
// uni.setStorageSync(obj2)
},
goNext() {
if(!this.form.value) return this.$u.toast('请选择证件类型')
// 去签约
if(this.vuex_userInfo.applyStep==3) {
return this.$goPage('/pages/indexEntry/enroll/signContract/signContract')
}
// 去填表
if(this.vuex_userInfo.applyStep==2) {
return this.$goPage('/pages/indexEntry/enroll/registInfo/registInfo')
}
// 去支付
if(this.vuex_userInfo.applyStep==4||this.vuex_userInfo.applyStep==5) {
return this.$goPage('/pages/indexEntry/enroll/payment/payment')
}
if(!this.vuex_userInfo.applyStep||this.vuex_userInfo.applyStep<2) {
// return this.$goPage('/pages/indexEntry/enroll/realName/realName')
this.getpersonfaceFn()
}
// this.$goPage('/pages/indexEntry/enroll/signContract/signContract')
// this.$goPage('/pages/indexEntry/enroll/uploadAvatar/uploadAvatar')
}
}
}
</script>
<style>
.input1::placeholder {
color: red !important;
}
</style>
<style lang="scss" scoped>
.card {
padding: 10rpx 46rpx 10rpx 32rpx;
margin-bottom: 20rpx;
.row {
height: 100rpx;
display: flex;
align-items: center;
.lab {
width: 152rpx;
}
.rightCon {
flex: 1;
width: 0;
display: flex;
.val {
flex: 1;
width: 0;
input {
font-size: 28rpx;
}
}
.icon {
width: 30rpx;
height: 30rpx;
u-icon {
}
}
}
}
}
.btnBg {
width: 396rpx;
margin: 100rpx auto 0 auto;
}
</style>