This commit is contained in:
cclu 2024-03-15 18:21:49 +08:00
parent 7f142a79f8
commit b822bb18d2
6 changed files with 3386 additions and 1109 deletions

View File

@ -212,6 +212,20 @@
"navigationBarTitleText": "", "navigationBarTitleText": "",
"navigationStyle": "custom" "navigationStyle": "custom"
} }
},
{
"path": "servicePartList",
"style": {
"navigationBarTitleText": "",
"navigationStyle": "custom"
}
},
{
"path": "detail",
"style": {
"navigationBarTitleText": "",
"navigationStyle": "custom"
}
} }
] ]
}, },

View File

@ -6,9 +6,9 @@
<view class="meng" v-if="ydModal" @click.stop="handleShowYDModal"></view> <view class="meng" v-if="ydModal" @click.stop="handleShowYDModal"></view>
<view class="showMoreFixedBox" v-if="showMoreFixed" @click="handleShowMore"> <view class="showMoreFixedBox" v-if="showMoreFixed" @click="handleShowMore">
<view class="fixedBox"> <view class="fixedBox" :style="{top: `${menu.bottom + 10}px` }">
<view class="otherDetailBottom"> <view class="otherDetailBottom">
<view class="bottomItem" style="margin-bottom: 16rpx"> <view class="bottomItem" style="margin-bottom: 40rpx">
<view class="bottomSmallItem"> <view class="bottomSmallItem">
<view class="itemLeft"> <view class="itemLeft">
<view class="itemMonth">{{ `${selectMonth<10?'0'+selectMonth:selectMonth}`}}</view> <view class="itemMonth">{{ `${selectMonth<10?'0'+selectMonth:selectMonth}`}}</view>
@ -30,7 +30,7 @@
</view> </view>
</view> </view>
<view class="bottomItem" style="margin-bottom: 16rpx"> <view class="bottomItem" style="margin-bottom: 40rpx">
<view class="bottomSmallItem"> <view class="bottomSmallItem">
<view class="itemLeft"> <view class="itemLeft">
<view class="itemMonth">{{ `${selectMonth<10?'0'+selectMonth:selectMonth}`}}</view> <view class="itemMonth">{{ `${selectMonth<10?'0'+selectMonth:selectMonth}`}}</view>
@ -215,8 +215,9 @@
<rateCharts :success="moneyRateList" :colorList="1<=selectMonth && selectMonth<=3?['#1677FE','#456497','#97A9C6']:4<=selectMonth && selectMonth<=6?['#1677FE','#456497','#97A9C6']:7<=selectMonth && selectMonth<=9?['#1677FE','#456497','#97A9C6']:['#1677FE','#456497','#97A9C6']" :name="`${selectMonth}rate`"/> <rateCharts :success="moneyRateList" :colorList="1<=selectMonth && selectMonth<=3?['#1677FE','#456497','#97A9C6']:4<=selectMonth && selectMonth<=6?['#1677FE','#456497','#97A9C6']:7<=selectMonth && selectMonth<=9?['#1677FE','#456497','#97A9C6']:['#1677FE','#456497','#97A9C6']" :name="`${selectMonth}rate`"/>
</view> </view>
<view class="haveNoticeBox" v-if="ydModal" @click.stop="handleShowYDModal"> <view class="haveNoticeBox" v-if="ydModal" @click.stop="handleShowYDModal">
<text class="label">驿达入账:<text class="value">{{ydRate}}%</text></text> <text class="label">便利店:<text class="value">{{ydRate}}%</text></text>
<text class="label">商家入账:<text class="value">{{shopRate}}%</text></text> <text class="label">餐饮:<text class="value">{{shopRate}}%</text></text>
<text class="label">商铺租赁:<text class="value">{{shopOutRate}}%</text></text>
</view> </view>
</view> </view>
<view class="newRightBox"> <view class="newRightBox">
@ -1560,8 +1561,9 @@ export default {
moneyRateList:[], moneyRateList:[],
currentPeriodData:{},// currentPeriodData:{},//
ydModal: false,// 驿 ydModal: false,// 驿
ydRate:'',// 驿 ydRate:'',// 便
shopRate:'',// shopRate:'',//
shopOutRate:'',//
showRateChart:true,// showRateChart:true,//
revenueMoney:'',// revenueMoney:'',//
externalMoney:'',// externalMoney:'',//
@ -2573,15 +2575,7 @@ export default {
console.log('result2',result) console.log('result2',result)
let progressAll = 0 let progressAll = 0
this.currentPeriodData = result.MonthRevenueModel.CurAccountRoyalty this.currentPeriodData = result.MonthRevenueModel.CurAccountRoyalty
let sum = this.currentPeriodData.Royalty_Theory+this.currentPeriodData.SubRoyalty_Theory
console.log('currentPeriodData',this.currentPeriodData)
if(sum===0){
this.ydRate = '-'
this.shopRate = '-'
}else{
this.ydRate = ((this.currentPeriodData.Royalty_Theory / sum)*100).toFixed(2)
this.shopRate = ((this.currentPeriodData.SubRoyalty_Theory / sum)*100).toFixed(2)
}
console.log('result.BusinessTypeList',result.BusinessTypeList) console.log('result.BusinessTypeList',result.BusinessTypeList)
let shareList = [{},{},{}] let shareList = [{},{},{}]
result.BusinessTypeList.forEach(item=>{ result.BusinessTypeList.forEach(item=>{
@ -2621,6 +2615,23 @@ export default {
}) })
console.log('shareList',shareList) console.log('shareList',shareList)
this.moneyRateList = [Number(shareList[0].value),Number(shareList[1].value),Number(shareList[2].value)] this.moneyRateList = [Number(shareList[0].value),Number(shareList[1].value),Number(shareList[2].value)]
let sum = 0
shareList.forEach(item=>{
console.log('Number(item.value)',Number(item.value))
sum += Number(item.value)
})
console.log('sum',sum)
if(sum===0){
this.ydRate = '-'
this.shopRate = '-'
this.shopOutRate = '-'
}else{
this.ydRate = ((Number(shareList[0].value) / sum)*100).toFixed(2)
this.shopRate = ((Number(shareList[1].value) / sum)*100).toFixed(2)
this.shopOutRate = ((1-( (Number(shareList[0].value) / sum) + (Number(shareList[1].value) / sum)) )*100).toFixed(2)
}
this.profitSharingList = shareList this.profitSharingList = shareList
this.typeList = result.BusinessTypeList this.typeList = result.BusinessTypeList
this.revenueMoney = result.BusinessTypeList[0].showValue this.revenueMoney = result.BusinessTypeList[0].showValue
@ -3007,11 +3018,11 @@ $iphoneHeight: env(safe-area-inset-bottom);
.fixedBox{ .fixedBox{
width: calc(100vw - 64rpx); width: calc(100vw - 64rpx);
box-sizing: border-box; box-sizing: border-box;
padding: 32rpx 38rpx; padding: 38rpx 32rpx;
border-radius: 16rpx; border-radius: 16rpx;
background: #fff; background: #fff;
position: fixed; position: fixed;
top: 10vh; left: 32rpx; left: 32rpx;
.otherDetailBottom{ .otherDetailBottom{
.bottomItem{ .bottomItem{
width: 100%; width: 100%;
@ -3020,6 +3031,7 @@ $iphoneHeight: env(safe-area-inset-bottom);
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: space-between; justify-content: space-between;
margin-bottom: 8rpx;
.itemLeft{ .itemLeft{
display: flex; display: flex;
align-items: center; align-items: center;
@ -3073,6 +3085,7 @@ $iphoneHeight: env(safe-area-inset-bottom);
display: flex; display: flex;
justify-content: flex-end; justify-content: flex-end;
align-items: center; align-items: center;
margin-bottom: 8rpx;
.itemValue{ .itemValue{
font-family: DINAlternate, DINAlternate; font-family: DINAlternate, DINAlternate;
font-weight: bold; font-weight: bold;
@ -3090,7 +3103,7 @@ $iphoneHeight: env(safe-area-inset-bottom);
line-height: 40rpx; line-height: 40rpx;
text-align: left; text-align: left;
font-style: normal; font-style: normal;
margin-left: 4rpx; margin-left: 8rpx;
} }
} }
} }
@ -3670,7 +3683,7 @@ $iphoneHeight: env(safe-area-inset-bottom);
width: 100%; width: 100%;
background: #F9FAFC; background: #F9FAFC;
box-sizing: border-box; box-sizing: border-box;
padding: 24rpx 28rpx; padding: 28rpx 24rpx;
margin-top: 48rpx; margin-top: 48rpx;
.accountItem{ .accountItem{
width: 100%; width: 100%;
@ -3741,10 +3754,10 @@ $iphoneHeight: env(safe-area-inset-bottom);
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
margin-top: 14rpx; margin-top: 16rpx;
.showMorenDown{ .showMorenDown{
width: 40rpx; width: 32rpx;
height: 50rpx; height: 32rpx;
} }
} }
.goBusiness{ .goBusiness{

View File

@ -133,7 +133,7 @@
<text class="itemLabel">增长</text> <text class="itemLabel">增长</text>
<text class="itemValue"> <text class="itemValue">
{{type===1?item.RevenueINC.increaseData?$util.getMoney(item.RevenueINC.increaseData / 10000):'0.00': {{type===1?item.RevenueINC.increaseData?$util.getMoney(item.RevenueINC.increaseData / 10000):'0.00':
type===2?item.RevenueINC.AccountINC?$util.getMoney(item.AccountINC.increaseData / 10000):'0.00': type===2?item.AccountINC.increaseData?$util.getMoney(item.AccountINC.increaseData / 10000):'0.00':
type===3?item.BayonetINC.increaseData?$util.getMoney(item.BayonetINC.increaseData / 10000):'0.00':'-'}} type===3?item.BayonetINC.increaseData?$util.getMoney(item.BayonetINC.increaseData / 10000):'0.00':'-'}}
</text> </text>
</view> </view>

File diff suppressed because it is too large Load Diff

View File

@ -1,62 +1,70 @@
<template> <template>
<view class="main"> <view class="main">
<view class="bigBg">
<view class="top"> <view class="top">
<view class="header" :style="{height: menu.bottom + 5 +'px'}"> <view class="header" :style="{height: menu.bottom + 5 +'px'}">
<view class="headerContent" :style="{height: (menu.bottom - menu.top) + 'px'}"> <view class="headerContent" :style="{height: (menu.bottom - menu.top) + 'px'}">
<image class="leftIcon" @click="handleBack" src="https://eshangtech.com/ShopICO/ahyd-BID/examine/leftArrowWhite.svg"/> <image class="leftIcon" @click="handleBack" src="https://eshangtech.com/ShopICO/ahyd-BID/examine/leftArrowWhite.svg"/>
<!-- <view class="headerTimeBox">--> <!-- <view class="headerTimeBox">-->
<!-- <picker mode="date" fields="month" :value="searchText" :end="lastDay" @change="bindDateChange" >--> <!-- <picker mode="date" fields="month" :value="searchText" :end="lastDay" @change="bindDateChange" >-->
<!-- <view class="time">--> <!-- <view class="time">-->
<!-- <image class="timeIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex2/timeIcon.svg"/>--> <!-- <image class="timeIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex2/timeIcon.svg"/>-->
<!-- <view class="text" >{{ searchText }}</view>--> <!-- <view class="text" >{{ searchText }}</view>-->
<!-- <image class="icon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex2/timeUpDown.svg"></image>--> <!-- <image class="icon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex2/timeUpDown.svg"></image>-->
<!-- </view>--> <!-- </view>-->
<!-- </picker>--> <!-- </picker>-->
<!-- </view>--> <!-- </view>-->
</view> </view>
</view> </view>
<!-- <view class="pageTitle" :style="{top: menu.bottom + 5 + 12 +'px'}">营收统计</view>--> <!-- <view class="pageTitle" :style="{top: menu.bottom + 5 + 12 +'px'}">营收统计</view>-->
<view class="tabBox" :style="{top: menu.bottom + 5 + 12 +'px'}"> <view :style="{paddingTop: menu.bottom + 5 + 8 +'px'}">
<image class="tabItem" @click="handleChangeTab(1)" :src="selectTab===1?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/activeFirstTab.png':'https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/firstTab.png'"/> <view class="tabBox" >
<image class="tabItem" @click="handleChangeTab(2)" :src="selectTab===2?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/activeSecondTab.png':'https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/secondTab.png'"/> <image :class="selectTab===1?'selectTabItem':'tabItem'" @click="handleChangeTab(1)" :src="selectTab===1?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/activeFirstTab.png':'https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/firstTab.png'"/>
<image :class="selectTab===2?'selectTabItem':'tabItem'" @click="handleChangeTab(2)" :src="selectTab===2?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/activeSecondTab.png':'https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/secondTab.png'"/>
</view> </view>
<scroll-view :style="{top: menu.bottom + 5 + 12 + 40 +'px'}" class="scrollView" :current="currentScroll" scroll-x="true" :scroll-into-view="'item'+selectIndex" scroll-with-animation> <scroll-view class="scrollView" :current="currentScroll" scroll-x="true" :scroll-into-view="'item'+selectIndex" scroll-with-animation>
<view :style="{height:'100%',width:`${68*selectList.length}px`}"> <view class="bigView" :style="{width: `${60*selectList.length +20}px`}">
<view :id="'item'+index" :class="currentScroll===`item${index}`?'selectScrollItem':'scrollItem'" v-for="(item,index) in selectList" :key="index" @click="handleChangMonth(index)">{{item}}</view> <view :id="'item'+index" :class="currentScroll===`item${index}`?'selectScrollItem':'scrollItem'" v-for="(item,index) in selectList" :key="index" @click="handleChangMonth(index)">{{item}}</view>
</view> </view>
</scroll-view> </scroll-view>
</view> </view>
</view>
<view class="content"> <view class="content">
<view v-if="selectTab===1"> <view v-if="selectTab===1">
<!-- 对客营收 --> <!-- 对客营收 -->
<view class="customerRevenue"> <view class="customerRevenue">
<view class="contentRevenue"> <view class="contentRevenue">
<view class="contentTop"> <view class="contentTop">
<view class="contentTopLeft">
<span class="contentMonth">{{thisMonth?thisMonth+'月':'累计'}}</span> <span class="contentMonth">{{thisMonth?thisMonth+'月':'累计'}}</span>
<span class="contentTitle">对客营收 <span class="contentTitle">对客销售<span class="contentUnit">/万元</span></span>
<span class="contentUnit">/万元</span> </view>
</span> <view class="contentTopRight" @click="handleGoSort(1)">
<span class="moreText">服务区排名</span>
<img class="moreIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/blueRightArrow.png"/>
</view>
</view> </view>
<view class="dataBox"> <view class="dataBox">
<view class="dataItem"> <view class="dataItem" style="width: 40%">
<span class="dataBigValue">{{topDetail.RevenueINC?topDetail.RevenueINC.increaseRate<0?`${topDetail.RevenueINC.increaseRate}%`:`+${topDetail.RevenueINC.increaseRate}%` :'-'}}</span> <span class="dataBigValue">{{topDetail.RevenueINC && topDetail.RevenueINC.increaseRate?topDetail.RevenueINC.increaseRate<0?`${topDetail.RevenueINC.increaseRate}%`:`+${topDetail.RevenueINC.increaseRate}%` :'-'}}</span>
<span class="dataLabel">同比去年</span> <span class="dataLabel">同比去年</span>
</view> </view>
<view class="dataItem"> <view class="dataItem" style="width: 30%">
<span class="dataValue">{{topDetail.RevenueINC ? numeral(topDetail.RevenueINC.curYearData /10000).format('0,0.00'):'-'}}</span> <span class="dataValue">{{topDetail.RevenueINC ? $util.getMoney(topDetail.RevenueINC.curYearData /10000):'-'}}</span>
<span class="dataLabel">2024</span> <span class="dataLabel">{{`${curYear}`}}</span>
</view> </view>
<view class="dataItem"> <view class="dataItem" style="width: 30%">
<span class="dataValue">{{topDetail.RevenueINC ? numeral(topDetail.RevenueINC.lYearData / 10000).format('0,0.00'):'-'}}</span> <span class="dataValue">{{topDetail.RevenueINC ? $util.getMoney(topDetail.RevenueINC.lYearData / 10000):'-'}}</span>
<span class="dataLabel">2023</span> <span class="dataLabel">{{`${curYear-1}`}}</span>
</view> </view>
</view> </view>
<view class="addBox"> <view class="addBox">
增长 增长
<span class="addNumber">{{topDetail.RevenueINC ? `${topDetail.RevenueINC.increaseData<0?'':'+'}${numeral(topDetail.RevenueINC.increaseData / 10000).format('0,0.00')}`:'-'}}</span> <span class="addNumber">{{topDetail.RevenueINC ? `${topDetail.RevenueINC.increaseData<0?'':'+'}${$util.getMoney(topDetail.RevenueINC.increaseData / 10000)}`:'-'}}</span>
</view> </view>
<view class="line"></view> <view class="line"></view>
@ -78,17 +86,17 @@
</view> </view>
<scroll-view class="tableRight" scroll-x="true"> <scroll-view class="tableRight" scroll-x="true">
<view class="labelBox"> <view class="labelBox">
<span class="label">2024</span> <span class="label">{{`${curYear}`}}</span>
<span class="label">2023</span> <span class="label">{{`${curYear-1}`}}</span>
<span class="label">增长</span> <span class="label">增长</span>
<span class="label">增幅</span> <span class="label">增幅</span>
</view> </view>
<view :class="item.type===1?'firstLabelBox':'secondLabelBox'" v-for="(item,index) in pageRevenueList" :key="index"> <view :class="item.type===1?'firstLabelBox':'secondLabelBox'" v-for="(item,index) in pageRevenueList" :key="index">
<span :class="item.type===1?'firstLabel':'secondLabel'">{{item.curYearData?numeral(item.curYearData/10000).format('0,0.00'):''}}</span> <span :class="item.type===1?'firstLabel':'secondLabel'">{{item.curYearData?$util.getMoney(item.curYearData/10000):'-'}}</span>
<span :class="item.type===1?'firstLabel':'secondLabel'">{{item.lYearData?numeral(item.lYearData/10000).format('0,0.00'):''}}</span> <span :class="item.type===1?'firstLabel':'secondLabel'">{{item.lYearData?$util.getMoney(item.lYearData/10000):'-'}}</span>
<span :class="item.type===1?'firstLabel':'secondLabel'">{{item.increaseData?`${item.increaseData<0?'':'+'}${numeral(item.increaseData/10000).format('0,0.00')}`:''}}</span> <span :class="item.type===1?'firstLabel':'secondLabel'">{{item.increaseData?`${item.increaseData<0?'':'+'}${$util.getMoney(item.increaseData/10000)}`:'-'}}</span>
<span :class="item.type===1?'firstLabel':'secondLabel'">{{item.increaseRate?`${item.increaseRate<0?'':'+'}${item.increaseRate}%`:''}}</span> <span :class="item.type===1?'firstLabel':'secondLabel'">{{item.increaseRate?`${item.increaseRate<0?'':'+'}${item.increaseRate}%`:'-'}}</span>
</view> </view>
</scroll-view> </scroll-view>
</view> </view>
@ -100,30 +108,34 @@
<view class="customerRevenue" style="margin-top: 24rpx"> <view class="customerRevenue" style="margin-top: 24rpx">
<view class="contentRevenue" style="background-image: url('https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/revenueBg2.png')"> <view class="contentRevenue" style="background-image: url('https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/revenueBg2.png')">
<view class="contentTop"> <view class="contentTop">
<view class="contentTopLeft">
<span class="contentMonth">{{thisMonth?thisMonth+'月':'累计'}}</span> <span class="contentMonth">{{thisMonth?thisMonth+'月':'累计'}}</span>
<span class="contentTitle">营业收入 <span class="contentTitle">营业收入<span class="contentUnit">/万元</span></span>
<span class="contentUnit">/万元</span> </view>
</span> <view class="contentTopRight" @click="handleGoSort(2)">
<span class="moreText">服务区排名</span>
<img class="moreIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/blueRightArrow.png"/>
</view>
</view> </view>
<view class="dataBox"> <view class="dataBox">
<view class="dataItem"> <view class="dataItem" style="width: 40%">
<span class="dataBigValue">{{topDetail.AccountINC?topDetail.AccountINC.increaseRate<0?`${topDetail.AccountINC.increaseRate}%`:`+${topDetail.AccountINC.increaseRate}%` :'-'}}</span> <span class="dataBigValue">{{topDetail.AccountINC && topDetail.AccountINC.increaseRate?topDetail.AccountINC.increaseRate<0?`${topDetail.AccountINC.increaseRate}%`:`+${topDetail.AccountINC.increaseRate}%` :'-'}}</span>
<span class="dataLabel">同比去年</span> <span class="dataLabel">同比去年</span>
</view> </view>
<view class="dataItem"> <view class="dataItem" style="width: 30%">
<span class="dataValue">{{topDetail.AccountINC ? numeral(topDetail.AccountINC.curYearData /10000).format('0,0.00'):'-'}}</span> <span class="dataValue">{{topDetail.AccountINC ? $util.getMoney(topDetail.AccountINC.curYearData /10000):'-'}}</span>
<span class="dataLabel">2024</span> <span class="dataLabel">{{`${curYear}`}}</span>
</view> </view>
<view class="dataItem"> <view class="dataItem" style="width: 30%">
<span class="dataValue">{{topDetail.AccountINC ? numeral(topDetail.AccountINC.lYearData /10000).format('0,0.00'):'-'}}</span> <span class="dataValue">{{topDetail.AccountINC ? $util.getMoney(topDetail.AccountINC.lYearData /10000):'-'}}</span>
<span class="dataLabel">2023</span> <span class="dataLabel">{{`${curYear-1}`}}</span>
</view> </view>
</view> </view>
<view class="addBox"> <view class="addBox">
增长 增长
<span class="addNumber">{{topDetail.AccountINC ? `${topDetail.AccountINC.increaseData<0?'':'+'}${numeral(topDetail.AccountINC.increaseData / 10000).format('0,0.00')}`:'-'}}</span> <span class="addNumber">{{topDetail.AccountINC ? `${topDetail.AccountINC.increaseData<0?'':'+'}${ $util.getMoney(topDetail.AccountINC.increaseData / 10000)}`:'-'}}</span>
</view> </view>
<view class="line"></view> <view class="line"></view>
@ -143,16 +155,16 @@
</view> </view>
<scroll-view class="tableRight" scroll-x="true"> <scroll-view class="tableRight" scroll-x="true">
<view class="labelBox"> <view class="labelBox">
<span class="label">2024</span> <span class="label">{{`${curYear}`}}</span>
<span class="label">2023</span> <span class="label">{{`${curYear-1}`}}</span>
<span class="label">增长</span> <span class="label">增长</span>
<span class="label">增幅</span> <span class="label">增幅</span>
</view> </view>
<view :class="item.type===1?'firstLabelBox':'secondLabelBox'" v-for="(item,index) in pageAccountList" :key="index"> <view :class="item.type===1?'firstLabelBox':'secondLabelBox'" v-for="(item,index) in pageAccountList" :key="index">
<span :class="item.type===1?'firstLabel':'secondLabel'">{{item.curYearData?numeral(item.curYearData/10000).format('0,0.00'):''}}</span> <span :class="item.type===1?'firstLabel':'secondLabel'">{{item.curYearData?$util.getMoney(item.curYearData/10000):'-'}}</span>
<span :class="item.type===1?'firstLabel':'secondLabel'">{{item.lYearData?numeral(item.lYearData/10000).format('0,0.00'):''}}</span> <span :class="item.type===1?'firstLabel':'secondLabel'">{{item.lYearData?$util.getMoney(item.lYearData/10000):'-'}}</span>
<span :class="item.type===1?'firstLabel':'secondLabel'">{{item.increaseData?`${item.increaseData<0?'':'+'}${numeral(item.increaseData/10000).format('0,0.00')}`:''}}</span> <span :class="item.type===1?'firstLabel':'secondLabel'">{{item.increaseData?`${item.increaseData<0?'':'+'}${$util.getMoney(item.increaseData/10000)}`:'-'}}</span>
<span :class="item.type===1?'firstLabel':'secondLabel'">{{item.increaseRate?`${item.increaseRate<0?'':'+'}${item.increaseRate}%`:''}}</span> <span :class="item.type===1?'firstLabel':'secondLabel'">{{item.increaseRate?`${item.increaseRate<0?'':'+'}${item.increaseRate}%`:'-'}}</span>
</view> </view>
</scroll-view> </scroll-view>
</view> </view>
@ -164,30 +176,36 @@
<view class="customerRevenue" style="margin-top: 24rpx"> <view class="customerRevenue" style="margin-top: 24rpx">
<view class="contentRevenue" style="background-image: url('https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/revenueBg3.png');background-size: cover;padding-bottom: 24rpx"> <view class="contentRevenue" style="background-image: url('https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/revenueBg3.png');background-size: cover;padding-bottom: 24rpx">
<view class="contentTop"> <view class="contentTop">
<view class="contentTopLeft">
<span class="contentMonth">{{thisMonth?thisMonth+'月':'累计'}}</span> <span class="contentMonth">{{thisMonth?thisMonth+'月':'累计'}}</span>
<span class="contentTitle">入区车流 <span class="contentTitle">入区车流
<span class="contentUnit">/万辆</span> <span class="contentUnit">/万辆</span>
</span> </span>
</view> </view>
<view class="contentTopRight" @click="handleGoSort(3)">
<span class="moreText">服务区排名</span>
<img class="moreIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/blueRightArrow.png"/>
</view>
</view>
<view class="dataBox"> <view class="dataBox">
<view class="dataItem"> <view class="dataItem" style="width: 40%">
<span class="dataBigValue">{{topDetail.BayonetINC?`${topDetail.BayonetINC.increaseRate<0?'':'+'}${topDetail.BayonetINC.increaseRate}%` :'-'}}</span> <span class="dataBigValue">{{topDetail.BayonetINC && topDetail.BayonetINC.increaseRate?`${topDetail.BayonetINC.increaseRate<0?'':'+'}${topDetail.BayonetINC.increaseRate}%` :'-'}}</span>
<span class="dataLabel">同比去年</span> <span class="dataLabel">同比去年</span>
</view> </view>
<view class="dataItem"> <view class="dataItem" style="width: 30%">
<span class="dataValue">{{topDetail.BayonetINC ? numeral(topDetail.BayonetINC.curYearData /10000).format('0,0.00'):'-'}}</span> <span class="dataValue">{{topDetail.BayonetINC ? $util.getMoney(topDetail.BayonetINC.curYearData /10000):'-'}}</span>
<span class="dataLabel">2024</span> <span class="dataLabel">{{`${curYear}`}}</span>
</view> </view>
<view class="dataItem"> <view class="dataItem" style="width: 30%">
<span class="dataValue">{{topDetail.BayonetINC ? numeral(topDetail.BayonetINC.lYearData /10000).format('0,0.00'):'-'}}</span> <span class="dataValue">{{topDetail.BayonetINC ? $util.getMoney(topDetail.BayonetINC.lYearData /10000):'-'}}</span>
<span class="dataLabel">2023</span> <span class="dataLabel">{{`${curYear-1}`}}</span>
</view> </view>
</view> </view>
<view class="addBox"> <view class="addBox">
增长 增长
<span class="addNumber">{{topDetail.BayonetINC ? `${topDetail.BayonetINC.increaseData<0?'':'+'}${numeral(topDetail.BayonetINC.increaseData / 10000).format('0,0.00')}`:'-'}}</span> <span class="addNumber">{{topDetail.BayonetINC ? `${topDetail.BayonetINC.increaseData<0?'':'+'}${$util.getMoney(topDetail.BayonetINC.increaseData / 10000)}`:'-'}}</span>
</view> </view>
</view> </view>
</view> </view>
@ -198,7 +216,7 @@
<view class="bigBox"> <view class="bigBox">
<view class="revenueBoxHeader"> <view class="revenueBoxHeader">
<!-- <view class="headerTitle">驿达营收</view>--> <!-- <view class="headerTitle">驿达营收</view>-->
<!-- <image class="revenueImg" src="https://eshangtech.com/ShopICO/ahyd-BID/nationalDay/revenueItemBg.png"/>--> <!-- <image class="revenueImg" src="https://eshangtech.com/ShopICO/ahyd-BID/nationalDay/revenueItemBg.png"/>-->
<view class="revenueContent"> <view class="revenueContent">
<view class="contentTitleBox"> <view class="contentTitleBox">
<span class="selectMonth">{{thisMonth?thisMonth+'月':'累计'}}</span> <span class="selectMonth">{{thisMonth?thisMonth+'月':'累计'}}</span>
@ -209,7 +227,7 @@
<view class="sumBox"> <view class="sumBox">
<view class="left"> <view class="left">
<image class="sumLogo" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex2/sumLogo.svg"/> <image class="sumLogo" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex2/sumLogo.svg"/>
<!-- <view class="headerTitle">驿达入账收入</view>--> <!-- <view class="headerTitle">驿达入账收入</view>-->
</view> </view>
<view class="sumText"> <view class="sumText">
<!-- <view class="sumMoney">{{pageDataObj.OwnerRevenue?$util.fmoney(pageDataObj.OwnerRevenue/10000,2):'0.00'}}</view>--> <!-- <view class="sumMoney">{{pageDataObj.OwnerRevenue?$util.fmoney(pageDataObj.OwnerRevenue/10000,2):'0.00'}}</view>-->
@ -339,7 +357,7 @@
<view class="sumBox"> <view class="sumBox">
<view class="left"> <view class="left">
<image class="sumLogo" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex2/merchantsSum.svg"/> <image class="sumLogo" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex2/merchantsSum.svg"/>
<!-- <view class="headerTitle">商家入账收入</view>--> <!-- <view class="headerTitle">商家入账收入</view>-->
</view> </view>
<view class="sumText"> <view class="sumText">
<!-- <view class="sumMoney">{{pageDataObj.MerchantRevenue?$util.fmoney(pageDataObj.MerchantRevenue/10000):"0.00"}}</view>--> <!-- <view class="sumMoney">{{pageDataObj.MerchantRevenue?$util.fmoney(pageDataObj.MerchantRevenue/10000):"0.00"}}</view>-->
@ -603,10 +621,10 @@
</view> </view>
</view> </view>
</view>
</template> </template>
<script> <script>
import request from '@/util/index.js' import request from '@/util/index.js'
import numeral from "numeral";
export default { export default {
data(){ data(){
@ -628,6 +646,8 @@ export default {
pageRevenueList:[],// pageRevenueList:[],//
pageAccountList:[],// pageAccountList:[],//
curYear:2024,// curYear:2024,//
query:{},
currentMonth:''
} }
}, },
async onLoad(option){ async onLoad(option){
@ -635,6 +655,7 @@ export default {
uni.showLoading({ uni.showLoading({
title:'正在加载' title:'正在加载'
}) })
this.query = option
// //
let systemInfo = uni.getSystemInfoSync() let systemInfo = uni.getSystemInfoSync()
this.statusBarHeight = Number(systemInfo.statusBarHeight) this.statusBarHeight = Number(systemInfo.statusBarHeight)
@ -649,14 +670,13 @@ export default {
this.lastDay = option.time this.lastDay = option.time
const date = new Date(this.lastDay) const date = new Date(this.lastDay)
let m = date.getMonth() + 1 let m = date.getMonth() + 1
} }
if (option.month){ if (option.month){
this.searchText = option.month this.searchText = option.month
const selectDate = new Date(option.month) const selectDate = new Date(option.month)
let selectYear = selectDate.getFullYear() let selectYear = selectDate.getFullYear()
let currentMonth = selectDate.getMonth() + 1
this.currentMonth = currentMonth
this.curYear = selectYear this.curYear = selectYear
const nowDate = new Date() const nowDate = new Date()
@ -684,7 +704,10 @@ export default {
uni.hideLoading() uni.hideLoading()
}, },
methods:{ methods:{
numeral, //
handleGoSort(type){
this.$util.toNextRoute('navigateTo', `/pages/revenueStatistics/servicePartList?type=${type}&yearMonth=${this.searchText}&thisMonth=${this.thisMonth && this.thisMonth!=='0'?this.thisMonth:this.currentMonth}`)
},
async handleGetRevenueData(){ async handleGetRevenueData(){
const date = new Date() const date = new Date()
let y = date.getFullYear() let y = date.getFullYear()
@ -696,6 +719,7 @@ export default {
curYear: this.curYear,// curYear: this.curYear,//
compareYear: this.curYear-1,// compareYear: this.curYear-1,//
StatisticsMonth:this.thisMonth===0?y>this.curYear?12:m:this.thisMonth,// StatisticsMonth:this.thisMonth===0?y>this.curYear?12:m:this.thisMonth,//
StatisticsDate: this.lastDay
} }
console.log('req',req) console.log('req',req)
const data = await request.$webGet('CommercialApi/Revenue/GetMonthlyBusinessAnalysis',req) const data = await request.$webGet('CommercialApi/Revenue/GetMonthlyBusinessAnalysis',req)
@ -831,13 +855,21 @@ export default {
.main{ .main{
height: 100%; height: 100%;
background: #f5f5f5; background: #f5f5f5;
.top{ .bigBg{
width: 100%; width: 100%;
height: 640rpx; height: 100%;
position: relative;
background-image: url("https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/revenueBackground.png"); background-image: url("https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/revenueBackground.png");
background-repeat: no-repeat; background-repeat: no-repeat;
background-size: 100% 100%; background-size: 100% 640rpx;
.top{
width: 100%;
//height: 640rpx;
//position: relative;
box-sizing: border-box;
//background-image: url("https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/revenueBackground.png");
//background-repeat: no-repeat;
//background-size: 100% 100%;
//background: linear-gradient(#FF7F37 0%, #FDA03E 60%, #F5F5F5 100%); //background: linear-gradient(#FF7F37 0%, #FDA03E 60%, #F5F5F5 100%);
.header{ .header{
position: fixed; position: fixed;
@ -897,45 +929,51 @@ export default {
left: 32rpx; left: 32rpx;
} }
.tabBox{ .tabBox{
width: 100%;
box-sizing: border-box;
padding-left: 32rpx;
display: flex; display: flex;
align-items: center; align-items: center;
position: absolute;
left: 32rpx;
.tabItem{ .tabItem{
width: 204rpx; width: 204rpx;
height: 68rpx; height: 68rpx;
margin-right: 48rpx; margin-right: 48rpx;
} }
.selectTabItem{
width: 204rpx;
height: 68rpx;
margin-right: 48rpx;
}
} }
.scrollView{ .scrollView{
width: calc(100vw - 64rpx); width: calc(100vw - 64rpx);
height: 70rpx; height: 70rpx;
position: absolute; margin-top: 24rpx;
left: 32rpx; margin-left: 32rpx;
.bigView{
height: 100%;
.scrollItem{ .scrollItem{
width: 80rpx; width: 60px;
display: inline-block; display: inline-block;
font-family: PingFangSC, PingFang SC; font-family: PingFangSC, PingFang SC;
font-weight: 400; font-weight: 400;
font-size: 32rpx; font-size: 32rpx;
color: #AFD1FF; color: #AFD1FF;
line-height: 44rpx; line-height: 44rpx;
text-align: left;
font-style: normal; font-style: normal;
margin-right: 56rpx; text-align: center;
} }
.selectScrollItem{ .selectScrollItem{
width: 80rpx; width: 60px;
display: inline-block; display: inline-block;
font-family: PingFangSC, PingFang SC; font-family: PingFangSC, PingFang SC;
font-weight: 600; font-weight: 600;
font-size: 32rpx; font-size: 32rpx;
height: 50rpx; height: 50rpx;
color: #FFFFFF; color: #FFFFFF;
text-align: left; text-align: center;
font-style: normal; font-style: normal;
position: relative; position: relative;
margin-right: 56rpx;
} }
.selectScrollItem:after{ .selectScrollItem:after{
content:''; content:'';
@ -943,18 +981,20 @@ export default {
width: 80%; width: 80%;
position: absolute; position: absolute;
height: 4rpx; height: 4rpx;
left: 0; left: 10%;
bottom: -5px; bottom: -5px;
background: #fff; background: #fff;
} }
} }
} }
}
.content{ .content{
width: 100%; width: 100%;
box-sizing: border-box; box-sizing: border-box;
padding: 0 32rpx 48rpx; padding: 0 32rpx 48rpx;
position: relative; margin-top: 24rpx;
top: -260rpx; //position: relative;
//top: -268rpx;
//transform: translateY(-260rpx); //transform: translateY(-260rpx);
.revenueBox{ .revenueBox{
width: 100%; width: 100%;
@ -1198,6 +1238,10 @@ export default {
box-sizing: border-box; box-sizing: border-box;
padding: 30rpx 22rpx 0; padding: 30rpx 22rpx 0;
.contentTop{ .contentTop{
display: flex;
align-items: center;
justify-content: space-between;
.contentTopLeft{
display: flex; display: flex;
align-items: center; align-items: center;
.contentMonth{ .contentMonth{
@ -1235,20 +1279,36 @@ export default {
} }
} }
} }
.contentTopRight{
display: flex;
align-items: center;
.moreText{
font-size: 28rpx;
font-family: PingFangSC, PingFang SC;
font-weight: 400;
color: #2C99FE;
line-height: 40rpx;
}
.moreIcon{
width: 24rpx;
height: 24rpx;
margin-left: 4rpx;
}
}
}
.dataBox{ .dataBox{
width: 100%; width: 100%;
display: flex; display: flex;
align-items: center; align-items: center;
.dataItem{ .dataItem{
width: calc(100% / 3);
display: flex; display: flex;
flex-direction: column; flex-direction: column;
margin-top: 32rpx; margin-top: 32rpx;
.dataBigValue{ .dataBigValue{
font-family: DINAlternate, DINAlternate; font-family: DINAlternate, DINAlternate;
font-weight: bold; font-weight: bold;
font-size: 36rpx; font-size: 50rpx;
color: #E83944; color: #E83944;
line-height: 64rpx; line-height: 64rpx;
text-align: left; text-align: left;
@ -1390,7 +1450,7 @@ export default {
font-weight: 400; font-weight: 400;
font-size: 24rpx; font-size: 24rpx;
color: #57607B; color: #57607B;
text-align: left; text-align: center;
font-style: normal; font-style: normal;
display: inline-block; display: inline-block;
width: 148rpx; width: 148rpx;
@ -1406,7 +1466,7 @@ export default {
font-size: 26rpx; font-size: 26rpx;
color: #160002; color: #160002;
line-height: 40rpx; line-height: 40rpx;
text-align: left; text-align: right;
font-style: normal; font-style: normal;
display: inline-block; display: inline-block;
width: 148rpx; width: 148rpx;
@ -1422,7 +1482,7 @@ export default {
font-size: 26rpx; font-size: 26rpx;
color: #160002; color: #160002;
line-height: 40rpx; line-height: 40rpx;
text-align: left; text-align: right;
font-style: normal; font-style: normal;
display: inline-block; display: inline-block;
width: 148rpx; width: 148rpx;
@ -1434,5 +1494,6 @@ export default {
} }
} }
} }
}
} }
</style> </style>

File diff suppressed because it is too large Load Diff