//index.js //获取应用实例 const app = getApp() Page({ data: { imgUrl: app.globalData.urlStatic,//图片路径 phoneInputShow:false,//是否显示电话输入框 siteSelect: false,//是否显示位置选择框 provinceArr:[],//省 provinceValue: 0,//选中的省下标 storeArr:[],//店铺 storeValue:0,//选中的店铺下标 swiperCurrent:0,//swiper选中的元素下标 verificationCode: '获取验证码',//验证码文案 sendCode: true, appointment:true, subscribeData: { realname:"",//姓名 mobile:"",//手机号 captcha:"",//验证码 province:"",//省份 agent_code: "",//经销商编码 agentDetail: "",//经销商详细信息 parentOpenid: app.globalData.scene,//好友openid }, startAdvertisingUrl:'',//开屏广告路径 isStartAdvertising: 1,//开屏广告透明度 isStartAdvertisingShow: true,//是否显示开屏广告 // isRegister:false,//查询是否已注册 bannerList:[],//banner列表 videoList:[],//视频列表 videoVideoControls:false,//是否显示视频控件 mainShow:false, isOnce:false, userData:null, kvurl: null,//顶部大图 kvurlH:0, showAppointment:false, placing:false, buyState:false, isStartAdvertisingFunState:false, playBtnDeg:0, videoShow:false, swiperGroup:{ one:{ nums:4, current:0 }, two: { nums: 4, current: 0 }, three: { nums: 7, current: 0 }, four: { nums: 2, current: 0 } } }, onLoad: function (options) { if (app.globalData.isFirstLogin) { console.log("第一次进入"); wx.reportAnalytics('event_source_launch', { source: options.source ? options.source :0 }); } app.globalData.nowPage = 1; if (app.globalData.isFirstLogin) { this.getStartAdvertising(); }else{ if (app.globalData.openid) { this.loadFun(); } else { app.globalData.openidSuccessFuc = this.loadFun; } } }, loadFun: function () { if (!app.globalData.addPageEnterState.index) { app.addPageEnter(1); app.globalData.addPageEnterState.index = true; } this.setData({ kvurl: app.globalData.kvurl, kvurlH: app.globalData.kvurlH }) if (app.globalData.userInfoData) { this.setData({ userData: app.globalData.userInfoData }) } if (app.globalData.userMobile) { this.data.subscribeData.mobile = app.globalData.userMobile; this.setData({ phoneInputShow: true, subscribeData: this.data.subscribeData }) } if (app.globalData.isFirstLogin) { this.getHomeVideo();//获取视频 } else { if (app.globalData.indexData.videoList) { this.setData({ videoList: app.globalData.indexData.videoList }) } else { this.getHomeVideo();//获取视频 } } this.setData({ mainShow: true, isStartAdvertisingShow: this.data.isOnce ? true : app.globalData.isFirstLogin, // isRegister: app.globalData.isRegister }) }, onShow: function () { if (app.globalData.getBuyState) { this.getBuyStates(); } else { app.globalData.buyStateSuccessFuc = this.getBuyStates; } this.setData({ siteSelect: false }) this.data.subscribeData.parentOpenid = app.globalData.scene; }, getBuyStates:function(){ this.setData({ buyState: app.globalData.getBuyState.success }) }, 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; }, getUserPhone:function(e){//获取用户手机号 this.setData({ phoneInputShow: true }) // if (!app.globalData.indexData.provinceArr) { // this.getUserLocation();//获取用户当前位置 // } 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); } }, getUserLocation:function(e){ wx.getLocation({ type: 'gcj02', // success:(res)=>{ // console.log(res); this.getDistributorList(res.longitude, res.latitude); }, fail:(res)=>{ this.getDistributorList("", ""); }, complete:(res)=>{ this.setData({ siteSelect: true, }) } }) }, prevImg(){//上一张图片 if (this.data.swiperCurrent>0) { this.setData({ swiperCurrent: this.data.swiperCurrent-=1, }) } }, nextImg() {//下一张图片 if (this.data.swiperCurrent < this.data.bannerList.length-1) { this.setData({ swiperCurrent: this.data.swiperCurrent+=1, }) } }, // swiperChange(e){//通过鼠标滑动改变swiper时 // this.setData({ // swiperCurrent: e.detail.current, // }) // }, getDistributorList: function (longitude, latitude){//获取经销商列表 app.wxRequest(app.globalData.urlRoot + "agent/getAgentList", { longitude: longitude, latitude: latitude}, res => { if (res.code == 200) { 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.indexData.provinceArr = res.data.list; app.globalData.indexData.storeArr = res.data.list[res.data.nearData.provinceIndex].children; app.globalData.indexData.provinceValue = res.data.nearData.provinceIndex; app.globalData.indexData.storeValue = res.data.nearData.cityIndex; } else { wx.showToast({ title: res.msg, icon: "none" }) } }, this); }, 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); }, 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; }, 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.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; // wx.redirectTo({ // url: "../myCenter/myCenter?sourcePage='home'" // }) } else { wx.showToast({ title: res.msg, icon: "none" }) } }, this, "POST") }, getStartAdvertising: function () {//获取开屏广告 app.wxRequest(app.globalData.urlRoot + "home/getStartAdvertising", {}, res => { this.data.isOnce = true; if(res.code==200){ this.setData({ startAdvertisingUrl: res.data.picurl, mainShow:true, kvurl: res.data.kvurl }) app.globalData.kvurl = res.data.kvurl; app.globalData.isFirstLogin = false; setTimeout(() => { this.isStartAdvertisingFun(); }, 1000); } if (app.globalData.openid) { this.loadFun(); } else { app.globalData.openidSuccessFuc = this.loadFun; } },this); }, isStartAdvertisingFun:function(){ if (this.data.isStartAdvertisingFunState){ return; } this.data.isStartAdvertisingFunState = true; setTimeout(() => { const query = wx.createSelectorQuery() query.select('.kvurlImg').boundingClientRect() query.selectViewport().scrollOffset() query.exec((res) => { if (res.data && res.data[0]) { this.setData({ kvurlH: res.data[0].height }) app.globalData.kvurlH = res.data[0].height; } }) }, 200) this.setData({ isStartAdvertising: 0 }) setTimeout(() => { this.setData({ isStartAdvertisingShow: false, }) }, 1000); }, getHomeBanner: function () {//获取banner app.wxRequest(app.globalData.urlRoot + "home/getHomeBanner", {}, res => { if (res.code == 200) { this.setData({ bannerList:res.data }) app.globalData.indexData.bannerList = res.data; } }, this); }, getHomeVideo: function () {//获取视频 app.wxRequest(app.globalData.urlRoot + "home/getHomeVideo", {}, res => { if (res.code == 200) { this.setData({ videoList:res.data[0] }) app.globalData.indexData.videoList = res.data[0]; } }, this); }, hideVideoControls: function () {//显示视频控件 wx.createVideoContext("video").play(); this.setData({ videoVideoControls:true }) }, getOrderInfo: function () {//查询是否已注册 app.wxRequest(app.globalData.urlRoot + "userInfo/getOrderInfo", {}, res => { if (res.code == 200) { if (res.data) { // this.setData({ // isRegister: true // }) // app.globalData.isRegister = true; app.globalData.userMobile = res.data.mobile; }else{ if (app.globalData.userMobile) { this.data.subscribeData.mobile = app.globalData.userMobile; this.setData({ phoneInputShow:true, subscribeData: this.data.subscribeData }) } } } else { console.log(res.msg) } }, this); }, /** * 用户点击右上角分享 */ onShareAppMessage: function () { return app.sharePack(); }, getUserWxMsg:function(e){ if (e.detail.errMsg == "getUserInfo:ok") { this.setData({ userData: e.detail.userInfo }) app.submitUserMsg(e.detail.userInfo.avatarUrl, e.detail.userInfo.nickName); } }, showSite: function () {//显示地址选择框 if (!this.data.siteSelect) { if (!app.globalData.indexData.provinceArr) { this.getUserLocation();//获取用户当前位置 }else{ this.setData({ siteSelect:true }) } } }, lookMore: function () { wx.navigateTo({ url: '/pages/moreType/moreType', }) }, vrLookCar: function () { wx.navigateTo({ url: '/pages/vrLookCar/vrLookCar', }) }, lookConfigure: function () { wx.navigateTo({ url: '/pages/configure/configure', }) }, openAppointment:function(){//预约 this.setData({ showAppointment: !this.data.showAppointment }) }, placingControl:function(){ if (app.globalData.getBuyState.success != this.data.buyState){ this.setData({ buyState: app.globalData.getBuyState.success }) } this.setData({ placing: !this.data.placing }) }, swiperChange:function(e){ var num = e.currentTarget.dataset.num; if(num==1){ this.data.swiperGroup.one.current = e.detail.current; } else if (num == 2) { this.data.swiperGroup.two.current = e.detail.current; } else if (num == 3) { this.data.swiperGroup.three.current = e.detail.current; } else if (num == 4) { this.data.swiperGroup.four.current = e.detail.current; } this.setData({ swiperGroup: this.data.swiperGroup }) }, leftSlide:function(e){ var num = e.currentTarget.dataset.num; if (num == 1 && this.data.swiperGroup.one.current>0) { this.data.swiperGroup.one.current-=1; } else if (num == 2 && this.data.swiperGroup.two.current > 0) { this.data.swiperGroup.two.current -= 1; } else if (num == 3 && this.data.swiperGroup.three.current > 0) { this.data.swiperGroup.three.current -= 1; } else if (num == 4 && this.data.swiperGroup.four.current > 0) { this.data.swiperGroup.four.current -= 1; } this.setData({ swiperGroup: this.data.swiperGroup }) }, rightSlide: function (e) { var num = e.currentTarget.dataset.num; if (num == 1 && this.data.swiperGroup.one.current < this.data.swiperGroup.one.nums-1) { this.data.swiperGroup.one.current += 1; } else if (num == 2 && this.data.swiperGroup.two.current < this.data.swiperGroup.two.nums - 1) { this.data.swiperGroup.two.current += 1; } else if (num == 3 && this.data.swiperGroup.three.current < this.data.swiperGroup.three.nums - 1) { this.data.swiperGroup.three.current += 1; } else if (num == 4 && this.data.swiperGroup.four.current < this.data.swiperGroup.four.nums - 1) { this.data.swiperGroup.four.current += 1; } this.setData({ swiperGroup: this.data.swiperGroup }) }, playVideo:function(){ var animation = wx.createAnimation({ duration: 300 }); animation.rotate(360).step(); this.setData({ playBtnDeg: animation.export() }) setTimeout(()=>{ this.setData({ videoShow:true }) var videoContext = wx.createVideoContext("myVideo"); videoContext.requestFullScreen({ direction:0}); videoContext.play(); animation.rotate(0).step(); this.setData({ playBtnDeg: animation.export() }) },300); }, closeFull:function(e){ if (!e.detail.fullScreen) { this.setData({ videoShow: false }) } } })