From 7028fde29658cfaa723678e086faa776c4c7ad3b Mon Sep 17 00:00:00 2001 From: xiaozhiyong Date: Thu, 31 Aug 2023 09:29:38 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/addressSelector.vue | 87 ++++++++++--------- .../newRoutePlanning/newRoutePlanning.vue | 13 ++- .../pages/newRoutePlanning/siteList.vue | 10 +-- .../pages/stationDetail/stationDetail.vue | 25 ++---- 4 files changed, 62 insertions(+), 73 deletions(-) diff --git a/BagStation/pages/newRoutePlanning/components/addressSelector.vue b/BagStation/pages/newRoutePlanning/components/addressSelector.vue index 85b8a41..e312b8c 100644 --- a/BagStation/pages/newRoutePlanning/components/addressSelector.vue +++ b/BagStation/pages/newRoutePlanning/components/addressSelector.vue @@ -21,7 +21,10 @@ {{ item.value?item.value.split('/')[0]:item.title}} - {{items.lable}} + {{items.lable}} @@ -59,7 +62,7 @@ isShow: { conditions: false }, - header:null, + header: null, menuList: [{ title: '距离', value: '5KM/5', @@ -74,7 +77,7 @@ }, { lable: '30KM', value: '30' - },{ + }, { lable: '50KM', value: '50' }] @@ -84,19 +87,18 @@ value: '全部/2', field: 'highSpeed', SublistOpen: false, - Sublist: [ - { + Sublist: [{ lable: '全部', value: '2' }, { - lable: '高速', - value: '1' - }, { - lable: '非高速', - value: '0' - } - + lable: '高速', + value: '1' + }, { + lable: '非高速', + value: '0' + } + ] } ] @@ -107,67 +109,70 @@ console.log(this.styles); const query = uni.createSelectorQuery().in(this); query.select('.header').boundingClientRect(data => { - console.log("得到布局位置信息" + JSON.stringify(data)); - this.header = data - console.log("节点离页面顶部的距离为" + data.top); + console.log("得到布局位置信息" + JSON.stringify(data)); + this.header = data + console.log("节点离页面顶部的距离为" + data.top); }).exec(); }, created() { this.getConditionMenu(); - + }, methods: { - getElement(){ + getElement() { return this.styles.top + this.styles.height + 10 + this.header.height }, - filterItemSele(index,indexs){ - this.menuList[index].value = `${this.menuList[index].Sublist[indexs].lable}/${this.menuList[index].Sublist[indexs].value}`; - this.menuList[index].SublistOpen=false; - console.log(this.datassFn(),'/-/-/'); - if(index==2){ - this.$emit('mapEventListeners','localScreen',this.datassFn()) - }else{ - this.$emit('mapEventListeners','apiScreen',this.datassFn()) + filterItemSele(index, indexs) { + this.menuList[index].value = + `${this.menuList[index].Sublist[indexs].lable}/${this.menuList[index].Sublist[indexs].value}`; + this.menuList[index].SublistOpen = false; + console.log(this.datassFn(), '/-/-/'); + if (index == 2) { + this.$emit('mapEventListeners', 'localScreen', this.datassFn()) + } else { + this.$emit('mapEventListeners', 'apiScreen', this.datassFn()) } }, getConditionMenu() { oilSiteApi.getConditionMenu().then(res => { if (res.code !== 20000) return - Object.keys(res.data).forEach((item,index)=>{ + Object.keys(res.data).forEach((item, index) => { let data = { - title: index==0?'全渠道':'油品', - value: index==0?'全渠道/':'0#/0#', - field: index==0?'siteChannel':'oilProductCode', + title: index == 0 ? '全渠道' : '油品', + value: index == 0 ? '全渠道/' : '0#/0#', + field: index == 0 ? 'siteChannel' : 'oilProductCode', SublistOpen: false, Sublist: [] } - res.data[item].forEach(items=>{ + res.data[item].forEach(items => { data.Sublist.push({ - lable:index==0?items.name:items.id, - value:items.id + lable: index == 0 ? items.name : items.id, + value: items.id }) }) this.menuList.push(data) }) this.menuList[2].Sublist.unshift({ - lable:'全渠道', - value:'' + lable: '全渠道', + value: '' }); // [this.menuList[1],this.menuList[3]]=[this.menuList[3],this.menuList[1]] - [this.menuList[0],this.menuList[1],this.menuList[2],this.menuList[3]] = [this.menuList[0],this.menuList[3],this.menuList[1],this.menuList[2]]; + [this.menuList[0], this.menuList[1], this.menuList[2], this.menuList[3]] = [this.menuList[0], + this.menuList[3], this.menuList[1], this.menuList[2] + ]; console.log(this.menuList, '***') }) }, - datassFn(){ + datassFn() { let data = {} - this.menuList.forEach((item,index)=>{ - data[item.field] = item.value?item.value.split('/')[1]:'' + this.menuList.forEach((item, index) => { + data[item.field] = item.value ? item.value.split('/')[1] : '' }) return data }, seleFilter(e, w) { - this.menuList.forEach((item,index)=>{ - if(w==index) return + this.menuList.forEach((item, index) => { + if (w == index) return item.SublistOpen = false }) e.SublistOpen = !e.SublistOpen; @@ -212,7 +217,7 @@ padding: 24rpx 0; text-align: center; position: relative; - /* border-bottom-left-radius: 10px; + /* border-bottom-left-radius: 10px; border-bottom-right-radius: 10px; */ } diff --git a/BagStation/pages/newRoutePlanning/newRoutePlanning.vue b/BagStation/pages/newRoutePlanning/newRoutePlanning.vue index 5b0849f..fd27605 100644 --- a/BagStation/pages/newRoutePlanning/newRoutePlanning.vue +++ b/BagStation/pages/newRoutePlanning/newRoutePlanning.vue @@ -96,7 +96,7 @@ } = item setTimeout(() => { this.newMapMoveToLocation(longitude, latitude, 'reset') - },500) + }, 500) }, bindregionchange(e) { console.log(e, '***********') @@ -211,6 +211,7 @@ } = this.$refs.addressSelector.datassFn(); let markerList = await this.mapUpdateMarkers(this.polyline[0].points, oilProductCode, juLi, siteChannel); + //处理油站站点数据并显示 this.spareMarkers = this.locationProcessing(markerList); let markers = JSON.parse(JSON.stringify(this.spareMarkers)); @@ -369,7 +370,6 @@ latitude: this.coordinate.latitude, longitude: this.coordinate.longitude } - console.log(JSON.stringify(data)) let taht = this; return new Promise(function(re, rj) { oilSiteApi.getSiteByGeoHashNew(data).then(markerList => { @@ -456,7 +456,6 @@ }, //移动当前中心点 参数:经纬度 newMapMoveToLocation(longitude, latitude, type) { - console.log('newMapMoveToLocation') let that = this this.mapContext.moveToLocation({ longitude: longitude, @@ -477,9 +476,6 @@ } }) } - }, - fail(ee) { - console.log('ee',ee) } }) }, @@ -510,10 +506,11 @@ index) => { return Number(w.highSpeed) == 2 ? item : item.highSpeedMark == Number(w.highSpeed) }) : e; - + let copy = JSON.parse(JSON.stringify(highSpeedMarkers)) - + let sort = that.priceSort(copy); + that.selePrice = sort.length !== 0 ? { middlePrice: sort[Number.isInteger((sort.length / 2)) ? (sort.length / 2) : ((sort .length + 1) / 2) - 1].enterprisePrice, diff --git a/BagStation/pages/newRoutePlanning/siteList.vue b/BagStation/pages/newRoutePlanning/siteList.vue index 855fb9f..d0e77ba 100644 --- a/BagStation/pages/newRoutePlanning/siteList.vue +++ b/BagStation/pages/newRoutePlanning/siteList.vue @@ -2,7 +2,7 @@ - + @@ -10,7 +10,7 @@ {{item.address || ''}} {{item.juli | adjust}}km - 0# ¥7.94 + {{item.oilProductCode}} ¥{{item.enterprisePrice | adjust}} 查看位置 查看详情 @@ -41,7 +41,7 @@ filters: { adjust(val) { if (!val) return '--' - val = +val/1000 + val = +val return val.toFixed(2) } }, @@ -56,9 +56,7 @@ }, jump(item) { let obj = { - siteId: item.id, - longitude: item.longitude, - latitude: item.latitude, + siteId: item.siteId, } let itemS = JSON.stringify(obj) // return diff --git a/BagStation/pages/stationDetail/stationDetail.vue b/BagStation/pages/stationDetail/stationDetail.vue index 88c75bd..518dfa6 100644 --- a/BagStation/pages/stationDetail/stationDetail.vue +++ b/BagStation/pages/stationDetail/stationDetail.vue @@ -218,7 +218,6 @@ this.innerAudioContext?.stop() }, onLoad(option) { - // let siteId = uni.getStorageSync('siteId') || if(option.siteId && !option.customerJump) { this.isShow = false this.siteId = option.siteId @@ -226,26 +225,13 @@ uni.setStorageSync('siteId',option.siteId) return } - // console.log(option) - // if(option.channerCode == 'TY'){ - // var oilItem = uni.getStorageSync('OtherSiteInfo') - // // console.log(oilItem) - // }else{ - // let obj = option.item, - // var oilItem = JSON.parse(option.item) - // } + let oilItem = option.channerCode == 'TY' ? uni.getStorageSync('OtherSiteInfo') : option.item ? JSON.parse(option.item) : {siteId:option.siteId} - // if(oilItem.secondChannelCode === 'SQ'){ - // oilItem.listTag = oilItem.sqSiteBelong === 'JKJY' ? '集卡加油' :'上汽联名卡' - // } + uni.setStorageSync('oilItem',oilItem) this.getSiteInfo(oilItem.siteId) this.siteId = oilItem.siteId - // if(option.item.ureaNumber!='0'){ - // this.ureaNum = true - // }else{ - // this.ureaNum = false - // } + if(oilItem.listTag == '万金油'){ this.audioUrl = 'https://publicxingyou.oss-cn-hangzhou.aliyuncs.com/mp-oil/wanjinyou.mp3' }else if(oilItem.listTag == '星油'){ @@ -338,7 +324,6 @@ areaPriceList.push(item.guidePrice) }) this.areaPrice = Math.min(...areaPriceList) - console.log(Math.min(...areaPriceList),areaPriceList,'对对对对对对多多多多') } }else if(res.code == 40000){ uni.showModal({ @@ -347,6 +332,10 @@ showCancel:false, success: function (res) { if (res.confirm) { + if(getCurrentPages().length > 1) { + uni.navigateBack() + return + } uni.switchTab({ url:'../../../pages/tabbar/home/home' })