update
@ -67,9 +67,9 @@
|
|||||||
"postcss" : true
|
"postcss" : true
|
||||||
},
|
},
|
||||||
"plugins": {
|
"plugins": {
|
||||||
"chooseLocation": {
|
"routePlan": {
|
||||||
"version": "1.0.10",
|
"version": "1.0.18",
|
||||||
"provider": "wx76a9a06e5b4e693e"
|
"provider": "wx50b5593e81dd937a"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"usingComponents" : true,
|
"usingComponents" : true,
|
||||||
|
|||||||
@ -124,6 +124,12 @@
|
|||||||
"style": {
|
"style": {
|
||||||
"navigationBarTitleText": ""
|
"navigationBarTitleText": ""
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "planDetail",
|
||||||
|
"style": {
|
||||||
|
"navigationBarTitleText": ""
|
||||||
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
|||||||
@ -3,13 +3,13 @@
|
|||||||
<div>
|
<div>
|
||||||
<div v-if="isShow">
|
<div v-if="isShow">
|
||||||
<div class='pt20 pb20'>
|
<div class='pt20 pb20'>
|
||||||
|
|
||||||
<view class="main-card boxshow">
|
<view class="main-card boxshow">
|
||||||
<view class="card-title ">
|
<view class="card-title ">
|
||||||
{{ baseData.LEAVE_PERSON+"【"+baseData.DEPARTMENT_NAME+"】" }}
|
{{ baseData.LEAVE_PERSON+"【"+baseData.DEPARTMENT_NAME+"】" }}
|
||||||
</view>
|
</view>
|
||||||
<view class="line-block between-circle"></view>
|
<view class="line-block between-circle"></view>
|
||||||
<image src="../../static/images/leave/spwq.png" mode="aspectFit" class="spwc-ico" v-if="baseData.FINANCEPROINST_NEXTID==9000"></image>
|
<image src="https://eshangtech.com/ShopICO/ahyd-BID/leave/spwq.png" mode="aspectFit" class="spwc-ico" v-if="baseData.FINANCEPROINST_NEXTID==9000"></image>
|
||||||
<div class="base-body card-content ">
|
<div class="base-body card-content ">
|
||||||
<view style="text-align: center; padding-bottom: 12upx;">
|
<view style="text-align: center; padding-bottom: 12upx;">
|
||||||
<view class="leave-day">{{baseData.DURATION_DAYS}}<text style="font-size: 22upx;">天</text></view>
|
<view class="leave-day">{{baseData.DURATION_DAYS}}<text style="font-size: 22upx;">天</text></view>
|
||||||
@ -32,20 +32,20 @@
|
|||||||
<div class="card-bottom ">
|
<div class="card-bottom ">
|
||||||
{{baseData.LEAVE_REASON}}
|
{{baseData.LEAVE_REASON}}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<!-- v-if="isResolve" -->
|
<!-- v-if="isResolve" -->
|
||||||
<view class="button-box" v-if="baseData.NOWSTAFF_ID==users.UserId" >
|
<view class="button-box" v-if="baseData.NOWSTAFF_ID==users.UserId" >
|
||||||
|
|
||||||
<span @tap="showPop(2000)"><image src="../../static/images/sh-btn.png" mode="aspectFit"></image> 审核 </span>
|
<span @tap="showPop(2000)"><image src="../../static/images/sh-btn.png" mode="aspectFit"></image> 审核 </span>
|
||||||
<span @tap="showPop(3000)" v-if="baseData.CAN_REJECT===1"><image src="../../static/images/bh-btn.png" mode="aspectFit"></image> 驳回</span>
|
<span @tap="showPop(3000)" v-if="baseData.CAN_REJECT===1"><image src="../../static/images/bh-btn.png" mode="aspectFit"></image> 驳回</span>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<view class="base-info" v-if="baseData.RejectList.length>0">
|
<view class="base-info" v-if="baseData.RejectList.length>0">
|
||||||
<div class="uni-list-cell uni-collapse">
|
<div class="uni-list-cell uni-collapse">
|
||||||
<div class="cat-box uni-list-cell-navigate">
|
<div class="cat-box uni-list-cell-navigate">
|
||||||
@ -70,7 +70,7 @@
|
|||||||
<block v-else>
|
<block v-else>
|
||||||
<noFound v-if="loadingType === 2" :foundType="foundType" />
|
<noFound v-if="loadingType === 2" :foundType="foundType" />
|
||||||
</block>
|
</block>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@ -79,21 +79,21 @@
|
|||||||
import processUnit from '@/components/auditingProcess/item.vue'
|
import processUnit from '@/components/auditingProcess/item.vue'
|
||||||
import filesUnit from '@/components/filesComponent/fileUnit.vue'
|
import filesUnit from '@/components/filesComponent/fileUnit.vue'
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
|
|
||||||
return {
|
return {
|
||||||
baseData: {
|
baseData: {
|
||||||
|
|
||||||
},
|
},
|
||||||
isShow: false,
|
isShow: false,
|
||||||
loadingType: 1,
|
loadingType: 1,
|
||||||
foundType:0,
|
foundType:0,
|
||||||
|
|
||||||
cardShow:true,
|
cardShow:true,
|
||||||
isSign: false,
|
isSign: false,
|
||||||
isResolve: false,
|
isResolve: false,
|
||||||
signInfo: {
|
signInfo: {
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -103,7 +103,7 @@
|
|||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
...mapGetters({'users':'getUser'}),
|
...mapGetters({'users':'getUser'}),
|
||||||
|
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
getDays (value) {
|
getDays (value) {
|
||||||
@ -117,29 +117,29 @@
|
|||||||
_this.$request.$get('GetStaffLeaveDetail',{
|
_this.$request.$get('GetStaffLeaveDetail',{
|
||||||
FinanceProinstId: id
|
FinanceProinstId: id
|
||||||
}).then(rs => {
|
}).then(rs => {
|
||||||
|
|
||||||
if(!rs.ResultCode ||rs.ResultCode!='100') {
|
if(!rs.ResultCode ||rs.ResultCode!='100') {
|
||||||
_this.isShow = false
|
_this.isShow = false
|
||||||
|
|
||||||
}else{
|
}else{
|
||||||
_this.isShow = true
|
_this.isShow = true
|
||||||
}
|
}
|
||||||
uni.hideLoading()
|
uni.hideLoading()
|
||||||
|
|
||||||
_this.baseData = rs.Data
|
_this.baseData = rs.Data
|
||||||
|
|
||||||
if(_this.baseData.NOWSTAFF_ID==_this.users.UserId) { // 判断是否是当前审核人
|
if(_this.baseData.NOWSTAFF_ID==_this.users.UserId) { // 判断是否是当前审核人
|
||||||
_this.isResolve= true
|
_this.isResolve= true
|
||||||
}
|
}
|
||||||
_this.$forceUpdate()
|
_this.$forceUpdate()
|
||||||
|
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
showPop(type) {
|
showPop(type) {
|
||||||
let _this = this
|
let _this = this
|
||||||
let url = ''
|
let url = ''
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case 4000:
|
case 4000:
|
||||||
url = '/pages/auditingPop/transfer?businessType=7000&PROINST_ID='+_this.baseData.FINANCEPROINST_ID+'&NOWACTINST_ID='+_this.baseData.NOWACTDEF_IDS
|
url = '/pages/auditingPop/transfer?businessType=7000&PROINST_ID='+_this.baseData.FINANCEPROINST_ID+'&NOWACTINST_ID='+_this.baseData.NOWACTDEF_IDS
|
||||||
break;
|
break;
|
||||||
case 2000:
|
case 2000:
|
||||||
@ -156,12 +156,12 @@
|
|||||||
uni.showLoading({
|
uni.showLoading({
|
||||||
title:'正在加载'
|
title:'正在加载'
|
||||||
})
|
})
|
||||||
|
|
||||||
this.getDetail(option.id)
|
this.getDetail(option.id)
|
||||||
|
|
||||||
let _this = this
|
let _this = this
|
||||||
uni.$on('7000', function (data){
|
uni.$on('7000', function (data){
|
||||||
|
|
||||||
if(data) {
|
if(data) {
|
||||||
uni.showLoading({
|
uni.showLoading({
|
||||||
title:'正在加载'
|
title:'正在加载'
|
||||||
@ -171,15 +171,15 @@
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
onShow() {
|
onShow() {
|
||||||
|
|
||||||
},
|
},
|
||||||
onUnload() {
|
onUnload() {
|
||||||
this.$util.addUserBehavior()
|
this.$util.addUserBehavior()
|
||||||
uni.$off('7000');
|
uni.$off('7000');
|
||||||
},
|
},
|
||||||
onHide() {
|
onHide() {
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
@ -243,7 +243,7 @@
|
|||||||
right: -35upx;
|
right: -35upx;
|
||||||
z-index: 1;
|
z-index: 1;
|
||||||
top: -12upx;
|
top: -12upx;
|
||||||
|
|
||||||
}
|
}
|
||||||
.card-content {
|
.card-content {
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
@ -264,11 +264,11 @@
|
|||||||
.leave-value {
|
.leave-value {
|
||||||
font-size: 22upx;
|
font-size: 22upx;
|
||||||
background-color: #EDB86C;
|
background-color: #EDB86C;
|
||||||
|
|
||||||
height: 40upx;
|
height: 40upx;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
border-radius: 20upx;
|
border-radius: 20upx;
|
||||||
padding: 0 16upx;
|
padding: 0 16upx;
|
||||||
justify-content: flex-start;
|
justify-content: flex-start;
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="main">
|
<div class="main">
|
||||||
<header-top :bgUrl="bgUrl" :menu="menu" :bgColor="bgColor" :title="title" :labelList="labelList" :topBg="topBg" :page="page"
|
<header-top :bgUrl="bgUrl" :menu="menu" :bgColor="bgColor" :title="title" :analyseInfo="analyseInfo" :topBg="topBg" :page="page" :backType="backType"
|
||||||
:serverpartName="serviceInfo.SERVERPART_NAME" :spregionTypeName="serviceInfo.SPREGIONTYPE_NAME" :serviceInfo="serviceInfo"/>
|
:serverpartName="serviceInfo.SERVERPART_NAME" :spregionTypeName="serviceInfo.SPREGIONTYPE_NAME" :serviceInfo="serviceInfo"/>
|
||||||
|
|
||||||
<div class="charts">
|
<div class="charts">
|
||||||
@ -15,7 +15,7 @@
|
|||||||
<p class="title">消费时段分析</p>
|
<p class="title">消费时段分析</p>
|
||||||
<div v-if="timePeriodList.series.length>0">
|
<div v-if="timePeriodList.series.length>0">
|
||||||
<time-period-analysis :data="timePeriodList"/>
|
<time-period-analysis :data="timePeriodList"/>
|
||||||
<analyse />
|
<analyse :analyseInfo="{analysisins_type: 1403,analysisins_format: 2000}" />
|
||||||
</div>
|
</div>
|
||||||
<no-data v-else />
|
<no-data v-else />
|
||||||
</div>
|
</div>
|
||||||
@ -23,7 +23,7 @@
|
|||||||
<p class="title">消费水平<text class="unit">(Top 5)</text></p>
|
<p class="title">消费水平<text class="unit">(Top 5)</text></p>
|
||||||
<div v-if="levelTopList.series.length>0">
|
<div v-if="levelTopList.series.length>0">
|
||||||
<level-top :data="levelTopList"></level-top>
|
<level-top :data="levelTopList"></level-top>
|
||||||
<analyse />
|
<analyse :analyseInfo="{analysisins_type: 1404,analysisins_format: 2000}" />
|
||||||
</div>
|
</div>
|
||||||
<no-data v-else />
|
<no-data v-else />
|
||||||
</div>
|
</div>
|
||||||
@ -31,7 +31,7 @@
|
|||||||
<p class="title">业态适配型</p>
|
<p class="title">业态适配型</p>
|
||||||
<div v-if="businessTypeList.series[0].data.length>0">
|
<div v-if="businessTypeList.series[0].data.length>0">
|
||||||
<business-format :data="businessTypeList"/>
|
<business-format :data="businessTypeList"/>
|
||||||
<analyse />
|
<analyse :analyseInfo="{analysisins_type: 1405,analysisins_format: 2000}" />
|
||||||
</div>
|
</div>
|
||||||
<no-data v-else />
|
<no-data v-else />
|
||||||
</div>
|
</div>
|
||||||
@ -39,14 +39,14 @@
|
|||||||
<p class="title">消费转化对比图</p>
|
<p class="title">消费转化对比图</p>
|
||||||
<div v-if="compareList.series[0].data.length>0">
|
<div v-if="compareList.series[0].data.length>0">
|
||||||
<consumption-compare :data="compareList"/>
|
<consumption-compare :data="compareList"/>
|
||||||
<analyse />
|
<analyse :analyseInfo="{analysisins_type: 1406,analysisins_format: 2000}" />
|
||||||
</div>
|
</div>
|
||||||
<no-data v-else />
|
<no-data v-else />
|
||||||
</div>
|
</div>
|
||||||
<div class="chartsItem" style="margin-top: 32px">
|
<div class="chartsItem" style="margin-top: 32px">
|
||||||
<p class="title">商超畅销品</p>
|
<p class="title">商超畅销品</p>
|
||||||
<bestseller-shop :data="bestsellerList"/>
|
<bestseller-shop :data="bestsellerList"/>
|
||||||
<analyse />
|
<analyse :analyseInfo="{analysisins_type: 1407,analysisins_format: 2000}" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -87,17 +87,30 @@ export default {
|
|||||||
businessTypeList:[],//业态适配型
|
businessTypeList:[],//业态适配型
|
||||||
compareList:[],//消费转化对比图
|
compareList:[],//消费转化对比图
|
||||||
bestsellerList:[],//商超畅销品
|
bestsellerList:[],//商超畅销品
|
||||||
serviceInfo:{} //当前服务区信息
|
serviceInfo:{} ,//当前服务区信息
|
||||||
|
backType:'',//返回的页面类型
|
||||||
|
analyseInfo:{
|
||||||
|
analysisins_type1: 1401,
|
||||||
|
analysisins_type2: 1402
|
||||||
|
},
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
onLoad(option) {
|
onLoad(option) {
|
||||||
console.log('option',option)
|
|
||||||
let storeServiceInfo = uni.getStorageSync('currentService')
|
|
||||||
let serviceInfo = JSON.parse(option.serviceInfo)
|
let serviceInfo = JSON.parse(option.serviceInfo)
|
||||||
this.serviceInfo = storeServiceInfo?storeServiceInfo:serviceInfo
|
this.backType = option.type
|
||||||
|
this.serviceInfo = serviceInfo
|
||||||
//跳转的时候带上时间
|
//跳转的时候带上时间
|
||||||
|
this.time = option.time
|
||||||
|
},
|
||||||
|
onShow(){
|
||||||
let storeTime = uni.getStorageSync('lastDay')
|
let storeTime = uni.getStorageSync('lastDay')
|
||||||
this.time = storeTime?storeTime:option.time
|
if (storeTime){
|
||||||
|
this.time = storeTime
|
||||||
|
}
|
||||||
|
let storeServiceInfo = uni.getStorageSync('currentService')
|
||||||
|
if (storeServiceInfo){
|
||||||
|
this.serviceInfo = storeServiceInfo
|
||||||
|
}
|
||||||
// 获取手机参数对页面进行适配
|
// 获取手机参数对页面进行适配
|
||||||
let systemInfo = uni.getSystemInfoSync()
|
let systemInfo = uni.getSystemInfoSync()
|
||||||
// 把获取到的手机参数保存
|
// 把获取到的手机参数保存
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
<div class="header" :style="{backgroundImage: 'url('+ 'https://eshangtech.com/ShopICO/ahyd-BID/commercial/car.svg' +')'}">
|
<div class="header" :style="{backgroundImage: 'url('+ 'https://eshangtech.com/ShopICO/ahyd-BID/commercial/car.svg' +')'}">
|
||||||
<div class="analyse">
|
<div class="analyse">
|
||||||
<text class="title">分析</text>
|
<text class="title">分析</text>
|
||||||
<text class="content">新桥服务区入区车辆主要来自杭州市, 入车车辆主要是普通车型(30-60万)</text>
|
<text class="content">{{analyseText}}</text>
|
||||||
</div>
|
</div>
|
||||||
<div class="headerTop" :style="{height:(menu.bottom + 6) + 'px'}">
|
<div class="headerTop" :style="{height:(menu.bottom + 6) + 'px'}">
|
||||||
<div class="box" :style="{top:(menu.bottom - (menu.height / 2)) + 'px'}">
|
<div class="box" :style="{top:(menu.bottom - (menu.height / 2)) + 'px'}">
|
||||||
@ -32,7 +32,7 @@
|
|||||||
<div class="other">
|
<div class="other">
|
||||||
<div class="label">
|
<div class="label">
|
||||||
<div v-for="(item,index) in labelList" :key="index" :class="index===0?'item0 item':index===1?'item1 item':index===2?'item2 item':index===3?'item3 item':index===4?'item4 item':'item'">
|
<div v-for="(item,index) in labelList" :key="index" :class="index===0?'item0 item':index===1?'item1 item':index===2?'item2 item':index===3?'item3 item':index===4?'item4 item':'item'">
|
||||||
{{item.value}}
|
{{item}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -88,7 +88,7 @@ export default {
|
|||||||
serviceArray:["123465","123465","123465","123465","123465"], // 选择服务区的列表
|
serviceArray:["123465","123465","123465","123465","123465"], // 选择服务区的列表
|
||||||
serviceIndex:0, //选中的服务区列表的第几个
|
serviceIndex:0, //选中的服务区列表的第几个
|
||||||
area:'片区', //属于哪个片区
|
area:'片区', //属于哪个片区
|
||||||
labelList:[{value:'杭州'},{value:'小汽车'},{value:'一般消费'},{value:'温州'},{value:'30-60万'}], //标签
|
labelList:[], //标签
|
||||||
time:'',//当前时间
|
time:'',//当前时间
|
||||||
Serverpart_ID:'',//服务区id
|
Serverpart_ID:'',//服务区id
|
||||||
chartData:{},
|
chartData:{},
|
||||||
@ -106,7 +106,9 @@ export default {
|
|||||||
timeAnalysisData:[],// 车辆价值与停留时间分析
|
timeAnalysisData:[],// 车辆价值与停留时间分析
|
||||||
percentEntryData:[],//入区率占比
|
percentEntryData:[],//入区率占比
|
||||||
percentEntryDataAll:[],// 入区率占比总的
|
percentEntryDataAll:[],// 入区率占比总的
|
||||||
serviceInfo:{} //当前服务区信息
|
serviceInfo:{}, //当前服务区信息
|
||||||
|
backType:'',//返回的页面类型
|
||||||
|
analyseText:'',//分析的文字
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
components: {PercentEntry, CarTypeTime, HomePlace, EntryZone,timeAnalysis},
|
components: {PercentEntry, CarTypeTime, HomePlace, EntryZone,timeAnalysis},
|
||||||
@ -117,39 +119,87 @@ export default {
|
|||||||
},
|
},
|
||||||
onLoad(option){
|
onLoad(option){
|
||||||
console.log('option',option)
|
console.log('option',option)
|
||||||
let storeServiceInfo = uni.getStorageSync('currentService')
|
this.backType = option.type
|
||||||
let serviceInfo = JSON.parse(option.serviceInfo)
|
let serviceInfo = JSON.parse(option.serviceInfo)
|
||||||
this.serviceInfo = storeServiceInfo?storeServiceInfo:serviceInfo
|
this.serviceInfo = serviceInfo
|
||||||
console.log('this.serviceInfo',this.serviceInfo)
|
console.log('this.serviceInfo',this.serviceInfo)
|
||||||
//跳转的时候带上时间
|
//跳转的时候带上时间
|
||||||
let storeTime = uni.getStorageSync('lastDay')
|
this.time = option.time
|
||||||
this.time = storeTime?storeTime:option.time
|
},
|
||||||
// 获取手机参数对页面进行适配
|
onShow(){
|
||||||
let systemInfo = uni.getSystemInfoSync()
|
let storeTime = uni.getStorageSync('lastDay')
|
||||||
// 把获取到的手机参数保存
|
if (storeTime){
|
||||||
uni.setStorageSync('phoneInfo',systemInfo)
|
this.time = storeTime
|
||||||
this.statusBarHeight = Number(systemInfo.statusBarHeight)
|
}
|
||||||
this.menu = uni.getMenuButtonBoundingClientRect()
|
let storeServiceInfo = uni.getStorageSync('currentService')
|
||||||
// 把获取图表数据的方法统一放在一起 然后去请求接口拿到数据 再分批传到相对应的图标组件
|
if (storeServiceInfo){
|
||||||
// 每个图表都是用组件的方式引入的 数据是通过prop传入的
|
this.serviceInfo = storeServiceInfo
|
||||||
|
}
|
||||||
|
// 获取手机参数对页面进行适配
|
||||||
|
let systemInfo = uni.getSystemInfoSync()
|
||||||
|
// 把获取到的手机参数保存
|
||||||
|
uni.setStorageSync('phoneInfo',systemInfo)
|
||||||
|
this.statusBarHeight = Number(systemInfo.statusBarHeight)
|
||||||
|
this.menu = uni.getMenuButtonBoundingClientRect()
|
||||||
|
// 把获取图表数据的方法统一放在一起 然后去请求接口拿到数据 再分批传到相对应的图标组件
|
||||||
|
// 每个图表都是用组件的方式引入的 数据是通过prop传入的
|
||||||
if (!storeServiceInfo){
|
if (!storeServiceInfo){
|
||||||
this.nearestService()
|
this.nearestService()
|
||||||
}
|
}
|
||||||
// 入区车流分析
|
// 入区车流分析
|
||||||
this.getCarData()
|
this.getCarData()
|
||||||
// 车辆归属地
|
// 车辆归属地
|
||||||
this.getHomeData()
|
this.getHomeData()
|
||||||
// 车辆类型占比与停留时间
|
// 车辆类型占比与停留时间
|
||||||
this.getCarTypeTime()
|
this.getCarTypeTime()
|
||||||
// 车辆价值与停留时间分析
|
// 车辆价值与停留时间分析
|
||||||
this.getTimeAnalysis('')
|
this.getTimeAnalysis('')
|
||||||
//入区率占比
|
//入区率占比
|
||||||
this.getPercentEntry()
|
this.getPercentEntry()
|
||||||
|
//获得标签
|
||||||
|
this.getLabelDetail()
|
||||||
},
|
},
|
||||||
onReady(){
|
onReady(){
|
||||||
|
|
||||||
},
|
},
|
||||||
methods:{
|
methods:{
|
||||||
|
//获得标签
|
||||||
|
async getLabelDetail(){
|
||||||
|
//六个标签
|
||||||
|
let req = {
|
||||||
|
SearchParameter:{
|
||||||
|
STATISTICS_DATE:this.time,
|
||||||
|
ANALYSISINS_TYPE:1101,
|
||||||
|
ANALYSISINS_FORMAT:1000,
|
||||||
|
ANALYSISINS_STATE:1,
|
||||||
|
SERVERPART_ID:this.serviceInfo.Serverpart_ID,
|
||||||
|
},
|
||||||
|
PageIndex:1,
|
||||||
|
PageSize:10
|
||||||
|
}
|
||||||
|
//分析的文字
|
||||||
|
let reqText = {
|
||||||
|
SearchParameter:{
|
||||||
|
STATISTICS_DATE:this.time,
|
||||||
|
ANALYSISINS_TYPE:1101,
|
||||||
|
ANALYSISINS_FORMAT:2000,
|
||||||
|
ANALYSISINS_STATE:1,
|
||||||
|
SERVERPART_ID:this.serviceInfo.Serverpart_ID,
|
||||||
|
},
|
||||||
|
PageIndex:1,
|
||||||
|
PageSize:10
|
||||||
|
}
|
||||||
|
//六个标签
|
||||||
|
const data = await request.$webPost('CommercialApi/Analysis/GetANALYSISINSList',req)
|
||||||
|
let list = []
|
||||||
|
data.Result_Data.List.forEach(item=>{
|
||||||
|
list.push(item.ANALYSIS_CONTENT)
|
||||||
|
})
|
||||||
|
this.labelList = list
|
||||||
|
//分析的文字
|
||||||
|
const total = await request.$webPost('CommercialApi/Analysis/GetANALYSISINSList',reqText)
|
||||||
|
this.analyseText = total.Result_Data.List[0].ANALYSIS_CONTENT
|
||||||
|
},
|
||||||
//当前最近的服务区数据
|
//当前最近的服务区数据
|
||||||
async nearestService(){
|
async nearestService(){
|
||||||
let seat = uni.getStorageSync('seatInfo');
|
let seat = uni.getStorageSync('seatInfo');
|
||||||
@ -177,9 +227,15 @@ export default {
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
handleBack(){
|
handleBack(){
|
||||||
uni.switchTab({
|
if (this.backType==='userCenter'){
|
||||||
url: '/pages/index/index'
|
uni.switchTab({
|
||||||
})
|
url: '/pages/userCenter/userCenter'
|
||||||
|
})
|
||||||
|
}else{
|
||||||
|
uni.switchTab({
|
||||||
|
url: '/pages/index/index'
|
||||||
|
})
|
||||||
|
}
|
||||||
},
|
},
|
||||||
//切换改变选项卡
|
//切换改变选项卡
|
||||||
// 因为只让接口调用一次 所以要把全部和不同区域的内容要放在同一个列表里面 然后通过选项卡的点击来切换展示哪一块的数据
|
// 因为只让接口调用一次 所以要把全部和不同区域的内容要放在同一个列表里面 然后通过选项卡的点击来切换展示哪一块的数据
|
||||||
|
|||||||
@ -1,17 +1,58 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="main">
|
<div class="main">
|
||||||
<p class="title">分析</p>
|
<p class="title">分析</p>
|
||||||
<div class="text">新桥服务区入区车辆主要来自杭州市, 入车车辆主要是普通车型(30-60万)</div>
|
<div class="text">{{ analyseText }}</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
import request from '@/util/index.js'
|
||||||
export default {
|
export default {
|
||||||
name: "analyse",
|
name: "analyse",
|
||||||
data(){
|
data(){
|
||||||
return {
|
return {
|
||||||
|
time:'',
|
||||||
|
serviceInfo:{},
|
||||||
|
analyseText:''
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
props:{
|
||||||
|
analyseInfo:{
|
||||||
|
type: Object,
|
||||||
|
default:()=>{}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
watch:{
|
||||||
|
analyseInfo:{
|
||||||
|
handler(value){
|
||||||
|
console.log('analyseInfowatch',value)
|
||||||
|
this.getLabelDetail()
|
||||||
|
},
|
||||||
|
immediate:true,
|
||||||
|
deep:true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
onLoad(){
|
||||||
|
this.time = uni.getStorageSync('lastDay')
|
||||||
|
},
|
||||||
|
methods:{
|
||||||
|
async getLabelDetail(){
|
||||||
|
this.time = uni.getStorageSync('lastDay')
|
||||||
|
let id = uni.getStorageSync('currentService')
|
||||||
|
let req = {
|
||||||
|
SearchParameter:{
|
||||||
|
ANALYSISINS_TYPE:this.analyseInfo.analysisins_type,
|
||||||
|
ANALYSISINS_FORMAT:this.analyseInfo.analysisins_format,
|
||||||
|
ANALYSISINS_STATE:1,
|
||||||
|
SERVERPART_ID:id.Serverpart_ID,
|
||||||
|
},
|
||||||
|
PageIndex:1,
|
||||||
|
PageSize:10
|
||||||
|
}
|
||||||
|
const data = await request.$webPost('CommercialApi/Analysis/GetANALYSISINSList',req)
|
||||||
|
this.analyseText = data.Result_Data.List[0].ANALYSIS_CONTENT
|
||||||
|
console.log('getLabelDetail',data)
|
||||||
|
},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
@ -53,4 +94,4 @@ export default {
|
|||||||
-webkit-line-clamp: 2;
|
-webkit-line-clamp: 2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@ -5,7 +5,7 @@
|
|||||||
<canvas v-if="!carTypeTimePath" class="canvas" canvas-id="carTypeTime" id="carTypeTime"/>
|
<canvas v-if="!carTypeTimePath" class="canvas" canvas-id="carTypeTime" id="carTypeTime"/>
|
||||||
<image v-if="carTypeTimePath" class="canvas" :src="carTypeTimePath"></image>
|
<image v-if="carTypeTimePath" class="canvas" :src="carTypeTimePath"></image>
|
||||||
</div>
|
</div>
|
||||||
<analyse />
|
<analyse :analyseInfo="analyseInfo"/>
|
||||||
</div>
|
</div>
|
||||||
<no-data v-if="!isShowData"/>
|
<no-data v-if="!isShowData"/>
|
||||||
</div>
|
</div>
|
||||||
@ -24,7 +24,11 @@ export default {
|
|||||||
width:0,
|
width:0,
|
||||||
isShowData:false,
|
isShowData:false,
|
||||||
info:{},
|
info:{},
|
||||||
carTypeTimePath:''//图片路径
|
carTypeTimePath:'',//图片路径
|
||||||
|
analyseInfo:{
|
||||||
|
analysisins_type: 1104,
|
||||||
|
analysisins_format: 2000
|
||||||
|
},
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
props: {
|
props: {
|
||||||
@ -121,7 +125,7 @@ export default {
|
|||||||
});
|
});
|
||||||
setTimeout( ()=>{
|
setTimeout( ()=>{
|
||||||
this.canvasToTempImage('carTypeTime')
|
this.canvasToTempImage('carTypeTime')
|
||||||
},2000)
|
},1000)
|
||||||
},
|
},
|
||||||
canvasToTempImage(id){
|
canvasToTempImage(id){
|
||||||
uni.canvasToTempFilePath({
|
uni.canvasToTempFilePath({
|
||||||
|
|||||||
@ -11,7 +11,7 @@
|
|||||||
<image v-if="probabilityPath" class="carNum" :src="probabilityPath"></image>
|
<image v-if="probabilityPath" class="carNum" :src="probabilityPath"></image>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<analyse />
|
<analyse :analyseInfo="analyseInfo" />
|
||||||
</div>
|
</div>
|
||||||
<no-data v-if="carData.length===0"/>
|
<no-data v-if="carData.length===0"/>
|
||||||
</div>
|
</div>
|
||||||
@ -35,6 +35,10 @@ export default {
|
|||||||
carNumPath:'',//图片路径
|
carNumPath:'',//图片路径
|
||||||
probabilityPath:'',//图片路径
|
probabilityPath:'',//图片路径
|
||||||
isShowData:false,
|
isShowData:false,
|
||||||
|
analyseInfo:{
|
||||||
|
analysisins_type: 1102,
|
||||||
|
analysisins_format: 2000
|
||||||
|
},
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
props:{
|
props:{
|
||||||
@ -166,7 +170,7 @@ export default {
|
|||||||
setTimeout( ()=>{
|
setTimeout( ()=>{
|
||||||
this.canvasToTempImage1('carNum')
|
this.canvasToTempImage1('carNum')
|
||||||
this.canvasToTempImage2('probability')
|
this.canvasToTempImage2('probability')
|
||||||
},2000)
|
},1000)
|
||||||
},
|
},
|
||||||
canvasToTempImage1(id){
|
canvasToTempImage1(id){
|
||||||
uni.canvasToTempFilePath({
|
uni.canvasToTempFilePath({
|
||||||
|
|||||||
@ -32,7 +32,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<analyse />
|
<analyse :analyseInfo="analyseInfo"/>
|
||||||
</div>
|
</div>
|
||||||
<no-data v-if="homeData.length===0"/>
|
<no-data v-if="homeData.length===0"/>
|
||||||
</div>
|
</div>
|
||||||
@ -53,7 +53,11 @@ export default {
|
|||||||
homeDataisTrue:false,
|
homeDataisTrue:false,
|
||||||
homeCityisTrue:false,
|
homeCityisTrue:false,
|
||||||
homePlacePath:'',//图片路径
|
homePlacePath:'',//图片路径
|
||||||
progressList:[]//进度条数组
|
progressList:[],//进度条数组
|
||||||
|
analyseInfo:{
|
||||||
|
analysisins_type: 1103,
|
||||||
|
analysisins_format: 2000
|
||||||
|
},
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
props: {
|
props: {
|
||||||
@ -142,7 +146,7 @@ export default {
|
|||||||
});
|
});
|
||||||
setTimeout(()=>{
|
setTimeout(()=>{
|
||||||
this.canvasToTempImage('homePlace')
|
this.canvasToTempImage('homePlace')
|
||||||
},2000)
|
},1000)
|
||||||
},
|
},
|
||||||
canvasToTempImage(id){
|
canvasToTempImage(id){
|
||||||
uni.canvasToTempFilePath({
|
uni.canvasToTempFilePath({
|
||||||
|
|||||||
@ -22,6 +22,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<analyse :analyseInfo="analyseInfo"/>
|
||||||
</div>
|
</div>
|
||||||
<no-data v-if="data.length===0"/>
|
<no-data v-if="data.length===0"/>
|
||||||
</div>
|
</div>
|
||||||
@ -29,10 +30,11 @@
|
|||||||
|
|
||||||
<script>
|
<script>
|
||||||
import NoData from "../noData.vue";
|
import NoData from "../noData.vue";
|
||||||
|
import Analyse from "../analyse.vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "percentEntry",
|
name: "percentEntry",
|
||||||
components: {NoData},
|
components: {Analyse, NoData},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
dataList:[{title:'总车型入区率',value:''},{title:'小型车',value:''},{title:'中型车',value:''},{title:'大货车',value:''}],
|
dataList:[{title:'总车型入区率',value:''},{title:'小型车',value:''},{title:'中型车',value:''},{title:'大货车',value:''}],
|
||||||
@ -41,6 +43,10 @@ export default {
|
|||||||
middle:0,//中型车
|
middle:0,//中型车
|
||||||
big:0,//大型车
|
big:0,//大型车
|
||||||
isShowData:false,
|
isShowData:false,
|
||||||
|
analyseInfo:{
|
||||||
|
analysisins_type: 1106,
|
||||||
|
analysisins_format: 2000
|
||||||
|
},
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
props: {
|
props: {
|
||||||
@ -202,4 +208,4 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
<div class="timeAnalysis" >
|
<div class="timeAnalysis" >
|
||||||
<canvas :style="{width:width+'px'}" class="timeAnalysis" canvas-id="timeAnalysis" id="timeAnalysis"/>
|
<canvas :style="{width:width+'px'}" class="timeAnalysis" canvas-id="timeAnalysis" id="timeAnalysis"/>
|
||||||
</div>
|
</div>
|
||||||
<analyse />
|
<analyse :analyseInfo="analyseInfo"/>
|
||||||
</div>
|
</div>
|
||||||
<no-data v-if="data.length===0"/>
|
<no-data v-if="data.length===0"/>
|
||||||
</div>
|
</div>
|
||||||
@ -22,6 +22,10 @@ export default {
|
|||||||
return {
|
return {
|
||||||
width:0,
|
width:0,
|
||||||
isShowData: false,
|
isShowData: false,
|
||||||
|
analyseInfo:{
|
||||||
|
analysisins_type: 1105,
|
||||||
|
analysisins_format: 2000
|
||||||
|
},
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
props: {
|
props: {
|
||||||
|
|||||||
@ -36,10 +36,13 @@ export default {
|
|||||||
methods: {
|
methods: {
|
||||||
// 处理传入的数据
|
// 处理传入的数据
|
||||||
handleCarData(value) {
|
handleCarData(value) {
|
||||||
let res = value
|
let res = value.result
|
||||||
this.drawCharts('fillDegree', res)
|
let config = {
|
||||||
|
Abundant:value.Abundant
|
||||||
|
}
|
||||||
|
this.drawCharts('fillDegree', res ,config)
|
||||||
},
|
},
|
||||||
drawCharts(id, data) {
|
drawCharts(id, data,config) {
|
||||||
const ctx = uni.createCanvasContext(id, this);
|
const ctx = uni.createCanvasContext(id, this);
|
||||||
let _this = this
|
let _this = this
|
||||||
let phoneInfo = uni.getStorageSync('phoneInfo')
|
let phoneInfo = uni.getStorageSync('phoneInfo')
|
||||||
@ -59,7 +62,7 @@ export default {
|
|||||||
dataLabel: true,
|
dataLabel: true,
|
||||||
enableScroll: false,
|
enableScroll: false,
|
||||||
title: {
|
title: {
|
||||||
name:'盈足',
|
name:config.Abundant?'盈足':'不盈足',
|
||||||
fontSize: 16,
|
fontSize: 16,
|
||||||
color: "#341D00"
|
color: "#341D00"
|
||||||
},
|
},
|
||||||
|
|||||||
@ -26,7 +26,8 @@ export default {
|
|||||||
data: {
|
data: {
|
||||||
handler(value) {
|
handler(value) {
|
||||||
this.handleCarData(value)
|
this.handleCarData(value)
|
||||||
}
|
},
|
||||||
|
immediate: true
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
|||||||
@ -33,13 +33,13 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="analyse">
|
<div class="analyse">
|
||||||
<text class="title">分析</text>
|
<text class="title">分析</text>
|
||||||
<text class="content">新桥服务区入区车辆主要来自杭州市, 入车车辆主要是普通车型(30-60万)</text>
|
<text class="content">{{analyseText}}</text>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
import request from '@/util/index.js'
|
||||||
export default {
|
export default {
|
||||||
name: "headerTop",
|
name: "headerTop",
|
||||||
props:{
|
props:{
|
||||||
@ -59,10 +59,6 @@ export default {
|
|||||||
type:String,
|
type:String,
|
||||||
default: ""
|
default: ""
|
||||||
},
|
},
|
||||||
labelList:{
|
|
||||||
type:Array,
|
|
||||||
default:()=>[]
|
|
||||||
},
|
|
||||||
topBg:{
|
topBg:{
|
||||||
type:String,
|
type:String,
|
||||||
default: ""
|
default: ""
|
||||||
@ -82,25 +78,93 @@ export default {
|
|||||||
serviceInfo:{
|
serviceInfo:{
|
||||||
type:Object,
|
type:Object,
|
||||||
default:()=>{}
|
default:()=>{}
|
||||||
|
},
|
||||||
|
backType:{
|
||||||
|
type:String,
|
||||||
|
default:''
|
||||||
|
},
|
||||||
|
analyseInfo:{
|
||||||
|
type:Object,
|
||||||
|
default:()=>{}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
labelList:[],
|
||||||
|
analyseText:''
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
onLoad(){
|
watch:{
|
||||||
|
analyseInfo:{
|
||||||
|
handler(value){
|
||||||
|
console.log('headerTop',value)
|
||||||
|
//获得标签
|
||||||
|
this.getLabelDetail()
|
||||||
|
},
|
||||||
|
immediate:true,
|
||||||
|
deep:true
|
||||||
|
}
|
||||||
},
|
},
|
||||||
|
// onLoad(){
|
||||||
|
// this.getLabelDetail()
|
||||||
|
// },
|
||||||
methods:{
|
methods:{
|
||||||
|
//获得标签
|
||||||
|
async getLabelDetail(){
|
||||||
|
let storeTime = uni.getStorageSync('lastDay')
|
||||||
|
let storeServiceInfo = uni.getStorageSync('currentService')
|
||||||
|
console.log('this.analyseInfo',this.analyseInfo)
|
||||||
|
//六个标签
|
||||||
|
let req = {
|
||||||
|
SearchParameter:{
|
||||||
|
STATISTICS_DATE:storeTime,
|
||||||
|
ANALYSISINS_TYPE:this.analyseInfo.analysisins_type1,
|
||||||
|
ANALYSISINS_FORMAT:1000,
|
||||||
|
ANALYSISINS_STATE:1,
|
||||||
|
SERVERPART_ID:storeServiceInfo.Serverpart_ID,
|
||||||
|
},
|
||||||
|
PageIndex:1,
|
||||||
|
PageSize:10
|
||||||
|
}
|
||||||
|
//分析的文字
|
||||||
|
let reqText = {
|
||||||
|
SearchParameter:{
|
||||||
|
STATISTICS_DATE:storeTime,
|
||||||
|
ANALYSISINS_TYPE:this.analyseInfo.analysisins_type2,
|
||||||
|
ANALYSISINS_FORMAT:2000,
|
||||||
|
ANALYSISINS_STATE:1,
|
||||||
|
SERVERPART_ID:storeServiceInfo.Serverpart_ID,
|
||||||
|
},
|
||||||
|
PageIndex:1,
|
||||||
|
PageSize:10
|
||||||
|
}
|
||||||
|
//六个标签
|
||||||
|
const data = await request.$webPost('CommercialApi/Analysis/GetANALYSISINSList',req)
|
||||||
|
let list = []
|
||||||
|
data.Result_Data.List.forEach(item=>{
|
||||||
|
list.push(item.ANALYSIS_CONTENT)
|
||||||
|
})
|
||||||
|
this.labelList = list
|
||||||
|
//分析的文字
|
||||||
|
const total = await request.$webPost('CommercialApi/Analysis/GetANALYSISINSList',reqText)
|
||||||
|
this.analyseText = total.Result_Data.List[0].ANALYSIS_CONTENT
|
||||||
|
},
|
||||||
bindPickerChange(){
|
bindPickerChange(){
|
||||||
|
|
||||||
},
|
},
|
||||||
//返回上一级s
|
//返回上一级s
|
||||||
handleBack(){
|
handleBack(){
|
||||||
uni.switchTab({
|
console.log('this.backType',this.backType)
|
||||||
url: '/pages/index/index'
|
if (this.backType==='userCenter'){
|
||||||
})
|
uni.switchTab({
|
||||||
|
url: '/pages/userCenter/userCenter'
|
||||||
|
})
|
||||||
|
}else{
|
||||||
|
uni.switchTab({
|
||||||
|
url: '/pages/index/index'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
},
|
},
|
||||||
//点击跳转服务区
|
//点击跳转服务区
|
||||||
handleGoSelectService(){
|
handleGoSelectService(){
|
||||||
|
|||||||
@ -1,14 +1,14 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="main">
|
<div class="main">
|
||||||
<header-top :bgUrl="bgUrl" :menu="menu" :bgColor="bgColor" :title="title" :labelList="labelList" :topBg="topBg" :page="page"
|
<header-top :bgUrl="bgUrl" :menu="menu" :bgColor="bgColor" :title="title" :analyseInfo="analyseInfo" :topBg="topBg" :page="page" :backType="backType"
|
||||||
:serverpartName="serviceInfo.SERVERPART_NAME" :spregionTypeName="serviceInfo.SPREGIONTYPE_NAME" :serviceInfo="serviceInfo"/>
|
:serverpartName="serviceInfo.SERVERPART_NAME" :spregionTypeName="serviceInfo.SPREGIONTYPE_NAME" :serviceInfo="serviceInfo"/>
|
||||||
|
|
||||||
<div class="charts">
|
<div class="charts">
|
||||||
<div class="chartsItem">
|
<div class="chartsItem">
|
||||||
<p class="title">业态充盈度</p>
|
<p class="title">业态充盈度</p>
|
||||||
<div v-if="fillDegreeList.series[0].data.length>0">
|
<div v-if="fillDegreeList.result.series[0].data.length>0">
|
||||||
<filling-degree :data="fillDegreeList" />
|
<filling-degree :data="fillDegreeList" />
|
||||||
<analyse />
|
<analyse :analyseInfo="{analysisins_type: 1502,analysisins_format: 2000}" />
|
||||||
</div>
|
</div>
|
||||||
<no-data v-else/>
|
<no-data v-else/>
|
||||||
</div>
|
</div>
|
||||||
@ -16,7 +16,7 @@
|
|||||||
<p class="title">品牌消费水平<text class="unit">(Top 5)</text></p>
|
<p class="title">品牌消费水平<text class="unit">(Top 5)</text></p>
|
||||||
<div v-if="bandLevelList.length>0">
|
<div v-if="bandLevelList.length>0">
|
||||||
<band-level :data="bandLevelList"/>
|
<band-level :data="bandLevelList"/>
|
||||||
<analyse />
|
<analyse :analyseInfo="{analysisins_type: 1503,analysisins_format: 2000}" />
|
||||||
</div>
|
</div>
|
||||||
<no-data v-else/>
|
<no-data v-else/>
|
||||||
</div>
|
</div>
|
||||||
@ -24,7 +24,7 @@
|
|||||||
<p class="title">业态消费水平<text class="unit">(Top 5)</text></p>
|
<p class="title">业态消费水平<text class="unit">(Top 5)</text></p>
|
||||||
<div v-if="consumLevelList.series.length>0">
|
<div v-if="consumLevelList.series.length>0">
|
||||||
<consumption-level :data="consumLevelList" />
|
<consumption-level :data="consumLevelList" />
|
||||||
<analyse />
|
<analyse :analyseInfo="{analysisins_type: 1504,analysisins_format: 2000}" />
|
||||||
</div>
|
</div>
|
||||||
<no-data v-else/>
|
<no-data v-else/>
|
||||||
</div>
|
</div>
|
||||||
@ -77,17 +77,30 @@ export default {
|
|||||||
{name:'省内品牌',value:3},
|
{name:'省内品牌',value:3},
|
||||||
{name:'地方特色',value:8}],//品牌指数标签列表
|
{name:'地方特色',value:8}],//品牌指数标签列表
|
||||||
brandInfoList:[],//品牌指数列表
|
brandInfoList:[],//品牌指数列表
|
||||||
serviceInfo:{} //当前服务区信息
|
serviceInfo:{}, //当前服务区信息
|
||||||
|
backType:'',//返回的页面类型
|
||||||
|
analyseInfo:{
|
||||||
|
analysisins_type1: 1501,
|
||||||
|
analysisins_type2: 1502
|
||||||
|
},
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
onLoad(option) {
|
onLoad(option) {
|
||||||
console.log('option',option)
|
|
||||||
let storeServiceInfo = uni.getStorageSync('currentService')
|
|
||||||
let serviceInfo = JSON.parse(option.serviceInfo)
|
let serviceInfo = JSON.parse(option.serviceInfo)
|
||||||
this.serviceInfo = storeServiceInfo?storeServiceInfo:serviceInfo
|
this.backType = option.type
|
||||||
|
this.serviceInfo = serviceInfo
|
||||||
//跳转的时候带上时间
|
//跳转的时候带上时间
|
||||||
|
this.time = option.time
|
||||||
|
},
|
||||||
|
onShow(){
|
||||||
let storeTime = uni.getStorageSync('lastDay')
|
let storeTime = uni.getStorageSync('lastDay')
|
||||||
this.time = storeTime?storeTime:option.time
|
if (storeTime){
|
||||||
|
this.time = storeTime
|
||||||
|
}
|
||||||
|
let storeServiceInfo = uni.getStorageSync('currentService')
|
||||||
|
if (storeServiceInfo){
|
||||||
|
this.serviceInfo = storeServiceInfo
|
||||||
|
}
|
||||||
// 获取手机参数对页面进行适配
|
// 获取手机参数对页面进行适配
|
||||||
let systemInfo = uni.getSystemInfoSync()
|
let systemInfo = uni.getSystemInfoSync()
|
||||||
// 把获取到的手机参数保存
|
// 把获取到的手机参数保存
|
||||||
@ -132,7 +145,7 @@ export default {
|
|||||||
StatisticsDate:this.time,
|
StatisticsDate:this.time,
|
||||||
serverpartId:this.serviceInfo.Serverpart_ID
|
serverpartId:this.serviceInfo.Serverpart_ID
|
||||||
}
|
}
|
||||||
const data = await request.$webGet('CommercialApi//Revenue/GetBusinessTradeRevenue',req)
|
const data = await request.$webGet('CommercialApi/Revenue/GetBusinessTradeRevenue',req)
|
||||||
let res = []
|
let res = []
|
||||||
let all = 0
|
let all = 0
|
||||||
data.Result_Data.BusinessTradeRank.forEach((item,index)=>{
|
data.Result_Data.BusinessTradeRank.forEach((item,index)=>{
|
||||||
@ -151,6 +164,10 @@ export default {
|
|||||||
}
|
}
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
|
let obj = {
|
||||||
|
result:result,
|
||||||
|
Abundant:data.Result_Data.Abundant//是否盈足
|
||||||
|
}
|
||||||
// let res = {
|
// let res = {
|
||||||
// series: [
|
// series: [
|
||||||
// {
|
// {
|
||||||
@ -165,7 +182,7 @@ export default {
|
|||||||
// }
|
// }
|
||||||
// ]
|
// ]
|
||||||
// }
|
// }
|
||||||
this.fillDegreeList = result
|
this.fillDegreeList = obj
|
||||||
},
|
},
|
||||||
async getBandLevelList(){
|
async getBandLevelList(){
|
||||||
|
|
||||||
|
|||||||
@ -1,13 +1,13 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="main">
|
<div class="main">
|
||||||
<header-top :bgUrl="bgUrl" :menu="menu" :topBg="topBg" :bgColor="bgColor" :title="title" :labelList="labelList" :page="page"
|
<header-top :bgUrl="bgUrl" :menu="menu" :topBg="topBg" :bgColor="bgColor" :title="title" :page="page" :backType="backType" :analyseInfo="analyseInfo"
|
||||||
:serverpartName="serviceInfo.SERVERPART_NAME" :spregionTypeName="serviceInfo.SPREGIONTYPE_NAME" :serviceInfo="serviceInfo"/>
|
:serverpartName="serviceInfo.SERVERPART_NAME" :spregionTypeName="serviceInfo.SPREGIONTYPE_NAME" :serviceInfo="serviceInfo"/>
|
||||||
|
|
||||||
<div class="charts">
|
<div class="charts">
|
||||||
<div class="chartsItem">
|
<div class="chartsItem">
|
||||||
<p class="title">客群分析</p>
|
<p class="title">客群分析</p>
|
||||||
<div v-if="customer">
|
<div v-if="customer">
|
||||||
<customer-first :data="customer" />
|
<customer-first :analyseInfo="{analysisins_type: 1202,analysisins_format: 2000}" :data="customer" />
|
||||||
</div>
|
</div>
|
||||||
<no-data v-else />
|
<no-data v-else />
|
||||||
</div>
|
</div>
|
||||||
@ -15,15 +15,15 @@
|
|||||||
<p class="title">客群分析</p>
|
<p class="title">客群分析</p>
|
||||||
<div v-if="genderBubbleList.res.length!==0">
|
<div v-if="genderBubbleList.res.length!==0">
|
||||||
<customer-second :data="genderBubbleList" />
|
<customer-second :data="genderBubbleList" />
|
||||||
<analyse />
|
<analyse :analyseInfo="{analysisins_type: 1203,analysisins_format: 2000}" />
|
||||||
</div>
|
</div>
|
||||||
<no-data v-else />
|
<no-data v-else />
|
||||||
</div>
|
</div>
|
||||||
<div class="chartsItem" style="margin-top: 32px">
|
<div class="chartsItem" style="margin-top: 32px">
|
||||||
<p class="title">客群消费偏好</p>
|
<p class="title">客群消费偏好</p>
|
||||||
<div v-if="consterPreferList.categories.length!==0">
|
<div v-if="consterPreferList.series.length>0">
|
||||||
<consum-prefer :data="consterPreferList" />
|
<consum-prefer :data="consterPreferList" />
|
||||||
<analyse />
|
<analyse :analyseInfo="{analysisins_type: 1204,analysisins_format: 2000}" />
|
||||||
</div>
|
</div>
|
||||||
<no-data v-else/>
|
<no-data v-else/>
|
||||||
</div>
|
</div>
|
||||||
@ -31,7 +31,7 @@
|
|||||||
<p class="title">客群消费水平</p>
|
<p class="title">客群消费水平</p>
|
||||||
<div v-if="consumptionLevelList.length>0">
|
<div v-if="consumptionLevelList.length>0">
|
||||||
<consumption-level :data="consumptionLevelList"/>
|
<consumption-level :data="consumptionLevelList"/>
|
||||||
<analyse />
|
<analyse :analyseInfo="{analysisins_type: 1205,analysisins_format: 2000}" />
|
||||||
</div>
|
</div>
|
||||||
<no-data v-else />
|
<no-data v-else />
|
||||||
</div>
|
</div>
|
||||||
@ -39,7 +39,7 @@
|
|||||||
<p class="title">业态消费偏好</p>
|
<p class="title">业态消费偏好</p>
|
||||||
<div v-if="businessTypeList.length>0">
|
<div v-if="businessTypeList.length>0">
|
||||||
<business-type :data="businessTypeList"></business-type>
|
<business-type :data="businessTypeList"></business-type>
|
||||||
<analyse />
|
<analyse :analyseInfo="{analysisins_type: 1206,analysisins_format: 2000}" />
|
||||||
</div>
|
</div>
|
||||||
<no-data v-else />
|
<no-data v-else />
|
||||||
</div>
|
</div>
|
||||||
@ -75,17 +75,30 @@ export default {
|
|||||||
consterPreferList:{},//客群消费偏好
|
consterPreferList:{},//客群消费偏好
|
||||||
consumptionLevelList:[],//客群消费水平
|
consumptionLevelList:[],//客群消费水平
|
||||||
businessTypeList:[],//业态偏好
|
businessTypeList:[],//业态偏好
|
||||||
serviceInfo:{} //当前服务区信息
|
serviceInfo:{}, //当前服务区信息
|
||||||
|
backType:'',//返回的页面类型
|
||||||
|
analyseInfo:{
|
||||||
|
analysisins_type1: 1201,
|
||||||
|
analysisins_type2: 1202
|
||||||
|
},
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
onLoad(option){
|
onLoad(option){
|
||||||
console.log('option',option)
|
|
||||||
let storeServiceInfo = uni.getStorageSync('currentService')
|
|
||||||
let serviceInfo = JSON.parse(option.serviceInfo)
|
let serviceInfo = JSON.parse(option.serviceInfo)
|
||||||
this.serviceInfo = storeServiceInfo?storeServiceInfo:serviceInfo
|
this.backType = option.type
|
||||||
|
this.serviceInfo = serviceInfo
|
||||||
//跳转的时候带上时间
|
//跳转的时候带上时间
|
||||||
|
this.time = option.time
|
||||||
|
},
|
||||||
|
onShow(){
|
||||||
let storeTime = uni.getStorageSync('lastDay')
|
let storeTime = uni.getStorageSync('lastDay')
|
||||||
this.time = storeTime?storeTime:option.time
|
if (storeTime){
|
||||||
|
this.time = storeTime
|
||||||
|
}
|
||||||
|
let storeServiceInfo = uni.getStorageSync('currentService')
|
||||||
|
if (storeServiceInfo){
|
||||||
|
this.serviceInfo = storeServiceInfo
|
||||||
|
}
|
||||||
// 获取手机参数对页面进行适配
|
// 获取手机参数对页面进行适配
|
||||||
let systemInfo = uni.getSystemInfoSync()
|
let systemInfo = uni.getSystemInfoSync()
|
||||||
// 把获取到的手机参数保存
|
// 把获取到的手机参数保存
|
||||||
@ -223,6 +236,7 @@ export default {
|
|||||||
// {name: "女", data: [190,210,105,35,27,102]}
|
// {name: "女", data: [190,210,105,35,27,102]}
|
||||||
// ]
|
// ]
|
||||||
// }
|
// }
|
||||||
|
console.log('res',res)
|
||||||
this.consterPreferList = res
|
this.consterPreferList = res
|
||||||
},
|
},
|
||||||
//客群消费水平
|
//客群消费水平
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="main">
|
<div class="main">
|
||||||
<header-top :bgUrl="bgUrl" :menu="menu" :bgColor="bgColor" :title="title" :labelList="labelList" :topBg="topBg" :page="page"
|
<header-top :bgUrl="bgUrl" :menu="menu" :bgColor="bgColor" :title="title" :analyseInfo="analyseInfo" :topBg="topBg" :page="page" :backType="backType"
|
||||||
:serverpartName="serviceInfo.SERVERPART_NAME" :spregionTypeName="serviceInfo.SPREGIONTYPE_NAME" :serviceInfo="serviceInfo"/>
|
:serverpartName="serviceInfo.SERVERPART_NAME" :spregionTypeName="serviceInfo.SPREGIONTYPE_NAME" :serviceInfo="serviceInfo"/>
|
||||||
|
|
||||||
<div class="charts">
|
<div class="charts">
|
||||||
@ -49,7 +49,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<no-data v-else/>
|
<no-data v-else/>
|
||||||
</div>
|
</div>
|
||||||
<analyse/>
|
<analyse :analyseInfo="{analysisins_type: selectTab===0?1305:selectTab===1?1306:selectTab===2?1307:'',analysisins_format: 2000}"/>
|
||||||
</div>
|
</div>
|
||||||
<div class="chartsItem" style="margin-top: 32px">
|
<div class="chartsItem" style="margin-top: 32px">
|
||||||
<p class="title">营收占比</p>
|
<p class="title">营收占比</p>
|
||||||
@ -57,10 +57,10 @@
|
|||||||
<div class="top">
|
<div class="top">
|
||||||
<div class="left">
|
<div class="left">
|
||||||
<text class="title">自营</text>
|
<text class="title">自营</text>
|
||||||
<text class="value" style="margin-left: 4px">{{revenueType.own}}%</text>
|
<text class="value" style="margin-left: 4px">{{revenueType.own?revenueType.own:''}}%</text>
|
||||||
</div>
|
</div>
|
||||||
<div class="right">
|
<div class="right">
|
||||||
<text class="value">{{revenueType.ectocyst}}%</text>
|
<text class="value">{{revenueType.ectocyst?revenueType.ectocyst:''}}%</text>
|
||||||
<text class="title" style="margin-left: 4px">外包</text>
|
<text class="title" style="margin-left: 4px">外包</text>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -210,17 +210,30 @@ export default {
|
|||||||
yearAdd:'', // 年度计划增加的百分比
|
yearAdd:'', // 年度计划增加的百分比
|
||||||
showNotice:false,
|
showNotice:false,
|
||||||
showNoticeYear:false,
|
showNoticeYear:false,
|
||||||
serviceInfo:{} //当前服务区信息
|
serviceInfo:{}, //当前服务区信息
|
||||||
|
backType:'',//返回的页面类型
|
||||||
|
analyseInfo:{
|
||||||
|
analysisins_type1: 1301,
|
||||||
|
analysisins_type2: 1302
|
||||||
|
},
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
onLoad(option) {
|
onLoad(option) {
|
||||||
console.log('option',option)
|
|
||||||
let storeServiceInfo = uni.getStorageSync('currentService')
|
|
||||||
let serviceInfo = JSON.parse(option.serviceInfo)
|
let serviceInfo = JSON.parse(option.serviceInfo)
|
||||||
this.serviceInfo = storeServiceInfo?storeServiceInfo:serviceInfo
|
this.backType = option.type
|
||||||
|
this.serviceInfo = serviceInfo
|
||||||
//跳转的时候带上时间
|
//跳转的时候带上时间
|
||||||
|
this.time = option.time
|
||||||
|
},
|
||||||
|
onShow(){
|
||||||
let storeTime = uni.getStorageSync('lastDay')
|
let storeTime = uni.getStorageSync('lastDay')
|
||||||
this.time = storeTime?storeTime:option.time
|
if (storeTime){
|
||||||
|
this.time = storeTime
|
||||||
|
}
|
||||||
|
let storeServiceInfo = uni.getStorageSync('currentService')
|
||||||
|
if (storeServiceInfo){
|
||||||
|
this.serviceInfo = storeServiceInfo
|
||||||
|
}
|
||||||
// 获取手机参数对页面进行适配
|
// 获取手机参数对页面进行适配
|
||||||
let systemInfo = uni.getSystemInfoSync()
|
let systemInfo = uni.getSystemInfoSync()
|
||||||
// 把获取到的手机参数保存
|
// 把获取到的手机参数保存
|
||||||
@ -462,7 +475,8 @@ export default {
|
|||||||
monthYearPlan(){
|
monthYearPlan(){
|
||||||
const monthDate= {
|
const monthDate= {
|
||||||
Province_Code:'340000',
|
Province_Code:'340000',
|
||||||
Statistics_Date:this.time
|
Statistics_Date:this.time,
|
||||||
|
Serverpart_ID: this.serviceInfo.Serverpart_ID
|
||||||
}
|
}
|
||||||
request.$webGet('CommercialApi/Revenue/GetRevenueBudget',monthDate).then(res=>{
|
request.$webGet('CommercialApi/Revenue/GetRevenueBudget',monthDate).then(res=>{
|
||||||
// 赋值给data中的这个对象 在请求完之后会进行统一的数据处理
|
// 赋值给data中的这个对象 在请求完之后会进行统一的数据处理
|
||||||
|
|||||||
368
pages/commercialBI/planDetail.vue
Normal file
@ -0,0 +1,368 @@
|
|||||||
|
<template>
|
||||||
|
<div class="main">
|
||||||
|
<div class="listBox" v-if="type==='year'">
|
||||||
|
<div class="list">
|
||||||
|
<div class="top">
|
||||||
|
<div class="left">
|
||||||
|
<p class="title"><text class="name">{{month}}</text>月</p>
|
||||||
|
|
||||||
|
<div class="value" >{{info.Budget_Degree}}%</div>
|
||||||
|
</div>
|
||||||
|
<div class="right">
|
||||||
|
<text class="comparePlan">比计划: </text>
|
||||||
|
<div class="box2">
|
||||||
|
<image class="addIcon" :src="Number(info.Growth_Rate)>0?'https://eshangtech.com/ShopICO/ahyd-BID/index/addIcon.svg':'https://eshangtech.com/ShopICO/ahyd-BID/index/reduce.svg'"></image>
|
||||||
|
<p class="text">{{info.Growth_Rate ?info.Growth_Rate + '%':''}}</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="progress">
|
||||||
|
<div class="have" :style="{width:info.Budget_Degree + '%'}"></div>
|
||||||
|
</div>
|
||||||
|
<div class="bottom">
|
||||||
|
<div class="success">
|
||||||
|
<p>已完成:</p>
|
||||||
|
<text class="money">{{info.Revenue_Amount}}</text>
|
||||||
|
</div>
|
||||||
|
<div class="success">
|
||||||
|
<p>计划: </p>
|
||||||
|
<text class="money">{{info.Budget_Amount}}</text>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="list" v-for="(item,index) in dataList" :key="index">
|
||||||
|
<div class="top">
|
||||||
|
<div class="left">
|
||||||
|
<p class="title" v-if="type==='year'"><text class="name">{{item.name}}</text>{{item.unit}}</p>
|
||||||
|
<div class="value" >{{item.Budget_Degree}}%</div>
|
||||||
|
</div>
|
||||||
|
<div class="right">
|
||||||
|
<text class="comparePlan">比计划: </text>
|
||||||
|
<div class="box2">
|
||||||
|
<image class="addIcon" :src="Number(item.Growth_Rate)>0?'https://eshangtech.com/ShopICO/ahyd-BID/index/addIcon.svg':'https://eshangtech.com/ShopICO/ahyd-BID/index/reduce.svg'"></image>
|
||||||
|
<p class="text">{{item.Growth_Rate?item.Growth_Rate + '%':''}}</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="progress">
|
||||||
|
<div class="have" :style="{width:item.Budget_Degree + '%'}"></div>
|
||||||
|
</div>
|
||||||
|
<div class="bottom">
|
||||||
|
<div class="success">
|
||||||
|
<p>已完成:</p>
|
||||||
|
<text class="money">{{item.Revenue_Amount}}</text>
|
||||||
|
</div>
|
||||||
|
<div class="success">
|
||||||
|
<p>计划: </p>
|
||||||
|
<text class="money">{{item.Budget_Amount }}</text>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="listBox" v-if="type==='month'">
|
||||||
|
<div class="list">
|
||||||
|
<div class="top">
|
||||||
|
<div class="left">
|
||||||
|
<p class="title"><text class="name">{{item.name}}</text>{{item.unit}}</p>
|
||||||
|
<div class="value" >{{info.Budget_Degree}}%</div>
|
||||||
|
</div>
|
||||||
|
<div class="right">
|
||||||
|
<text class="comparePlan">比计划: </text>
|
||||||
|
<div class="box2">
|
||||||
|
<image class="addIcon" :src="Number(info.Growth_Rate)>0?'https://eshangtech.com/ShopICO/ahyd-BID/index/addIcon.svg':'https://eshangtech.com/ShopICO/ahyd-BID/index/reduce.svg'"></image>
|
||||||
|
<p class="text">{{info.Growth_Rate ?info.Growth_Rate + '%':''}}</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="progress">
|
||||||
|
<div class="have" :style="{width:info.Budget_Degree + '%'}"></div>
|
||||||
|
</div>
|
||||||
|
<div class="bottom">
|
||||||
|
<div class="success">
|
||||||
|
<p>已完成:</p>
|
||||||
|
<text class="money">{{info.Revenue_Amount}}</text>
|
||||||
|
</div>
|
||||||
|
<div class="success">
|
||||||
|
<p>计划: </p>
|
||||||
|
<text class="money">{{info.Budget_Amount}}</text>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="list" v-for="(item,index) in dataList" :key="index">
|
||||||
|
<div class="top">
|
||||||
|
<div class="left">
|
||||||
|
<p class="title" ><text class="name">{{item.name}}</text>{{item.unit}}</p>
|
||||||
|
<div class="value" >{{item.Budget_Degree}}%</div>
|
||||||
|
</div>
|
||||||
|
<div class="right">
|
||||||
|
<text class="comparePlan">比计划: </text>
|
||||||
|
<div class="box2">
|
||||||
|
<image class="addIcon" :src="Number(item.Growth_Rate)>0?'https://eshangtech.com/ShopICO/ahyd-BID/index/addIcon.svg':'https://eshangtech.com/ShopICO/ahyd-BID/index/reduce.svg'"></image>
|
||||||
|
<p class="text">{{item.Growth_Rate?item.Growth_Rate + '%':''}}</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="progress">
|
||||||
|
<div class="have" :style="{width:item.Budget_Degree + '%'}"></div>
|
||||||
|
</div>
|
||||||
|
<div class="bottom">
|
||||||
|
<div class="success">
|
||||||
|
<p>已完成:</p>
|
||||||
|
<text class="money">{{item.Revenue_Amount}}</text>
|
||||||
|
</div>
|
||||||
|
<div class="success">
|
||||||
|
<p>计划: </p>
|
||||||
|
<text class="money">{{item.Budget_Amount }}</text>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import request from '@/util/index.js'
|
||||||
|
export default {
|
||||||
|
name: "planDetail",
|
||||||
|
data(){
|
||||||
|
return{
|
||||||
|
date:'', //时间
|
||||||
|
type:'', //类别
|
||||||
|
dataList:[],
|
||||||
|
id:'',
|
||||||
|
info:{},
|
||||||
|
month:0,//传入的月份
|
||||||
|
item:{}//月份的时候传入的整个片区信息
|
||||||
|
}
|
||||||
|
},
|
||||||
|
onLoad(option){
|
||||||
|
console.log('option',option)
|
||||||
|
this.type = option.type
|
||||||
|
if (option.id){
|
||||||
|
this.id =option.id
|
||||||
|
}
|
||||||
|
this.month = Number(option.month)
|
||||||
|
let date = new Date()
|
||||||
|
let y = date.getFullYear()
|
||||||
|
let m = date.getMonth() + 1
|
||||||
|
let d = date.getDate()
|
||||||
|
if (m<10){
|
||||||
|
m = '0'+m
|
||||||
|
}
|
||||||
|
if (d<10){
|
||||||
|
d = '0' + d
|
||||||
|
}
|
||||||
|
if (option.month){
|
||||||
|
if (m === Number(option.month)){
|
||||||
|
this.date = `${y}-${m}-${d}`
|
||||||
|
}else{
|
||||||
|
//月份不是当前月
|
||||||
|
let mayDate = `${y}-${option.month}`
|
||||||
|
let addDay = this.$util.getThisMonthDay(mayDate)
|
||||||
|
this.date = `${y}-${option.month}-${addDay}`
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (option.item){
|
||||||
|
this.item = JSON.parse(option.item)
|
||||||
|
}
|
||||||
|
|
||||||
|
this.getDateList()
|
||||||
|
},
|
||||||
|
onShow(){
|
||||||
|
if (this.type==='year'){
|
||||||
|
//每个月片区的列表
|
||||||
|
uni.setNavigationBarTitle({
|
||||||
|
title: `${this.month}月自营计划`,
|
||||||
|
})
|
||||||
|
}else{
|
||||||
|
//片区进来服务区的列表
|
||||||
|
uni.setNavigationBarTitle({
|
||||||
|
title: `${this.item.Serverpart_Name}本月自营计划`,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
},
|
||||||
|
methods:{
|
||||||
|
async getDateList(){
|
||||||
|
if (this.type==='year'){
|
||||||
|
let req = {
|
||||||
|
StatisticsDate:this.date,
|
||||||
|
ProvinceCode:'340000',
|
||||||
|
StatisticsType:1
|
||||||
|
}
|
||||||
|
const data = await request.$webGet('CommercialApi/Revenue/GetProvinceRevenueBudget',req)
|
||||||
|
data.Result_Data.RegionBudgetList.forEach(item=>{
|
||||||
|
let num = item.Serverpart_Name.indexOf('片区')
|
||||||
|
console.log(num)
|
||||||
|
if (num!==-1){
|
||||||
|
item.name = item.Serverpart_Name.slice(0,num)
|
||||||
|
item.unit = item.Serverpart_Name.slice(num,100)
|
||||||
|
}else{
|
||||||
|
item.name = item.Serverpart_Name
|
||||||
|
}
|
||||||
|
item.Revenue_Amount = this.$util.fmoney(item.Revenue_Amount)
|
||||||
|
item.Budget_Amount = this.$util.fmoney(item.Budget_Amount)
|
||||||
|
})
|
||||||
|
this.info = data.Result_Data
|
||||||
|
this.info.Budget_Amount = this.$util.fmoney(this.info.Budget_Amount)
|
||||||
|
this.info.Revenue_Amount = this.$util.fmoney(this.info.Revenue_Amount)
|
||||||
|
this.dataList = data.Result_Data.RegionBudgetList
|
||||||
|
|
||||||
|
console.log('data',data)
|
||||||
|
}else{
|
||||||
|
let time = uni.getStorageSync('lastDay')
|
||||||
|
let req = {
|
||||||
|
StatisticsDate:time,
|
||||||
|
ProvinceCode:'340000',
|
||||||
|
StatisticsType:4,
|
||||||
|
SPRegionTypeID:this.id
|
||||||
|
}
|
||||||
|
const data = await request.$webGet('CommercialApi/Revenue/GetProvinceRevenueBudget',req)
|
||||||
|
data.Result_Data.RegionBudgetList.forEach(item=>{
|
||||||
|
let num = item.Serverpart_Name.indexOf('服务区')
|
||||||
|
console.log(num)
|
||||||
|
if (num!==-1){
|
||||||
|
item.name = item.Serverpart_Name.slice(0,num)
|
||||||
|
item.unit = item.Serverpart_Name.slice(num,100)
|
||||||
|
}else{
|
||||||
|
item.name = item.Serverpart_Name
|
||||||
|
}
|
||||||
|
item.Revenue_Amount = this.$util.fmoney(item.Revenue_Amount)
|
||||||
|
item.Budget_Amount = this.$util.fmoney(item.Budget_Amount)
|
||||||
|
})
|
||||||
|
this.info = data.Result_Data
|
||||||
|
this.info.Budget_Amount = this.$util.fmoney(this.info.Budget_Amount)
|
||||||
|
this.info.Revenue_Amount = this.$util.fmoney(this.info.Revenue_Amount)
|
||||||
|
this.dataList = data.Result_Data.RegionBudgetList
|
||||||
|
|
||||||
|
console.log('data',data)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped lang="scss">
|
||||||
|
.main{
|
||||||
|
width: 100%;
|
||||||
|
min-height: 100vh;
|
||||||
|
box-sizing: border-box;
|
||||||
|
padding: 0 16px;
|
||||||
|
.listBox{
|
||||||
|
width: 100%;
|
||||||
|
box-sizing: border-box;
|
||||||
|
padding-bottom: calc(8px + env(safe-area-inset-bottom)) ;
|
||||||
|
.list{
|
||||||
|
width: 100%;
|
||||||
|
box-sizing: border-box;
|
||||||
|
padding: 12px;
|
||||||
|
background: #F5F5F5;
|
||||||
|
margin-bottom: 12px;
|
||||||
|
.top{
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: space-between;
|
||||||
|
.left{
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
.icon{
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
margin-right: 8px;
|
||||||
|
}
|
||||||
|
.title{
|
||||||
|
font-size: 14px;
|
||||||
|
font-family: PingFangSC-Semibold, PingFang SC;
|
||||||
|
font-weight: 600;
|
||||||
|
color: #150002;
|
||||||
|
line-height: 20px;
|
||||||
|
.name{
|
||||||
|
font-size: 18px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.value{
|
||||||
|
font-size: 14px;
|
||||||
|
font-family: DINAlternate-Bold, DINAlternate;
|
||||||
|
font-weight: bold;
|
||||||
|
color: #FF6D40;
|
||||||
|
line-height: 16px;
|
||||||
|
margin-left: 4px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.right{
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
.comparePlan{
|
||||||
|
font-size: 24rpx;
|
||||||
|
font-family: PingFangSC-Regular, PingFang SC;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #a69e9f;
|
||||||
|
line-height: 36rpx;
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
.box2{
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
.text{
|
||||||
|
font-size: 14px;
|
||||||
|
font-family: DINAlternate-Bold, DINAlternate;
|
||||||
|
color: #150002;
|
||||||
|
font-weight: bold;
|
||||||
|
|
||||||
|
line-height: 40rpx;
|
||||||
|
}
|
||||||
|
.addIcon {
|
||||||
|
width: 16px;
|
||||||
|
height: 16px;
|
||||||
|
margin-right: 2px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
.progress{
|
||||||
|
width: 100%;
|
||||||
|
height: 8px;
|
||||||
|
background: #fff;
|
||||||
|
border-radius: 6px;
|
||||||
|
margin: 8px 0 16px;
|
||||||
|
position: relative;
|
||||||
|
overflow: hidden;
|
||||||
|
.have{
|
||||||
|
position: absolute;
|
||||||
|
height: 100%;
|
||||||
|
border-radius: 6px;
|
||||||
|
top: 0;left: 0;
|
||||||
|
background:#FF8E5B
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.bottom {
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
margin-top: 16px;
|
||||||
|
.success {
|
||||||
|
width: calc(50% - 4px);
|
||||||
|
display: flex;
|
||||||
|
p{
|
||||||
|
font-size: 12px;
|
||||||
|
font-family: PingFangSC-Regular, PingFang SC;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #a69e9f;
|
||||||
|
line-height: 18px;
|
||||||
|
}
|
||||||
|
.money {
|
||||||
|
margin-left: 8px;
|
||||||
|
font-size: 14px;
|
||||||
|
font-family: PingFangSC-Semibold, PingFang SC;
|
||||||
|
font-weight: 600;
|
||||||
|
color: #160002;
|
||||||
|
line-height: 20px;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@ -93,32 +93,34 @@
|
|||||||
</view>
|
</view>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="list" v-for="(item,index) in dataList" :key="index">
|
<div class="listBox">
|
||||||
<div class="top">
|
<div class="list" v-for="(item,index) in dataList" :key="index" @click="handleGoDetail(item)">
|
||||||
<div class="left">
|
<div class="top">
|
||||||
<image class="icon" :src="type==='month'?'https://eshangtech.com/ShopICO/ahyd-BID/commercial/planMonth.svg':'https://eshangtech.com/ShopICO/ahyd-BID/commercial/planYear.svg'"></image>
|
<div class="left">
|
||||||
<p class="title">{{type==='month'?item.Serverpart_Name:item.Statistics_Month + '月'}}</p>
|
<p class="title" v-if="type==='month'"><text class="name">{{item.name}}</text>{{item.unit}}</p>
|
||||||
<div class="value" :style="{color:type==='year'?'#4962FF':''}">{{item.Budget_Degree}}%</div>
|
<p class="title" v-if="type==='year'"><text class="name">{{item.Statistics_Month}}</text>月</p>
|
||||||
</div>
|
<div class="value" :style="{color:type==='year'?'#4962FF':''}">{{item.Budget_Degree}}%</div>
|
||||||
<div class="right">
|
</div>
|
||||||
<text class="comparePlan">比计划: </text>
|
<div class="right">
|
||||||
<div class="box2">
|
<text class="comparePlan">比计划: </text>
|
||||||
<image class="addIcon" :src="Number(item.Growth_Rate)>0?'https://eshangtech.com/ShopICO/ahyd-BID/index/addIcon.svg':'https://eshangtech.com/ShopICO/ahyd-BID/index/reduce.svg'"></image>
|
<div class="box2">
|
||||||
<p class="text">{{item.Growth_Rate?item.Growth_Rate + '%':''}}</p>
|
<image class="addIcon" :src="Number(item.Growth_Rate)>0?'https://eshangtech.com/ShopICO/ahyd-BID/index/addIcon.svg':'https://eshangtech.com/ShopICO/ahyd-BID/index/reduce.svg'"></image>
|
||||||
|
<p class="text">{{item.Growth_Rate?item.Growth_Rate + '%':''}}</p>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="progress">
|
||||||
<div class="progress">
|
<div class="have" :style="{width:item.Budget_Degree + '%',background: type==='month'?'#FF8E5B':'#778CFD'}"></div>
|
||||||
<div class="have" :style="{width:item.Budget_Degree + '%',background: type==='month'?'#FF8E5B':'#778CFD'}"></div>
|
|
||||||
</div>
|
|
||||||
<div class="bottom">
|
|
||||||
<div class="success">
|
|
||||||
<p>本月已完成<text>/元</text></p>
|
|
||||||
<p class="money">{{item.Revenue_Amount}}</p>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="success">
|
<div class="bottom">
|
||||||
<p>本月计划<text>/元</text></p>
|
<div class="success">
|
||||||
<p class="money">{{item.Budget_Amount }}</p>
|
<p>已完成:</p>
|
||||||
|
<text class="money">{{item.Revenue_Amount}}</text>
|
||||||
|
</div>
|
||||||
|
<div class="success">
|
||||||
|
<p>计划: </p>
|
||||||
|
<text class="money">{{item.Budget_Amount }}</text>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -147,6 +149,7 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
onLoad(option){
|
onLoad(option){
|
||||||
this.lastDay = option.lastDay
|
this.lastDay = option.lastDay
|
||||||
this.type = option.type
|
this.type = option.type
|
||||||
@ -165,20 +168,47 @@ export default {
|
|||||||
this.getPlanListData(option.type)
|
this.getPlanListData(option.type)
|
||||||
},
|
},
|
||||||
methods:{
|
methods:{
|
||||||
async getPlanListData(type){
|
//跳转到详情页
|
||||||
|
handleGoDetail(item){
|
||||||
|
console.log('item',item)
|
||||||
|
if (this.type==='year'){
|
||||||
|
uni.navigateTo({
|
||||||
|
url:`/pages/commercialBI/planDetail?type=${this.type}&month=${item.Statistics_Month}`
|
||||||
|
})
|
||||||
|
}else{
|
||||||
|
uni.navigateTo({
|
||||||
|
url:`/pages/commercialBI/planDetail?type=${this.type}&item=${JSON.stringify(item)}&id=${item.Serverpart_ID}`
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
},
|
||||||
|
async getPlanListData(type){
|
||||||
|
console.log('type',type)
|
||||||
let req = {
|
let req = {
|
||||||
StatisticsDate:'2023-04-03',
|
StatisticsDate:'2023-04-03',
|
||||||
ProvinceCode:'340000',
|
ProvinceCode:'340000',
|
||||||
StatisticsType:type==='month'?1:type==='year'?2:''
|
StatisticsType:type==='month'?1:type==='year'?2:''
|
||||||
}
|
}
|
||||||
const data = await request.$webGet('CommercialApi/Revenue/GetProvinceRevenueBudget',req)
|
const data = await request.$webGet('CommercialApi/Revenue/GetProvinceRevenueBudget',req)
|
||||||
|
console.log('data',data)
|
||||||
uni.hideLoading()
|
uni.hideLoading()
|
||||||
data.Result_Data.RegionBudgetList.forEach(item=>{
|
data.Result_Data.RegionBudgetList.forEach(item=>{
|
||||||
|
if (type==='month'){
|
||||||
|
let num = item.Serverpart_Name.indexOf('片区')
|
||||||
|
console.log(num)
|
||||||
|
if (num!==-1){
|
||||||
|
item.name = item.Serverpart_Name.slice(0,num)
|
||||||
|
item.unit = item.Serverpart_Name.slice(num,100)
|
||||||
|
}else{
|
||||||
|
item.name = item.Serverpart_Name
|
||||||
|
}
|
||||||
|
}
|
||||||
item.Revenue_Amount = this.$util.fmoney(item.Revenue_Amount)
|
item.Revenue_Amount = this.$util.fmoney(item.Revenue_Amount)
|
||||||
item.Budget_Amount = this.$util.fmoney(item.Budget_Amount)
|
item.Budget_Amount = this.$util.fmoney(item.Budget_Amount)
|
||||||
})
|
})
|
||||||
this.info = data.Result_Data
|
this.info = data.Result_Data
|
||||||
|
this.info.Budget_Amount = this.$util.fmoney(this.info.Budget_Amount)
|
||||||
|
this.info.Revenue_Amount = this.$util.fmoney(this.info.Revenue_Amount)
|
||||||
this.dataList = data.Result_Data.RegionBudgetList
|
this.dataList = data.Result_Data.RegionBudgetList
|
||||||
console.log('data',data)
|
console.log('data',data)
|
||||||
},
|
},
|
||||||
@ -409,117 +439,120 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.list{
|
.listBox{
|
||||||
width: 100%;
|
width: 100%;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
padding: 12px;
|
padding-bottom: calc(8px + env(safe-area-inset-bottom)) ;
|
||||||
background: #F5F5F5;
|
.list{
|
||||||
margin-bottom: 12px;
|
width: 100%;
|
||||||
.top{
|
box-sizing: border-box;
|
||||||
display: flex;
|
padding: 12px;
|
||||||
align-items: center;
|
background: #F5F5F5;
|
||||||
justify-content: space-between;
|
margin-bottom: 12px;
|
||||||
.left{
|
.top{
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
.icon{
|
justify-content: space-between;
|
||||||
width: 20px;
|
.left{
|
||||||
height: 20px;
|
|
||||||
margin-right: 8px;
|
|
||||||
}
|
|
||||||
.title{
|
|
||||||
font-size: 14px;
|
|
||||||
font-family: PingFangSC-Semibold, PingFang SC;
|
|
||||||
font-weight: 600;
|
|
||||||
color: #150002;
|
|
||||||
line-height: 20px;
|
|
||||||
}
|
|
||||||
.value{
|
|
||||||
font-size: 14px;
|
|
||||||
font-family: DINAlternate-Bold, DINAlternate;
|
|
||||||
font-weight: bold;
|
|
||||||
color: #FF6D40;
|
|
||||||
line-height: 16px;
|
|
||||||
margin-left: 4px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.right{
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
.comparePlan{
|
|
||||||
font-size: 24rpx;
|
|
||||||
font-family: PingFangSC-Regular, PingFang SC;
|
|
||||||
font-weight: 400;
|
|
||||||
color: #a69e9f;
|
|
||||||
line-height: 36rpx;
|
|
||||||
white-space: nowrap;
|
|
||||||
}
|
|
||||||
.box2{
|
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
.text{
|
.icon{
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
margin-right: 8px;
|
||||||
|
}
|
||||||
|
.title{
|
||||||
|
font-size: 14px;
|
||||||
|
font-family: PingFangSC-Semibold, PingFang SC;
|
||||||
|
font-weight: 600;
|
||||||
|
color: #150002;
|
||||||
|
line-height: 20px;
|
||||||
|
.name{
|
||||||
|
font-size: 18px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.value{
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
font-family: DINAlternate-Bold, DINAlternate;
|
font-family: DINAlternate-Bold, DINAlternate;
|
||||||
color: #150002;
|
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
|
color: #FF6D40;
|
||||||
line-height: 40rpx;
|
line-height: 16px;
|
||||||
}
|
margin-left: 4px;
|
||||||
.addIcon {
|
|
||||||
width: 16px;
|
|
||||||
height: 16px;
|
|
||||||
margin-right: 2px;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
.right{
|
||||||
|
display: flex;
|
||||||
}
|
align-items: center;
|
||||||
.progress{
|
.comparePlan{
|
||||||
width: 100%;
|
font-size: 24rpx;
|
||||||
height: 8px;
|
|
||||||
background: #fff;
|
|
||||||
border-radius: 6px;
|
|
||||||
margin: 8px 0 16px;
|
|
||||||
position: relative;
|
|
||||||
overflow: hidden;
|
|
||||||
.have{
|
|
||||||
position: absolute;
|
|
||||||
height: 100%;
|
|
||||||
border-radius: 6px;
|
|
||||||
top: 0;left: 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.bottom {
|
|
||||||
display: flex;
|
|
||||||
justify-content: flex-start;
|
|
||||||
margin-top: 16px;
|
|
||||||
.success {
|
|
||||||
width: 50%;
|
|
||||||
.text {
|
|
||||||
font-size: 28rpx;
|
|
||||||
font-family: PingFangSC-Regular, PingFang SC;
|
|
||||||
font-weight: 400;
|
|
||||||
color: #786b6c;
|
|
||||||
line-height: 40rpx;
|
|
||||||
margin-bottom: 2px;
|
|
||||||
.unit {
|
|
||||||
font-size: 28rpx;
|
|
||||||
font-family: PingFangSC-Regular, PingFang SC;
|
font-family: PingFangSC-Regular, PingFang SC;
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
color: #a69e9f;
|
color: #a69e9f;
|
||||||
line-height: 40rpx;
|
line-height: 36rpx;
|
||||||
margin-left: 2px;
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
.box2{
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
.text{
|
||||||
|
font-size: 14px;
|
||||||
|
font-family: DINAlternate-Bold, DINAlternate;
|
||||||
|
color: #150002;
|
||||||
|
font-weight: bold;
|
||||||
|
|
||||||
|
line-height: 40rpx;
|
||||||
|
}
|
||||||
|
.addIcon {
|
||||||
|
width: 16px;
|
||||||
|
height: 16px;
|
||||||
|
margin-right: 2px;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.money {
|
|
||||||
font-size: 28rpx;
|
}
|
||||||
font-family: DINAlternate-Bold, DINAlternate;
|
.progress{
|
||||||
font-weight: 600;
|
width: 100%;
|
||||||
color: #160002;
|
height: 8px;
|
||||||
line-height: 40rpx;
|
background: #fff;
|
||||||
|
border-radius: 6px;
|
||||||
|
margin: 8px 0 16px;
|
||||||
|
position: relative;
|
||||||
|
overflow: hidden;
|
||||||
|
.have{
|
||||||
|
position: absolute;
|
||||||
|
height: 100%;
|
||||||
|
border-radius: 6px;
|
||||||
|
top: 0;left: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.bottom {
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
margin-top: 16px;
|
||||||
|
.success {
|
||||||
|
width: calc(50% - 4px);
|
||||||
|
display: flex;
|
||||||
|
p{
|
||||||
|
font-size: 12px;
|
||||||
|
font-family: PingFangSC-Regular, PingFang SC;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #a69e9f;
|
||||||
|
line-height: 18px;
|
||||||
|
}
|
||||||
|
.money {
|
||||||
|
margin-left: 8px;
|
||||||
|
font-size: 14px;
|
||||||
|
font-family: PingFangSC-Semibold, PingFang SC;
|
||||||
|
font-weight: 600;
|
||||||
|
color: #160002;
|
||||||
|
line-height: 20px;
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@ -497,7 +497,6 @@ export default {
|
|||||||
}
|
}
|
||||||
uni.setStorageSync('seatInfo', seatInfo);
|
uni.setStorageSync('seatInfo', seatInfo);
|
||||||
this.seat = seatInfo
|
this.seat = seatInfo
|
||||||
this.nearestService()
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}else{
|
}else{
|
||||||
@ -505,6 +504,8 @@ export default {
|
|||||||
this.nearestService()
|
this.nearestService()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 获取标签数据
|
||||||
|
this.getLabelDetail()
|
||||||
//设置日期选择器的开始时间和结束时间
|
//设置日期选择器的开始时间和结束时间
|
||||||
let y = date.getFullYear()
|
let y = date.getFullYear()
|
||||||
let m = date.getMonth() + 1
|
let m = date.getMonth() + 1
|
||||||
@ -529,9 +530,25 @@ export default {
|
|||||||
// 离开页面投诉建议的悬浮框隐藏掉
|
// 离开页面投诉建议的悬浮框隐藏掉
|
||||||
this.isShow = false
|
this.isShow = false
|
||||||
this.selectTab = 1
|
this.selectTab = 1
|
||||||
|
if (!this.seat){
|
||||||
|
this.nearestService()
|
||||||
|
}
|
||||||
},
|
},
|
||||||
methods:{
|
methods:{
|
||||||
...mapActions(['memberLogin','getLoginCode']),
|
...mapActions(['memberLogin','getLoginCode']),
|
||||||
|
async getLabelDetail(){
|
||||||
|
let req = {
|
||||||
|
SearchParameter:{
|
||||||
|
STATISTICS_DATE:this.lastDay,
|
||||||
|
ANALYSISINS_TYPE:'',
|
||||||
|
ANALYSISINS_FORMAT:'1000'
|
||||||
|
},
|
||||||
|
PageIndex:1,
|
||||||
|
PageSize:10
|
||||||
|
}
|
||||||
|
const data = await request.$webPost('CommercialApi/Analysis/GetANALYSISINSList',req)
|
||||||
|
console.log('getLabelDetail',data)
|
||||||
|
},
|
||||||
async nearestService(){
|
async nearestService(){
|
||||||
let seat = uni.getStorageSync('seatInfo');
|
let seat = uni.getStorageSync('seatInfo');
|
||||||
let req = {
|
let req = {
|
||||||
|
|||||||
@ -2,11 +2,11 @@
|
|||||||
<div class="main">
|
<div class="main">
|
||||||
<div class="leftArrow" :style="{top:(menu.top + ((menu.height - 24)/2) )+ 'px'}" >
|
<div class="leftArrow" :style="{top:(menu.top + ((menu.height - 24)/2) )+ 'px'}" >
|
||||||
<image class="img" src="https://eshangtech.com/ShopICO/ahyd-BID/commercial/navigation-left.svg" @click="handleBack"></image>
|
<image class="img" src="https://eshangtech.com/ShopICO/ahyd-BID/commercial/navigation-left.svg" @click="handleBack"></image>
|
||||||
<div class="pickers" v-if="isShowPicker">
|
<div class="pickers" v-if="isShowPicker" @click="handleChangeService">
|
||||||
<div class="pick" @click="handleChangeService" :value="selectIndex" :range="array" range-key="name">
|
<div class="pick" :value="selectIndex" :range="array" range-key="name">
|
||||||
<view class="picker">
|
<view class="picker">
|
||||||
<p class="pickTitle">{{info.SERVERPART_NAME}}</p>
|
<p class="pickTitle">{{info.SERVERPART_NAME?info.SERVERPART_NAME:''}}</p>
|
||||||
{{array[selectIndex].name?array[selectIndex].name:''}}
|
{{info.SPREGIONTYPE_NAME?info.SPREGIONTYPE_NAME:''}}
|
||||||
</view>
|
</view>
|
||||||
<image class="rightArrow" src="https://eshangtech.com/ShopICO/ahyd-BID/commercial/rightArrow.svg"></image>
|
<image class="rightArrow" src="https://eshangtech.com/ShopICO/ahyd-BID/commercial/rightArrow.svg"></image>
|
||||||
</div>
|
</div>
|
||||||
@ -15,130 +15,135 @@
|
|||||||
<div class="topImg">
|
<div class="topImg">
|
||||||
<image class="topDefaultBg" src="https://eshangtech.com/ShopICO/ahyd-BID/service/default.png"></image>
|
<image class="topDefaultBg" src="https://eshangtech.com/ShopICO/ahyd-BID/service/default.png"></image>
|
||||||
</div>
|
</div>
|
||||||
<div class="info">
|
<div class="menu">
|
||||||
<div class="top">
|
<div class="top">
|
||||||
<div class="left">
|
<div class="left">
|
||||||
<p class="title">{{info.SERVERPART_NAME}}</p>
|
<p class="title">{{info.SERVERPART_NAME}}</p>
|
||||||
<text class="status">营业中</text>
|
<text class="status">营业中</text>
|
||||||
</div>
|
</div>
|
||||||
<div class="iconBox">
|
<div class="iconBox" @click="handleGoMap">
|
||||||
<image class="icon" src="https://eshangtech.com/ShopICO/ahyd-BID/service/map.svg"></image>
|
<image class="icon" src="https://eshangtech.com/ShopICO/ahyd-BID/service/map.svg"></image>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<p class="address">{{info.ServerpartInfo.EXPRESSWAY_NAME}}</p>
|
<div class="scroll">
|
||||||
<div class="typeList">
|
<div class="info">
|
||||||
<div class="typeItem" v-for="(item,index) in typeList" :key="index" v-if="item.isShow">
|
<p class="address">{{info.ServerpartInfo.EXPRESSWAY_NAME}}</p>
|
||||||
<image class="img" :src="item.url"></image>
|
<div class="typeList">
|
||||||
<text class="text">{{item.name}}</text>
|
<div class="typeItem" v-for="(item,index) in typeList" :key="index" v-if="item.isShow">
|
||||||
</div>
|
<image class="img" :src="item.url"></image>
|
||||||
</div>
|
<text class="text">{{item.name}}</text>
|
||||||
<div class="baseInfo">
|
|
||||||
<p class="title">基本信息</p>
|
|
||||||
<div class="word">
|
|
||||||
<p class="subTitle">取水方式</p>
|
|
||||||
<text class="value">{{info.ServerpartInfo.WATERINTAKE_TYPE===1?'自来水':info.ServerpartInfo.WATERINTAKE_TYPE===2?'井水':'' }}</text>
|
|
||||||
</div>
|
|
||||||
<div class="word">
|
|
||||||
<p class="subTitle">污水处理</p>
|
|
||||||
<text class="text">{{info.ServerpartInfo.SEWAGEDISPOSAL_TYPE===1?'市政':info.ServerpartInfo.SEWAGEDISPOSAL_TYPE===2?'污水处理设备':''}}</text>
|
|
||||||
</div>
|
|
||||||
<div class="word">
|
|
||||||
<p class="subTitle">市区县镇</p>
|
|
||||||
<text class="text">{{info.ServerpartInfo.SERVERPART_ADDRESS?info.ServerpartInfo.SERVERPART_ADDRESS:'' }}</text>
|
|
||||||
</div>
|
|
||||||
<div class="word">
|
|
||||||
<p class="subTitle">管理单位</p>
|
|
||||||
<text class="text">{{info.ServerpartInfo.MANAGERCOMPANY?info.ServerpartInfo.MANAGERCOMPANY:'' }}</text>
|
|
||||||
</div>
|
|
||||||
<div class="word">
|
|
||||||
<p class="subTitle">产权单位</p>
|
|
||||||
<text class="text">{{info.ServerpartInfo.OWNEDCOMPANY?info.ServerpartInfo.OWNEDCOMPANY:'' }}</text>
|
|
||||||
</div>
|
|
||||||
<div class="word">
|
|
||||||
<p class="subTitle">介绍说明</p>
|
|
||||||
<text class="text">{{info.ServerpartInfo.SERVERPART_INFO?info.ServerpartInfo.SERVERPART_INFO:'' }}</text>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="areaInfo" style="margin-top: 16px">
|
|
||||||
<p class="title">面积信息</p>
|
|
||||||
<div class="word">
|
|
||||||
<p class="subTitleArea">占地面积</p>
|
|
||||||
<text class="value" v-if="info.ServerpartInfo.FLOORAREA">{{info.ServerpartInfo.FLOORAREA }}<text style="margin-left: 4px">m²</text></text>
|
|
||||||
<text class="value" v-else></text>
|
|
||||||
</div>
|
|
||||||
<div class="word">
|
|
||||||
<p class="subTitleArea">停车场面积</p>
|
|
||||||
<text class="value" v-if="info.ServerpartInfo.SHAREAREA">{{info.ServerpartInfo.SHAREAREA}}<text style="margin-left: 4px">m²</text></text>
|
|
||||||
<text class="value" v-else></text>
|
|
||||||
</div>
|
|
||||||
<div class="word">
|
|
||||||
<p class="subTitleArea">建筑面积</p>
|
|
||||||
<text class="value" v-if="info.ServerpartInfo.SERVERPART_AREA">{{info.ServerpartInfo.SERVERPART_AREA }}<text style="margin-left: 4px">m²</text></text>
|
|
||||||
<text class="value" v-else></text>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="service">
|
|
||||||
<div class="serviceItem" v-for="(item,index) in info.RegionInfo" :key="index" :style="{marginTop:index!==0?'32px':''}">
|
|
||||||
<p class="title">{{item.SERVERPART_REGIONNAME}}</p>
|
|
||||||
<div class="box">
|
|
||||||
<div class="left">
|
|
||||||
<image class="boxImg" src="https://eshangtech.com/ShopICO/ahyd-BID/service/serviceHotal.svg"></image>
|
|
||||||
<text class="textTitle">服务信息</text>
|
|
||||||
</div>
|
|
||||||
<div class="right">
|
|
||||||
<div class="item">
|
|
||||||
<p :class="item.HASPANTRY?'text':'unText'">{{item.HASPANTRY?'男厕(' + item.HASPANTRY+')':'男厕' }}</p>
|
|
||||||
<p :class="item.HASTHIRDTOILETS?'text':'unText'">第三卫生间</p>
|
|
||||||
<p :class="item.HASCHILD?'text':'unText'">车辆维修</p>
|
|
||||||
<p :class="item.HASWATERROOM?'text':'unText'">{{item.HASWATERROOM?'开水器(' + item.HASWATERROOM + ')':'开水器' }}</p>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="item">
|
</div>
|
||||||
<p :class="item.HASWIFI?'text':'unText'">{{item.HASWIFI?'女厕(' + item.HASWIFI + ')':'女厕' }}</p>
|
<div class="baseInfo">
|
||||||
<p :class="item.TOILETCOUNT?'text':'unText'">{{item.TOILETCOUNT?'潮汐厕位(' + item.TOILETCOUNT + ')':'潮汐厕位' }}</p>
|
<p class="title">基本信息</p>
|
||||||
<p :class="item.HASSHOWERROOM?'text':'unText'">车辆加水</p>
|
<div class="word">
|
||||||
|
<p class="subTitle">取水方式</p>
|
||||||
|
<text class="value">{{info.ServerpartInfo.WATERINTAKE_TYPE===1?'自来水':info.ServerpartInfo.WATERINTAKE_TYPE===2?'井水':'' }}</text>
|
||||||
|
</div>
|
||||||
|
<div class="word">
|
||||||
|
<p class="subTitle">污水处理</p>
|
||||||
|
<text class="text">{{info.ServerpartInfo.SEWAGEDISPOSAL_TYPE===1?'市政':info.ServerpartInfo.SEWAGEDISPOSAL_TYPE===2?'污水处理设备':''}}</text>
|
||||||
|
</div>
|
||||||
|
<div class="word">
|
||||||
|
<p class="subTitle">市区县镇</p>
|
||||||
|
<text class="text">{{info.ServerpartInfo.SERVERPART_ADDRESS?info.ServerpartInfo.SERVERPART_ADDRESS:'' }}</text>
|
||||||
|
</div>
|
||||||
|
<div class="word">
|
||||||
|
<p class="subTitle">管理单位</p>
|
||||||
|
<text class="text">{{info.ServerpartInfo.MANAGERCOMPANY?info.ServerpartInfo.MANAGERCOMPANY:'' }}</text>
|
||||||
|
</div>
|
||||||
|
<div class="word">
|
||||||
|
<p class="subTitle">产权单位</p>
|
||||||
|
<text class="text">{{info.ServerpartInfo.OWNEDCOMPANY?info.ServerpartInfo.OWNEDCOMPANY:'' }}</text>
|
||||||
|
</div>
|
||||||
|
<div class="word">
|
||||||
|
<p class="subTitle">介绍说明</p>
|
||||||
|
<text class="text">{{info.ServerpartInfo.SERVERPART_INFO?info.ServerpartInfo.SERVERPART_INFO:'' }}</text>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="areaInfo" style="margin-top: 16px">
|
||||||
|
<p class="title">面积信息</p>
|
||||||
|
<div class="word">
|
||||||
|
<p class="subTitleArea">占地面积</p>
|
||||||
|
<text class="value" v-if="info.ServerpartInfo.FLOORAREA">{{info.ServerpartInfo.FLOORAREA }}<text style="margin-left: 4px">m²</text></text>
|
||||||
|
<text class="value" v-else></text>
|
||||||
|
</div>
|
||||||
|
<div class="word">
|
||||||
|
<p class="subTitleArea">停车场面积</p>
|
||||||
|
<text class="value" v-if="info.ServerpartInfo.SHAREAREA">{{info.ServerpartInfo.SHAREAREA}}<text style="margin-left: 4px">m²</text></text>
|
||||||
|
<text class="value" v-else></text>
|
||||||
|
</div>
|
||||||
|
<div class="word">
|
||||||
|
<p class="subTitleArea">建筑面积</p>
|
||||||
|
<text class="value" v-if="info.ServerpartInfo.SERVERPART_AREA">{{info.ServerpartInfo.SERVERPART_AREA }}<text style="margin-left: 4px">m²</text></text>
|
||||||
|
<text class="value" v-else></text>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="box">
|
<div class="service">
|
||||||
<div class="left">
|
<div class="serviceItem" v-for="(item,index) in info.RegionInfo" :key="index" :style="{marginTop:index!==0?'32px':''}">
|
||||||
<image class="boxImg" src="https://eshangtech.com/ShopICO/ahyd-BID/service/serviceCar.svg"> </image>
|
<p class="title">{{item.SERVERPART_REGIONNAME}}</p>
|
||||||
<text class="textTitle">车位信息</text>
|
<div class="box">
|
||||||
</div>
|
<div class="left">
|
||||||
<div class="right">
|
<image class="boxImg" src="https://eshangtech.com/ShopICO/ahyd-BID/service/serviceHotal.svg"></image>
|
||||||
<div class="item">
|
<text class="textTitle">服务信息</text>
|
||||||
<p :class="item.SMALLPARKING?'text':'unText'">{{item.SMALLPARKING?'轿车车位(' + item.SMALLPARKING + ')':'轿车车位' }}</p>
|
</div>
|
||||||
<p :class="item.TRUCKPACKING?'text':'unText'">{{item.TRUCKPACKING?'货车车位(' + item.TRUCKPACKING + ')':'货车车位' }}</p>
|
<div class="right">
|
||||||
|
<div class="item">
|
||||||
|
<p :class="item.HASPANTRY?'text':'unText'">{{item.HASPANTRY?'男厕(' + item.HASPANTRY+')':'男厕' }}</p>
|
||||||
|
<p :class="item.HASTHIRDTOILETS?'text':'unText'">第三卫生间</p>
|
||||||
|
<p :class="item.HASCHILD?'text':'unText'">车辆维修</p>
|
||||||
|
<p :class="item.HASWATERROOM?'text':'unText'">{{item.HASWATERROOM?'开水器(' + item.HASWATERROOM + ')':'开水器' }}</p>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<p :class="item.HASWIFI?'text':'unText'">{{item.HASWIFI?'女厕(' + item.HASWIFI + ')':'女厕' }}</p>
|
||||||
|
<p :class="item.TOILETCOUNT?'text':'unText'">{{item.TOILETCOUNT?'潮汐厕位(' + item.TOILETCOUNT + ')':'潮汐厕位' }}</p>
|
||||||
|
<p :class="item.HASSHOWERROOM?'text':'unText'">车辆加水</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
</div>
|
<div class="box">
|
||||||
<div class="item">
|
<div class="left">
|
||||||
<p :class="item.PACKING?'text':'unText'">{{item.PACKING?'客车车位(' + item.PACKING + ')':'客车车位' }}</p>
|
<image class="boxImg" src="https://eshangtech.com/ShopICO/ahyd-BID/service/serviceCar.svg"> </image>
|
||||||
<p :class="item.DANPACKING?'text':'unText'">{{item.DANPACKING?'危化品车位(' + item.DANPACKING +')':'危化品车位' }}</p>
|
<text class="textTitle">车位信息</text>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="right">
|
||||||
</div>
|
<div class="item">
|
||||||
|
<p :class="item.SMALLPARKING?'text':'unText'">{{item.SMALLPARKING?'轿车车位(' + item.SMALLPARKING + ')':'轿车车位' }}</p>
|
||||||
|
<p :class="item.TRUCKPACKING?'text':'unText'">{{item.TRUCKPACKING?'货车车位(' + item.TRUCKPACKING + ')':'货车车位' }}</p>
|
||||||
|
|
||||||
<div class="box">
|
</div>
|
||||||
<div class="left">
|
<div class="item">
|
||||||
<image class="boxImg" src="https://eshangtech.com/ShopICO/ahyd-BID/service/serviceFood.svg"></image>
|
<p :class="item.PACKING?'text':'unText'">{{item.PACKING?'客车车位(' + item.PACKING + ')':'客车车位' }}</p>
|
||||||
<text class="textTitle">经营信息</text>
|
<p :class="item.DANPACKING?'text':'unText'">{{item.DANPACKING?'危化品车位(' + item.DANPACKING +')':'危化品车位' }}</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="right">
|
</div>
|
||||||
<div class="item">
|
|
||||||
<p :class="item.DININGROOMCOUNT?'text':'unText'" class="text">餐饮</p>
|
|
||||||
<p :class="item.HASMESSAGESEARCH?'text':'unText'" class="text">住宿</p>
|
|
||||||
<p class="model">{{item.BUSINESSTYPE }}</p>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="item">
|
|
||||||
<p :class="item.HASBACKGROUNDRADIO?'text':'unText'" >便利店</p>
|
<div class="box">
|
||||||
<p :class="item.DININGBXCOUNT?'text':'unText'">{{item.DININGBXCOUNT?'商铺('+item.DININGBXCOUNT+')':'商铺' }}</p>
|
<div class="left">
|
||||||
|
<image class="boxImg" src="https://eshangtech.com/ShopICO/ahyd-BID/service/serviceFood.svg"></image>
|
||||||
|
<text class="textTitle">经营信息</text>
|
||||||
|
</div>
|
||||||
|
<div class="right">
|
||||||
|
<div class="item">
|
||||||
|
<p :class="item.DININGROOMCOUNT?'text':'unText'" class="text">餐饮</p>
|
||||||
|
<p :class="item.HASMESSAGESEARCH?'text':'unText'" class="text">住宿</p>
|
||||||
|
<p class="model">{{item.BUSINESSTYPE }}</p>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<p :class="item.HASBACKGROUNDRADIO?'text':'unText'" >便利店</p>
|
||||||
|
<p :class="item.DININGBXCOUNT?'text':'unText'">{{item.DININGBXCOUNT?'商铺('+item.DININGBXCOUNT+')':'商铺' }}</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@ -169,33 +174,25 @@ export default {
|
|||||||
this.menu = uni.getMenuButtonBoundingClientRect()
|
this.menu = uni.getMenuButtonBoundingClientRect()
|
||||||
if (option.isPicker==='false'){
|
if (option.isPicker==='false'){
|
||||||
this.isShowPicker = false
|
this.isShowPicker = false
|
||||||
this.getServiceList()
|
|
||||||
this.getList(option)
|
|
||||||
}else if (option.isPicker==='true'){
|
}else if (option.isPicker==='true'){
|
||||||
this.isShowPicker = true
|
this.isShowPicker = true
|
||||||
let seat = uni.getStorageSync('seatInfo')
|
|
||||||
this.handleSearch(seat.longitude,seat.latitude)
|
|
||||||
this.getServiceList()
|
|
||||||
}else{
|
|
||||||
this.getServiceList()
|
|
||||||
this.getList(option)
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
onShow(){
|
||||||
|
let seat = uni.getStorageSync('currentService')
|
||||||
|
this.handleSearch(seat)
|
||||||
|
let pageList = getCurrentPages()
|
||||||
|
console.log('pageList',pageList)
|
||||||
|
//清理页面栈的方法
|
||||||
|
this.clearPage()
|
||||||
|
},
|
||||||
methods:{
|
methods:{
|
||||||
async handleSearch(longitude,latitude){
|
async handleSearch(seat){
|
||||||
let req = {
|
console.log('seat',seat)
|
||||||
longitude:longitude,
|
|
||||||
Province_Code:'340000',
|
|
||||||
latitude:latitude,
|
|
||||||
}
|
|
||||||
console.log(req)
|
|
||||||
const data = await request.$webGet('CommercialApi/BaseInfo/GetServerpartList',req)
|
|
||||||
let id =data.Result_Data.List[0].SERVERPART_ID
|
|
||||||
this.info = data.Result_Data.List[0]
|
|
||||||
let reqs = {
|
let reqs = {
|
||||||
longitude:longitude,
|
longitude:seat.longitude,
|
||||||
ServerpartId:id,
|
ServerpartId:seat.Serverpart_ID,
|
||||||
latitude:latitude
|
latitude:seat.latitude
|
||||||
}
|
}
|
||||||
const totalData = await request.$webGet('CommercialApi/BaseInfo/GetServerpartInfo',reqs)
|
const totalData = await request.$webGet('CommercialApi/BaseInfo/GetServerpartInfo',reqs)
|
||||||
this.info = totalData.Result_Data
|
this.info = totalData.Result_Data
|
||||||
@ -210,20 +207,23 @@ export default {
|
|||||||
}
|
}
|
||||||
this.typeList[1].isShow = this.info.STARTDATE
|
this.typeList[1].isShow = this.info.STARTDATE
|
||||||
},
|
},
|
||||||
//获取片区列表
|
|
||||||
async getServiceList(){
|
|
||||||
let req = {
|
|
||||||
Province_Code:'340000'
|
|
||||||
}
|
|
||||||
const data = await request.$webGet('CommercialApi/BaseInfo/GetSPRegionList',req)
|
|
||||||
console.log('data22222',data)
|
|
||||||
this.array = data.Result_Data.List
|
|
||||||
},
|
|
||||||
//选择服务区
|
//选择服务区
|
||||||
handleChangeService(e){
|
handleChangeService(){
|
||||||
uni.redirectTo({
|
let currentService = uni.getStorageSync('currentService')
|
||||||
url:'/pages/map/index'
|
let lastDay = uni.getStorageSync('lastDay')
|
||||||
})
|
let pageList = getCurrentPages()
|
||||||
|
console.log('pageList',pageList)
|
||||||
|
if (pageList.length>2){
|
||||||
|
if (this.isShowPicker){
|
||||||
|
uni.navigateBack({
|
||||||
|
delta: 1
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
uni.navigateTo({
|
||||||
|
url:`/pages/map/index?time=${lastDay}&serviceInfo=${JSON.stringify(currentService)}`
|
||||||
|
})
|
||||||
|
}
|
||||||
},
|
},
|
||||||
async getList(option){
|
async getList(option){
|
||||||
let req = {
|
let req = {
|
||||||
@ -248,10 +248,38 @@ export default {
|
|||||||
},
|
},
|
||||||
//返回上一级页面
|
//返回上一级页面
|
||||||
handleBack(){
|
handleBack(){
|
||||||
uni.navigateBack({
|
uni.switchTab({
|
||||||
delta: 1
|
url: '/pages/userCenter/userCenter'
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
//点击跳转导航页
|
||||||
|
handleGoMap(){
|
||||||
|
let key='STWBZ-DKCR4-J6UUF-FRD5I-3EBN2-GDBOT'
|
||||||
|
let referer ='goMap'
|
||||||
|
//拿到用户当前的位置
|
||||||
|
let user = uni.getStorageSync('seatInfo')
|
||||||
|
let startPoint = {
|
||||||
|
name:'我的位置',
|
||||||
|
latitude:user.latitude,
|
||||||
|
longitude:user.longitude
|
||||||
|
}
|
||||||
|
//拿到当前已经选中的服务区的位置 也就是终点
|
||||||
|
let seat = uni.getStorageSync('currentService')
|
||||||
|
let endPoint = {
|
||||||
|
name:seat.SERVERPART_NAME,
|
||||||
|
latitude:seat.latitude,
|
||||||
|
longitude:seat.longitude
|
||||||
|
}
|
||||||
|
wx.navigateTo({
|
||||||
|
url: `plugin://routePlan/index?key=${key}&referer=${referer}&endPoint=${JSON.stringify(endPoint)}&startPoint=${JSON.stringify(startPoint)}`
|
||||||
|
});
|
||||||
|
},
|
||||||
|
//清理页面栈的方法
|
||||||
|
clearPage(){
|
||||||
|
console.log(11111)
|
||||||
|
let pageList = getCurrentPages()
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
@ -260,6 +288,8 @@ export default {
|
|||||||
.main{
|
.main{
|
||||||
width: 100%;
|
width: 100%;
|
||||||
max-width: 100vw;
|
max-width: 100vw;
|
||||||
|
height: 100vh;
|
||||||
|
box-sizing: border-box;
|
||||||
position: relative;
|
position: relative;
|
||||||
.leftArrow{
|
.leftArrow{
|
||||||
width: 100%;
|
width: 100%;
|
||||||
@ -320,221 +350,242 @@ export default {
|
|||||||
height: 100%;
|
height: 100%;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.info{
|
.menu{
|
||||||
width: 100%;
|
width:100%;
|
||||||
box-sizing: border-box;
|
height: calc(100vh - 196px);
|
||||||
background: #FFFFFF;
|
position: relative;
|
||||||
border-radius: 16px 16px 1px 1px;
|
border-radius: 16px 16px 1px 1px;
|
||||||
transform: translateY(-16px);
|
transform: translateY(-16px);
|
||||||
padding: 16px 16px 16px;
|
.top{
|
||||||
.top{
|
height: 40px;
|
||||||
display: flex;
|
width: calc(100% - 32px);
|
||||||
justify-content: space-between;
|
position: fixed;
|
||||||
.left{
|
top: 0;
|
||||||
display: flex;
|
box-sizing: border-box;
|
||||||
align-items: center;
|
padding-top: 16px;
|
||||||
.title{
|
left: 16px;
|
||||||
font-size: 18px;
|
background: #fff;
|
||||||
font-family: PingFangSC-Semibold, PingFang SC;
|
display: flex;
|
||||||
font-weight: 600;
|
justify-content: space-between;
|
||||||
color: #160002;
|
.left{
|
||||||
line-height: 26px;
|
|
||||||
}
|
|
||||||
.status{
|
|
||||||
font-size: 12px;
|
|
||||||
font-family: PingFangSC-Regular, PingFang SC;
|
|
||||||
font-weight: 400;
|
|
||||||
color: #160002;
|
|
||||||
line-height: 18px;
|
|
||||||
padding: 0 6px;
|
|
||||||
background: #EAEAEA;
|
|
||||||
border-radius: 2px;
|
|
||||||
margin-left: 8px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.iconBox{
|
|
||||||
width: 28px;
|
|
||||||
height: 28px;
|
|
||||||
border: 1px solid #F1F1F1;
|
|
||||||
border-radius: 50%;
|
|
||||||
.icon{
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.address{
|
|
||||||
font-size: 14px;
|
|
||||||
font-family: PingFangSC-Regular, PingFang SC;
|
|
||||||
font-weight: 400;
|
|
||||||
color: #160002;
|
|
||||||
line-height: 20px;
|
|
||||||
margin-top: 4px;
|
|
||||||
}
|
|
||||||
.typeList{
|
|
||||||
width: 100%;
|
|
||||||
display: flex;
|
|
||||||
flex-flow: wrap;
|
|
||||||
margin-top: 16px;
|
|
||||||
.typeItem{
|
|
||||||
width: calc((100% - 24px)/3);
|
|
||||||
height: 66px;
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
background: #F7F7F7;
|
|
||||||
border-radius: 4px;
|
|
||||||
margin-bottom: 8px;
|
|
||||||
margin-right: 8px;
|
|
||||||
.img{
|
|
||||||
width: 24px;
|
|
||||||
height: 24px;
|
|
||||||
}
|
|
||||||
.text{
|
|
||||||
font-size: 14px;
|
|
||||||
font-family: PingFangSC-Regular, PingFang SC;
|
|
||||||
font-weight: 400;
|
|
||||||
color: #160002;
|
|
||||||
line-height: 20px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.baseInfo,.areaInfo{
|
|
||||||
margin-top: 8px;
|
|
||||||
.title{
|
|
||||||
font-size: 14px;
|
|
||||||
font-family: PingFangSC-Semibold, PingFang SC;
|
|
||||||
font-weight: 600;
|
|
||||||
color: #160002;
|
|
||||||
line-height: 20px;
|
|
||||||
}
|
|
||||||
.word{
|
|
||||||
display: flex;
|
|
||||||
margin-top: 8px;
|
|
||||||
.subTitle{
|
|
||||||
font-size: 14px;
|
|
||||||
font-family: PingFangSC-Regular, PingFang SC;
|
|
||||||
font-weight: 400;
|
|
||||||
color: #786B6C;
|
|
||||||
line-height: 20px;
|
|
||||||
margin-right: 8px;
|
|
||||||
min-width: 60px;
|
|
||||||
}
|
|
||||||
.text{
|
|
||||||
flex: 1;
|
|
||||||
font-size: 14px;
|
|
||||||
font-family: PingFangSC-Regular, PingFang SC;
|
|
||||||
font-weight: 400;
|
|
||||||
color: #160002;
|
|
||||||
line-height: 20px;
|
|
||||||
display: inline-block;
|
|
||||||
}
|
|
||||||
.subTitleArea{
|
|
||||||
font-size: 14px;
|
|
||||||
font-family: PingFangSC-Regular, PingFang SC;
|
|
||||||
font-weight: 400;
|
|
||||||
color: #786B6C;
|
|
||||||
line-height: 20px;
|
|
||||||
display: inline-block;
|
|
||||||
margin-right: 8px;
|
|
||||||
min-width: 80px;
|
|
||||||
.text{
|
|
||||||
font-size: 14px;
|
|
||||||
font-family: PingFangSC-Regular, PingFang SC;
|
|
||||||
font-weight: 400;
|
|
||||||
color: #160002;
|
|
||||||
line-height: 20px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.value{
|
|
||||||
font-size: 14px;
|
|
||||||
font-family: PingFangSC-Regular, PingFang SC;
|
|
||||||
font-weight: 400;
|
|
||||||
color: #160002;
|
|
||||||
line-height: 20px;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.service{
|
|
||||||
background: #fff;
|
|
||||||
padding: 12px 16px calc(16px + env(safe-area-inset-bottom));
|
|
||||||
.serviceItem{
|
|
||||||
margin-top: 4px;
|
|
||||||
.title{
|
|
||||||
font-size: 14px;
|
|
||||||
font-family: PingFangSC-Semibold, PingFang SC;
|
|
||||||
font-weight: 600;
|
|
||||||
color: #160002;
|
|
||||||
line-height: 20px;
|
|
||||||
}
|
|
||||||
.box{
|
|
||||||
margin-top: 12px;
|
|
||||||
display: flex;
|
display: flex;
|
||||||
.left{
|
align-items: center;
|
||||||
|
.title{
|
||||||
|
font-size: 18px;
|
||||||
|
font-family: PingFangSC-Semibold, PingFang SC;
|
||||||
|
font-weight: 600;
|
||||||
|
color: #160002;
|
||||||
|
line-height: 26px;
|
||||||
|
}
|
||||||
|
.status{
|
||||||
|
font-size: 12px;
|
||||||
|
font-family: PingFangSC-Regular, PingFang SC;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #160002;
|
||||||
|
line-height: 18px;
|
||||||
|
padding: 0 6px;
|
||||||
|
background: #EAEAEA;
|
||||||
|
border-radius: 2px;
|
||||||
|
margin-left: 8px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.iconBox{
|
||||||
|
width: 28px;
|
||||||
|
height: 28px;
|
||||||
|
border: 1px solid #F1F1F1;
|
||||||
|
border-radius: 50%;
|
||||||
|
.icon{
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.scroll{
|
||||||
|
width:100%;
|
||||||
|
height: calc(100%);
|
||||||
|
overflow-y: scroll;
|
||||||
|
border-radius: 16px 16px 1px 1px;
|
||||||
|
.info{
|
||||||
|
width: 100%;
|
||||||
|
box-sizing: border-box;
|
||||||
|
background: #FFFFFF;
|
||||||
|
padding: 16px 16px 16px;
|
||||||
|
z-index:100;
|
||||||
|
.address{
|
||||||
|
font-size: 14px;
|
||||||
|
font-family: PingFangSC-Regular, PingFang SC;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #160002;
|
||||||
|
line-height: 20px;
|
||||||
|
margin-top: 4px;
|
||||||
|
}
|
||||||
|
.typeList{
|
||||||
|
width: 100%;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-flow: wrap;
|
||||||
align-items: center;
|
margin-top: 16px;
|
||||||
width: 60px;
|
.typeItem{
|
||||||
margin-right: 36px;
|
width: calc((100% - 24px)/3);
|
||||||
.boxImg{
|
height: 66px;
|
||||||
width: 25px;
|
display: flex;
|
||||||
height: 25px;
|
flex-direction: column;
|
||||||
}
|
align-items: center;
|
||||||
.textTitle{
|
justify-content: center;
|
||||||
font-size: 12px;
|
background: #F7F7F7;
|
||||||
font-family: PingFangSC-Regular, PingFang SC;
|
border-radius: 4px;
|
||||||
font-weight: 400;
|
margin-bottom: 8px;
|
||||||
color: #160002;
|
margin-right: 8px;
|
||||||
line-height: 16px;
|
.img{
|
||||||
|
width: 24px;
|
||||||
|
height: 24px;
|
||||||
|
}
|
||||||
|
.text{
|
||||||
|
font-size: 14px;
|
||||||
|
font-family: PingFangSC-Regular, PingFang SC;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #160002;
|
||||||
|
line-height: 20px;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.right{
|
.baseInfo,.areaInfo{
|
||||||
flex: 1;
|
margin-top: 8px;
|
||||||
display: flex;
|
.title{
|
||||||
.item{
|
font-size: 14px;
|
||||||
width: 50%;
|
font-family: PingFangSC-Semibold, PingFang SC;
|
||||||
|
font-weight: 600;
|
||||||
|
color: #160002;
|
||||||
|
line-height: 20px;
|
||||||
|
}
|
||||||
|
.word{
|
||||||
|
display: flex;
|
||||||
|
margin-top: 8px;
|
||||||
|
.subTitle{
|
||||||
|
font-size: 14px;
|
||||||
|
font-family: PingFangSC-Regular, PingFang SC;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #786B6C;
|
||||||
|
line-height: 20px;
|
||||||
|
margin-right: 8px;
|
||||||
|
min-width: 60px;
|
||||||
|
}
|
||||||
.text{
|
.text{
|
||||||
font-size: 12px;
|
flex: 1;
|
||||||
|
font-size: 14px;
|
||||||
font-family: PingFangSC-Regular, PingFang SC;
|
font-family: PingFangSC-Regular, PingFang SC;
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
color: #160002;
|
color: #160002;
|
||||||
line-height: 18px;
|
line-height: 20px;
|
||||||
margin-bottom:4px;
|
|
||||||
}
|
|
||||||
.unText{
|
|
||||||
font-size: 12px;
|
|
||||||
font-family: PingFangSC-Regular, PingFang SC;
|
|
||||||
font-weight: 400;
|
|
||||||
color: #A69E9F;
|
|
||||||
line-height: 18px;
|
|
||||||
text-decoration: line-through;
|
|
||||||
}
|
|
||||||
.unit{
|
|
||||||
font-size: 12px;
|
|
||||||
font-family: PingFangSC-Semibold, PingFang SC;
|
|
||||||
font-weight: 600;
|
|
||||||
color: #160002;
|
|
||||||
line-height: 18px;
|
|
||||||
}
|
|
||||||
.model{
|
|
||||||
font-size: 12px;
|
|
||||||
font-family: PingFangSC-Regular, PingFang SC;
|
|
||||||
font-weight: 400;
|
|
||||||
color: #160002;
|
|
||||||
line-height: 18px;
|
|
||||||
padding:0 6px;
|
|
||||||
background: #EAEAEA;
|
|
||||||
border-radius: 2px;
|
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
}
|
}
|
||||||
|
.subTitleArea{
|
||||||
|
font-size: 14px;
|
||||||
|
font-family: PingFangSC-Regular, PingFang SC;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #786B6C;
|
||||||
|
line-height: 20px;
|
||||||
|
display: inline-block;
|
||||||
|
margin-right: 8px;
|
||||||
|
min-width: 80px;
|
||||||
|
.text{
|
||||||
|
font-size: 14px;
|
||||||
|
font-family: PingFangSC-Regular, PingFang SC;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #160002;
|
||||||
|
line-height: 20px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.value{
|
||||||
|
font-size: 14px;
|
||||||
|
font-family: PingFangSC-Regular, PingFang SC;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #160002;
|
||||||
|
line-height: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.service{
|
||||||
|
background: #fff;
|
||||||
|
padding: 12px 16px calc(16px + env(safe-area-inset-bottom));
|
||||||
|
.serviceItem{
|
||||||
|
margin-top: 4px;
|
||||||
|
.title{
|
||||||
|
font-size: 14px;
|
||||||
|
font-family: PingFangSC-Semibold, PingFang SC;
|
||||||
|
font-weight: 600;
|
||||||
|
color: #160002;
|
||||||
|
line-height: 20px;
|
||||||
|
}
|
||||||
|
.box{
|
||||||
|
margin-top: 12px;
|
||||||
|
display: flex;
|
||||||
|
.left{
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
width: 60px;
|
||||||
|
margin-right: 36px;
|
||||||
|
.boxImg{
|
||||||
|
width: 25px;
|
||||||
|
height: 25px;
|
||||||
|
}
|
||||||
|
.textTitle{
|
||||||
|
font-size: 12px;
|
||||||
|
font-family: PingFangSC-Regular, PingFang SC;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #160002;
|
||||||
|
line-height: 16px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.right{
|
||||||
|
flex: 1;
|
||||||
|
display: flex;
|
||||||
|
.item{
|
||||||
|
width: 50%;
|
||||||
|
.text{
|
||||||
|
font-size: 12px;
|
||||||
|
font-family: PingFangSC-Regular, PingFang SC;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #160002;
|
||||||
|
line-height: 18px;
|
||||||
|
margin-bottom:4px;
|
||||||
|
}
|
||||||
|
.unText{
|
||||||
|
font-size: 12px;
|
||||||
|
font-family: PingFangSC-Regular, PingFang SC;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #A69E9F;
|
||||||
|
line-height: 18px;
|
||||||
|
text-decoration: line-through;
|
||||||
|
}
|
||||||
|
.unit{
|
||||||
|
font-size: 12px;
|
||||||
|
font-family: PingFangSC-Semibold, PingFang SC;
|
||||||
|
font-weight: 600;
|
||||||
|
color: #160002;
|
||||||
|
line-height: 18px;
|
||||||
|
}
|
||||||
|
.model{
|
||||||
|
font-size: 12px;
|
||||||
|
font-family: PingFangSC-Regular, PingFang SC;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #160002;
|
||||||
|
line-height: 18px;
|
||||||
|
padding:0 6px;
|
||||||
|
background: #EAEAEA;
|
||||||
|
border-radius: 2px;
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@ -84,26 +84,32 @@ export default {
|
|||||||
markers:'',//地图属性
|
markers:'',//地图属性
|
||||||
covers:'',//地图属性
|
covers:'',//地图属性
|
||||||
isFirst:true,//是否是第一次进页面
|
isFirst:true,//是否是第一次进页面
|
||||||
|
area:[],//片区列表
|
||||||
|
serviceInfo:{}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
onLoad(option){
|
onLoad(option){
|
||||||
console.log('option',option)
|
console.log('option',option)
|
||||||
let serviceInfo = JSON.parse(option.serviceInfo)
|
this.serviceInfo = JSON.parse(option.serviceInfo)
|
||||||
if (option.chartType){
|
if (option.chartType){
|
||||||
this.chartType = true
|
this.chartType = true
|
||||||
}
|
}
|
||||||
|
this.page = option.page
|
||||||
|
},
|
||||||
|
onShow(){
|
||||||
let userSeat = uni.getStorageSync('seatInfo')
|
let userSeat = uni.getStorageSync('seatInfo')
|
||||||
this.userLatitude = userSeat.latitude
|
this.userLatitude = userSeat.latitude
|
||||||
this.userLongitude = userSeat.longitude
|
this.userLongitude = userSeat.longitude
|
||||||
this.page = option.page
|
|
||||||
let seat = uni.getStorageSync('currentService')
|
let seat = uni.getStorageSync('currentService')
|
||||||
if (seat){
|
if (seat){
|
||||||
console.log('seat',seat)
|
console.log('seat',seat)
|
||||||
this.longitude = seat.longitude
|
this.longitude = seat.longitude
|
||||||
this.latitude = seat.latitude
|
this.latitude = seat.latitude
|
||||||
|
this.area = seat.SPREGIONTYPE_NAME
|
||||||
this.addMarkers(seat)
|
this.addMarkers(seat)
|
||||||
}else{
|
}else{
|
||||||
this.getServiceDetail(serviceInfo.Serverpart_ID)
|
this.getServiceDetail(this.serviceInfo.Serverpart_ID)
|
||||||
}
|
}
|
||||||
// 获取手机参数
|
// 获取手机参数
|
||||||
let systemInfo = uni.getSystemInfoSync()
|
let systemInfo = uni.getSystemInfoSync()
|
||||||
@ -116,20 +122,29 @@ export default {
|
|||||||
// this.getListData()
|
// this.getListData()
|
||||||
},
|
},
|
||||||
onHide(){
|
onHide(){
|
||||||
|
this.isShowMap = true
|
||||||
|
},
|
||||||
|
onUnload(){
|
||||||
this.isShowMap = false
|
this.isShowMap = false
|
||||||
},
|
},
|
||||||
methods:{
|
methods:{
|
||||||
//跳转到腾讯地图
|
//跳转到腾讯地图
|
||||||
handleGomap(item){
|
handleGomap(item){
|
||||||
|
let seat = uni.getStorageSync('currentService')
|
||||||
let key='STWBZ-DKCR4-J6UUF-FRD5I-3EBN2-GDBOT'
|
let key='STWBZ-DKCR4-J6UUF-FRD5I-3EBN2-GDBOT'
|
||||||
let referer ='goMap'
|
let referer ='goMap'
|
||||||
|
let startPoint = {
|
||||||
|
name:seat.SERVERPART_NAME,
|
||||||
|
latitude:seat.latitude,
|
||||||
|
longitude:seat.longitude
|
||||||
|
}
|
||||||
let endPoint={
|
let endPoint={
|
||||||
'name': item.SERVERPART_NAME,
|
'name': item.SERVERPART_NAME,
|
||||||
latitude: item.SERVERPART_Y,
|
latitude: item.SERVERPART_Y,
|
||||||
longitude: item.SERVERPART_X
|
longitude: item.SERVERPART_X
|
||||||
}
|
}
|
||||||
wx.navigateTo({
|
wx.navigateTo({
|
||||||
url: `plugin://chooseLocation/index?key=${key}&referer=${referer}&location=${JSON.stringify(endPoint)}`
|
url: `plugin://routePlan/index?key=${key}&referer=${referer}&endPoint=${JSON.stringify(endPoint)}&startPoint=${JSON.stringify(startPoint)}`
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
//返回上一级页面
|
//返回上一级页面
|
||||||
@ -157,6 +172,14 @@ export default {
|
|||||||
}
|
}
|
||||||
const data = await request.$webGet('CommercialApi/BaseInfo/GetSPRegionList',req)
|
const data = await request.$webGet('CommercialApi/BaseInfo/GetSPRegionList',req)
|
||||||
this.array = data.Result_Data.List
|
this.array = data.Result_Data.List
|
||||||
|
console.log('this.array',this.array)
|
||||||
|
if (this.area){
|
||||||
|
this.array.forEach((item,index)=>{
|
||||||
|
if (item.name === this.area){
|
||||||
|
this.selectIndex = index
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
await this.getLocation()
|
await this.getLocation()
|
||||||
},
|
},
|
||||||
//选择服务区
|
//选择服务区
|
||||||
@ -179,23 +202,27 @@ export default {
|
|||||||
//跳转相对应的服务区详情界面
|
//跳转相对应的服务区详情界面
|
||||||
handleGoDetail(id,item){
|
handleGoDetail(id,item){
|
||||||
console.log('item',item)
|
console.log('item',item)
|
||||||
|
let res = {
|
||||||
|
SERVERPART_NAME:item.SERVERPART_NAME,//服务区
|
||||||
|
SPREGIONTYPE_NAME:item.SPREGIONTYPE_NAME,//片区
|
||||||
|
Serverpart_ID:item.SERVERPART_ID,
|
||||||
|
longitude:item.SERVERPART_X,
|
||||||
|
latitude:item.SERVERPART_Y,
|
||||||
|
}
|
||||||
|
uni.setStorageSync('currentService',res) //当前选中服务区信息
|
||||||
|
let pageList = getCurrentPages()
|
||||||
if (this.chartType){
|
if (this.chartType){
|
||||||
let res = {
|
if (pageList.length>2){
|
||||||
SERVERPART_NAME:item.SERVERPART_NAME,//服务区
|
uni.navigateBack({
|
||||||
SPREGIONTYPE_NAME:item.SPREGIONTYPE_NAME,//片区
|
delta: 1
|
||||||
Serverpart_ID:item.SERVERPART_ID,
|
})
|
||||||
longitude:item.SERVERPART_X,
|
|
||||||
latitude:item.SERVERPART_Y,
|
|
||||||
}
|
}
|
||||||
uni.setStorageSync('currentService',res) //当前选中服务区信息
|
|
||||||
let time = uni.getStorageSync('lastDay')
|
|
||||||
uni.redirectTo({
|
|
||||||
url:`${this.page}?serviceInfo=${JSON.stringify(res)}&chartType=${true}&time=${time}`
|
|
||||||
})
|
|
||||||
}else{
|
}else{
|
||||||
uni.navigateTo({
|
if (pageList.length>2){
|
||||||
url:`/pages/map/detail?SERVERPART_ID=${id}&isPicker=${false}`
|
uni.navigateBack({
|
||||||
})
|
delta: 1
|
||||||
|
})
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
async getListData(){
|
async getListData(){
|
||||||
@ -254,11 +281,7 @@ export default {
|
|||||||
id: value.Serverpart_ID,
|
id: value.Serverpart_ID,
|
||||||
latitude: value.latitude,
|
latitude: value.latitude,
|
||||||
longitude: value.longitude,
|
longitude: value.longitude,
|
||||||
height: 30,
|
|
||||||
width: 20,
|
|
||||||
callout: {
|
callout: {
|
||||||
padding: '6',
|
|
||||||
borderRadius: '4',
|
|
||||||
display: 'ALWAYS'
|
display: 'ALWAYS'
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|||||||
@ -77,8 +77,10 @@ export default {
|
|||||||
console.log('item',item)
|
console.log('item',item)
|
||||||
if (item.value!==3 && item.value!==4){
|
if (item.value!==3 && item.value!==4){
|
||||||
if (item.value===2){
|
if (item.value===2){
|
||||||
this.$util.toNextRoute('navigateTo', `${item.homeUrl}?time=${this.lastDay}&Serverpart_ID=372`)
|
let currentService = uni.getStorageSync('currentService')
|
||||||
}else{
|
console.log('currentService',currentService)
|
||||||
|
this.$util.toNextRoute('navigateTo', `${item.homeUrl}?time=${this.lastDay}&serviceInfo=${JSON.stringify(currentService)}&type=userCenter`)
|
||||||
|
} else{
|
||||||
this.$util.toNextRoute('navigateTo', item.homeUrl)
|
this.$util.toNextRoute('navigateTo', item.homeUrl)
|
||||||
}
|
}
|
||||||
}else if(item.value === 3 && item.isNotice || item.value ===4 && item.isNotice){
|
}else if(item.value === 3 && item.isNotice || item.value ===4 && item.isNotice){
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 19 KiB |
|
Before Width: | Height: | Size: 21 KiB |
|
Before Width: | Height: | Size: 25 KiB |
|
Before Width: | Height: | Size: 8.6 KiB |
|
Before Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 20 KiB |
|
Before Width: | Height: | Size: 28 KiB |