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.
 

86 lines
1.7 KiB

import {
validatorIdCard
} from '../../util/validator'
import {
faceAuth
} from '../../api/auth'
import {
getUser,
setUser
} from '../../util/user'
Page({
data: {
authFlag: true,
disabled: true,
realName: '',
idCard: ''
},
onLoad() {
const user = getUser();
this.setData({
realName: user.realName,
idCard: user.idCard
})
this.onInput()
},
switchAuthFlag() {
this.setData({
authFlag: false
})
},
onInput() {
if (this.data.realName && this.data.realName.length >= 2 && validatorIdCard(this.data.idCard)) {
this.setData({
disabled: false
})
} else {
this.setData({
disabled: true
})
}
},
handleFaceAuth() {
wx.startFacialRecognitionVerify({
name: this.data.realName,
idCardNumber: this.data.idCard,
complete: (res) => {
console.log('complete ', res)
if (res.errMsg !== 'startFacialRecognitionVerify:ok') {
wx.showToast({
title: res.errMsg,
icon: 'none',
duration: 3000
});
return
}
const data = {
realName: this.data.realName,
idCard: this.data.idCard,
errMsg: res.errMsg,
errCode: res.errCode,
verifyResult: res.verifyResult
}
faceAuth(data).then(data => {
setUser(data);
wx.redirectTo({
url: '/pages/write/index',
})
})
},
success(res) {
console.log('success ', res)
},
fail(res) {
console.log('fail', res)
wx.showToast({
title: res.errMsg,
icon: 'none',
duration: 3000
});
}
})
}
});