+
@@ -198,10 +198,13 @@ import request from '@/util/index.js'
import NoData from "./components/noData.vue";
import commercialType from "./commercialType.vue";
import {getFieldEnum} from "../../util/dateTime";
+import SliderPage from "./components/sliderPage.vue";
export default {
name: "businessPortrait",
- components: {NoData, RevenueTrends, MoneyCompare, ContractGuarantee, RevenueAnalysis, headerTop,analyse,commercialType},
+ components: {
+ SliderPage,
+ NoData, RevenueTrends, MoneyCompare, ContractGuarantee, RevenueAnalysis, headerTop,analyse,commercialType},
data() {
return {
topBg:'linear-gradient(180deg, #D9CCEF 0%, #DED3F2 100%);',
@@ -415,7 +418,9 @@ export default {
PageSize:10
}
const data = await request.$webPost('CommercialApi/Analysis/GetANALYSISINSList',req)
- this.monthNoticeText = data.Result_Data.List[0].ANALYSIS_CONTENT
+ if (data.Result_Data.List && data.Result_Data.List.length>0){
+ this.monthNoticeText = data.Result_Data.List[0].ANALYSIS_CONTENT
+ }
},
@@ -437,7 +442,9 @@ export default {
PageSize:10
}
const totalData = await request.$webPost('CommercialApi/Analysis/GetANALYSISINSList',reqYear)
- this.yearNoticeText = totalData.Result_Data.List[0].ANALYSIS_CONTENT
+ if (totalData.Result_Data.List && totalData.Result_Data.List.length>0){
+ this.yearNoticeText = totalData.Result_Data.List[0].ANALYSIS_CONTENT
+ }
},
async nearestService(){
let seat = uni.getStorageSync('seatInfo');
@@ -469,7 +476,7 @@ export default {
this.showNoticeYear = false
},
async getSummaryMonth(){
- let currentService = uni.getStorageSync('currentService')
+ // let currentService = uni.getStorageSync('currentService')
console.log('this.time',this.time)
const date = new Date(this.time)
let y = date.getFullYear()
@@ -485,7 +492,7 @@ export default {
pushProvinceCode:'340000',
Statistics_StartDate:`${y}-${m}-01`,
Statistics_Date:`${y}-${m}-${d}`,
- Serverpart_ID:currentService.Serverpart_ID
+ Serverpart_ID:this.serviceInfo.SERVERPART_NAME==='安徽驿达'?null:this.serviceInfo.Serverpart_ID
}
const data = await request.$webGet('CommercialApi/Revenue/GetSummaryRevenue',req)
console.log('data22222',data)
@@ -542,10 +549,18 @@ export default {
this.moneyCompareList = this.revenue.list
},
async getMoneyCompareList(){
- let req = {
- StatisticsDate:this.time,
- ServerpartId:this.serviceInfo.Serverpart_ID || ''
+ let req
+ if (this.serviceInfo.SERVERPART_NAME==='安徽驿达'){
+ req = {
+ StatisticsDate:this.time,
}
+ }else{
+ req = {
+ StatisticsDate:this.time,
+ ServerpartId:this.serviceInfo.Serverpart_ID ||''
+ }
+ }
+
const data = await request.$webGet('CommercialApi/Revenue/GetRevenueCompare',req)
let RevenueAmount = [] //营收金额 除以10000的金额
let normalAmount = [] //不除以10000的金额
@@ -555,48 +570,54 @@ export default {
let TicketMax = 0
let AvgTicketAmountList = [] // 客单均价
let AvgTicketMax = 0
- data.Result_Data.RevenueAmountList.forEach(item=>{
+ if (data.Result_Data.RevenueAmountList && data.Result_Data.RevenueAmountList.length>0){
+ data.Result_Data.RevenueAmountList.forEach(item=>{
let list = []
let listNormal = []
let qoqAddList = [] //环比增加
item.data.forEach(subItem=>{
- let number = (subItem[1] / 10000 ).toFixed(2)
- if (number>RevenueMax){
- RevenueMax = number
- }
- list.push(number)
- qoqAddList.push(subItem[2])
- listNormal.push(subItem[1])
+ let number = (subItem[1] / 10000 ).toFixed(2)
+ if (number>RevenueMax){
+ RevenueMax = number
+ }
+ list.push(number)
+ qoqAddList.push(subItem[2])
+ listNormal.push(subItem[1])
})
normalAmount.push({name:item.name,data:listNormal})
RevenueAmount.push({name:item.name,data:list,qoqAdd:qoqAddList,holiday: item.value})
- })
- data.Result_Data.TicketCountList.forEach(item=>{
+ })
+ }
+ if (data.Result_Data.TicketCountList && data.Result_Data.TicketCountList.length>0){
+ data.Result_Data.TicketCountList.forEach(item=>{
let list = []
let qoqAddList = [] //环比增加
item.data.forEach(subItem=>{
- let number = (subItem[1]).toFixed(0)
- if (number > TicketMax){
- TicketMax = Number(number)
- }
- qoqAddList.push(subItem[2])
- list.push(number)
+ let number = (subItem[1]).toFixed(0)
+ if (number > TicketMax){
+ TicketMax = Number(number)
+ }
+ qoqAddList.push(subItem[2])
+ list.push(number)
})
TicketCountList.push({name:item.name,data:list,qoqAdd:qoqAddList,holiday: item.value})
- })
- data.Result_Data.AvgTicketAmountList .forEach(item=>{
+ })
+ }
+ if (data.Result_Data.AvgTicketAmountList && data.Result_Data.AvgTicketAmountList.length>0){
+ data.Result_Data.AvgTicketAmountList .forEach(item=>{
let list = []
let qoqAddList = [] //环比增加
item.data.forEach(subItem=>{
- let number = (subItem[1]).toFixed(2)
- if (number>AvgTicketMax){
- AvgTicketMax = number
- }
- list.push(number)
- qoqAddList.push(subItem[2])
+ let number = (subItem[1]).toFixed(2)
+ if (number>AvgTicketMax){
+ AvgTicketMax = number
+ }
+ list.push(number)
+ qoqAddList.push(subItem[2])
})
AvgTicketAmountList.push({name:item.name,data:list,qoqAdd:qoqAddList,holiday: item.value})
- })
+ })
+ }
// 因为有三个选项卡 把三种情况要展示的内容 放在一个对象里面 三个对象放一个数组里面 点击选项卡切换显示的对象就可以了
this.revenueAll = [
{
@@ -655,18 +676,37 @@ export default {
let date = new Date(this.time)
let y = date.getFullYear()
// 查今年去年两年的数据
- let req = {
+ let req
+ let yesReq
+ if (this.serviceInfo.SERVERPART_NAME==='安徽驿达'){
+ req={
ProvinceCode:'340000',
StatisticsDate:y,
StatisticsType:1,
- ServerpartId:this.serviceInfo.Serverpart_ID || ''
- }
- let yesReq = {
+ }
+ }else{
+ req ={
ProvinceCode:'340000',
- StatisticsDate:y - 1,
+ StatisticsDate:y,
StatisticsType:1,
- ServerpartId:this.serviceInfo.Serverpart_ID || ''
+ ServerpartId:this.serviceInfo.Serverpart_ID ||''
+ }
}
+ if (this.serviceInfo.SERVERPART_NAME==='安徽驿达'){
+ yesReq={
+ ProvinceCode:'340000',
+ StatisticsDate:y - 1,
+ StatisticsType:1,
+ }
+ }else{
+ yesReq = {
+ ProvinceCode:'340000',
+ StatisticsDate:y - 1,
+ StatisticsType:1,
+ ServerpartId:this.serviceInfo.Serverpart_ID ||''
+ }
+ }
+
const data = await request.$webGet('CommercialApi/Revenue/GetRevenueTrend',req)
const yesData = await request.$webGet('CommercialApi/Revenue/GetRevenueTrend',yesReq)
let list = []
@@ -714,34 +754,43 @@ export default {
pushProvinceCode:'340000',
Statistics_StartDate:`${y}-${m}-01`,
Statistics_Date:this.time,
- Serverpart_ID:this.serviceInfo.Serverpart_ID || ''
+ Serverpart_ID:this.serviceInfo.SERVERPART_NAME==='安徽驿达'?null:this.serviceInfo.Serverpart_ID
}
const data = await request.$webGet('CommercialApi/Revenue/GetSummaryRevenue',req)
let all = 0
- data.Result_Data.BusinessTypeList.forEach(item=>{
+ if (data.Result_Data && data.Result_Data.BusinessTypeList && data.Result_Data.BusinessTypeList.length>0){
+ data.Result_Data.BusinessTypeList.forEach(item=>{
all +=Number(item.value)
- })
- data.Result_Data.BusinessTypeList.forEach(item=>{
+ })
+ data.Result_Data.BusinessTypeList.forEach(item=>{
item.rate = ((Number(item.value) / all)*100).toFixed(2)
- })
- let res={
+ })
+ let res={
own:data.Result_Data.BusinessTypeList[1].rate,
ectocyst:data.Result_Data.BusinessTypeList[0].rate
+ }
+ this.revenueType = res
+ }else{
+ this.revenueType = null
}
- this.revenueType = res
},
monthYearPlan(){
const monthDate= {
Province_Code:'340000',
- Serverpart_ID:this.serviceInfo.Serverpart_ID || '',
+ Serverpart_ID:this.serviceInfo.SERVERPART_NAME==='安徽驿达'?null:this.serviceInfo.Serverpart_ID,
Statistics_Date:this.time
}
request.$webGet('CommercialApi/Revenue/GetRevenueBudget',monthDate).then(res=>{
// 赋值给data中的这个对象 在请求完之后会进行统一的数据处理
this.plan = res.Result_Data
- this.plan.percentageMonth = (res.Result_Data.RevenueMonth_Amount / res.Result_Data.BudgetMonth_Amount*100).toFixed(2)
+ if (this.plan){
+ if (this.plan && this.plan.RevenueMonth_Amount){
+ this.plan.percentageMonth = (res.Result_Data.RevenueMonth_Amount / res.Result_Data.BudgetMonth_Amount*100).toFixed(2)
+ }
+ if (this.plan && this.plan.RevenueYear_Amount){
+ this.plan.percentageYear = (res.Result_Data.RevenueYear_Amount / res.Result_Data.BudgetYear_Amount*100).toFixed(2)
+ }
// this.plan.percentageMonth = 80
- this.plan.percentageYear = (res.Result_Data.RevenueYear_Amount / res.Result_Data.BudgetYear_Amount*100).toFixed(2)
// let date = new Date(this.time)
// let nowDay = date.getDate()
// let day = this.$util.getThisMonthDay(this.time)
@@ -749,7 +798,7 @@ export default {
// let oneDay = 100/day
// // 到了当天的应该有的百分比
// let thisDayShould= oneDay*nowDay
- // 由于显示的时候 正负号由图片表示 所以要区绝对值展现在页面上
+ // 由于显示的时候 正负号由图片表示 所以要区绝对值展现在页面上
this.monthAdd = Math.abs(this.plan.MonthGrowth_Rate)
this.yearAdd = Math.abs(this.plan.YearGrowth_Rate)
//处理数据 保留小数
@@ -757,6 +806,7 @@ export default {
this.plan.BudgetMonth_Amount = this.$util.fmoney(res.Result_Data.BudgetMonth_Amount)
this.plan.RevenueYear_Amount = this.$util.fmoney(res.Result_Data.RevenueYear_Amount)
this.plan.BudgetYear_Amount = this.$util.fmoney(res.Result_Data.BudgetYear_Amount)
+ }
})
}
}
diff --git a/pages/commercialBI/serviceMessage.vue b/pages/commercialBI/serviceMessage.vue
new file mode 100644
index 0000000..277a3da
--- /dev/null
+++ b/pages/commercialBI/serviceMessage.vue
@@ -0,0 +1,500 @@
+
+
+
+
+
+
+
车流数据
+
+
+
+
+
+

+
{{serviceInfo.SERVERPART_NAME?serviceInfo.SERVERPART_NAME.split('服务区')[0]:''}}
+
+
+
+
+ {{item.Entry_Rate ||''}}%
+ 入区率
+
+

+
+
+
+
+
+
+ {{item.RevenueAmount?$util.fmoney($util.getMoney(item.RevenueAmount/10000)):''}}
+ 营收 /万元
+
+
+ {{item.AvgVehicleAmount ||''}}
+ 单车 /元
+
+
+ {{item.Vehicle_Count?$util.fmoney($util.getMoney(item.Vehicle_Count/10000)):''}}
+ 入区 /万辆
+
+
+
+
+
+
+
+
+
+
diff --git a/pages/examine/detail.vue b/pages/examine/detail.vue
index 4472eda..cbf6907 100644
--- a/pages/examine/detail.vue
+++ b/pages/examine/detail.vue
@@ -24,7 +24,9 @@
@@ -37,7 +39,7 @@
-
+
{{item.SERVERPART_NAME}}
@@ -78,7 +80,7 @@
-
+
{{item.SERVERPART_NAME}}
@@ -219,8 +221,10 @@
import request from '@/util/index.js'
import uniPopup from '@/components/uni-popup'
import CommercialType from "./commercialType.vue";
+import SliderPage from "./sliderPage.vue";
export default {
components:{
+ SliderPage,
CommercialType,
uniPopup
},
@@ -342,10 +346,18 @@ export default {
if (d<10){
d = '0'+d
}
- const req = {
- SearchStartDate:`${y}-${m}-01`,
- SearchEndDate:`${y}-${m}-${d}`,
- Serverpart_ID:this.currentService.Serverpart_ID
+ let req
+ if (this.currentService.SERVERPART_NAME==='安徽驿达'){
+ req = {
+ SearchStartDate:`${y}-${m}-01`,
+ SearchEndDate:`${y}-${m}-${d}`,
+ }
+ }else{
+ req = {
+ SearchStartDate:`${y}-${m}-01`,
+ SearchEndDate:`${y}-${m}-${d}`,
+ Serverpart_ID:this.currentService.Serverpart_ID
+ }
}
const total = await request.$webGet(`CommercialApi/Examine/WeChat_GetExamineList`,req)
this.serviceList = total.Result_Data
@@ -426,29 +438,41 @@ export default {
if (d<10){
d = '0'+d
}
- const res = await request.$webGet(`CommercialApi/Examine/WeChat_GetPatrolList`,{
- SearchStartDate:`${y}-${m}-01`,// 巡检日期(开始时间)
- SearchEndDate:`${y}-${m}-${d}`,// 巡检日期(结束时间)
- SPRegionType_ID:'',// 片区内码,多个片区用","隔开
- Serverpart_ID:this.currentService.Serverpart_ID,// 服务区内码,多个服务区用","隔开
- })
- this.inspectionList = res.Result_Data
+ let req
+ if (this.currentService.SERVERPART_NAME==='安徽驿达'){
+ req = {
+ SearchStartDate:`${y}-${m}-01`,// 巡检日期(开始时间)
+ SearchEndDate:`${y}-${m}-${d}`,// 巡检日期(结束时间)
+ SPRegionType_ID:'',// 片区内码,多个片区用","隔开
+ }
+ }else{
+ req = {
+ SearchStartDate:`${y}-${m}-01`,// 巡检日期(开始时间)
+ SearchEndDate:`${y}-${m}-${d}`,// 巡检日期(结束时间)
+ SPRegionType_ID:'',// 片区内码,多个片区用","隔开
+ Serverpart_ID:this.currentService.Serverpart_ID,// 服务区内码,多个服务区用","隔开
+ }
+ }
- this.inspectionList.forEach(item=>{
- item.list.forEach(subItem=>{
- let i = 0
- subItem.SERVERPARTList.forEach(thirdItem=>{
- if (thirdItem.COMPLETE_STATE===0){
- i++
+ const res = await request.$webGet(`CommercialApi/Examine/WeChat_GetPatrolList`,req)
+ this.inspectionList = res.Result_Data
+ if (this.inspectionList && this.inspectionList.length>0){
+ this.inspectionList.forEach(item=>{
+ item.list.forEach(subItem=>{
+ let i = 0
+ subItem.SERVERPARTList.forEach(thirdItem=>{
+ if (thirdItem.COMPLETE_STATE===0){
+ i++
+ }
+ })
+ if (i>0){
+ subItem.warning=false
+ }else{
+ subItem.warning=true
}
})
- if (i>0){
- subItem.warning=false
- }else{
- subItem.warning=true
- }
})
- })
+ }
console.log('inspectionList',this.inspectionList)
uni.hideLoading()
},
@@ -536,7 +560,11 @@ export default {
position: absolute;
top: 0;left: 0;
z-index:1;
-
+ .sliderBox{
+ width: 100%;
+ position: absolute;
+ bottom: 20px;
+ }
}
}
}
diff --git a/pages/examine/sliderPage.vue b/pages/examine/sliderPage.vue
new file mode 100644
index 0000000..82d4338
--- /dev/null
+++ b/pages/examine/sliderPage.vue
@@ -0,0 +1,54 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/pages/index/index.vue b/pages/index/index.vue
index 2980c5b..89de15c 100644
--- a/pages/index/index.vue
+++ b/pages/index/index.vue
@@ -1246,6 +1246,15 @@ export default {
...mapActions(['memberLogin','getLoginCode']),
// 点击服务区信息跳转
handleGoServiceMessage(){
+ let YD = {
+ SERVERPART_NAME: "安徽驿达",
+ SPREGIONTYPE_NAME: "",
+ SPRegionType_ID: null,
+ Serverpart_ID: 424,
+ latitude: 32,
+ longitude: 117,
+ }
+ uni.setStorageSync('currentService',YD)
this.$util.toNextRoute('navigateTo', `/pages/map/detail?isPicker=${true}&come=index`)
// let _this = this
@@ -1469,6 +1478,15 @@ export default {
}
},
handleGoTab(item){
+ let YD = {
+ SERVERPART_NAME: "安徽驿达",
+ SPREGIONTYPE_NAME: "",
+ SPRegionType_ID: null,
+ Serverpart_ID: 424,
+ latitude: 32,
+ longitude: 117,
+ }
+ uni.setStorageSync('currentService',YD)
if (!this.isReturn){
this.$util.toNextRoute('navigateTo', `${item.path}?time=${this.lastDay}&serviceInfo=${JSON.stringify(this.nearServiceInfo)}`)
} else{
diff --git a/pages/index/new_file.html b/pages/index/new_file.html
new file mode 100644
index 0000000..e69de29
diff --git a/pages/map/detail.vue b/pages/map/detail.vue
index 18dc9a5..a575497 100644
--- a/pages/map/detail.vue
+++ b/pages/map/detail.vue
@@ -34,6 +34,9 @@
+
+
+
@@ -179,9 +182,10 @@
+
+