|
- // pages/yuyue/yuyue.js
- const app = getApp()
- Component({
- /**
- * 组件的属性列表
- */
- properties: {
-
- },
-
- /**
- * 组件的初始数据
- */
- data: {
- imgUrl: app.globalData.urlStatic,//图片路径
- agreement:false,
- isAgreement: true,//是否同意协议
- phoneInputShow: false,//是否显示电话输入框
- siteSelect: false,//是否显示位置选择框
- provinceArr: [],//省
- provinceValue: 0,//选中的省下标
- storeArr: [],//店铺
- storeValue: 0,//选中的店铺下标
- verificationCode: '获取验证码',//验证码文案
- sendCode: true,
- appointment: true,
- subscribeData: {
- realname: "",//姓名
- mobile: "",//手机号
- captcha: "",//验证码
- province: "",//省份
- agent_code: "",//经销商编码
- agentDetail: "",//经销商详细信息
- parentOpenid: app.globalData.friendOpenid,//好友openid
- }
- },
- attached:function(){
- if (app.globalData.openid) {
- this.loadFun();
- } else {
- app.globalData.openidSuccessFuc = this.loadFun;
- }
- },
- /**
- * 组件的方法列表
- */
- methods: {
- closeXieyi: function () {
- this.triggerEvent('yuyue')
- },
- getRealname: function (e) {//获取用户输入的姓名
- this.data.subscribeData.realname = e.detail.value;
- },
- getMobile: function (e) {//获取用户输入的电话
- this.data.subscribeData.mobile = e.detail.value;
- },
- getCaptcha: function (e) {//获取用户输入的验证码
- this.data.subscribeData.captcha = e.detail.value;
- },
- loadFun: function () {
- if (app.globalData.myCenterData) {
- this.setData({
- provinceArr: app.globalData.myCenterData.provinceArr,
- storeArr: app.globalData.myCenterData.storeArr,
- provinceValue: app.globalData.myCenterData.provinceValue,
- storeValue: app.globalData.myCenterData.storeValue,
- })
- this.data.subscribeData.province = this.data.provinceArr[this.data.provinceValue].province;
- this.data.subscribeData.agentDetail = this.data.storeArr[this.data.storeValue].agent_detail;
- this.data.subscribeData.agent_code = this.data.storeArr[this.data.storeValue].agent_code;
- }
- if (app.globalData.userMobile) {
- this.data.subscribeData.mobile = app.globalData.userMobile;
- this.setData({
- phoneInputShow: true,
- subscribeData: this.data.subscribeData
- })
- }
- },
- getDistributorList: function (longitude, latitude) {//获取经销商列表
- app.wxRequest(app.globalData.urlRoot + "agent/getAgentList", { longitude: longitude, latitude: latitude }, res => {
- if (res.code == 200) {
- app.globalData.myCenterData = {};
- this.setData({
- provinceArr: res.data.list,
- storeArr: res.data.list[res.data.nearData.provinceIndex].children,
- provinceValue: res.data.nearData.provinceIndex,
- storeValue: res.data.nearData.cityIndex
- })
- this.data.subscribeData.province = this.data.provinceArr[this.data.provinceValue].province;
- this.data.subscribeData.agentDetail = this.data.storeArr[this.data.storeValue].agent_detail;
- this.data.subscribeData.agent_code = this.data.storeArr[this.data.storeValue].agent_code;
- app.globalData.myCenterData.provinceArr = res.data.list;
- app.globalData.myCenterData.storeArr = res.data.list[res.data.nearData.provinceIndex].children;
- app.globalData.myCenterData.provinceValue = res.data.nearData.provinceIndex;
- app.globalData.myCenterData.storeValue = res.data.nearData.cityIndex;
- } else {
- wx.showToast({
- title: res.msg,
- icon: "none"
- })
- }
- }, this);
- },
- provinceChane: function (e) {//选中省
- this.setData({
- provinceValue: e.detail.value,
- storeArr: this.data.provinceArr[e.detail.value].children,
- storeValue: 0
- })
- this.data.subscribeData.province = this.data.provinceArr[this.data.provinceValue].province;
- this.data.subscribeData.agentDetail = this.data.storeArr[this.data.storeValue].agent_detail;
- this.data.subscribeData.agent_code = this.data.storeArr[this.data.storeValue].agent_code;
- },
- storeChane: function (e) {//选中店铺
- this.setData({
- storeValue: e.detail.value,
- })
- this.data.subscribeData.agentDetail = this.data.storeArr[this.data.storeValue].agent_detail;
- this.data.subscribeData.agent_code = this.data.storeArr[this.data.storeValue].agent_code;
- },
- getCode: function (e) {//获取验证码
- if (!app.mobileVerify(this.data.subscribeData.mobile)) {
- if (this.data.subscribeData.mobile) {
- wx.showToast({
- title: '请输入正确的电话',
- icon: 'none'
- })
- } else {
- wx.showToast({
- title: '请输入电话',
- icon: 'none'
- })
- }
- return;
- }
- if (!this.data.sendCode) {
- return;
- }
- this.data.sendCode = false;
- app.wxRequest(app.globalData.urlRoot + "captcha/sendCaptcha", { mobile: this.data.subscribeData.mobile }, res => {
- if (res.code == 200) {
- this.countDown();
- wx.showToast({
- title: '验证码获取成功',
- icon: "none"
- })
- this.setData({
- verificationCode: 60
- })
- } else {
- this.data.sendCode = true;
- wx.showToast({
- title: res.msg,
- icon: "none"
- })
- }
- }, this)
- },
- countDown: function () {//倒计时
- setTimeout(() => {
- this.setData({
- verificationCode: this.data.verificationCode - 1
- })
- if (this.data.verificationCode > 0) {
- this.countDown();
- } else {
- this.setData({
- verificationCode: "获取验证码"
- })
- this.data.sendCode = true;
- }
- }, 1000);
- },
- subscribeFun: function (e) {//预约鉴赏
- if (!this.data.subscribeData.realname) {
- wx.showToast({
- title: '请输入姓名',
- icon: "none"
- })
- return;
- }
- if (!this.data.subscribeData.mobile) {
- wx.showToast({
- title: '请输入电话',
- icon: "none"
- })
- return;
- }
- if (!this.data.subscribeData.captcha) {
- wx.showToast({
- title: '请输入验证码',
- icon: "none"
- })
- return;
- }
- if (!this.data.isAgreement) {
- wx.showToast({
- title: '请同意协议',
- icon: 'none'
- })
- return;
- }
- if (!this.data.appointment) {
- return;
- }
- this.data.appointment = false;
- app.wxRequest(app.globalData.urlRoot + "userInfo/submitOrderInfo", this.data.subscribeData, res => {
- this.data.appointment = true;
- if (res.code == 200) {
- wx.showToast({
- title: '预约成功'
- })
- this.data.subscribeData.realname = "";
- this.data.subscribeData.captcha = "";
- this.setData({
- subscribeData: this.data.subscribeData,
- verificationCode: '获取验证码',
- })
- this.setData({
- siteSelect: false
- })
- // this.setData({
- // isRegister: true
- // })
- // app.globalData.isRegister = true;
- app.globalData.userMobile = this.data.subscribeData.mobile;
- } else {
- wx.showToast({
- title: res.msg,
- icon: "none"
- })
- }
- }, this, "POST")
- },
- getUserPhone: function (e) {//获取用户手机号
- this.setData({
- phoneInputShow: true
- })
- if (e.detail.errMsg == 'getPhoneNumber:ok') {
- app.getMobile(e.detail.encryptedData, e.detail.iv, res => {
- if (res.code == 200) {
- if (res.data && res.data.decodeData) {
- this.data.subscribeData.mobile = res.data.decodeData.phoneNumber;
- this.setData({
- subscribeData: this.data.subscribeData
- })
- }
- } else {
- wx.showToast({
- title: res.msg,
- icon: "none"
- })
- }
- }, this);
- }
- },
- agreementState: function () {//协议
- this.setData({
- isAgreement: !this.data.isAgreement
- })
- },
- lookMore: function () {
- wx.navigateTo({
- url: '/pages/moreType/moreType',
- })
- },
- showSite: function () {//显示地址选择框
- if (!this.data.siteSelect) {
- if (!app.globalData.myCenterData) {
- this.getUserLocation();//获取用户当前位置
- } else {
- this.setData({
- siteSelect: true
- })
- }
- }
- },
- getUserLocation: function (e) {
- wx.getLocation({
- type: 'gcj02', //wgs84
- success: (res) => {
- this.getDistributorList(res.longitude, res.latitude);
- },
- fail: (res) => {
- this.getDistributorList("", "");
- },
- complete: (res) => {
- this.setData({
- siteSelect: true,
- })
- }
- })
- },
- agreementControl: function () {
- this.setData({
- agreement: !this.data.agreement
- })
- }
- }
- })
|