//index.js //获取应用实例 const app = getApp() import WxValidate from '../../utils/wxValidate'; Page({ data: { form: {}, // 省份 provinceList: [], // 市区 cityList: [], // 套餐列表 setList: [], }, initValidate() { const rules = { mobile: { required: true, tel: true }, password: { required: true, }, province: { required: true, }, city: { required: false, }, set: { required: true, }, name: { required: true, }, id_card: { required: true, idcard: true }, wxaccount: { required: true, }, } // 验证字段的提示信息,若不传则调用默认的信息 const messages = { mobile: { required: '请输入新办理号码', }, password: { required: '请输入密码', }, province: { required: '请选择省份', }, city: { required: '请选择市区', }, set: { required: '请选择套餐', }, name: { required: '请输入姓名', }, id_card: { required: '请输入身份证号', }, wxaccount: { required: '请输入微信账号', }, }; this.WxValidate = new WxValidate(rules, messages) }, // 选择省份 provinceChange: function (e) { this.setData({ "form.province": this.data.provinceList[e.detail.value].code }) this.setData({ "form.provinces": this.data.provinceList[e.detail.value].name }) // 查询市 wx.request({ url: app.globalData.publicUrl + '/api/htyd/xzqh', method: "get", data: { pcode: this.data.provinceList[e.detail.value].code }, success: (res) => { if (res.data.errcode == '0') { this.setData({ cityList: res.data.data }) // 根据查询市,判断查询套餐 if (res.data.total === 0) { // 套餐 wx.request({ url: app.globalData.publicUrl + '/api/htyd/set', method: "get", data: { contact: this.data.provinceList[e.detail.value].code }, success: (res) => { if (res.data.errcode == '0') { this.setData({ setList: res.data.data }) } else { wx.showToast({ title: '查询失败', icon: 'error', duration: 2000 }) } } }) } } else { wx.showToast({ title: '查询失败', icon: 'error', duration: 2000 }) } } }) }, // 选择市区 cityChange: function (e) { this.setData({ "form.city": this.data.cityList[e.detail.value].code }) this.setData({ "form.citys": this.data.cityList[e.detail.value].name }) // 套餐 wx.request({ url: app.globalData.publicUrl + '/api/htyd/set', method: "get", data: { contact: this.data.cityList[e.detail.value].code }, success: (res) => { if (res.data.errcode == '0') { this.setData({ setList: res.data.data }) } else { wx.showToast({ title: '查询失败', icon: 'error', duration: 2000 }) } } }) }, // 选择套餐 setChange: function (e) { this.setData({ "form.set": this.data.setList[e.detail.value].id }) this.setData({ "form.sets": this.data.setList[e.detail.value].title }) }, //事件处理函数 formSubmit: function (e) { const params = e.detail.value; if (!this.WxValidate.checkForm(params)) { const error = this.WxValidate.errorList[0]; wx.showToast({ title: error.msg, icon: 'none', duration: 2000 }) return false } else { console.log(params); } wx.request({ url: app.globalData.publicUrl + '/api/htyd/card', method: "post", data: params, success: (res) => { if (res.data.errcode == '0') { wx.showToast({ title: '办卡成功', icon: 'success', duration: 2000 }) wx.redirectTo({ url: 'pages/home/home', }) } else { wx.showToast({ title: '办卡失败', icon: 'error', duration: 2000 }) } } }) }, onLoad: function (options) { this.initValidate()//验证规则函数 // 获取推荐人信息 let data = app.globalData.userInfo; if (data) { this.setData({ "form.recommend": data.name }) this.setData({ "form.r_mobile": data.mobile }) } // 查询省 wx.request({ url: app.globalData.publicUrl + '/api/htyd/xzqh', method: "get", data: {}, success: (res) => { if (res.data.errcode == '0') { this.setData({ provinceList: res.data.data }) } else { wx.showToast({ title: '查询失败', icon: 'error', duration: 2000 }) } } }) }, })