From 5c189125604d7e58f562eb1e685621805003fb16 Mon Sep 17 00:00:00 2001 From: nige Date: Fri, 3 Feb 2023 17:12:52 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B4=BB=E5=8A=A8=E6=97=A5=E5=8E=86=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E7=BB=8F=E7=BA=AC=E5=BA=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/list/activitynew/index.js | 406 +++++++++++++++++--------------- pages/list/scene/index.js | 1 - 2 files changed, 211 insertions(+), 196 deletions(-) diff --git a/pages/list/activitynew/index.js b/pages/list/activitynew/index.js index a094d64..0ba8d01 100644 --- a/pages/list/activitynew/index.js +++ b/pages/list/activitynew/index.js @@ -8,25 +8,25 @@ Page({ * 页面的初始数据 */ data: { - isYL:false, - selectDay:new Date().getTime(), - days: ['日','一','二','三','四','五','六'], - types:[null,'show','exhibition','scene','movie','lecture','other'], - weeks:[], - pageNo:1, - sort:"", - list:[], - date:null, - total:1, - areas:['姑苏','吴江','苏州'], - area:0, - type:2, - movieType:1, - moreFlag:true, - lat:"", - lon:"", - keywords:"", - realKeywords:"" + isYL: false, + selectDay: new Date().getTime(), + days: ['日', '一', '二', '三', '四', '五', '六'], + types: [null, 'show', 'exhibition', 'scene', 'movie', 'lecture', 'other'], + weeks: [], + pageNo: 1, + sort: "", + list: [], + date: null, + total: 1, + areas: ['姑苏', '吴江', '苏州'], + area: 0, + type: 2, + movieType: 1, + moreFlag: true, + lat: "", + lon: "", + keywords: "", + realKeywords: "" }, /** @@ -34,317 +34,333 @@ Page({ */ onLoad: function (options) { let d = new Date(); - let month = d.getMonth() + 1,day = d.getDate(); - month = month>10?month:("0"+month); - day = day>10?day:("0"+day); + let month = d.getMonth() + 1, + day = d.getDate(); + month = month > 10 ? month : ("0" + month); + day = day > 10 ? day : ("0" + day); this.setData({ - selectDay:d.getTime(), - date:d.getFullYear()+"-"+month+"-"+day + selectDay: d.getTime(), + date: d.getFullYear() + "-" + month + "-" + day }) this.getWeekDay(); - commonApi._post("pbservice/Other/getSuzhouAreas").then(res=>{ + commonApi._post("pbservice/Other/getSuzhouAreas").then(res => { res.data.unshift({ - area_code:"", - area_name:"苏州市" + area_code: "", + area_name: "苏州市" }) - if(options.area_code){ - let index = res.data.findIndex(item=>item.area_code==options.area_code); + if (options.area_code) { + let index = res.data.findIndex(item => item.area_code == options.area_code); this.setData({ - area:index + area: index }) } this.setData({ - areas:res.data + areas: res.data + }) + let that = this + wx.getLocation({ + type: 'gcj02', + success: function (res) { + that.setData({ + lat: res.latitude, + lon: res.longitude + }) + that.getList() + }, + fail: function () { + that.getList() + } }) - this.getList() }) }, - changeType:function(e){ + changeType: function (e) { this.setData({ - type:e.currentTarget.dataset.type, - list:[], - total:1, - pageNo:1, - moreFlag:true, - keywords:"", - realKeywords:"" + type: e.currentTarget.dataset.type, + list: [], + total: 1, + pageNo: 1, + moreFlag: true, + keywords: "", + realKeywords: "" }) this.getList(); }, - changeArea:function(e){ + changeArea: function (e) { this.setData({ - area:e.detail.value, - list:[], - total:1, - pageNo:1, - moreFlag:true + area: e.detail.value, + list: [], + total: 1, + pageNo: 1, + moreFlag: true }) this.getList() }, // 获取当前选择日期的一周日期范围 - getWeekDay:function(){ - var myDate = this.data.selectDay, daySecond = 24 * 60 * 60 * 1000,reslist=[]; - for (let i = myDate - daySecond * 3; i <= myDate + daySecond * 3; i = i + daySecond){ - let day = new Date(i),putDate = day.getDate(); - putDate = putDate>=10?putDate:'0'+putDate + getWeekDay: function () { + var myDate = this.data.selectDay, + daySecond = 24 * 60 * 60 * 1000, + reslist = []; + for (let i = myDate - daySecond * 3; i <= myDate + daySecond * 3; i = i + daySecond) { + let day = new Date(i), + putDate = day.getDate(); + putDate = putDate >= 10 ? putDate : '0' + putDate let item = { - times:i, - day:this.data.days[day.getDay()], - date:putDate, - isSelect:i==myDate - }; + times: i, + day: this.data.days[day.getDay()], + date: putDate, + isSelect: i == myDate + }; reslist.push(item); } this.setData({ weeks: reslist }) }, - yulan:function(e){ + yulan: function (e) { let flag = e.currentTarget.dataset.flag; - if(flag==0 && this.data.isYL || flag==1 && this.data.isYL==false) return; + if (flag == 0 && this.data.isYL || flag == 1 && this.data.isYL == false) return; this.setData({ - isYL:flag==0, - list:[], - pageNo:1, - total:1, - moreFlag:true, - selectDay:null + isYL: flag == 0, + list: [], + pageNo: 1, + total: 1, + moreFlag: true, + selectDay: null }) this.getList() }, - getYL:function(){ + getYL: function () { let list = this.data.list; - commonApi._post("pbservice/Actcalendar/getActPrevList",{ - page_no:this.data.pageNo, - category:this.data.types[this.data.type], - keywords:this.data.realKeywords, - area_key:this.data.areas[this.data.area].area_code, - page_num:10 - }).then(res=>{ + commonApi._post("pbservice/Actcalendar/getActPrevList", { + page_no: this.data.pageNo, + category: this.data.types[this.data.type], + keywords: this.data.realKeywords, + area_key: this.data.areas[this.data.area].area_code, + lon:this.data.lon, + lat:this.data.lat, + page_num: 10 + }).then(res => { this.setData({ - total:res.data.total, - list:list.concat(res.data.rows), - pageNo:this.data.pageNo+1 + total: res.data.total, + list: list.concat(res.data.rows), + pageNo: this.data.pageNo + 1 }) }) }, // picker修改日期 - bindDateChange:function(e){ + bindDateChange: function (e) { this.setData({ selectDay: new Date(e.detail.value).getTime(), - list:[], - pageNo:1, - total:1, - date:e.detail.value, - moreFlag:true, - isYL:false + list: [], + pageNo: 1, + total: 1, + date: e.detail.value, + moreFlag: true, + isYL: false }) this.getWeekDay(); this.getList(); }, // 点击修改日期 - changeDate:function(e){ - let times = e.currentTarget.dataset.times,d = new Date(times); - let month = d.getMonth()+1,day = d.getDate(); - month = month>10?month:('0'+month); - day = day>10?day:('0'+day); + changeDate: function (e) { + let times = e.currentTarget.dataset.times, + d = new Date(times); + let month = d.getMonth() + 1, + day = d.getDate(); + month = month > 10 ? month : ('0' + month); + day = day > 10 ? day : ('0' + day); this.setData({ selectDay: times, - date:d.getFullYear()+"-"+month+"-"+day, - list:[], - pageNo:1, - total:1, - moreFlag:true, - isYL:false + date: d.getFullYear() + "-" + month + "-" + day, + list: [], + pageNo: 1, + total: 1, + moreFlag: true, + isYL: false }) this.getList(); }, - getList:function(){ + getList: function () { let list = this.data.list; - if(this.data.isYL){ + if (this.data.isYL) { this.getYL(); return; } - if(this.data.type==4){ + if (this.data.type == 4) { this.getMovie(); return; } - if(list.length>=this.data.total) return; - commonApi._post('pbservice/Actcalendar/getActList',{ - page_no:this.data.pageNo, - date:this.data.date, - category:this.data.types[this.data.type], - keywords:this.data.realKeywords, - area_key:this.data.areas[this.data.area].area_code, - page_num:10 - }).then(res=>{ + if (list.length >= this.data.total) return; + commonApi._post('pbservice/Actcalendar/getActList', { + page_no: this.data.pageNo, + date: this.data.date, + category: this.data.types[this.data.type], + keywords: this.data.realKeywords, + area_key: this.data.areas[this.data.area].area_code, + lat: this.data.lat, + lon: this.data.lon, + page_num: 10 + }).then(res => { let now = new Date().getTime(); - res.data.rows.map(item=>{ - if(item.end_date){ + res.data.rows.map(item => { + if (item.end_date) { let end_date = item.end_date; - if(end_date.indexOf(":")==-1){ - end_date = end_date+" 23:59:59"; + if (end_date.indexOf(":") == -1) { + end_date = end_date + " 23:59:59"; } - end_date = new Date(end_date.replace(/-/g,'/')).getTime(); - if(end_date{ + success: (res) => { this.setData({ - lat:res.latitude, - lon:res.longitude + lat: res.latitude, + lon: res.longitude }) - data.lat =res.latitude; - data.lon =res.longitude; - commonApi._post('Cinema/'+service[this.data.movieType],data).then(res=>{ - res.data.map(item=>{ - if(item.distance || item.distance==0){ - if(item.distance>=1000){ - item.distance = (item.distance/1000).toFixed(2)+'km'; - } - else { - item.distance = (item.distance).toFixed(2)+'m'; + data.lat = res.latitude; + data.lon = res.longitude; + commonApi._post('Cinema/' + service[this.data.movieType], data).then(res => { + res.data.map(item => { + if (item.distance || item.distance == 0) { + if (item.distance >= 1000) { + item.distance = (item.distance / 1000).toFixed(2) + 'km'; + } else { + item.distance = (item.distance).toFixed(2) + 'm'; } } }) this.setData({ - list:this.data.list.concat(res.data), - pageNo:this.data.pageNo+1, - moreFlag:res.data.length<10?false:true + list: this.data.list.concat(res.data), + pageNo: this.data.pageNo + 1, + moreFlag: res.data.length < 10 ? false : true }) }) }, - fail:()=>{ + fail: () => { wx.showToast({ title: '请打开位置授权', - icon:'none' + icon: 'none' }) - commonApi._post('Cinema/'+service[this.data.movieType],data).then(res=>{ + commonApi._post('Cinema/' + service[this.data.movieType], data).then(res => { this.setData({ - list:this.data.list.concat(res.data), - pageNo:this.data.pageNo+1, - moreFlag:res.data.length<10?false:true + list: this.data.list.concat(res.data), + pageNo: this.data.pageNo + 1, + moreFlag: res.data.length < 10 ? false : true }) }) } }) - } - else { - commonApi._post('Cinema/'+service[this.data.movieType],data).then(res=>{ - res.data.map(item=>{ - if(item.distance || item.distance==0){ - if(item.distance>=1000){ - item.distance = (item.distance/1000).toFixed(2)+'km'; - } - else { - item.distance = (item.distance).toFixed(2)+'m'; + } else { + commonApi._post('Cinema/' + service[this.data.movieType], data).then(res => { + res.data.map(item => { + if (item.distance || item.distance == 0) { + if (item.distance >= 1000) { + item.distance = (item.distance / 1000).toFixed(2) + 'km'; + } else { + item.distance = (item.distance).toFixed(2) + 'm'; } } }) this.setData({ - list:this.data.list.concat(res.data), - pageNo:this.data.pageNo+1, - moreFlag:res.data.length<10?false:true + list: this.data.list.concat(res.data), + pageNo: this.data.pageNo + 1, + moreFlag: res.data.length < 10 ? false : true }) }) } }, - setSort:function(e){ + setSort: function (e) { let sort = e.currentTarget.dataset.sort; - if(this.data.sort==sort) sort=""; + if (this.data.sort == sort) sort = ""; this.setData({ - sort:sort, - list:[], - total:1, - pageNo:1, - moreFlag:true + sort: sort, + list: [], + total: 1, + pageNo: 1, + moreFlag: true }) this.getList(); }, - changeMovieType:function(e){ + changeMovieType: function (e) { let type = e.currentTarget.dataset.type; this.setData({ - movieType:type, - list:[], - pageNo:1, - total:1, - moreFlag:true + movieType: type, + list: [], + pageNo: 1, + total: 1, + moreFlag: true }) this.getList() }, - gotoDetail:function(e){ + gotoDetail: function (e) { let item = e.currentTarget.dataset.item; - if(this.data.type==4 && this.data.movieType!=2){ + if (this.data.type == 4 && this.data.movieType != 2) { wx.navigateTo({ - url: '/pages/list/movieticket/list/info/index?id='+item.third_id + url: '/pages/list/movieticket/list/info/index?id=' + item.third_id }) - } - else if(this.data.type==4){ + } else if (this.data.type == 4) { wx.navigateTo({ - url: '/pages/list/movieticket/list/cinema/index?id='+item.third_id + url: '/pages/list/movieticket/list/cinema/index?id=' + item.third_id }) - } - else { + } else { wx.navigateTo({ - url: '/pages/info/activityInfo/index?id='+item.id, + url: '/pages/info/activityInfo/index?id=' + item.id, }) } }, - changeKeywords:function(e){ + changeKeywords: function (e) { this.setData({ - keywords:e.detail.value + keywords: e.detail.value }) }, - search:function(){ + search: function () { this.setData({ - realKeywords:this.data.keywords, - list:[], - pageNo:1, - total:1, - moreFlag:true + realKeywords: this.data.keywords, + list: [], + pageNo: 1, + total: 1, + moreFlag: true }) this.getList(); }, /** * 生命周期函数--监听页面初次渲染完成 */ - onReady: function () { - }, + onReady: function () {}, /** * 生命周期函数--监听页面显示 diff --git a/pages/list/scene/index.js b/pages/list/scene/index.js index eb9e183..3c2655c 100644 --- a/pages/list/scene/index.js +++ b/pages/list/scene/index.js @@ -39,7 +39,6 @@ Page({ that.getList() } }) - }, search:function(e){ this.setData(e.detail);