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.
|
|
|
|
let timer = null as null | number
|
|
|
|
|
|
|
|
|
|
Page({
|
|
|
|
|
data: {
|
|
|
|
|
mobile: '',
|
|
|
|
|
code: '',
|
|
|
|
|
codeText: '发送验证码',
|
|
|
|
|
back: false,
|
|
|
|
|
showForm: false,
|
|
|
|
|
check: false,
|
|
|
|
|
},
|
|
|
|
|
onLoad(option) {
|
|
|
|
|
if (option.back) {
|
|
|
|
|
this.setData({
|
|
|
|
|
back: true,
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
getCode() {
|
|
|
|
|
if (timer) return
|
|
|
|
|
const mobile = this.data.mobile
|
|
|
|
|
if (!mobile) {
|
|
|
|
|
wx.showToast({
|
|
|
|
|
title: '手机号不能为空',
|
|
|
|
|
icon: 'none',
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
// 验证手机号
|
|
|
|
|
if (!/^1[3-9,]\d{9}$/.test(mobile)) {
|
|
|
|
|
wx.showToast({
|
|
|
|
|
title: '手机号格式不正确',
|
|
|
|
|
icon: 'none',
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
wx.ajax({
|
|
|
|
|
method: 'POST',
|
|
|
|
|
url: '/app/common/common/send-code',
|
|
|
|
|
data: {
|
|
|
|
|
phone: mobile,
|
|
|
|
|
type: 1,
|
|
|
|
|
},
|
|
|
|
|
}).then((_res) => {
|
|
|
|
|
wx.showToast({
|
|
|
|
|
icon: 'none',
|
|
|
|
|
title: '验证码已发送~',
|
|
|
|
|
})
|
|
|
|
|
let time = 60
|
|
|
|
|
timer = setInterval(() => {
|
|
|
|
|
time--
|
|
|
|
|
this.setData({
|
|
|
|
|
codeText: `${time}s后重新发送`,
|
|
|
|
|
})
|
|
|
|
|
if (time <= 0) {
|
|
|
|
|
clearInterval(timer as number)
|
|
|
|
|
timer = null
|
|
|
|
|
this.setData({
|
|
|
|
|
codeText: '发送验证码',
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
}, 1000)
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
handleSubmit() {
|
|
|
|
|
if (!this.data.mobile) {
|
|
|
|
|
wx.showToast({
|
|
|
|
|
icon: 'none',
|
|
|
|
|
title: '请输入手机号',
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
if (!this.data.code) {
|
|
|
|
|
wx.showToast({
|
|
|
|
|
icon: 'none',
|
|
|
|
|
title: '请输入验证码',
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
if (!this.data.check) {
|
|
|
|
|
wx.showToast({
|
|
|
|
|
icon: 'none',
|
|
|
|
|
title: '请同意用户协议',
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
wx.ajax({
|
|
|
|
|
method: 'POST',
|
|
|
|
|
url: '/app/promoter/promoter/sms-login',
|
|
|
|
|
data: {
|
|
|
|
|
phone: this.data.mobile,
|
|
|
|
|
code: this.data.code,
|
|
|
|
|
identity: 3,
|
|
|
|
|
},
|
|
|
|
|
}).then((res) => {
|
|
|
|
|
const app = getApp<IAppOption>()
|
|
|
|
|
app.globalData.initLoginInfo = {
|
|
|
|
|
loginType: 3,
|
|
|
|
|
isLogin: 1,
|
|
|
|
|
isReg: 1,
|
|
|
|
|
...res,
|
|
|
|
|
}
|
|
|
|
|
this.submitCallback()
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
handleWxSubmit(e: WechatMiniprogram.CustomEvent) {
|
|
|
|
|
if (!this.data.check) {
|
|
|
|
|
wx.showToast({
|
|
|
|
|
icon: 'none',
|
|
|
|
|
title: '请同意用户协议',
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
const { iv, encryptedData } = e.detail
|
|
|
|
|
if (iv && encryptedData) {
|
|
|
|
|
wx.ajax({
|
|
|
|
|
method: 'POST',
|
|
|
|
|
url: '?r=zd/doctor/login/wx-reg-login',
|
|
|
|
|
data: {
|
|
|
|
|
iv: encodeURIComponent(iv),
|
|
|
|
|
encryptedData: encodeURIComponent(encryptedData),
|
|
|
|
|
},
|
|
|
|
|
}).then((_res) => {
|
|
|
|
|
this.submitCallback()
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
submitCallback() {
|
|
|
|
|
wx.reLaunch({
|
|
|
|
|
url: '/ground/pages/home/index',
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
handlePatient() {
|
|
|
|
|
wx.redirectTo({
|
|
|
|
|
url: '/pages/login/index',
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
handleTelCode() {
|
|
|
|
|
this.setData({
|
|
|
|
|
showForm: !this.data.showForm,
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
handleLink() {
|
|
|
|
|
// wx.navigateTo({
|
|
|
|
|
// url: '/doc/pages/doc1/index',
|
|
|
|
|
// })
|
|
|
|
|
},
|
|
|
|
|
handleCheck() {
|
|
|
|
|
this.setData({
|
|
|
|
|
check: !this.data.check,
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
handleBack() {
|
|
|
|
|
wx.navigateBack()
|
|
|
|
|
},
|
|
|
|
|
})
|