ahyd_DIB/pages/index/index.vue
2024-03-18 16:43:12 +08:00

6369 lines
261 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<template>
<view class="main">
<view class="meng" v-if="showRealBox" @click="changeShowRealBox"></view>
<view class="meng" v-if="showHaveNotice" @click.stop="handleShowHaveNoticeBox"></view>
<view class="meng" v-if="showMonthDetail" @click.stop="handleShowTrafficDetail"></view>
<view class="meng" v-if="ydModal" @click.stop="handleShowYDModal"></view>
<view class="showMoreFixedBox" v-if="showMoreFixed" @click="handleShowMore">
<view class="fixedBox" :style="{top: `${menu.bottom + 10}px` }">
<view class="otherDetailBottom">
<view class="bottomItem" style="margin-bottom: 40rpx">
<view class="bottomSmallItem">
<view class="itemLeft">
<view class="itemMonth">{{ `${selectMonth<10?'0'+selectMonth:selectMonth}月`}}</view>
<view class="itemTitle">入区车流
<span class="unit">/百万辆</span>
</view>
</view>
<view class="itemRight">
<text class="itemValue">{{trafficCurrentObj.Vehicle_AddUpCount?trafficCurrentObj.AddUpCount:''}}</text>
</view>
</view>
<view class="itemData">
<text class="itemValue">{{trafficYOYObj.Vehicle_GrowthRate?trafficYOYObj.Vehicle_GrowthRate>0?'+'+trafficYOYObj.Vehicle_GrowthRate+'%':trafficYOYObj.Vehicle_GrowthRate+'%':'-'}}</text>
<text class="itemText">同比</text>
</view>
<view class="itemData">
<text class="itemValue" style="color: #0E9976">{{trafficQOQObj.Vehicle_GrowthRate?trafficQOQObj.Vehicle_GrowthRate>0?'+'+trafficQOQObj.Vehicle_GrowthRate+'%':trafficQOQObj.Vehicle_GrowthRate+'%':'-'}}</text>
<text class="itemText">环比</text>
</view>
</view>
<view class="bottomItem" style="margin-bottom: 40rpx">
<view class="bottomSmallItem">
<view class="itemLeft">
<view class="itemMonth">{{ `${selectMonth<10?'0'+selectMonth:selectMonth}月`}}</view>
<view class="itemTitle">入区率
<span class="unit">/%</span></view>
</view>
<view class="itemRight">
<text class="itemValue">{{trafficCurrentObj.Entry_Rate?trafficCurrentObj.Entry_Rate:''}}</text>
</view>
</view>
<view class="itemData">
<text class="itemValue">{{trafficYOYObj.Entry_GrowthRate?trafficYOYObj.Entry_GrowthRate>0?'+'+trafficYOYObj.Entry_GrowthRate+'%':trafficYOYObj.Entry_GrowthRate+'%':'-'}}</text>
<text class="itemText">同比</text>
</view>
<view class="itemData">
<text class="itemValue" style="color: #0E9976">{{trafficQOQObj.Entry_GrowthRate?trafficQOQObj.Entry_GrowthRate>0?'+'+trafficQOQObj.Entry_GrowthRate+'%':trafficQOQObj.Entry_GrowthRate+'%':'-'}}</text>
<text class="itemText">环比</text>
</view>
</view>
<view class="bottomItem">
<view class="bottomSmallItem">
<view class="itemLeft">
<view class="itemMonth">{{ `${selectMonth<10?'0'+selectMonth:selectMonth}月`}}</view>
<view class="itemTitle">停留时长
<span class="unit">/分钟</span></view>
</view>
<view class="itemRight">
<text class="itemValue">{{trafficCurrentObj.Stay_Times?trafficCurrentObj.Stay_Times:''}}</text>
</view>
</view>
<view class="itemData">
<text class="itemValue">{{trafficYOYObj.StayTimes_GrowthRate?trafficYOYObj.StayTimes_GrowthRate>0?'+'+trafficYOYObj.StayTimes_GrowthRate+'%':trafficYOYObj.StayTimes_GrowthRate+'%':'-'}}</text>
<text class="itemText">同比</text>
</view>
<view class="itemData">
<text class="itemValue" style="color: #0E9976">{{trafficQOQObj.StayTimes_GrowthRate?trafficQOQObj.StayTimes_GrowthRate>0?'+'+trafficQOQObj.StayTimes_GrowthRate+'%':trafficQOQObj.StayTimes_GrowthRate+'%':'-'}}</text>
<text class="itemText">环比</text>
</view>
</view>
</view>
</view>
</view>
<!-- 根据要显示的内容 切换高度 -->
<view class="header">
<!-- :style="{height:loadMore?`calc(${(776/750)*phoneWidth + 260}px)`:`calc(${(776/750)*phoneWidth - 10}px)`}"-->
<!-- 时间选择 -->
<div class="headerTop" :style="{ height: menu.bottom + 5 + 'px'}">
<!-- <view class="selectTime" :style="{ top: menu.top + (menu.height - 22) / 2 + 'px' }">-->
<!-- <image class="dateIcon" :src="1<=selectMonth && selectMonth<=3?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/1stDateTime.svg':4<=selectMonth && selectMonth<=6?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/2stDateTime.svg':7<=selectMonth && selectMonth<=9?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/3stDateTime.svg':'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/4stDateTime.svg'"></image>-->
<!--&lt;!&ndash; <picker mode="date" :value="single" @change="bindDateChange" >&ndash;&gt;-->
<!-- <picker mode="date" fields="month" :value="single" :start="startDate" :end="endData" @change="bindDateChange" >-->
<!-- <view class="time">-->
<!--&lt;!&ndash; <text class="day" >{{ thisDay }}</text>&ndash;&gt;-->
<!-- <view class="uni-input" :style="{color: 1<=selectMonth && selectMonth<=3?'#B33115':4<=selectMonth && selectMonth<=6?'#025B93':7<=selectMonth && selectMonth<=9?'#2249A2':10<=selectMonth && selectMonth<=12?'#783F0F':''}" style="background: transparent;padding: 0;height:100%">{{ single }}</view>-->
<!-- <image class="icon" :src="1<=selectMonth && selectMonth<=3?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/1stDownArrow.svg':4<=selectMonth && selectMonth<=6?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/2stDownArrow.svg':7<=selectMonth && selectMonth<=9?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/3stDownArrow.svg':'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/4stDownArrow.svg'"></image>-->
<!-- </view>-->
<!-- </picker>-->
<!-- </view>-->
<view class="selectTime" :style="{ top: menu.top + (menu.height - 32) / 2 + 'px' ,height:menu.height+'px',marginLeft:'10rpx'}">
<UniDataSelect
:localdata="localdata"
:value="selectVersion"
@change="handleChangeVersion"
>
<template v-slot:content>
<!-- @click="goOldIndexPage"-->
<view class="searchIconBox" >
<image class="dateIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/pageLogo.png"/>
<!-- <text class="searchIconText">数智驿达</text>-->
</view>
</template>
</UniDataSelect>
<view class="seachBox" :style="{height: menu.height + 'px'}" @click="handleGoMap">
<image class="searchIcon" src="/static/images/seach/searchIcon.svg"/>
<text class="searchText">请输入想看的服务区</text>
</view>
</view>
</div>
<div :style="{height: menu.bottom + 5 + 'px',width:'100%'}"></div>
<!-- ,height:loadMore?'200px':'38px'-->
<div class="storeDetail" :style="{ top: menu.bottom + 13 + 'px',left:0 + 'px'}">
<swiper class="detailBox" previous-margin="40rpx" next-margin="20rpx" :style="{height: loadMore?`1400rpx`:`720rpx`}" @change="handleChangeSelect" :current="selectDetail">
<block v-for="(item,index) in swiperList" :key="index">
<swiper-item :item-id="index" :data-item-id="index" :class="selectMonth === index+1 || selectMonth === ((index+1)%12===0?12:(index+1)%12)?'detailItemBox':'noSelectItemBox'">
<view class="bigBox" v-if="selectMonth === index+1 || selectMonth === ((index+1)%12===0?12:(index+1)%12)">
<view class="box">
<view class="top" style="height: 640rpx;">
<view class="topTop">
<view class="statistics" @click="goToRevenueStatic">
<image class="staticImg" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex/3stStaticIcon.svg"/>
<text class="staticTitle">{{ `${selectMonth || '-'}月对客销售` }}</text>
<span class="staticUnit">/万元</span>
<view class="moreIcon" @click.stop="changeShowRealBox">
<image class="noticeIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/noticeIcon.svg"/>
<view v-if="showRealBox" class="realBox" @click.stop="changeShowRealBox">
<view class="field">
<view class="label">对客销售:</view>
<view class="value">{{showTableData.CashPay?$util.fmoney($util.getMoney(showTableData.CashPay),2):'-'}}</view>
</view>
<view class="field">
<view class="label">自营销售:</view>
<view class="value">{{typeList && typeList.length>0?$util.fmoney($util.getMoney(typeList[0].value),2) : '-'}}</view>
</view>
<view class="field">
<view class="label" style="padding-left: 20rpx">便利店:</view>
<view class="value">{{typeList && typeList.length>0?$util.fmoney($util.getMoney(typeList[2].value),2) : '-'}}</view>
</view>
<view class="field">
<view class="label" style="padding-left: 20rpx">餐饮客房:</view>
<view class="value">{{typeList && typeList.length>0?$util.fmoney($util.getMoney(typeList[3].value),2) : '-'}}</view>
</view>
<view class="field">
<view class="label">外租收入:</view>
<view class="value">{{typeList && typeList.length>0?$util.fmoney($util.getMoney(typeList[1].value),2) : '-'}}</view>
</view>
<view class="field">
<view class="label" style="padding-left: 20rpx">商铺租赁:</view>
<view class="value">{{typeList && typeList.length>0?$util.fmoney($util.getMoney(typeList[4].value),2) : '-'}}</view>
</view>
</view>
</view>
</view>
<view class="haveMore" @click="goToRevenueStatic">
<text class="haveMoreText">查看更多</text>
<image class="haveMoreICon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/haveMoreICon.svg"/>
</view>
</view>
<view class="revenueBox" v-show="selectMonth===index+1 || selectMonth === ((index+1)%12===0?12:(index+1)%12)">
<view class="revenueTop">
<view class="revenueTopLeft">
<text class="revenueNumber">{{showTableData.CashPayChange?showTableData.CashPayChange:'0.00'}}</text>
<!-- <view class="moreIcon" @click="changeShowRealBox">?-->
<!-- <view v-if="showRealBox" class="realBox" @click.stop="changeShowRealBox">-->
<!-- <view><text class="label">对客营收:</text>{{showTableData.CashPay?$util.fmoney($util.getMoney(showTableData.CashPay),2):'-'}}</view>-->
<!-- <view><text class="label">自营收入:</text>{{typeList && typeList.length>0?$util.fmoney($util.getMoney(typeList[0].value),2) : '-'}}</view>-->
<!-- <view><text class="label">外租收入:</text>{{typeList && typeList.length>0?$util.fmoney($util.getMoney(typeList[1].value),2) : '-'}}</view>-->
<!-- </view>-->
<!-- </view>-->
</view>
<view class="revenueTopRight" v-if="showTableData.add">
<!--https://eshangtech.com/ShopICO/ahyd-BID/examine/reduce.svg-->
<!-- <image class="addReduce" :src="Number(showTableData.add)>0?'https://eshangtech.com/ShopICO/ahyd-BID/examine/add.svg':Number(showTableData.add)<0?'https://eshangtech.com/ShopICO/ahyd-BID/examine/reduce.svg':''"/>-->
<text class="addValue" :style="{color:showTableData.add>0?'#E83944':showTableData.add<0?'#0E9976':''}">{{showTableData.add?showTableData.add:'-'}}%</text>
<text class="rightNav">同比</text>
</view>
</view>
<view class="revenueNav">
<!-- <text class="leftNav">{{selectMonth}}月对客营收<text class="unit">/万元</text></text>-->
<!-- <text class="leftNav">对客营收</text>-->
<!-- <text class="rightNav">同比</text>-->
</view>
<view class="newBox">
<!-- <view class="progress" @click="handleShowHaveNoticeBox" :style="{background:1<=selectMonth && selectMonth<=3?'#FFAB30':4<=selectMonth && selectMonth<=6?'#5DC1E0':7<=selectMonth && selectMonth<=9?'#7CADF8':'#DCA858'}">-->
<!-- <view class="have" :style="{width:progressObj.owner+'%',background:1<=selectMonth && selectMonth<=3?'#DB573B':4<=selectMonth && selectMonth<=6?'#137BBD':7<=selectMonth && selectMonth<=9?'#3663CB':'#A66A37'}"></view>-->
<!-- <view class="haveNoticeBox" v-if="showHaveNotice" @click.stop="handleShowHaveNoticeBox">-->
<!-- <text class="label">自营:<text class="value">{{progressObj.owner}}%</text></text>-->
<!-- <text class="label">外租:<text class="value">{{progressObj.other}}%</text></text>-->
<!-- </view>-->
<!-- </view>-->
<!-- <view class="message" >-->
<!-- <view class="smallDetailItem" style="margin-right: 14px">-->
<!-- <view class="messageTop">-->
<!-- <view class="type" :style="{background:1<=selectMonth && selectMonth<=3?'#DB573B':4<=selectMonth && selectMonth<=6?'#137BBD':7<=selectMonth && selectMonth<=9?'#3663CB':'#A66A37'}"></view>-->
<!-- <text class="typeTitle">驿达自营</text>-->
<!-- &lt;!&ndash; <text class="unit">/万元</text>&ndash;&gt;-->
<!-- </view>-->
<!-- <view class="middle" v-if="typeList && typeList.length>0">-->
<!-- <text class="money">{{revenueMoney?$util.fmoney(revenueMoney || 0,2):''}}</text>-->
<!-- <view class="addItem" v-if="monthAdd">{{monthAdd || ''}}%</view>-->
<!-- </view>-->
<!-- <view class="messageBottom" v-if="typeList && typeList[0].add">-->
<!-- <text class="addText">{{typeList[0].add?typeList[0].add:''}}</text>-->
<!-- <text class="addType">同比</text>-->
<!-- </view>-->
<!-- </view>-->
<!-- <view class="smallDetailItem">-->
<!-- <view class="messageTop">-->
<!-- <view class="type" :style="{background:1<=selectMonth && selectMonth<=3?'#FFAB30':4<=selectMonth && selectMonth<=6?'#5DC1E0':7<=selectMonth && selectMonth<=9?'#7CADF8':'#DCA858'}"></view>-->
<!-- <text class="typeTitle">商铺租赁</text>-->
<!-- &lt;!&ndash; <text class="unit">/万元</text>&ndash;&gt;-->
<!-- </view>-->
<!-- <view class="middle">-->
<!-- <text class="money">{{externalMoney?$util.fmoney(externalMoney || 0,2):''}}</text>-->
<!-- &lt;!&ndash; <view class="addItem">+13.18%</view>&ndash;&gt;-->
<!-- </view>-->
<!-- <view class="messageBottom" v-if="typeList && typeList[1].add">-->
<!-- <text class="addText">{{typeList[1].add?typeList[1].add:''}}</text>-->
<!-- <text class="addType">同比</text>-->
<!-- </view>-->
<!-- </view>-->
<!-- </view>-->
<view class="moneyRate">
<view class="leftBox" @click="handleShowYDModal" v-if="showRateChart">
<view class="rateChartsBox">
<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 class="haveNoticeBox" v-if="ydModal" @click.stop="handleShowYDModal">
<view class="field">
<view class="label">便利店:</view>
<view class="value">{{ydRate}}%</view>
</view>
<view class="field">
<view class="label">餐饮客房:</view>
<view class="value">{{shopRate}}%</view></view>
<view class="field">
<view class="label">商铺租赁:</view>
<view class="value">{{shopOutRate}}%</view>
</view>
</view>
</view>
<view class="newRightBox">
<view class="newRightItem" v-for="(subItem,subIndex) in profitSharingList" :key="subIndex">
<view class="itemLeft">
<view class="itemIcon" :style="{background:subIndex===0?'#1677FE':subIndex===1?'#456497':subIndex===2?'#97A9C6':''}"></view>
<span class="itemName">{{subItem.name}}</span>
</view>
<view class="itemCenter">
{{subItem.value?numeral(subItem.value/10000).format('0,0.00'):''}}
</view>
<view class="itemRight" :style="{color:subItem.add>0?'#E83944':subItem.add<0?'#0E9976':''}">{{subItem.add?`${subItem.add}%`:''}}</view>
</view>
<!-- <view class="newRightItem">-->
<!-- <view class="itemLeft">-->
<!-- <view class="itemIcon" style="background: #1677FE"></view>-->
<!-- <span class="itemName">便利店</span>-->
<!-- <span class="itemValue">3,100.65</span>-->
<!-- </view>-->
<!-- <view class="itemRight">+9.65%</view>-->
<!-- </view>-->
<!-- <view class="newRightItem">-->
<!-- <view class="itemLeft">-->
<!-- <view class="itemIcon" style="background: #456497"></view>-->
<!-- <span class="itemName">餐饮客房</span>-->
<!-- <span class="itemValue">1,875.23</span>-->
<!-- </view>-->
<!-- <view class="itemRight">+23.87%</view>-->
<!-- </view>-->
<!-- <view class="newRightItem">-->
<!-- <view class="itemLeft">-->
<!-- <view class="itemIcon" style="background: #97A9C6"></view>-->
<!-- <span class="itemName">商铺租赁</span>-->
<!-- <span class="itemValue">4,921.86</span>-->
<!-- </view>-->
<!-- <view class="itemRight">+15.02%</view>-->
<!-- </view>-->
</view>
<!-- <view class="rightBox">-->
<!-- <view class="noticeItem">-->
<!-- <view class="noticeTop" :style="{background:1<=selectMonth && selectMonth<=3?'#DB573B':4<=selectMonth && selectMonth<=6?'#137BBD':7<=selectMonth && selectMonth<=9?'#3663CB':'#A66A37'}"></view>-->
<!-- <view class="noticeText">营业收入</view>-->
<!-- &lt;!&ndash; <span class="noticeSmallText">/万元</span>&ndash;&gt;-->
<!-- <text class="noticeMoney">{{currentPeriodData.Royalty_Theory?$util.fmoney($util.getMoney(currentPeriodData.Royalty_Theory / 10000),2):'-'}}</text>-->
<!-- </view>-->
<!-- <view class="noticeItem">-->
<!-- <view class="noticeTop" :style="{background:1<=selectMonth && selectMonth<=3?'#FFAB30':4<=selectMonth && selectMonth<=6?'#5DC1E0':7<=selectMonth && selectMonth<=9?'#7CADF8':'#DCA858'}"></view>-->
<!-- <view class="noticeText">商家入账</view>-->
<!-- &lt;!&ndash; <span class="noticeSmallText">/万元</span>&ndash;&gt;-->
<!-- <text class="noticeMoney">{{ currentPeriodData.SubRoyalty_Theory?$util.fmoney($util.getMoney(currentPeriodData.SubRoyalty_Theory / 10000),2):'-' }}</text>-->
<!-- </view>-->
<!-- </view>-->
</view>
</view>
<view class="accountRevenue">
<view class="accountItem" style="margin-bottom: 24rpx">
<view class="itemTop">
<view class="itemName">对客销售<span class="unit">/亿元</span></view>
<view class="itemType">累计</view>
</view>
<view class="itemBottom">
<span class="revenueNum">{{showTableData.YearRevenueAmount?$util.getMoney(showTableData.YearRevenueAmount/100000000):''}}</span>
<span class="revenueAdd" :style="{color:showTableData.YearRevenueAddNumber>0?'#E83944':showTableData.YearRevenueAddNumber<0?'#0E9976':''}">{{showTableData.YearRevenueAddNumber?$util.getMoney(showTableData.YearRevenueAddNumber / 100000000):''}}</span>
<span class="revenueAdd" :style="{color:showTableData.YearRevenueAdd>0?'#E83944':showTableData.YearRevenueAdd<0?'#0E9976':''}">{{showTableData.YearRevenueAdd?`${showTableData.YearRevenueAdd>0?'+':''}${showTableData.YearRevenueAdd}%`:'-'}}</span>
</view>
</view>
<view class="accountItem">
<view class="itemTop">
<view class="itemName">营业收入<span class="unit">/亿元</span></view>
<view class="itemType">除税累计</view>
</view>
<view class="itemBottom">
<span class="revenueNum">{{showTableData.YearAccountRoyalty?$util.getMoney(showTableData.YearAccountRoyalty/100000000):''}}</span>
<span class="revenueAdd" :style="{color:showTableData.YearAccountAddNumber>0?'#E83944':showTableData.YearAccountAddNumber<0?'#0E9976':''}">{{showTableData.YearAccountAddNumber?$util.getMoney(showTableData.YearAccountAddNumber / 100000000):''}}</span>
<span class="revenueAdd" :style="{color:showTableData.YearAccountAdd>0?'#E83944':showTableData.YearAccountAdd<0?'#0E9976':''}">{{showTableData.YearAccountAdd?`${showTableData.YearAccountAdd>0?'+':''}${showTableData.YearAccountAdd}%`:'-'}}</span>
</view>
</view>
</view>
<!-- 3.18-->
<!-- <view class="showMoreLoading" v-if="!loadMore">-->
<!--&lt;!&ndash; <image @click="handleShowMore" class="showMorenDown" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/downIconMore.png"/>&ndash;&gt;-->
<!-- <image @click="handleChangeLoadMore" class="showMorenDown" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/downIconMore.png"/>-->
<!-- </view>-->
<!-- <view class="goBusiness">-->
<!-- &lt;!&ndash; @click="handleGoProject"&ndash;&gt;-->
<!-- <view class="bussinessRight" >-->
<!-- <span class="bussinessText">单位:万元</span>-->
<!-- <view class="moreIcon" @click="changeShowRealBox">?-->
<!-- <view v-if="showRealBox" class="realBox" @click.stop="changeShowRealBox">-->
<!-- <view><text class="label">对客营收:</text>{{showTableData.CashPay?$util.fmoney($util.getMoney(showTableData.CashPay),2):'-'}}</view>-->
<!-- <view><text class="label">自营收入:</text>{{typeList && typeList.length>0?$util.fmoney($util.getMoney(typeList[0].value),2) : '-'}}</view>-->
<!-- <view><text class="label">外租收入:</text>{{typeList && typeList.length>0?$util.fmoney($util.getMoney(typeList[1].value),2) : '-'}}</view>-->
<!-- </view>-->
<!-- </view>-->
<!-- &lt;!&ndash; <span class="bussinessText">商家欠款</span>&ndash;&gt;-->
<!-- &lt;!&ndash; <image class="staticIcon" :src="1<=selectMonth && selectMonth<=3?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/1stStaticMore.svg':4<=selectMonth && selectMonth<=6?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/2stStaticMore.svg':7<=selectMonth && selectMonth<=9?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/3stStaticMore.svg':'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/4stStaticMore.svg'"/>&ndash;&gt;-->
<!-- </view>-->
<!-- </view>-->
</view>
<view class="revenueBox" v-show="selectMonth!==index+1 && selectMonth !== ((index+1)%12===0?12:(index+1)%12)">
<view class="revenueTop">
<view class="revenueTopLeft">
<text class="revenueNumber">-</text>
<view class="moreIcon" @click="changeShowRealBox">?
<view v-if="showRealBox" class="realBox" @click.stop="changeShowRealBox">
<view><text class="label">对客营收:</text>-</view>
<view><text class="label">自营收入:</text>-</view>
<view><text class="label">外租收入:</text>-</view>
</view>
</view>
</view>
<view class="revenueTopRight">
<!--https://eshangtech.com/ShopICO/ahyd-BID/examine/reduce.svg-->
<!-- <image class="addReduce" :src="showTableData.add>0?'https://eshangtech.com/ShopICO/ahyd-BID/examine/add.svg':showTableData.add>0?'https://eshangtech.com/ShopICO/ahyd-BID/examine/reduce.svg':''"/>-->
<!-- <text class="addValue">-</text>-->
</view>
</view>
<view class="revenueNav">
<text class="leftNav">-月对客营收<text class="unit">/万元</text></text>
<text class="rightNav">同比</text>
</view>
<view class="progress" :style="{background:1<=selectMonth && selectMonth<=3?'#FFAB30':4<=selectMonth && selectMonth<=6?'#5DC1E0':7<=selectMonth && selectMonth<=9?'#7CADF8':'#DCA858'}">
<view class="have" :style="{background:1<=selectMonth && selectMonth<=3?'#DB573B':4<=selectMonth && selectMonth<=6?'#137BBD':7<=selectMonth && selectMonth<=9?'#3663CB':'#A66A37'}"></view>
</view>
<view class="message">
<view class="smallDetailItem" style="margin-right: 14px">
<view class="messageTop">
<view class="type" :style="{background:1<=selectMonth && selectMonth<=3?'#DB573B':4<=selectMonth && selectMonth<=6?'#137BBD':7<=selectMonth && selectMonth<=9?'#3663CB':'#A66A37'}"></view>
<text class="typeTitle">自营收入<text class="unit">/万元</text></text>
</view>
<view class="middle">
<text class="money">-</text>
<view class="addItem">-</view>
</view>
<view class="messageBottom">
<text class="addText">-</text>
<text class="addType">同比</text>
</view>
</view>
<view class="smallDetailItem">
<view class="messageTop">
<view class="type" :style="{background:1<=selectMonth && selectMonth<=3?'#FFAB30':4<=selectMonth && selectMonth<=6?'#5DC1E0':7<=selectMonth && selectMonth<=9?'#7CADF8':'#DCA858'}"></view>
<text class="typeTitle">外租收入<text class="unit">/万元</text></text>
</view>
<view class="middle">
<text class="money">-</text>
<!-- <view class="addItem">+13.18%</view>-->
</view>
<view class="messageBottom">
<text class="addText">-</text>
<text class="addType">同比</text>
</view>
</view>
</view>
</view>
</view>
</view>
<view class="bottom" style="height: 60rpx;" v-if="!loadMore" @click="handleChangeLoadMore">
<!-- <view class="bottom" v-if="false" @click="handleChangeLoadMore">-->
<text class="searchText">查看更多</text>
<image class="searchIcon" :style="{height:'16px',transform: loadMore?'rotate(180deg)':''}" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/goMore.svg"/>
</view>
<div class="otherDetail sss" v-else>
<view class="detail" v-show="selectMonth===index+1 || selectMonth === ((index+1)%12===0?12:(index+1)%12)">
<view class="detailMessage">
<view class="otherDetailTop">
<view class="otherDetailTopLeft">
<view class="yearAll">{{showTableData.allRevenueYear?showTableData.allRevenueYear:''}}</view>
<view class="yearLabel">年度累计<text class="unit">/亿元</text></view>
</view>
<view class="otherDetailRight">
<view class="otherDetailAddBox">
<image class="otherDetailAddIcon" :src="Number(showTableData.yearYoY)>0?'https://eshangtech.com/ShopICO/ahyd-BID/examine/add.svg':Number(yesObj.yearYOY)<0?'https://eshangtech.com/ShopICO/ahyd-BID/examine/reduce.svg':''"/>
<text class="otherDetailAddValue">{{showTableData.yearYoY?showTableData.yearYoY+'%':''}}</text>
</view>
<view class="otherDetailAddLabel">同比</view>
</view>
</view>
<view class="otherDetailMiddle">
<view class="middleItem" style="margin-bottom: 16rpx">
<text class="itemLabel">对客营收<text class="itemText">/环比</text></text>
<text class="itemValue">{{showTableData.customerQoQ?showTableData.customerQoQ:''}}</text>
</view>
<view class="middleItem" style="margin-bottom: 16rpx">
<text class="itemLabel">自营收入<text class="itemText">/环比</text></text>
<text class="itemValue">{{typeList[0].addQOQ?typeList[0].addQOQ:''}}</text>
</view>
<view class="middleItem">
<text class="itemLabel">外租收入<text class="itemText">/环比</text></text>
<text class="itemValue">{{typeList[1].addQOQ?typeList[1].addQOQ:''}}</text>
</view>
</view>
<view class="otherDetailBottom">
<view class="bottomItem" @click="handleShowTrafficDetail" style="margin-bottom: 16rpx">
<view class="bottomSmallItem">
<view class="itemLeft">
<image class="leftIcon" :src="1<=selectMonth && selectMonth<=3?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/1stEntryCar.svg':4<=selectMonth && selectMonth<=6?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/2stEntryCar.svg':7<=selectMonth && selectMonth<=9?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/3stEntryCar.svg':'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/4stEntryCar.svg'"/>
<text class="itemTitle">入区车流</text>
</view>
<view class="itemCenter">
</view>
<view class="itemRight">
<text class="itemValue">{{trafficCurrentObj.Vehicle_AddUpCount?trafficCurrentObj.AddUpCount:''}}</text>
<text class="itemText">{{`/${trafficeUnit || '-'}`}}</text>
</view>
</view>
<view class="bottomSmallItem">
<view class="itemLeft">
</view>
<view class="itemCenter">
<text class="itemValue">{{trafficYOYObj.Vehicle_GrowthRate?trafficYOYObj.Vehicle_GrowthRate>0?'+'+trafficYOYObj.Vehicle_GrowthRate+'%':trafficYOYObj.Vehicle_GrowthRate+'%':'-'}}</text>
<text class="itemText">/同比</text>
</view>
<view class="itemRight">
<text class="itemValue">{{trafficQOQObj.Vehicle_GrowthRate?trafficQOQObj.Vehicle_GrowthRate>0?'+'+trafficQOQObj.Vehicle_GrowthRate+'%':trafficQOQObj.Vehicle_GrowthRate+'%':'-'}}</text>
<text class="itemText">/环比</text>
</view>
</view>
</view>
<view class="bottomItem" @click="handleShowTrafficDetail" style="margin-bottom: 16rpx">
<view class="bottomSmallItem">
<view class="itemLeft">
<image class="leftIcon" :src="1<=selectMonth && selectMonth<=3?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/1stEntryRate.svg':4<=selectMonth && selectMonth<=6?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/2stEntryRate.svg':7<=selectMonth && selectMonth<=9?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/3stEntryRate.svg':'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/4stEntryRate.svg'"/>
<text class="itemTitle">入区率</text>
</view>
<view class="itemCenter">
</view>
<view class="itemRight">
<text class="itemValue">{{trafficCurrentObj.Entry_Rate?trafficCurrentObj.Entry_Rate + '%':''}}</text>
</view>
</view>
<view class="bottomSmallItem">
<view class="itemLeft">
</view>
<view class="itemCenter">
<text class="itemValue">{{trafficYOYObj.Entry_GrowthRate?trafficYOYObj.Entry_GrowthRate>0?'+'+trafficYOYObj.Entry_GrowthRate+'%':trafficYOYObj.Entry_GrowthRate+'%':'-'}}</text>
<text class="itemText">/同比</text>
</view>
<view class="itemRight">
<text class="itemValue">{{trafficQOQObj.Entry_GrowthRate?trafficQOQObj.Entry_GrowthRate>0?'+'+trafficQOQObj.Entry_GrowthRate+'%':trafficQOQObj.Entry_GrowthRate+'%':'-'}}</text>
<text class="itemText">/环比</text>
</view>
</view>
</view>
<view class="bottomItem" @click="handleShowTrafficDetail">
<view class="bottomSmallItem">
<view class="itemLeft">
<image class="leftIcon" :src="1<=selectMonth && selectMonth<=3?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/1stEntryFix.svg':4<=selectMonth && selectMonth<=6?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/2stEntryFix.svg':7<=selectMonth && selectMonth<=9?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/3stEntryFix.svg':'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/4stEntryFix.svg'"/>
<text class="itemTitle">停留时长</text>
</view>
<view class="itemCenter">
</view>
<view class="itemRight">
<text class="itemValue">{{trafficCurrentObj.Stay_Times?trafficCurrentObj.Stay_Times + '分钟':''}}</text>
</view>
</view>
<view class="bottomSmallItem">
<view class="itemLeft">
</view>
<view class="itemCenter">
<text class="itemValue">{{trafficYOYObj.StayTimes_GrowthRate?trafficYOYObj.StayTimes_GrowthRate>0?'+'+trafficYOYObj.StayTimes_GrowthRate+'%':trafficYOYObj.StayTimes_GrowthRate+'%':'-'}}</text>
<text class="itemText">/同比</text>
</view>
<view class="itemRight">
<text class="itemValue">{{trafficQOQObj.StayTimes_GrowthRate?trafficQOQObj.StayTimes_GrowthRate>0?'+'+trafficQOQObj.StayTimes_GrowthRate+'%':trafficQOQObj.StayTimes_GrowthRate+'%':'-'}}</text>
<text class="itemText">/环比</text>
</view>
</view>
</view>
<view class="monthDetail" @click.stop="handleShowTrafficDetail" v-if="false">
<view class="monthItem">
<text class="label">{{ `${index+1}月入区车流` }}</text>
<text class="value">{{trafficCurrentObj.Vehicle_Count?$util.noDecimal(trafficCurrentObj.Vehicle_Count) + '辆':''}}</text>
</view>
<view class="monthItem">
<text class="label">{{ `${index+1}月入区率` }}</text>
<text class="value">{{trafficCurrentObj.Entry_Rate?trafficCurrentObj.Entry_Rate + '%':''}}</text>
</view>
<view class="monthItem">
<text class="label">{{ `${index+1}月停留时长` }}</text>
<text class="value">{{trafficCurrentObj.Stay_Times?trafficCurrentObj.Stay_Times + '分钟':''}}</text>
</view>
</view>
</view>
</view>
<div class="noShowMoreBox" @click="handleChangeLoadMore" >
<image v-if="loadMore" class="noShowMore" :style="{transform:`${loadMore?'rotate(-90deg)':''}`}" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/goMore.svg"/>
</div>
</view>
<view class="detail" v-if=false v-show="selectMonthIndex!==index+1 || selectMonthIndex !== ((index+1)%12===0?12:(index+1)%12)">
<view class="detailItem">
<p class="price">-</p>
<p class="itemName">长款金额<text class="itemUnit">/元</text></p>
</view>
<view class="detailItem">
<p class="price">-</p>
<p class="itemName">短款金额<text class="itemUnit">/元</text></p>
</view>
<view class="detailItem">
<p class="price">-</p>
<p class="itemName">优惠金额<text class="itemUnit">/元</text></p>
</view>
<view class="detailItem">
<p class="price" :style="{color:isBig?'red':''}">-</p>
<div class="itemName" style="display: flex;align-items: center">
<text>门店上传</text>
</div>
</view>
<view class="detailItem">
<p class="price">-</p>
<p class="itemName">商品出售<text class="itemUnit">/件</text></p>
</view>
<view class="detailItem">
<p class="price">-</p>
<p class="itemName">商品均价<text class="itemUnit">/元</text></p>
</view>
<view class="detailItem">
<p class="price">-</p>
<p class="itemName">日均入区<text class="itemUnit">/辆</text></p>
</view>
<view class="detailItem">
<p class="price">-</p>
<p class="itemName">入区率<text class="itemUnit">/%</text></p>
</view>
<view class="detailItem">
<p class="price">-</p>
<p class="itemName">停留时长<text class="itemUnit">/分钟</text></p>
</view>
</view>
</div>
</view>
<view class="bigBox sss" v-else>
<view class="box">
<view class="top">
<view class="topTop">
<view class="statistics" @click="goToRevenueStatic">
<image class="staticImg" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex/3stStaticIcon.svg"/>
<text class="staticTitle">对客营收</text>
<span class="staticUnit">/万元</span>
</view>
<view class="haveMore">
<text class="haveMoreText">查看更多</text>
<image class="haveMoreICon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/haveMoreICon.svg"/>
</view>
</view>
<view class="revenueBox" v-show="selectMonth===index+1 || selectMonth === ((index+1)%12===0?12:(index+1)%12)">
<view class="revenueTop">
<view class="revenueTopLeft">
<text class="revenueNumber">{{showTableData.CashPayChange?showTableData.CashPayChange:'0.00'}}</text>
<!-- <view class="moreIcon" @click="changeShowRealBox">?-->
<!-- <view v-if="showRealBox" class="realBox" @click.stop="changeShowRealBox">-->
<!-- <view><text class="label">对客营收:</text>{{showTableData.CashPay?$util.fmoney($util.getMoney(showTableData.CashPay),2):'-'}}</view>-->
<!-- <view><text class="label">自营收入:</text>{{typeList && typeList.length>0?$util.fmoney($util.getMoney(typeList[0].value),2) : '-'}}</view>-->
<!-- <view><text class="label">外租收入:</text>{{typeList && typeList.length>0?$util.fmoney($util.getMoney(typeList[1].value),2) : '-'}}</view>-->
<!-- </view>-->
<!-- </view>-->
</view>
<view class="revenueTopRight" v-if="showTableData.add">
<!--https://eshangtech.com/ShopICO/ahyd-BID/examine/reduce.svg-->
<image class="addReduce" :src="Number(showTableData.add)>0?'https://eshangtech.com/ShopICO/ahyd-BID/examine/add.svg':Number(showTableData.add)<0?'https://eshangtech.com/ShopICO/ahyd-BID/examine/reduce.svg':''"/>
<text class="addValue">{{showTableData.add?showTableData.add:'-'}}%</text>
<text class="rightNav">同比</text>
</view>
</view>
<view class="revenueNav">
<!-- <text class="leftNav">{{selectMonth}}月对客营收<text class="unit">/万元</text></text>-->
<!-- <text class="leftNav">对客营收</text>-->
<!-- <text class="rightNav">同比</text>-->
</view>
<view class="newBox">
<view class="progress" @click="handleShowHaveNoticeBox">
<view class="have" :style="{width:progressObj.owner+'%'}"></view>
<view class="haveNoticeBox" v-if="showHaveNotice" @click.stop="handleShowHaveNoticeBox">
<text class="label">自营:<text class="value">{{progressObj.owner}}%</text></text>
<text class="label">外租:<text class="value">{{progressObj.other}}%</text></text>
</view>
</view>
<view class="message" >
<view class="smallDetailItem" style="margin-right: 14px">
<view class="messageTop">
<view class="type" style="background: #0D53FE"></view>
<text class="typeTitle">自营收入</text>
<!-- <text class="unit">/万元</text>-->
</view>
<view class="middle" v-if="typeList && typeList.length>0">
<text class="money">{{revenueMoney?$util.fmoney(revenueMoney || 0,2):''}}</text>
<view class="addItem">{{monthAdd || ''}}%</view>
</view>
<view class="messageBottom" v-if="typeList && typeList[0].add">
<text class="addText">{{typeList[0].add?typeList[0].add:''}}</text>
<text class="addType">同比</text>
</view>
</view>
<view class="smallDetailItem">
<view class="messageTop">
<view class="type" style="background: #B1C8FF"></view>
<text class="typeTitle">外租收入</text>
<!-- <text class="unit">/万元</text>-->
</view>
<view class="middle">
<text class="money">{{externalMoney?$util.fmoney(externalMoney || 0,2):''}}</text>
<!-- <view class="addItem">+13.18%</view>-->
</view>
<view class="messageBottom" v-if="typeList && typeList[1].add">
<text class="addText">{{typeList[1].add?typeList[1].add:''}}</text>
<text class="addType">同比</text>
</view>
</view>
</view>
<view class="moneyRate">
<view class="leftBox" @click="handleShowYDModal" v-if="showRateChart">
<view class="rateChartsBox">
<rateCharts :success="moneyRateList" :colorList="['#1677FE','#456497','#97A9C6']" :name="`${selectMonth}rate`"/>
</view>
<view class="haveNoticeBox" v-if="ydModal" @click.stop="handleShowYDModal">
<text class="label">驿达入账:<text class="value">{{ydRate}}%</text></text>
<text class="label">商家入账:<text class="value">{{shopRate}}%</text></text>
</view>
</view>
<view class="rightBox">
<view class="noticeItem">
<view class="noticeTop" style="background: #2363FF"></view>
<view class="noticeText">驿达入账</view>
<!-- <span class="noticeSmallText">/万元</span>-->
<text class="noticeMoney">{{currentPeriodData.Royalty_Theory?$util.fmoney($util.getMoney(currentPeriodData.Royalty_Theory / 10000),2):'-'}}</text>
</view>
<view class="noticeItem">
<view class="noticeTop" style="background: #B1C8FF"></view>
<view class="noticeText">商家入账</view>
<!-- <span class="noticeSmallText">/万元</span>-->
<text class="noticeMoney">{{ currentPeriodData.SubRoyalty_Theory?$util.fmoney($util.getMoney(currentPeriodData.SubRoyalty_Theory / 10000),2):'-' }}</text>
</view>
</view>
</view>
</view>
<!-- <view class="goBusiness">-->
<!-- &lt;!&ndash; @click="handleGoProject"&ndash;&gt;-->
<!-- <view class="bussinessRight" >-->
<!-- <span class="bussinessText">单位:万元</span>-->
<!-- <view class="moreIcon" @click="changeShowRealBox">?-->
<!-- <view v-if="showRealBox" class="realBox" @click.stop="changeShowRealBox">-->
<!-- <view><text class="label">对客营收:</text>{{showTableData.CashPay?$util.fmoney($util.getMoney(showTableData.CashPay),2):'-'}}</view>-->
<!-- <view><text class="label">自营收入:</text>{{typeList && typeList.length>0?$util.fmoney($util.getMoney(typeList[0].value),2) : '-'}}</view>-->
<!-- <view><text class="label">外租收入:</text>{{typeList && typeList.length>0?$util.fmoney($util.getMoney(typeList[1].value),2) : '-'}}</view>-->
<!-- </view>-->
<!-- </view>-->
<!-- &lt;!&ndash; <span class="bussinessText">商家欠款</span>&ndash;&gt;-->
<!-- &lt;!&ndash; <image class="staticIcon" :src="1<=selectMonth && selectMonth<=3?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/1stStaticMore.svg':4<=selectMonth && selectMonth<=6?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/2stStaticMore.svg':7<=selectMonth && selectMonth<=9?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/3stStaticMore.svg':'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/4stStaticMore.svg'"/>&ndash;&gt;-->
<!-- </view>-->
<!-- </view>-->
</view>
<view class="revenueBox" v-show="selectMonth!==index+1 && selectMonth !== ((index+1)%12===0?12:(index+1)%12)">
<view class="revenueTop">
<view class="revenueTopLeft">
<text class="revenueNumber">-</text>
<view class="moreIcon" @click="changeShowRealBox">?
<view v-if="showRealBox" class="realBox" @click.stop="changeShowRealBox">
<view><text class="label">对客营收:</text>-</view>
<view><text class="label">自营收入:</text>-</view>
<view><text class="label">外租收入:</text>-</view>
</view>
</view>
</view>
<view class="revenueTopRight">
<!--https://eshangtech.com/ShopICO/ahyd-BID/examine/reduce.svg-->
<!-- <image class="addReduce" :src="showTableData.add>0?'https://eshangtech.com/ShopICO/ahyd-BID/examine/add.svg':showTableData.add>0?'https://eshangtech.com/ShopICO/ahyd-BID/examine/reduce.svg':''"/>-->
<!-- <text class="addValue">-</text>-->
</view>
</view>
<view class="revenueNav">
<text class="leftNav">-月对客营收<text class="unit">/万元</text></text>
<text class="rightNav">同比</text>
</view>
<view class="progress" :style="{background:1<=selectMonth && selectMonth<=3?'#FFAB30':4<=selectMonth && selectMonth<=6?'#5DC1E0':7<=selectMonth && selectMonth<=9?'#7CADF8':'#DCA858'}">
<view class="have" :style="{background:1<=selectMonth && selectMonth<=3?'#DB573B':4<=selectMonth && selectMonth<=6?'#137BBD':7<=selectMonth && selectMonth<=9?'#3663CB':'#A66A37'}"></view>
</view>
<view class="message">
<view class="smallDetailItem" style="margin-right: 14px">
<view class="messageTop">
<view class="type" :style="{background:1<=selectMonth && selectMonth<=3?'#DB573B':4<=selectMonth && selectMonth<=6?'#137BBD':7<=selectMonth && selectMonth<=9?'#3663CB':'#A66A37'}"></view>
<text class="typeTitle">自营收入<text class="unit">/万元</text></text>
</view>
<view class="middle">
<text class="money">-</text>
<view class="addItem">-</view>
</view>
<view class="messageBottom">
<text class="addText">-</text>
<text class="addType">同比</text>
</view>
</view>
<view class="smallDetailItem">
<view class="messageTop">
<view class="type" :style="{background:1<=selectMonth && selectMonth<=3?'#FFAB30':4<=selectMonth && selectMonth<=6?'#5DC1E0':7<=selectMonth && selectMonth<=9?'#7CADF8':'#DCA858'}"></view>
<text class="typeTitle">外租收入<text class="unit">/万元</text></text>
</view>
<view class="middle">
<text class="money">-</text>
<!-- <view class="addItem">+13.18%</view>-->
</view>
<view class="messageBottom">
<text class="addText">-</text>
<text class="addType">同比</text>
</view>
</view>
</view>
</view>
</view>
<view class="bottom" v-if="!loadMore" @click="handleChangeLoadMore">
<text class="searchText">查看更多</text>
<image class="searchIcon" :style="{height:'16px',transform: loadMore?'rotate(180deg)':''}" :src="1<=selectMonth && selectMonth<=3?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/1stUp.svg':4<=selectMonth && selectMonth<=6?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/2stUp.svg':7<=selectMonth && selectMonth<=9?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/3stUp.svg':'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/4stUp.svg'"/>
</view>
<div class="otherDetail" v-else>
<view class="detail" v-show="selectMonth===index+1 || selectMonth === ((index+1)%12===0?12:(index+1)%12)">
<view class="detailMessage">
<view class="otherDetailTop">
<view class="otherDetailTopLeft">
<view class="yearAll">{{showTableData.allRevenueYear?showTableData.allRevenueYear:''}}</view>
<view class="yearLabel">年度累计<text class="unit">/亿元</text></view>
</view>
<view class="otherDetailRight">
<view class="otherDetailAddBox">
<image class="otherDetailAddIcon" :src="Number(showTableData.yearYoY)>0?'https://eshangtech.com/ShopICO/ahyd-BID/examine/add.svg':Number(yesObj.yearYOY)<0?'https://eshangtech.com/ShopICO/ahyd-BID/examine/reduce.svg':''"/>
<text class="otherDetailAddValue">{{showTableData.yearYoY?showTableData.yearYoY+'%':''}}</text>
</view>
<view class="otherDetailAddLabel">同比</view>
</view>
</view>
<view class="otherDetailMiddle">
<view class="middleItem" style="margin-bottom: 16rpx">
<text class="itemLabel">对客营收<text class="itemText">/环比</text></text>
<text class="itemValue">{{showTableData.customerQoQ?showTableData.customerQoQ:''}}</text>
</view>
<view class="middleItem" style="margin-bottom: 16rpx">
<text class="itemLabel">自营收入<text class="itemText">/环比</text></text>
<text class="itemValue">{{typeList[0].addQOQ?typeList[0].addQOQ:''}}</text>
</view>
<view class="middleItem">
<text class="itemLabel">外租收入<text class="itemText">/环比</text></text>
<text class="itemValue">{{typeList[1].addQOQ?typeList[1].addQOQ:''}}</text>
</view>
</view>
<view class="otherDetailBottom">
<view class="bottomItem" @click="handleShowTrafficDetail" style="margin-bottom: 16rpx">
<view class="bottomSmallItem">
<view class="itemLeft">
<image class="leftIcon" :src="1<=selectMonth && selectMonth<=3?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/1stEntryCar.svg':4<=selectMonth && selectMonth<=6?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/2stEntryCar.svg':7<=selectMonth && selectMonth<=9?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/3stEntryCar.svg':'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/4stEntryCar.svg'"/>
<text class="itemTitle">入区车流</text>
</view>
<view class="itemCenter">
</view>
<view class="itemRight">
<text class="itemValue">{{trafficCurrentObj.Vehicle_AddUpCount?trafficCurrentObj.AddUpCount:''}}</text>
<text class="itemText">{{`/${trafficeUnit || '-'}`}}</text>
</view>
</view>
<view class="bottomSmallItem">
<view class="itemLeft">
</view>
<view class="itemCenter">
<text class="itemValue">{{trafficYOYObj.Vehicle_GrowthRate?trafficYOYObj.Vehicle_GrowthRate>0?'+'+trafficYOYObj.Vehicle_GrowthRate+'%':trafficYOYObj.Vehicle_GrowthRate+'%':'-'}}</text>
<text class="itemText">/同比</text>
</view>
<view class="itemRight">
<text class="itemValue">{{trafficQOQObj.Vehicle_GrowthRate?trafficQOQObj.Vehicle_GrowthRate>0?'+'+trafficQOQObj.Vehicle_GrowthRate+'%':trafficQOQObj.Vehicle_GrowthRate+'%':'-'}}</text>
<text class="itemText">/环比</text>
</view>
</view>
</view>
<view class="bottomItem" @click="handleShowTrafficDetail" style="margin-bottom: 16rpx">
<view class="bottomSmallItem">
<view class="itemLeft">
<image class="leftIcon" :src="1<=selectMonth && selectMonth<=3?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/1stEntryRate.svg':4<=selectMonth && selectMonth<=6?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/2stEntryRate.svg':7<=selectMonth && selectMonth<=9?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/3stEntryRate.svg':'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/4stEntryRate.svg'"/>
<text class="itemTitle">入区率</text>
</view>
<view class="itemCenter">
</view>
<view class="itemRight">
<text class="itemValue">{{trafficCurrentObj.Entry_Rate?trafficCurrentObj.Entry_Rate + '%':''}}</text>
</view>
</view>
<view class="bottomSmallItem">
<view class="itemLeft">
</view>
<view class="itemCenter">
<text class="itemValue">{{trafficYOYObj.Entry_GrowthRate?trafficYOYObj.Entry_GrowthRate>0?'+'+trafficYOYObj.Entry_GrowthRate+'%':trafficYOYObj.Entry_GrowthRate+'%':'-'}}</text>
<text class="itemText">/同比</text>
</view>
<view class="itemRight">
<text class="itemValue">{{trafficQOQObj.Entry_GrowthRate?trafficQOQObj.Entry_GrowthRate>0?'+'+trafficQOQObj.Entry_GrowthRate+'%':trafficQOQObj.Entry_GrowthRate+'%':'-'}}</text>
<text class="itemText">/环比</text>
</view>
</view>
</view>
<view class="bottomItem" @click="handleShowTrafficDetail">
<view class="bottomSmallItem">
<view class="itemLeft">
<image class="leftIcon" :src="1<=selectMonth && selectMonth<=3?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/1stEntryFix.svg':4<=selectMonth && selectMonth<=6?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/2stEntryFix.svg':7<=selectMonth && selectMonth<=9?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/3stEntryFix.svg':'https://eshangtech.com/ShopICO/ahyd-BID/newIndex/4stEntryFix.svg'"/>
<text class="itemTitle">停留时长</text>
</view>
<view class="itemCenter">
</view>
<view class="itemRight">
<text class="itemValue">{{trafficCurrentObj.Stay_Times?trafficCurrentObj.Stay_Times + '分钟':''}}</text>
</view>
</view>
<view class="bottomSmallItem">
<view class="itemLeft">
</view>
<view class="itemCenter">
<text class="itemValue">{{trafficYOYObj.StayTimes_GrowthRate?trafficYOYObj.StayTimes_GrowthRate>0?'+'+trafficYOYObj.StayTimes_GrowthRate+'%':trafficYOYObj.StayTimes_GrowthRate+'%':'-'}}</text>
<text class="itemText">/同比</text>
</view>
<view class="itemRight">
<text class="itemValue">{{trafficQOQObj.StayTimes_GrowthRate?trafficQOQObj.StayTimes_GrowthRate>0?'+'+trafficQOQObj.StayTimes_GrowthRate+'%':trafficQOQObj.StayTimes_GrowthRate+'%':'-'}}</text>
<text class="itemText">/环比</text>
</view>
</view>
</view>
<view class="monthDetail" @click.stop="handleShowTrafficDetail" v-if="false">
<view class="monthItem">
<text class="label">{{ `${index+1}月入区车流` }}</text>
<text class="value">{{trafficCurrentObj.Vehicle_Count?$util.noDecimal(trafficCurrentObj.Vehicle_Count) + '辆':''}}</text>
</view>
<view class="monthItem">
<text class="label">{{ `${index+1}月入区率` }}</text>
<text class="value">{{trafficCurrentObj.Entry_Rate?trafficCurrentObj.Entry_Rate + '%':''}}</text>
</view>
<view class="monthItem">
<text class="label">{{ `${index+1}月停留时长` }}</text>
<text class="value">{{trafficCurrentObj.Stay_Times?trafficCurrentObj.Stay_Times + '分钟':''}}</text>
</view>
</view>
</view>
</view>
</view>
<view class="detail" v-show="selectMonth===index+1 || selectMonth === ((index+1)%12===0?12:(index+1)%12)">
<view class="detailItem">
<p class="price">-</p>
<p class="itemName">长款金额<text class="itemUnit">/元</text></p>
</view>
<view class="detailItem">
<p class="price">-</p>
<p class="itemName">短款金额<text class="itemUnit">/元</text></p>
</view>
<view class="detailItem">
<p class="price">-</p>
<p class="itemName">优惠金额<text class="itemUnit">/元</text></p>
</view>
<view class="detailItem">
<p class="price" :style="{color:isBig?'red':''}">-</p>
<div class="itemName" style="display: flex;align-items: center">
<text>门店上传</text>
</div>
</view>
<view class="detailItem">
<p class="price">-</p>
<p class="itemName">商品出售<text class="itemUnit">/件</text></p>
</view>
<view class="detailItem">
<p class="price">-</p>
<p class="itemName">商品均价<text class="itemUnit">/元</text></p>
</view>
<view class="detailItem">
<p class="price">-</p>
<p class="itemName">日均入区<text class="itemUnit">/辆</text></p>
</view>
<view class="detailItem">
<p class="price">-</p>
<p class="itemName">入区率<text class="itemUnit">/%</text></p>
</view>
<view class="detailItem">
<p class="price">-</p>
<p class="itemName">停留时长<text class="itemUnit">/分钟</text></p>
</view>
</view>
</div>
<div class="noShowMoreBox" @click="handleChangeLoadMore" >
<image v-if="loadMore" class="noShowMore" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/goMore.svg"/>
</div>
</view>
</view>
</swiper-item>
</block>
</swiper>
</div>
<!-- 进度条 -->
<view class="sliderBox" v-if="false">
<SliderPage :index="selectDetail"/>
</view>
</view>
<view class="funEntry">
<!-- 即时营收 -->
<view class="instantRevenue" style="margin-top: 24rpx" >
<view class="revenue">
<view class="revenueTop">
<view class="revenyeTopLeft">
<image class="monthIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/monthIcon.svg"/>
<text class="dateText">{{$util.handleGetMonthDay(nowDay)}}</text>
<text class="day">/{{howDay}}</text>
</view>
<view class="revenyeTopRight" @click="handlePage">
<image class="right" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/goMore.svg"/>
</view>
</view>
<view class="revenueMoney">
<NumberScroll v-if="currentMoney" :number="currentMoney"/>
<!-- <text class="moneyText">{{currentMoney}}</text>-->
<text class="moneyLabel">实时营收/元</text>
</view>
</view>
</view>
<!-- 八个有背景的导航栏-->
<view class="funBox">
<!-- 服务区信息 -->
<view class="funItem" @click="handleGoServiceMessage">
<view class="funItemContent">
<view class="funIconBox">
<image class="funIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/serviceInfo.svg"/>
</view>
<text class="funText">驿达数智</text>
</view>
</view>
<!-- 经营报表-->
<view class="funItem" @click="handleGoOperate">
<view class="funItemContent">
<view class="funIconBox">
<image class="funIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/operatStatement.svg"/>
</view>
<text class="funText">经营报表</text>
</view>
</view>
<!-- 经营品牌库-->
<view class="funItem" v-if="false" @click="handleFestival">
<view class="funItemContent">
<view class="funIconBox">
<image class="funIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/brandLibrary.svg"/>
</view>
<text class="funText">经营品牌库</text>
</view>
</view>
<!-- 财务报表-->
<view class="funItem" @click="handleMoney">
<view class="funItemContent">
<view class="funIconBox">
<image class="funIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/financialState.svg"/>
</view>
<text class="funText">财务报表</text>
</view>
</view>
<!-- 节日特刊-->
<view class="funItem" @click="goToNational">
<view class="funItemContent">
<view class="funIconBox">
<image class="funIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/springTravelLogo.svg"/>
</view>
<!-- <text class="funText">节日特刊</text>-->
<text class="funText">平安春运</text>
</view>
</view>
<!-- 数智统计-->
<view class="funItem" v-if="false" style="margin-top: 48rpx" @click="changeShowPortrait">
<view class="funItemContent">
<view class="funIconBox">
<image class="funIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/statistics.svg"/>
</view>
<text class="funText">数智统计</text>
</view>
</view>
<!-- 现场管理-->
<view class="funItem" v-if="false" style="margin-top: 48rpx" @click="handleGoExamine(1)">
<view class="funItemContent">
<view class="funIconBox">
<image class="funIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/onSiteManagement.svg"/>
</view>
<text class="funText">现场管理</text>
</view>
</view>
<!-- 昨日营收-->
<view class="funItem" v-if="false" style="margin-top: 48rpx" @click="handlePage">
<view class="funItemContent">
<view class="funIconBox">
<image class="funIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/yesterdayRevenue.svg"/>
</view>
<text class="funText">昨日营收</text>
</view>
</view>
</view>
<!-- 车流预警-->
<view class="bigCarBox" style="margin-top: 24rpx" v-if="special">
<view class="carWarning" @click="handleGoWarning">
<div class="carWarningTop">
<!-- @click="handleGoWarning" -->
<div class="warningBox" >
<image class="warningIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/carIcon.svg"/>
<div class="trafficBox">
<text class="trafficCar">车流预警</text>
<text class="trafficUnit"> /Top3</text>
<!-- <image class="moreIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex/carMoreIcon.svg"/>-->
</div>
</div>
<div class="moreStoreBox" >
<!-- <span class="moreText">更多记录</span>-->
<image class="moreIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/goMore.svg"/>
</div>
</div>
<div class="contentList" >
<div class="contentItem" v-for="(item,index) in warningList" :key="index">
<div class="index">
<div class="boxBg" v-if="index<=2"></div>
<span class="indexText" :style="{fontWeight:index<=2?'bold':'normal',color:index<=2?'#160002':'#786B6C'}">{{index + 1}}</span>
</div>
<div class="serviceBox">
<span class="name">{{item.name}}</span>
<span class="position">{{item.SERVERPART_REGION}}区</span>
</div>
<div class="numberBox">
<span class="number">{{item.VEHICLE_COUNT}}</span>
<span class="unit">/辆</span>
</div>
<div class="addBox">
<image class="addIcon" :src="Number(item.VEHICLE_RATE)>100?'https://eshangtech.com/ShopICO/ahyd-BID/examine/add.svg':Number(item.VEHICLE_RATE)===100?'':'https://eshangtech.com/ShopICO/ahyd-BID/examine/reduce.svg'"/>
<span class="add">{{item.VEHICLE_RATE}}%</span>
</div>
</div>
</div>
</view>
</view>
<!-- <span @click="handleGoProject">111</span>-->
<!-- 四个画像-->
<div class="funList" v-if="showPortrait">
<view class="san"></view>
<div class="funItem" v-for="(item,index) in tabTypeList" :key="index" @click="handleGoTab(item)">
<view class="iconBox">
<image class="funItemIcon" :src="item.imgUrl"/>
</view>
<text class="funItemText">{{item.name}}</text>
</div>
</div>
<!-- 人流预警-->
<view class="peopleWarning" v-if="false">
<div class="carWarningTop">
<div class="warningBox">
<image class="warningIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex/personIcon.svg"/>
<div class="trafficBox">
<text class="trafficCar" style="color: #075FF0">人流预警</text>
<image class="moreIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex/personMoreIcon.svg"/>
</div>
</div>
<div class="moreStoreBox" @click="handleGoWarning">
<!-- <span class="moreText">更多记录</span>-->
<!-- <image class="moreIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/commercial/rightArrow.svg"/>-->
</div>
</div>
<div class="contentList" >
<div class="contentItem" v-for="(item,index) in warningList" :key="index">
<div class="index" >
<div class="boxBg" v-if="index<=2"></div>
<span class="indexText" :style="{fontWeight:index<=2?'bold':'normal',color:index<=2?'#160002':'#786B6C'}">{{index + 1}}</span>
</div>
<div class="serviceBox">
<span class="name">{{item.name}}</span>
<span class="position">{{item.SERVERPART_REGION}}区</span>
</div>
<div class="numberBox">
<span class="number">{{item.VEHICLE_COUNT}}</span>
<span class="unit">/人</span>
</div>
<div class="addBox">
<image class="addIcon" :src="Number(item.VEHICLE_RATE)>100?'https://eshangtech.com/ShopICO/ahyd-BID/examine/add.svg':Number(item.VEHICLE_RATE)===100?'':'https://eshangtech.com/ShopICO/ahyd-BID/examine/reduce.svg'"/>
<span class="add">{{item.VEHICLE_RATE}}%</span>
</div>
</div>
</div>
</view>
<!-- 自营计划-->
<view class="selfPlan" v-if="false">
<view class="selfPlanTitle">自营计划</view>
<view class="content">
<view class="contentItem" style="border-bottom: 2rpx solid #F6F6F7;padding-bottom: 32rpx" >
<view class="contentTop">
<view class="contentLeft">
<image class="dateImg" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex/monthIcon.svg"/>
<text class="smallTitle">本月计划</text>
</view>
<view class="contentRight" @click="handlePlanPageGo('month')">
<text class="moreText">查看更多</text>
<image class="moreIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/commercial/rightArrow.svg"/>
</view>
</view>
<view class="contentBottom">
<view class="canvaBox">
<MonthCharts :success="plan.percentageMonth"/>
</view>
<view class="messageBox">
<view class="messageTop">
<image class="topIcon" :src="Number(plan.MonthGrowth_Rate)>0?'https://eshangtech.com/ShopICO/ahyd-BID/examine/add.svg':Number(plan.MonthGrowth_Rate)<0?'https://eshangtech.com/ShopICO/ahyd-BID/examine/reduce.svg':''"/>
<text class="messageValue">{{monthAdd}}%</text>
<text class="messageDesc">(比计划)</text>
</view>
<view class="messageBottom">
<view class="bottomItem">
<view class="itemValue">{{plan.RevenueMonth_Amount?plan.RevenueMonth_Amount:'-'}}</view>
<view class="itemLabel">已完成<text class="unit">/万元</text></view>
</view>
<view class="bottomItem">
<view class="itemValue">{{plan.BudgetMonth_Amount?plan.BudgetMonth_Amount:'-'}}</view>
<view class="itemLabel">计划<text class="unit">/万元</text></view>
</view>
<view class="bottomItem">
<view class="itemValue">{{plan.MonthYOY_Rate?plan.MonthYOY_Rate>0?`+${plan.MonthYOY_Rate}%`:`${plan.MonthYOY_Rate}%`:'-'}}</view>
<view class="itemLabel">同比</view>
</view>
</view>
</view>
</view>
</view>
<view class="contentItem" style="margin-top: 32rpx" >
<view class="contentTop">
<view class="contentLeft">
<image class="dateImg" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex/yearIcon.svg"/>
<text class="smallTitle">本年计划</text>
</view>
<view class="contentRight" @click="handlePlanPageGo('year')">
<text class="moreText">查看更多</text>
<image class="moreIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/commercial/rightArrow.svg"/>
</view>
</view>
<view class="contentBottom">
<view class="canvaBox">
<MonthCharts :success="plan.percentageYear"/>
</view>
<view class="messageBox">
<view class="messageTop">
<image class="topIcon" :src="Number(yearAdd)>0?'https://eshangtech.com/ShopICO/ahyd-BID/examine/add.svg':Number(yearAdd)<0?'https://eshangtech.com/ShopICO/ahyd-BID/examine/reduce.svg':''"/>
<text class="messageValue">{{yearAdd}}%</text>
<text class="messageDesc">(比计划)</text>
</view>
<view class="messageBottom">
<view class="bottomItem">
<view class="itemValue">{{plan.RevenueYear_Amount?plan.RevenueYear_Amount:'-'}}</view>
<view class="itemLabel">已完成<text class="unit">/{{ plan.revenueType==='yi'?'亿元':'万元' }}</text></view>
</view>
<view class="bottomItem">
<view class="itemValue">{{plan.BudgetYear_Amount?plan.BudgetYear_Amount:'-'}}</view>
<view class="itemLabel">计划<text class="unit">/{{ plan.budgetType==='yi'?'亿元':'万元' }}</text></view>
</view>
<view class="bottomItem">
<view class="itemValue">{{plan.YearYOY_Rate?plan.YearYOY_Rate>0?`+${plan.YearYOY_Rate}%`:`${plan.YearYOY_Rate}%`:'-'}}</view>
<view class="itemLabel">同比</view>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
<!-- 营收占比-->
<view class="proportion" v-if="false">
<view class="proportionTitle">营收占比</view>
<view class="contentPropor">
<view class="tabs">
<view
v-for="(item, index) in propOfRevenList"
:key="index"
:class="selectTab === item.value ? 'active tabItem' : 'tabItem'"
@click="handleSelectTab(item.value)">
{{ item.name }}
</view>
</view>
<view class="chart">
<div v-show="selectTab===1" v-if="regionProgress && regionProgress.length>0">
<div>
<div class="operation-c-list" v-for="(item,o) in regionProgress" :key="o" :style="{marginBottom:o===regionProgress.length?'0px':''}">
<div class="top">
<div class="left">
<div class="icon">
<image :src="o===0?'https://eshangtech.com/ShopICO/ahyd-BID/index/No1.svg':o===1?'https://eshangtech.com/ShopICO/ahyd-BID/index/No2.svg':o===2?'https://eshangtech.com/ShopICO/ahyd-BID/index/No3.svg':'https://eshangtech.com/ShopICO/ahyd-BID/index/No4.svg'"></image>
<text>{{o+1}}</text>
</div>
<p class="name">{{item.name}}</p>
</div>
<p class="price">{{$util.fmoney(item.value,2)}}</p>
</div>
<div class="bottom">
<div class="bar">
<div class="progress" :style="{width:item.percentage+'%'}"></div>
</div>
<p class="number">{{item.percentage+'%'}}</p>
</div>
</div>
</div>
</div>
<div v-show="selectTab===2" v-if="areaProgress && areaProgress.length>0">
<div>
<div class="operation-c-list" v-for="(item,o) in areaProgress" :key="o" :style="{marginBottom:o===regionProgress.length?'0px':''}">
<div class="top">
<div class="left">
<div class="icon">
<image :src="o===0?'https://eshangtech.com/ShopICO/ahyd-BID/index/No1.svg':o===1?'https://eshangtech.com/ShopICO/ahyd-BID/index/No2.svg':o===2?'https://eshangtech.com/ShopICO/ahyd-BID/index/No3.svg':'https://eshangtech.com/ShopICO/ahyd-BID/index/No4.svg'"></image>
<text>{{o+1}}</text>
</div>
<p class="name">{{item.name}}</p>
</div>
<p class="price">{{$util.fmoney(item.value,2)}}</p>
</div>
<div class="bottom">
<div class="bar">
<div class="progress" :style="{width:item.percentage+'%'}"></div>
</div>
<p class="number">{{item.percentage+'%'}}</p>
</div>
</div>
</div>
</div>
</view>
</view>
</view>
<!-- 巡检考核-->
<view class="patrolInspection" v-if="false">
<view class="patrolTitle">巡检考核</view>
<view class="contentBox">
<view class="contentFirst" style="border-bottom: 2rpx solid #F7F4F4">
<view class="firstTop">
<view class="left">
<image class="topIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex/examineQuestion.svg"/>
<text class="topText">日常巡检</text>
</view>
<view class="right" @click="handleGoExamine(2)">
<text class="moreText">查看更多</text>
<image class="moreIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/commercial/rightArrow.svg"/>
</view>
</view>
<view class="firstBox">
<view class="boxItem">
<text class="itemValue">{{dailyExamineObj.RectifyCount||'0'}}</text>
<text class="itemLabel">已整改<text class="unit">/个</text></text>
</view>
<view class="boxItem">
<text class="itemValue">{{dailyExamineObj.UnRectifyCount||'0' }}</text>
<text class="itemLabel">未整改<text class="unit">/个</text></text>
</view>
<view class="boxItem">
<view class="canva"></view>
<view class="detailBox">
<view class="detailValue">{{dailyExamineObj.CompleteRate?dailyExamineObj.CompleteRate + '%' :'-' }}</view>
<view class="detailLabel">达标率<text class="unit">/全省</text></view>
</view>
</view>
</view>
</view>
<view class="contentFirst">
<view class="firstTop" style="margin-top: 32rpx">
<view class="left">
<image class="topIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex/examinePosition.svg"/>
<text class="topText">考核管理</text>
</view>
<view class="right" @click="handleGoExamine(1)">
<text class="moreText">查看更多</text>
<image class="moreIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/commercial/rightArrow.svg"/>
</view>
</view>
<view class="secondBox" >
<view class="secondItem">
<image class="itemImg" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex/good.svg"/>
<view class="secondDetail">
<text class="labelValue">{{examineObj.A || '0'}}</text>
<text class="labelTitle">优秀<text class="unit">/个</text></text>
</view>
</view>
<view class="secondItem">
<image class="itemImg" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex/normal.svg"/>
<view class="secondDetail">
<text class="labelValue">{{examineObj.B || '0'}}</text>
<text class="labelTitle">良好<text class="unit">/个</text></text>
</view>
</view>
<view class="secondItem">
<image class="itemImg" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex/bad.svg"/>
<view class="secondDetail">
<text class="labelValue">{{examineObj.C || '0'}}</text>
<text class="labelTitle">一般<text class="unit">/个</text></text>
</view>
</view>
</view>
</view>
</view>
</view>
<!--节日特刊-->
<div class="nationalDay" v-if="false" @click="goToNational">
<div class="national">
<div class="nationalTop">
<div class="nationalTopLeft">
<span class="topText">节日特刊</span>
<!-- <image class="lanternImg" src="https://eshangtech.com/ShopICO/ahyd-BID/nationalDay/lantern.png" />-->
<!-- <div class="titleBox">-->
<!-- &lt;!&ndash; @click="goToNational" &ndash;&gt;-->
<!-- &lt;!&ndash; <image class="titleBg" src="https://eshangtech.com/ShopICO/ahyd-BID/nationalDay/titleBox.svg"/>&ndash;&gt;-->
<!-- <div class="title" >-->
<!-- <image class="rightIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/nationalDay/rightIcon.svg"/>-->
<!-- </div>-->
<!-- </div>-->
</div>
<div class="nationalTopRight">
<text class="timeText" >{{lastDay}}</text>
</div>
</div>
<div class="nationalContent">
<div class="itemContent" v-for="(item,index) in nationalDayList" :key="index">
<p class="value">{{item.value || '-'}}</p>
<p class="title">{{item.title}}<span>{{item.unit}}</span></p>
<image class="itemBg" :src="item.bg"/>
</div>
</div>
</div>
</div>
</view>
<!--通知框-->
<!-- -->
<div class="notice" v-if="isShow" style="bottom: 200px;">
<view class="left">
<image class="icon" src="https://eshangtech.com/ShopICO/ahyd-BID/index/warning.svg"></image>
<view class="text">
<p class="name">{{isShowTitle}}个投诉建议</p>
</view>
</view>
<view class="right" @click="handleSearch('other')">去查看</view>
</div>
<!-- 弹出框-->
<uni-popup ref="popup" :show="popupShow" :type="popupType" :round="popup" @hidePopup="closePop">
<div class="popupIndex">
<div class="popupTop">未上传门店: </div>
<div class="bodyList">
<div class="item" v-for="(item,index) in bodyList" :key="index">
<div class="index">{{index + 1<10 ? '0' + (index + 1):index + 1}}</div>
<div class="title">{{item.Serverpart_Name}}{{item.ServerpartShop_Name}}</div>
</div>
</div>
</div>
</uni-popup>
<!-- 底部导航栏-->
<Tabbar ref="tabbar" :page="page"></Tabbar>
</view>
</template>
<script>
import {getThisDay,timestampToTimeMonth} from "../../util/dateTime";
import {
mapActions,
mapGetters,
mapState
} from 'vuex';
import request from '@/util/index.js'
import uniPopup from "../../components/uni-popup.vue";
import Tabbar from "../../components/tabbar/tabbar.vue";
import MonthCharts from "./components/monthCharts.vue";
import RateCharts from "./components/rateCharts.vue";
import SliderPage from "./components/sliderPage.vue";
import UniDataSelect from "../../components/uni-data-select/uni-data-select.vue";
import NumberScroll from "./components/numberScroll.vue";
import moment from "moment";
import numeral from "numeral";
var rincanvas = {};
export default {
components: {SliderPage, RateCharts, MonthCharts, Tabbar,uniPopup,UniDataSelect,NumberScroll},
data() {
const lastDay = this.$util.cutDate(new Date(), 'YYYY-MM-DD', -1)
// const lastDay = '2024-01-01'
const nowDay = this.$util.cutDate(new Date(), 'YYYY-MM-DD')
return {
localdata:[{text:'全局版',value:1},{text:'业务版',value:2}],
selectVersion:1,// 选择的版本
statusBarHeight:'',// 每个手机的状态栏高度
page:'/pages/index/index',
bodyList:[],//列表
menu:'', // 胶囊按钮高度
startDate:'',// 开始时间
endData:'', // 结束时间
popupType:'center',
popupShow:false,
popup:true,
nationalDayList:[
{title:'营收',unit:'/万元',value:'',bg:'https://eshangtech.com/ShopICO/ahyd-BID/nationalDay/revenueBg.svg'},
{title:'车流',unit:'/万辆',value:'',bg:'https://eshangtech.com/ShopICO/ahyd-BID/nationalDay/carIcon.svg'},
{title:'车流增幅Top1',unit:'',value:'',bg:'https://eshangtech.com/ShopICO/ahyd-BID/nationalDay/add.png'},
],
tabTypeList:[
{ imgUrl: 'https://eshangtech.com/ShopICO/ahyd-BID/index/car.svg', path: '/pages/commercialBINew/carPortrait', name: '车流'},
{ imgUrl: 'https://eshangtech.com/ShopICO/ahyd-BID/index/guest.svg', path: '/pages/commercialBI/guestPortrait', name: '客群' },
{ imgUrl: 'https://eshangtech.com/ShopICO/ahyd-BID/index/business_icon.svg', path: '/pages/commercialBI/managePortrait', name: '经营' },
{ imgUrl: 'https://eshangtech.com/ShopICO/ahyd-BID/index/trade.svg', path: '/pages/commercialBI/businessPortrait', name: '交易' }
],
// { imgUrl: 'https://eshangtech.com/ShopICO/ahyd-BID/index/brand.svg', path: '/pages/commercialBI/formatPortrait', name: '业态品牌' }
detailTypeList:[{ name: '分润门店', unit: '/个', value: '-',yesterValue:'-', add: '', imgIcon: 'https://eshangtech.com/ShopICO/ahyd-BID/index/store.svg' },
{ name: '驿达分润', unit: '/元', value: '-',yesterValue:'-', imgIcon: 'https://eshangtech.com/ShopICO/ahyd-BID/index/yidaFenrun.svg' },
{ name: '订单配送', unit: '/单', value: '-',yesterValue:'-', add: '', imgIcon: 'https://eshangtech.com/ShopICO/ahyd-BID/index/orderDelivery.svg' },
{ name: '采购金额', unit: '/元', value: '-',yesterValue:'-', imgIcon: 'https://eshangtech.com/ShopICO/ahyd-BID/index/purchaseAmount.svg' },],
propOfRevenList:[
// { name: '经营模式', value: 1 },
{ name: '区域营收', value: 2 },
{ name: '经营业态', value: 1 }],
selectTab:2, // 选项卡的指针
monthAmountAdd:'',//月累计
yearAmountAdd:'',//年累计
mobileData :{}, // 移动支付分账接口返回的数据
single:'', // 时间选择器选择的时间
monthAdd: null,//月每天的相对增加
yearAdd:'', // 年度计划增加的百分比
thisDay:'', // 显示的星期几
isBig:false,//判断门店上传的前一个数字是否比后一个数字大
allShopCount: 0,//门店总数
theRequest: null,
lastDay: lastDay, // 该页面的最近有效日期
howDay:'',// 星期几
nowDay: nowDay, // 当天时间
buyPriceYes:'',//昨日采购金额
regionList: null,
nowTab: 1,
showNotice:false,
showNoticeYear:false,
priceMove:false,//价格出现的动画效果
carInfo:{},//车流信息
regionProgress: null,
areaProgress: null,
modelProgress: null,
showTableData:{
},
monthPrice:0,//月度累计分润
yesterdayBillCount:0,//昨日累计配送
lastDayBillCount:0,//当前日的配送
buyPriceMonth:0,//月度的采购金额
totalData:null,
option:{},//onLoad里面的option
isShow:false, //投诉建议是否显示
isShowTitle:0,//投诉建议条数
isShowId:0,//投诉id
plan:{},//月度和年度接口的返回参数 一起的
ShareShopCountYes:0,//昨日的店铺数
yesterdayAllPay:0,//前一天的营收总额
noChangeLastDay: lastDay,
wechatPushSalesList: null, // 甘肃单品排行数据
seat:{},//用户经纬度信息
nearServiceInfo:{
SERVERPART_NAME:"广德服务区",
SPREGIONTYPE_NAME:"芜湖片区",
Serverpart_ID:524
},//最近服务区的有用信息
monthNoticeText:'',
yearNoticeText:'',
isSuccess:false,//首页这些接口是否全部调用成功
isReturn : true,
isSuggestion:false,//可不可以看意见
loadMore:false,// 是否展示更多
special:false,
allTrafficList:[],// 车流数据数组
showTrafficList:[],// 显示在页面上车流数据
warningList:[],// 预警列表
selectDetail:0,// 选中的统计标签
nowMonth:0,// 当前的月份
swiperList:[],// 滑动块有多少项
selectMonth:0,//选择的月份
selectMonthIndex:0,//选择的月份第几个
useInfo:{},//用户信息
showRealBox:false,// 是否显示对客营收的完整数据
yesObj:{},// 昨日营收数据
typeList:[],//自营和外租的数据
showPortrait:false,// 是否显示五个画像的框
examineObj:{},// 考核详情
dailyExamineObj:{},//巡检数据详情
stopSwiper:false,// 阻止swiper调用
phoneWidth:0,// 手机的宽度
progressObj:{},//自营和外租的占比
showHaveNotice:false,// 显示月份详情卡片的进度条点击显示的内容
trafficQOQObj:{},// 环比对象
trafficYOYObj:{},// 同比对象
trafficCurrentObj:{},// 当前月
trafficeUnit:'',// 单位
showMonthDetail:false,//月度车流的显示框
yesObjCompared:'',//昨日营收的比较值
moneyRateList:[],
currentPeriodData:{},// 本期数据
ydModal: false,// 显示驿达百分比的具体值
ydRate:'',// 便利店百分比
shopRate:'',// 餐饮客房百分比
shopOutRate:'',// 商铺租赁
showRateChart:true,// 显示百分比表格
revenueMoney:'',// 自营收入
externalMoney:'',// 外租收入
currentMoney:'',
showMoreFixed:false,// 显示悬浮框
profitSharingList:[],// 分润占比旁边的list
}
},
watch:{
user:{
// 新用户刚进来的时候可能onLoad会执行不了 监听他的user变化确保能请求
handler:function (value){
let userInfo = uni.getStorageSync('vuex')
userInfo = JSON.parse(userInfo)
if (this.isReturn===true){
// 无权限就会跳转到无数据的页面
if (userInfo.userData.AuthorityInfo['89a1f248-2113-4d57-84b1-c2e6edb9e8ee']===1){
this.isReturn = false
}else{
uni.redirectTo({
url:`/pages/commercialBI/noData?type=noAuthor`
})
}
if (userInfo.userData.AuthorityInfo['e2fb458b-d1bd-48fa-805e-fc93dc71efb7'] === 1 || userInfo.userData.AuthorityInfo['ea2fc404-d924-4c88-98de-1f4d96137745'] === 1){
this.getSuggestion()
}
// 拿到用户当前的经纬度位置
this.seat = uni.getStorageSync('seatInfo')
if (!this.seat){
//获取用户的经纬度位置存在stroge里面
if (wx.getPrivacySetting){
wx.getPrivacySetting({
success: res=>{
if (res.needAuthorization){
this.$util.toNextRoute('redirectTo', '/pages/register/register')
}else{
wx.getFuzzyLocation({
type:'gcj02',
altitude:true,
success: (res) =>{
let seatInfo = {
latitude:res.latitude,
longitude:res.longitude
}
uni.setStorageSync('seatInfo', seatInfo);
this.seat = seatInfo
}
})
}
}
})
}else{
uni.showModal({
title: '提示',
content: '当前微信版本过低,无法使用该功能,请升级到最新微信版本后重试。'
})
return
}
}else{
//拿到最近服务区的数据
this.nearestService()
}
if (!this.isReturn){
this.getData(this.option)
this.handleNoticeMonth()
this.handleNoticeYear()
}
}
},
deep:true
},
seat:{
handler(value){
if (value.latitude && value.longitude){
this.nearestService()
}
}
}
},
computed: {
...mapState({
...mapGetters({'user':'getUser'}),
'PushAuthority': (state) => state.userData.PushAuthority,
'ProvinceCode': (state) => state.userData.ProvinceCode,
toDoMsg:(state)=>{return state.toDoMsg},
}),
hasSeverpartIndexAuthority() {
let theRequest = this.theRequest
if (this.theRequest && theRequest.ProvinceCode && this.PushAuthority) {
return this.PushAuthority.some(n =>
n.ProvinceCode == theRequest.ProvinceCode && n.ShopAnalysisType == 1
)
}
return false
},
...mapGetters({'user':'getUser'})
},
onLoad(option){
const _this = this
// setTimeout(()=>{
// _this.moneyRateList = [0,0]
// },3000)
// 顶部显示的时间
this.single = timestampToTimeMonth((new Date(this.lastDay).getTime()))
// 获取手机参数对页面进行适配 主要是用于拿到胶囊的位置
let systemInfo = uni.getSystemInfoSync()
this.statusBarHeight = Number(systemInfo.statusBarHeight)
uni.setStorageSync('phoneInfo',systemInfo)
this.menu = uni.getMenuButtonBoundingClientRect()
// 拿到用户手机的宽 用设计图的宽高比去设定上半部的高度
this.phoneWidth = systemInfo.windowWidth
// 拿到昨天的时间戳
// 当年份不是2023 要判断有多少个可以滑动的项
const nowDate = new Date(this.nowDay)
let holiday = nowDate.getDay()
this.howDay = ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"][holiday]
const date = new Date(this.lastDay)
let y = date.getFullYear()
let m = date.getMonth() + 1
let sum = 0
let swiperList = []
if (2023-y<0){
sum = 12 * (y - 2023) + m
for (let i=0;i<sum;i++){
if (i<=11){
swiperList.push({key:i})
}else{
let currentNumber = Math.floor(i/12)
let currentM = i%12
swiperList.push({key: 12*currentNumber + currentM})
}
}
}else{
sum = m
for (let i=1;i<=sum;i++){
swiperList.push({key:`2023${i<10?'0'+i:i}`})
}
}
this.swiperList = swiperList
console.log('this.swiperList',this.swiperList)
// 顶部卡片滚动的第几个
this.selectDetail = this.handleGetSwiperIndex(this.lastDay)
// 拿到选择日期的月份
this.nowMonth = date.getMonth() + 1
// 默认选择的月份
this.selectMonth = date.getMonth() + 1
this.selectMonthIndex = y > 2023? 12+date.getMonth() + 1:date.getMonth() + 1
console.log('this.selectMonth',this.selectMonth)
// 设置顶部时间选择器的开始时间 因为不能选去年数据 所以只能从当前日期的年份开始计算
this.startDate = `${date.getFullYear()}-01`
// 设置顶部选时间的显示 结束时间不能是大于等于今天
this.endData = new Date()
// 星期几
this.thisDay = getThisDay(date.getDay())
// 把时间存起来给全部页面都能拿到
uni.setStorageSync('lastDay',this.lastDay)
uni.setStorageSync('version',this.selectVersion)
// 小程序进来存起来的用户信息
let userInfo = uni.getStorageSync('vuex')
userInfo = JSON.parse(userInfo)
this.useInfo = JSON.parse(JSON.stringify(userInfo))
// 判断有没有权限
if (userInfo.userData.AuthorityInfo['89a1f248-2113-4d57-84b1-c2e6edb9e8ee']===1){
this.isReturn = false
}else{
uni.redirectTo({
url:`/pages/commercialBI/noData?type=noAuthor`
})
}
if (!this.isReturn){
let userInfo = uni.getStorageSync('vuex')
userInfo = JSON.parse(userInfo)
// 判断是否有投诉建议的悬浮框弹出
if (userInfo.userData.AuthorityInfo['e2fb458b-d1bd-48fa-805e-fc93dc71efb7'] === 1 || userInfo.userData.AuthorityInfo['ea2fc404-d924-4c88-98de-1f4d96137745'] === 1){
this.getSuggestion()
}
//拿到option的值
this.option = option
// 获取数据的方法
if (this.user.Membership_Id){
this.getData(option)
}
// 判断缓存中是否有位置信息 没有的话 向用户请求 拿到用户当前位置
// 拿到当前位置之后去请求离当前位置最近的服务区 作为第一次进入小程序自动选中的服务区
// 在用户选择服务区之后就会有当前服务区
// 用户的当前坐标,如果没有就重新请求坐标 有了就去调最近的服务区
this.seat = uni.getStorageSync('seatInfo')
if (!this.seat){
//获取用户的经纬度位置存在stroge里面
wx.getFuzzyLocation({
type:'gcj02',
altitude:true,
success: (res) =>{
let seatInfo = {
latitude:res.latitude,
longitude:res.longitude
}
uni.setStorageSync('seatInfo', seatInfo);
_this.seat = seatInfo
_this.nearestService()
}
})
}else{
//拿到最近服务区的数据
this.nearestService()
}
//问号显示的内容 月份的数据请求 和 年份的数据请求
this.handleNoticeMonth()
this.handleNoticeYear()
// 如果十秒之后 isSuccess 没有变成true 说明接口有慢的或者报错了 才出现提示
setTimeout(()=>{
if (!this.isSuccess){
uni.showToast({
title: '加载失败,请下拉刷新重新加载',
icon: 'none',
duration: 3000
})
}
},10000)
}
},
onShow(){
// 隐藏掉小程序本身自带的 tabbar 让自定义的tabbar出现
uni.hideTabBar()
this.selectVersion = 1
uni.removeStorageSync('springService')
},
onHide(){
// 离开页面投诉建议的悬浮框隐藏掉
this.isShow = false
this.selectTab = 2
},
onUnload() {
this.$util.addUserBehavior()
},
onPullDownRefresh:function(){
if (!this.isReturn){
this.getData(this.option)
this.currentMoney = 0
this.handleRealRevenue()
}
uni.stopPullDownRefresh();
},
methods:{
numeral,
...mapActions(['memberLogin','getLoginCode']),
// 显示悬浮框
handleShowMore(){
this.showMoreFixed = !this.showMoreFixed
},
// 选择的版本
handleChangeVersion(e){
this.selectVersion = e
uni.setStorageSync('version',this.selectVersion)
if (this.selectVersion===2){
uni.switchTab({
url:`/pages/index/old/index`
})
}
},
// 跳转去老版本首页
goOldIndexPage(){
uni.switchTab({
url:`/pages/index/old/index`
})
},
// 点击服务区信息跳转
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`)
this.$util.toNextRoute('navigateTo', `/pages/summaryOfPortraits/index?isPicker=${true}&come=index`)
// let _this = this
// let currentService = uni.getStorageSync('currentService')
// let nearService = uni.getStorageSync('nearService')
// if (currentService){
// }else if (nearService){
// uni.setStorageSync('currentService',nearService)
// }else{
// wx.getPrivacySetting({
// success: res=>{
// if (res.needAuthorization){
// this.$util.toNextRoute('redirectTo', '/pages/register/register')
// }else{
// wx.getFuzzyLocation({
// type:'gcj02',
// altitude:true,
// success: (res) =>{
// let seatInfo = {
// latitude:res.latitude,
// longitude:res.longitude
// }
// uni.setStorageSync('seatInfo', seatInfo);
// this.seat = seatInfo
// }
// })
// }
// }
// })
// }
},
// 拿到国庆数据
async handleGetNationalData(){
let req = {
pushProvinceCode:this.useInfo.userData.ProvinceCode || '340000',
StatisticsEndDate:this.lastDay,
ShowGrowthRate:true
}
const data = await request.$webGet('CommercialApi/BigData/GetBayonetGrowthAnalysis',req)
this.nationalDayList[1].value = data.Result_Data.sumEntryCount?this.$util.fmoney(Number((data.Result_Data.sumEntryCount / 10000).toFixed(2))):''
this.nationalDayList[2].value = data.Result_Data.GrowthList[0].Entry_GrowthRate>0?'+' + data.Result_Data.GrowthList[0].Entry_GrowthRate + '%':'-' + data.Result_Data.GrowthList[0].Entry_GrowthRate + '%'
},
// 跳转到营收统计
goToRevenueStatic(){
this.$util.toNextRoute('navigateTo', `/pages/revenueStatistics/index?time=${this.lastDay}&month=${this.single}`)
},
goToNational(){
// this.$util.toNextRoute('navigateTo', `/pages/nationalPage/index?time=${this.lastDay}`)
this.$util.toNextRoute('navigateTo', `/pages/nationalPage/springTravel?selectType=2`)
},
handleShowTrafficDetail(){
this.showMonthDetail = !this.showMonthDetail
},
// 点击月份详情卡片进度条 显示的详情
handleShowHaveNoticeBox(){
this.showHaveNotice = !this.showHaveNotice
},
changeShowRealBox(){
this.showRealBox=!this.showRealBox
},
handleGoOtherFun(val){
if (val===1){
this.$util.toNextRoute('navigateTo', `/pages/map/detail?isPicker=${true}&come=index`)
}else if(val===2){
this.$util.toNextRoute('navigateTo', '/pages/examine/index?come=index')
}
},
handleChangeLoadMore(){
this.loadMore = !this.loadMore
},
handleGoCarBi(){
this.$util.toNextRoute('navigateTo', `/pages/commercialBINew/carPortrait?mustAllProvince=${true}`)
},
handleGoWarning(){
this.$util.toNextRoute('navigateTo', `/pages/commercialBI/specialCase`)
},
handleGoProject(){
this.$util.toNextRoute('navigateTo', `/pages/projectProfitSharing/index?noShowTab=${true}&type=${2}`)
},
//门店上传后面感叹号的点击事件
handleStoreUpload(){
this.popupShow = true
},
closePop(){
this.popupShow = false
},
async getSuggestion(){
let req = {
ModuleGuids:'e2fb458b-d1bd-48fa-805e-fc93dc71efb7,ea2fc404-d924-4c88-98de-1f4d96137745',
ProvinceCode:'340000'
}
const data = await request.$webGet('CommercialApi/Suggestion/GetMemberUnreadData',req)
if (data.Result_Data.data){
if (data.Result_Data.data !== '0'){
this.isShow = true
this.isShowTitle = data.Result_Data.data
this.isShowId = data.Result_Data.key
}
}
},
async handleNoticeMonth(){
let date = new Date(this.lastDay)
let y = date.getFullYear()
let m = date.getMonth() + 1
if(m<10){
m = '0'+m
}
//本月的
let req = {
SearchParameter:{
// STATISTICS_DATE:`${y}-${m}`,
ANALYSISINS_TYPE:'1011',
ANALYSISINS_FORMAT:'3000'
},
PageIndex:1,
PageSize:10
}
const data = await request.$webPost('CommercialApi/Analysis/GetANALYSISINSList',req)
this.monthNoticeText = data.Result_Data.List[0]?data.Result_Data.List[0].ANALYSIS_CONTENT:''
},
async handleNoticeYear(){
let date = new Date(this.lastDay)
let y = date.getFullYear()
let m = date.getMonth() + 1
if(m<10){
m = '0'+m
}
//本年
let reqYear = {
SearchParameter:{
// STATISTICS_DATE:`${y}`,
ANALYSISINS_TYPE:'1012',
ANALYSISINS_FORMAT:'3000'
},
PageIndex:1,
PageSize:10
}
const totalData = await request.$webPost('CommercialApi/Analysis/GetANALYSISINSList',reqYear)
if (totalData.Result_Data.List[0]){
this.yearNoticeText = totalData.Result_Data.List[0].ANALYSIS_CONTENT
}
},
async nearestService(){
let seat = uni.getStorageSync('seatInfo');
let req = {
longitude:seat.longitude,
Province_Code:'340000',
latitude:seat.latitude,
}
const data = await request.$webGet('CommercialApi/BaseInfo/GetServerpartList',req)
let nearService = uni.getStorageSync('nearService')
if (!nearService){
let res = {
SERVERPART_NAME:data.Result_Data.List[0].SERVERPART_NAME,//服务区
SPREGIONTYPE_NAME:data.Result_Data.List[0].SPREGIONTYPE_NAME,//片区
SPRegionType_ID:data.Result_Data.List[0].SPREGIONTYPE_ID,//片区id
Serverpart_ID:data.Result_Data.List[0].SERVERPART_ID,//服务区id
longitude:data.Result_Data.List[0].SERVERPART_X,
latitude:data.Result_Data.List[0].SERVERPART_Y,
}
uni.setStorageSync('nearService',res)
}
let currentService = uni.getStorageSync('currentService')
if (!currentService){
let res = {
SERVERPART_NAME:data.Result_Data.List[0].SERVERPART_NAME,//服务区
SPREGIONTYPE_NAME:data.Result_Data.List[0].SPREGIONTYPE_NAME,//片区
SPRegionType_ID:data.Result_Data.List[0].SPREGIONTYPE_ID,//片区id
Serverpart_ID:data.Result_Data.List[0].SERVERPART_ID,//服务区id
longitude:data.Result_Data.List[0].SERVERPART_X,
latitude:data.Result_Data.List[0].SERVERPART_Y,
}
uni.setStorageSync('currentService',res)
}
// let res = {
// SERVERPART_NAME: '安徽驿达',//服务区
// SPREGIONTYPE_NAME: '安徽驿达',//片区
// Serverpart_ID: null,
// SPRegionType_ID: null,
// longitude:'117.200927',
// latitude:'31.832905',
// }
// uni.setStorageSync('nearService',res)
// this.nearServiceInfo = res
},
handleShowNotice(){
this.showNotice = true
},
handleNoShowNotice(){
this.showNotice = false
},
handleShowNoticeYear(){
this.showNoticeYear = true
},
handleNoShowNoticeYear(){
this.showNoticeYear = false
},
handlePlanPageGo(type){
// this.$util.toNextRoute('navigateTo', `/pages/commercialBI/yearPlan`)
if (!this.isReturn){
this.$util.toNextRoute('navigateTo', `/pages/commercialBI/planMonth?lastDay=${this.lastDay}&type=${type}`)
}else{
uni.showToast({
title: '暂无权限请联系管理员',
icon: 'none'
})
}
},
handlePage(){
if (!this.isReturn){
if (this.selectMonth===this.nowMonth){
this.$util.toNextRoute('navigateTo', `/pages/everdayRenven/index?time=${this.lastDay}`)
}
}else{
uni.showToast({
title: '暂无权限请联系管理员',
icon: 'none'
})
}
},
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{
uni.showToast({
title: '暂无权限请联系管理员',
icon: 'none'
})
}
},
// option是请求的参数 type是否是切换时间
getData(option,type){
//老代码
if (this.user.Membership_Id){
uni.showLoading({
title: '正在加载...'
})
}
//判断是否从推送进来
if (option.ProvinceCode) { // 从推送进入
this.theRequest = option
option.time = this.$util.cutDate(option.time, 'YYYY-MM-DD')
option.month = this.$util.cutDate(option.time, 'YYYYMM')
if (!type){
this.lastDay = this.$util.cutDate(option.time, 'YYYY-MM-DD')
//修改时间选择器里面的时间
this.single = timestampToTimeMonth((new Date(this.lastDay).getTime()))
// //显示当前选择的时间是星期几
// const date = new Date(this.lastDay)
// this.thisDay = getThisDay(date.getDay())
}
// 老项目的请求数据的那部分
this.initData()
//根据新页面请求数据的方法
this.initYesterdayData(type,'first')
//车流分析
// this.getCarInfo()
//月度计划年度计划
// this.monthYearPlan()
// 预警信息 有值会显示车流预警
this.handleGetWarningList()
// 获取月度考核数据
// this.handleGetExamine()
// 获取巡检数据
// this.handleGetDailyPatrol()
// 获取全省平均车流量
this.handleGetAllCarTraffic()
// 国庆数据
// this.handleGetNationalData()
// 实时营收
this.handleRealRevenue()
} else if (this.user.Membership_Id){ // 默认
// 不是从推送进来 走正常的请求方法
// if (!this.PushAuthority){return}
// if (this.PushAuthority.length > 0) {
// 定义initData中的入参
this.theRequest = this.defaultMsg() || {}
this.theRequest.time = this.lastDay
this.theRequest.month = this.$util.cutDate(this.lastDay, 'YYYYMM')
// 请求数据的方法 initData是老项目中的接口形参true传入 可以让两个没用到的接口不调用
this.initData()
// 请求用的到的 昨日的数据
this.initYesterdayData(type,'first')
//车流分析
// this.getCarInfo()
//月度计划、年度计划
// this.monthYearPlan()
// 是否显示预警信息
this.handleGetWarningList()
// 获取月度考核数据
// this.handleGetExamine()
// 获取巡检数据
// this.handleGetDailyPatrol()
// 获取全省平均车流量
this.handleGetAllCarTraffic()
// 国庆数据
// this.handleGetNationalData()
// 实时营收
this.handleRealRevenue()
}
// 老代码 不知道干啥用的
this.nowTab = this.theRequest.ProvinceCode == 340000 ? 1 : 2
if (this.theRequest.GroupType == 1010) {
this.getDetail(this.theRequest)
}
// 若省份为甘肃,则加载甘肃单品排行
if (this.theRequest.ProvinceCode == 620000) {
this.getRankContent()
}
},
// 实时营收
handleRealRevenue(){
let req = {
pushProvinceCode:this.useInfo.userData.ProvinceCode || '340000',
StatisticsDate:this.nowDay
}
request.$webGet('CommercialApi/Revenue/GetCurRevenue',req).then(res=>{
// this.currentMoney = this.$util.fmoney(res.Result_Data.CurRevenueAmount,2)
this.currentMoney = res.Result_Data.CurRevenueAmount.toFixed(2)
})
},
handleGetWarningList(){
const date = new Date()
// 拿到当前小时的前一小时
// let h = 24
let h = date.getHours()
let y = date.getFullYear()
let m = date.getMonth() + 1
if (m<10){
m = '0'+m
}
let d = date.getDate()
if (d<10){
d = '0'+d
}
const req= {
// this.single
StatisticsDate: h===0?moment(`${y}-${m}-${d}`).subtract(1, 'day').format('YYYY-MM-DD'):`${y}-${m}-${d}`,
StatisticsHour:h===0?23:h - 1,
StatisticsType:1,
ShowCount:20
}
console.log('12312312req',req)
request.$webGet('CommercialApi/BigData/GetBayonetWarning',req).then(res=>{
if (res.Result_Data.List && res.Result_Data.List.length>0){
this.special = true
}
res.Result_Data.List.forEach(item=>{
item.name = item.SERVERPART_NAME.split('服务区')[0]
})
let list = JSON.parse(JSON.stringify(res.Result_Data.List))
for (let i=0;i<=list.length - 1;i++){
for (let j=0;j<=list.length - i - 1 ;j++){
if (list[j] && list[j + 1] && list[j].VEHICLE_COUNT!==null && list[j+1].VEHICLE_COUNT!==null){
if (list[j].VEHICLE_COUNT < list[j+1].VEHICLE_COUNT ){
let temp = list[j]
list[j] = list[j + 1]
list[j + 1] = temp
}
}
}
}
this.warningList = list.slice(0,3)
})
},
handleGoMap(){
this.$util.toNextRoute('navigateTo', '/pages/map/index?type=index')
},
handleReg(){
this.$util.toNextRoute('redirectTo', '/pages/register/register')
},
// 跳转到经营报表
handleGoOperate(){
this.$util.toNextRoute('navigateTo', `/pages/operatingStatements/index?time=${this.single}`)
},
changeShowPortrait(){
// 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/summaryOfPortraits/index?index=1`)
// let near = uni.getStorageSync('nearService')
// let user = uni.getStorageSync('seatInfo')
// if (near){
// this.$util.toNextRoute('navigateTo', `/pages/summaryOfPortraits/index?index=1`)
// }else{
// uni.showLoading({
// title:'寻找最近的服务区'
// })
// let req = {
// longitude:user.longitude,
// Province_Code:'340000',
// latitude:user.latitude,
// }
// request.$webGet('CommercialApi/BaseInfo/GetServerpartList',req).then(res=>{
// console.log('res',res)
//
// uni.hideLoading()
// })
// }
// this.showPortrait = !this.showPortrait
// this.$util.toNextRoute('navigateTo', `/pages/summaryOfPortraits/index?index=1`)
},
handleFestival(){
// this.$util.toNextRoute('navigateTo', `/pages/summaryOfPortraits/index?index=5`)
this.$util.toNextRoute('navigateTo', `/pages/commercialBI/formatPortrait?time=${this.lastDay}&serviceInfo=${JSON.stringify(this.nearServiceInfo)}`)
// uni.showToast({title: '栏目建设中', icon: 'none'})
},
handleMoney(){
this.$util.toNextRoute('navigateTo', `/pages/revenue/index`)
},
handleSearch(type){
if (type ==='special'){
if(!this.isReturn){
this.special=false
this.$util.toNextRoute('navigateTo', '/pages/commercialBI/specialCase')
}
}else{
let req = {
SuggestionIds:this.isShowId
}
request.$webGet('CommercialApi/Suggestion/RecordReadingLog',req).then(()=>{
this.$util.toNextRoute('navigateTo', '/pages/suggestion/suggestion')
})
}
},
// 改变时间触发的方法 ,改变页面的内容数据
onRefresh(type){
// 有权限就让他刷新 不没权限的时候下拉刷新不会调用
if (!this.isReturn){
this.getData(this.option,type)
}
},
getUnUpLoadList(){
let req = {pushProvinceCode:'340000',
Statistics_Date:this.lastDay}
request.$webGet('CommercialApi/Revenue/GetRevenuePushList',req).then(res=>{
let list = []
res.Result_Data.List.forEach(item=>{
if (item.Revenue_Upload === 0 || !item.Revenue_Upload){
list.push(item)
}
})
this.bodyList = list
this.allShopCount = res.Result_Data.List.length
})
},
monthYearPlan(){
let monthDate
const nowDate = new Date(this.lastDay)
if (this.selectMonth === nowDate.getMonth()+1){
monthDate= {
Province_Code:'340000',
Statistics_Date:this.lastDay
}
}else{
let day = this.$util.getThisMonthDay(this.single)
const date = new Date(this.single)
let y = date.getFullYear()
let m = date.getMonth() + 1
if(m<10){
m='0'+m
}
monthDate= {
Province_Code:'340000',
Statistics_Date:`${y}-${m}-${day}`
}
}
request.$webGet('CommercialApi/Revenue/GetRevenueBudget',monthDate).then(res=>{
// 赋值给data中的这个对象 在请求完之后会进行统一的数据处理
this.plan = res.Result_Data
this.plan.percentageMonth = res.Result_Data.MonthBudget_Degree || ''
this.plan.percentageYear = res.Result_Data.YearBudget_Degree
this.monthAdd = this.plan.MonthGrowth_Rate>0?`+${this.plan.MonthGrowth_Rate}`:`${this.plan.MonthGrowth_Rate}`
this.yearAdd = this.plan.YearGrowth_Rate>0?`+${this.plan.YearGrowth_Rate}`:`${this.plan.YearGrowth_Rate}`
//处理数据
let flag1
flag1 = (res.Result_Data.RevenueMonth_Amount / 10000).toString().indexOf('.')
this.plan.RevenueMonth_Amount = (res.Result_Data.RevenueMonth_Amount / 10000).toString().substring(0,flag1)
this.plan.RevenueMonth_Amount = this.$util.noDecimal(this.plan.RevenueMonth_Amount)
let flag2
flag2 = (res.Result_Data.BudgetMonth_Amount / 10000).toString().indexOf('.')
this.plan.BudgetMonth_Amount = (res.Result_Data.BudgetMonth_Amount / 10000).toString().substring(0,flag2)
this.plan.BudgetMonth_Amount= this.$util.noDecimal(this.plan.BudgetMonth_Amount)
let revenueType = ''
let flag3
if (res.Result_Data.RevenueYear_Amount>100000000){
revenueType='yi'
flag3 = (res.Result_Data.RevenueYear_Amount/ 100000000).toString().indexOf('.')
this.plan.RevenueYear_Amount = (res.Result_Data.RevenueYear_Amount/ 100000000).toString().substring(0,flag3+3)
}else{
revenueType='wan'
flag3 = (res.Result_Data.RevenueYear_Amount/ 10000).toString().indexOf('.')
this.plan.RevenueYear_Amount = (res.Result_Data.RevenueYear_Amount/ 10000).toString().substring(0,flag3+3)
}
let budgetType=''
let flag4
if (res.Result_Data.BudgetYear_Amount>100000000){
budgetType='yi'
flag4 = ( res.Result_Data.BudgetYear_Amount/ 100000000).toString().indexOf('.')
this.plan.BudgetYear_Amount = (res.Result_Data.BudgetYear_Amount/ 100000000).toString().substring(0,flag4+3)
}else{
budgetType='wan'
flag4 = ( res.Result_Data.BudgetYear_Amount/ 100000000).toString().indexOf('.')
this.plan.BudgetYear_Amount = (res.Result_Data.BudgetYear_Amount/ 10000).toString().substring(0,flag4+3)
}
this.plan.revenueType = revenueType
this.plan.budgetType = budgetType
})
},
handleChangeSelect(e){
console.log('1')
console.log('this.stopSwiper',this.stopSwiper)
console.log('e',e.detail.current)
this.showRateChart = false
if (!this.stopSwiper){
this.selectMonth = e.detail.current>11?(e.detail.current + 1)%12===0?12:(e.detail.current + 1)%12:e.detail.current + 1
this.selectMonthIndex = e.detail.current
this.selectDetail = e.detail.current
console.log('this.selectMonth',this.selectMonth)
console.log('this.selectDetail',this.selectDetail)
let y = e.detail.current>11? Math.floor((e.detail.current + 1)%12===0?(e.detail.current + 1)/12-1:(e.detail.current + 1)/12) : 0
let m = e.detail.current>11?(e.detail.current + 1)%12===0?12:(e.detail.current + 1)%12:e.detail.current + 1
const date = new Date(this.lastDay)
// let y = date.getFullYear()
// let m = e.detail.current + 1
if(m<10){
m='0'+m
}
this.single = `${2023+y}-${m}`
this.showTableData = null
this.currentPeriodData = null
// this.yesObj = null
this.typeList = []
this.revenueMoney = ''
this.externalMoney = ''
this.carInfo = null
this.examineObj = null
this.trafficCurrentObj = null
this.trafficeUnit = null
this.trafficYOYObj = null
this.trafficQOQObj = null
this.dailyExamineObj = null
this.monthAdd = null
console.log('this.typeList',this.typeList)
// 月份详情卡片的详情
this.initYesterdayData(this.selectMonth!==date.getMonth()+1)
// 自营计划
this.monthYearPlan()
// 切换月份的车流量变化
// 是当前月份传入日期 不是当前日期传入月份
let carDate
if (this.selectMonth === date.getMonth()+1){
carDate = this.lastDay
}else{
carDate = `${2023+y}-${m}`
}
this.getCarInfo(carDate)
// 切换考核的数据
this.handleGetExamine()
// 切换日常巡检数据
this.handleGetDailyPatrol()
// 获取全省平均车流量
this.handleGetAllCarTraffic()
}else{
setTimeout(()=>{
this.showRateChart = true
},1500)
}
},
handleShowYDModal(){
this.ydModal = !this.ydModal
},
getCarInfo(date){
const data = {
Statistics_Date:date?date:this.lastDay,
Province_Code:'340000'
}
request.$webGet('CommercialApi/Revenue/GetAvgBayonetAnalysis',data).then(res=>{
// 赋值给data中的这个对象 在请求完之后会进行统一的数据处理
this.carInfo = res.Result_Data
this.carInfo.Vehicle_Count = res.Result_Data.Vehicle_Count?res.Result_Data.Vehicle_Count:'-'
})
},
// 获取月度考核数据
handleGetExamine(){
let date = this.$util.cutDate(this.single, 'YYYYMM')
const req = {
DataType:1,
StartMonth: date,
EndMonth: date,
provinceCode:this.useInfo.userData.ProvinceCode || '340000'
}
request.$webGet('CommercialApi/Examine/GetExamineAnalysis',req).then(res=>{
let obj={
A:0,
B:0,
C:0
}
res.Result_Data.List.forEach(item=>{
if(item.data==="A"){
obj.A+=Number(item.value)
}else if(item.data==="B"){
obj.B+=Number(item.value)
}else if(item.data==="C"){
obj.C+=Number(item.value)
}
})
this.examineObj = obj
})
},
// 获得日常巡检数据
handleGetDailyPatrol(){
const date = new Date(this.lastDay)
let obj ={
start:'',
end:''
}
if (this.selectMonth === date.getMonth()+1){
obj = null
}else{
const date = new Date(this.single)
let y = date.getFullYear()
let m = date.getMonth() + 1
if(m<10){
m='0'+m
}
obj.start = `${y}-${m}-01`
let d = this.$util.getThisMonthDay(this.single)
if (d<10){
d = '0'+ d
}
obj.end = `${y}-${m}-${d}`
}
const req = {
StartDate:obj && obj.start?obj.start:this.lastDay,
EndDate:obj && obj.end?obj.end:this.lastDay,
provinceCode:this.useInfo.userData.ProvinceCode || '340000'
}
request.$webGet('CommercialApi/Examine/GetPatrolAnalysis',req).then(res=>{
this.dailyExamineObj = res.Result_Data
})
},
// 跳转到考核
handleGoExamine(type){
this.$util.toNextRoute('navigateTo', `/pages/newamine/index?come=index&type=${type}&time=${this.single}`)
// this.$util.toNextRoute('navigateTo', `/pages/summaryOfPortraits/index?index=6`)
},
async initYesterdayData(type,str){
this.typeList= []
// type 判断如果是滑动的 就是true 日期就传空 别的地方调用 默认传入时间
let flag3 = false
// 获取营收推送汇总数据 老的
// const allPriceData = {
// pushProvinceCode:'340000',
// Statistics_Date:this.lastDay,
// ShowCompareRate: true,
// ShowYearRevenue: true
// }
console.log('this.single',this.single)
const nowDate = new Date(this.single)
let month = JSON.parse(JSON.stringify(this.selectMonth))
console.log('nowDate.getFullYear()',nowDate.getFullYear())
if (month<10){
month = '0'+ month
}
let req
if (type){
if (nowDate.getMonth() + 1 === this.selectMonth ){
console.log('1')
req = {
pushProvinceCode:this.useInfo.userData.ProvinceCode || '340000',
StatisticsMonth:`${nowDate.getFullYear()}${month}`,
StatisticsDate:this.lastDay
}
console.log('req',req)
}else{
console.log('2')
req = {
pushProvinceCode:this.useInfo.userData.ProvinceCode || '340000',
StatisticsMonth:`${nowDate.getFullYear()}${month}`,
StatisticsDate:this.lastDay
}
console.log('req',req)
}
}else{
console.log('3')
req = {
pushProvinceCode:this.useInfo.userData.ProvinceCode || '340000',
StatisticsMonth:`${nowDate.getFullYear()}${month}`,
StatisticsDate:type?null:this.lastDay
}
console.log('req',req)
}
uni.showLoading({
title: '正在加载...'
})
request.$webGet('CommercialApi/Revenue/GetSummaryRevenueMonth',req).then(lastData=>{
flag3 = true
let result = lastData.Result_Data
console.log('result2',result)
let progressAll = 0
this.currentPeriodData = result.MonthRevenueModel.CurAccountRoyalty
console.log('result.BusinessTypeList',result.BusinessTypeList)
let shareList = [{},{},{}]
result.BusinessTypeList.forEach(item=>{
progressAll+=Number(item.value)
let index = (item.value /10000).toString().indexOf('.')
item.showValue =(item.value /10000).toString().substring(0,index+3)
// 同比
if (item.data){
let number = ((item.value - item.data)/item.data)*100
if (number>0){
item.add ='+'+number.toFixed(2)
}else if(number<0){
item.add =number.toFixed(2)
}else{
item.add = null
}
}
// 环比
if(item.key){
let number = ((item.value - item.key)/item.key)*100
if (number>0){
item.addQOQ ='+'+number.toFixed(2)+'%'
}else if(number<0){
item.addQOQ =number.toFixed(2)+'%'
}else{
item.addQOQ = null
}
}
// 分润占比
if (item.name==='便利店'){
shareList[0] = item
}else if(item.name==='餐饮客房'){
shareList[1] = item
}else if(item.name==='商铺租赁'){
shareList[2] = item
}
})
console.log('shareList',shareList)
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
console.log('result.BusinessTypeList',result.BusinessTypeList)
this.typeList = result.BusinessTypeList
this.revenueMoney = result.BusinessTypeList[0].showValue
this.externalMoney = result.BusinessTypeList[1].showValue
this.progressObj={
owner:Number(((this.typeList[0].value / progressAll)*100).toFixed(2)),
other:100-Number(((this.typeList[0].value / progressAll)*100).toFixed(2))
}
// 计算百分比
this.regionProgress = result.BusinessTradeList
let all = 0
this.regionProgress.forEach(item=>{
all +=Number(item.value)
})
this.regionProgress.forEach(item=>{
item.percentage = ((item.value / all)*100).toFixed(2)
})
// 计算百分比
this.areaProgress = result.SPRegionList
let all2 = 0
this.areaProgress.forEach(item=>{
all2 +=Number(item.value)
})
this.areaProgress.forEach(item=>{
item.percentage = ((item.value / all2)*100).toFixed(2)
})
this.showTableData = result.MonthRevenueModel
console.log('result.MonthRevenueModel',result.MonthRevenueModel)
// 对客营收的增幅
this.showTableData.YearRevenueAdd = (((this.showTableData.YearRevenueAmount - this.showTableData.YearRevenueYOY) / this.showTableData.YearRevenueYOY)*100).toFixed(2)
// 对客营收的增长
this.showTableData.YearRevenueAddNumber = this.showTableData.YearRevenueAmount - this.showTableData.YearRevenueYOY
// 营业收入的增幅
this.showTableData.YearAccountAdd = (((this.showTableData.YearAccountRoyalty - this.showTableData.YearAccountRoyaltyYOY) / this.showTableData.YearAccountRoyaltyYOY)*100).toFixed(2)
// 营业收入的增长
this.showTableData.YearAccountAddNumber = this.showTableData.YearAccountRoyalty - this.showTableData.YearAccountRoyaltyYOY
if (this.showTableData.RevenueYOY){
this.showTableData.add = Number(((this.showTableData.CashPay-this.showTableData.RevenueYOY)/this.showTableData.RevenueYOY*100).toFixed(2))
this.showTableData.add = this.showTableData.add>0?'+'+this.showTableData.add:this.showTableData.add
}
if (this.showTableData.YearRevenueAmount){
// 不四舍五入的截取年度累计
let index = (result.MonthRevenueModel.YearRevenueAmount / 100000000).toString().indexOf('.')
this.showTableData.allRevenueYear = (result.MonthRevenueModel.YearRevenueAmount / 100000000).toString().substring(0,index+3)
// 同比去年的年度累计
let yearYoY = (((result.MonthRevenueModel.YearRevenueAmount - result.MonthRevenueModel.YearRevenueYOY) / result.MonthRevenueModel.YearRevenueYOY)*100).toFixed(2)
this.showTableData.yearYoY = Number(yearYoY)>0 ? '+' + Number(yearYoY) : Number(yearYoY)
}
if (this.showTableData.RevenueQOQ){
// 对客的环比
let customerQoQ = (((result.MonthRevenueModel.CashPay - result.MonthRevenueModel.RevenueQOQ) / result.MonthRevenueModel.RevenueQOQ)*100).toFixed(2)
this.showTableData.customerQoQ = Number(customerQoQ)>0?'+'+customerQoQ+'%':Number(customerQoQ)<0?customerQoQ+'%':''
}
if (str==='first'){
this.yesObj = result.RevenuePushModel
if (this.yesObj){
let indexYes = (result.RevenuePushModel.CashPay / 10000).toString().indexOf('.')
this.yesObj.CashPay = this.$util.fmoney(result.RevenuePushModel.CashPay)
this.nationalDayList[0].value = this.$util.fmoney(this.yesObj.CashPay,2)
}
if (result.GrowthRate){
this.yesObjCompared = result.GrowthRate
}
}
if (flag3){
// uni.hideLoading()
this.todayAmount()
}
})
// const lastData = await request.$webGet('CommercialApi/Revenue/GetSummaryRevenue',allPriceData)
// flag3 = true
// let result = lastData.Result_Data
// // 接口返回的数据中有三个数组的结构 排除掉不是数组的几项 对数组进行操作
// for(let key in result){
// if (key!=='RevenuePushModel' && key!=='GrowthRate' && key!=='MonthRevenueAmount' && key!=='YearRevenueAmount'){
// let all = 0
// // 先算出全部的总额数量 用来计算百分比
// result[key].forEach(item=>{
// all += Number(item.value)
// })
// // 把百分比计算出来加到每一项中
// result[key].map(item=>{
// item.percentage = ((Number(item.value)/all)*100).toFixed(2)
// })
// // 格式化掉处理的数据
// result[key].forEach(item=>{
// item.value = _this.$util.fmoney(item.value)
// })
// }
// }
// this.monthAmountAdd = this.$util.fmoney(result.MonthRevenueAmount)
// this.yearAmountAdd = result.YearRevenueAmount?this.$util.fmoney(result.YearRevenueAmount):'-'
// this.modelProgress = result.BusinessTypeList
// 只有当前面的接口通了 才能一起处理数据的方法
},
//获取全省平均车流量
handleGetAllCarTraffic(){
const date = new Date(this.lastDay)
let time
if (this.selectMonth === date.getMonth()+1){
time = this.lastDay
}else{
const date = new Date(this.single)
let y = date.getFullYear()
let m = date.getMonth() + 1
if(m<10){
m='0'+m
}
time = `${y}${m}`
}
const req = {
Province_Code:this.useInfo.userData.ProvinceCode || '340000',
Statistics_Date:time
}
request.$webGet('CommercialApi/Revenue/GetProvinceAvgBayonetAnalysis',req).then(res=>{
console.log('res11121212',res)
res.Result_Data.List.forEach(item=>{
if (item.Serverpart_Name==='QOQ'){
this.trafficQOQObj = item
}else if(item.Serverpart_Name==='YOY'){
this.trafficYOYObj = item
}else{
console.log('this.trafficCurrentObj',this.trafficCurrentObj)
this.trafficCurrentObj = item
if (this.trafficCurrentObj.Vehicle_AddUpCount / 1000000 >=1){
this.trafficCurrentObj.AddUpCount = this.$util.fmoney(this.$util.getMoney(this.trafficCurrentObj.Vehicle_AddUpCount/1000000),2)
this.trafficeUnit = '百万辆'
}else if (this.trafficCurrentObj.Vehicle_AddUpCount / 10000>=1){
this.trafficCurrentObj.AddUpCount = this.$util.fmoney(this.$util.getMoney(this.trafficCurrentObj.Vehicle_AddUpCount/10000),2)
this.trafficeUnit = '万辆'
}else{
this.trafficCurrentObj.AddUpCount = this.trafficCurrentObj.Vehicle_AddUpCount
}
}
})
this.showRateChart = true
})
},
defaultMsg() {
let option = null
let _this = this
if (this.PushAuthority && this.PushAuthority.length > 1) {
option = this.PushAuthority.find(n => n.ProvinceCode === _this.ProvinceCode)
}else if(this.user.Membership_Id){
option = {
GroupType: 1000,
ProvinceCode: 340000,
ServerpartIds: "",
ShopAnalysisType: 1
}
}else {
}
return {
...option
}
},
handleSelectTab(value){
this.selectTab = value
},
// 根据当前时间 拿到滑块索引的办法
handleGetSwiperIndex(time){
const date = new Date(time)
let y = date.getFullYear()
let m = date.getMonth() + 1
if (y-2023>0){
let currentY = y - 2023
let currentM = m % 12===0?12:m % 12
return currentY*12 + currentM - 1
}else{
return m - 1
}
},
// 顶部的时间组件切换时间触发的方法
bindDateChange(e){
this.showTableData = null
// this.yesObj = null
this.typeList = []
this.carInfo = null
this.examineObj = null
this.dailyExamineObj = null
this.monthAdd = null
// 阻止调用swiper的滚动 防止切换时间调了一次方法 swiper移动又会自动调用接口的问题
this.stopSwiper = true
let isOnRefresh = false
const date = new Date(e.detail.value)
let y = date.getFullYear()
let m = date.getMonth()+1
this.selectMonth = m + 1
this.selectDetail = this.handleGetSwiperIndex(e.detail.value)
// this.stopSwiper = false
const realDate = new Date(this.lastDay)
const realMonth = realDate.getMonth()+1
if (this.selectMonth>realMonth){
isOnRefresh = false
}else{
isOnRefresh = true
}
// let isOnRefresh = false
// let startTime = new Date(this.startDate).getTime()- 8 * 3600 * 1000
// let endTime = new Date(this.noChangeLastDay).getTime() - 8 * 3600 * 1000 //结束时间戳
// const date = new Date(e.detail.value).getTime() - 8 * 3600 * 1000
// let startDate = new Date(this.startDate)
// let startMonth = startDate.getMonth() + 1
// let startDay = startDate.getDate()
// let endDate = new Date(this.noChangeLastDay)
// let endMonth = endDate.getMonth() + 1
// let endDay = endDate.getDate()
// 判断是否是在限制的时间内
// isOnRefresh 是判断有没有限制条件的关键参数
// if (date > endTime || date < startTime){
// isOnRefresh = false
// }else{
// isOnRefresh = true
// }
// const nowDate = new Date()
// let y = nowDate.getFullYear()
// let m = nowDate.getMonth() +1
// if (m<10){
// m= '0'+m
// }
// let d = nowDate.getDate()
// if (d<10){
// d= '0'+d
// }
// let nowDay = new Date(`${y}-${m}-${d}`).getTime()- 8 * 3600 * 1000
// if (nowDay<=date){
// isOnRefresh = false
// }else{
// isOnRefresh = true
// }
// 符合要求的时间可以请求数据 不符合的弹出提示
if (isOnRefresh){
this.single = timestampToTimeMonth(date)
// this.lastDay = e.detail.value
// uni.setStorageSync('lastDay',this.lastDay)
// this.thisDay = getThisDay(new Date(e.detail.value).getDay())
this.onRefresh(true)
}else{
// uni.showModal({
// title: `数据看板仅支持查看${endMonth}.${endDay+1}之前的数据,更多数据请登陆商业综合平台查看`,
// // title: `数据看板仅支持查看${startMonth}.${startDay}-${endMonth}.${endDay}的数据,更多数据请登陆商业综合平台查看`,
// icon:'none',
// showCancel: fainitYesterdayDatalse,
// duration:3000
// });
}
},
async initData() { // 初始化营收数据
this.priceMove = true
},
// 请求完最后处理数据的方法 拿到项目就已经是有一堆请求的了 只能最后处理数据
todayAmount() {
let _this = this
// 由于处理数据的时间 必须在全部接口请求完毕 所以加个延时器
// 由于页面大部分的内容采用渲染的格式 这样的方法是最快的对原数据进行赋值 对照data里面的几个主要的数组看就能看明白
// 门店上传的前后数字计算来决定样式
if(this.showTableData.Revenue_Upload >= this.showTableData.TotalShopCount){
this.isBig = false
}else{
this.isBig = true
}
// 计算相对于昨日的增长率
// this.showTableData.compared = (((Number(this.showTableData.CashPay) - this.yesterdayAllPay) / this.yesterdayAllPay) * 100).toFixed(2)
// 客单均价
this.showTableData.averagePrice = (Number(this.showTableData.CashPay) / Number(this.showTableData.TicketCount)).toFixed(2)
// 商品均价
this.showTableData.countave = (Number(this.showTableData.CashPay) / Number(this.showTableData.TotalCount)).toFixed(2)
// 处理所有数据 变成有千分号和小数点的数据
if (this.showTableData.UnUpLoadShopList && this.showTableData.UnUpLoadShopList.length>0){
let list =[]
this.showTableData.UnUpLoadShopList.forEach(item=>{
if (item.Revenue_Upload === 0 || !item.Revenue_Upload){
list.push(item)
}
})
this.bodyList = list
}
let index1= (this.showTableData.CashPay / 10000).toString().indexOf('.')
console.log('this.showTableData.CashPay',this.showTableData.CashPay)
let number = this.showTableData.CashPay / 10000
console.log('number',number)
this.showTableData.CashPayChange = this.$util.fmoney(this.$util.getMoney(number),2)
// for (let key in this.showTableData){
// if (this.showTableData[key]){
// // 在有值的前提下
// // 是第一个if里面的参数 不会被处理 是第二个if里面的参数 会被处理千分号 但是没有小数点 不在第一第二个if里面的字段会被处理 保留两位小数
// if (key==='uploadState' || key==='Revenue_Upload' || key==='TotalShopCount' || key==='UnUpLoadShopList'){
// this.showTableData[key] = this.showTableData[key]
// }else if(key ==='TicketCount'){
// this.showTableData[key] = this.$util.noDecimal(this.showTableData[key],0)
// }else{
// this.showTableData[key] = this.$util.fmoney(this.showTableData[key], 2)
// }
// }
// }
uni.hideLoading()
this.isSuccess = true
this.stopSwiper = false
_this.$forceUpdate()
},
getDetail(obj) {
let _this = this
this.$request.$webGet('CommercialApi/Revenue/GetServerpartEndAccountList', {
Serverpart_ID: obj.ServerpartIds,
pushProvinceCode: obj.ProvinceCode,
Statistics_Date: obj.time,
}).then(res => {
if (res.Result_Code != 100) return
res.Result_Data.ShopEndaccountList.map(n => {
n.show = false
n.detail = this.getListDetail(n)
})
_this.regionList = res.Result_Data.ShopEndaccountList
})
},
async getRankContent() { // 甘肃需要单品排行显示
const {
ProvinceCode,
time
} = this.theRequest
const data = await this.$request.$webGet('CommercialApi/Revenue/GetWechatPushSalesList', {
pushProvinceCode: ProvinceCode,
Statistics_Date: time
})
if (data.Result_Code === 100 && data.Result_Data.TotalCount > 0) {
this.wechatPushSalesList = {}
data.Result_Data.List.forEach(n => {
this.wechatPushSalesList[n.Data_Type]= n.GoodsList
})
} else {
this.wechatPushSalesList = {}
}
this.$forceUpdate()
},
}
}
</script>
<style scoped lang="scss">
$iphoneHeight: env(safe-area-inset-bottom);
@import '/static/public/font2/stylesheet.css';
.main {
width: 100%;
box-sizing: border-box;
padding-bottom: calc( 45px + env(safe-area-inset-bottom));
background: #F3F4F9;
.meng{
width: 100vw;
height: 100vh;
position: fixed;
top: 0;left: 0;
z-index: 20;
}
.showMoreFixedBox{
width: 100vw;
height: 100vh;
position: fixed;
top: 0;left: 0;
z-index: 1000000;
background: rgba(7, 7, 7, 0.5);
.fixedBox{
width: calc(100vw - 64rpx);
box-sizing: border-box;
padding: 38rpx 32rpx;
border-radius: 16rpx;
background: #fff;
position: fixed;
left: 32rpx;
.otherDetailBottom{
.bottomItem{
width: 100%;
.bottomSmallItem{
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 8rpx;
.itemLeft{
display: flex;
align-items: center;
.itemMonth{
padding: 4rpx 8rpx;
font-family: PingFangSC, PingFang SC;
font-weight: 400;
font-size: 24rpx;
color: #FFFFFF;
line-height: 24rpx;
text-align: left;
font-style: normal;
background: #F2792E;
border-radius: 4rpx;
margin-right: 8rpx;
}
.itemTitle{
font-family: PingFangSC, PingFang SC;
font-weight: 400;
font-size: 28rpx;
color: #160002;
line-height: 44rpx;
text-align: left;
font-style: normal;
.unit{
font-family: PingFangSC, PingFang SC;
font-weight: 400;
font-size: 28rpx;
color: #A69E9F;
line-height: 44rpx;
text-align: left;
font-style: normal;
margin-left: 4rpx;
}
}
}
.itemRight{
.itemValue{
font-family: DINAlternate, DINAlternate;
font-weight: bold;
font-size: 36rpx;
color: #160002;
line-height: 44rpx;
text-align: center;
font-style: normal;
}
}
}
.itemData{
display: flex;
justify-content: flex-end;
align-items: center;
margin-bottom: 8rpx;
.itemValue{
font-family: DINAlternate, DINAlternate;
font-weight: bold;
font-size: 28rpx;
color: #E83944;
line-height: 32rpx;
text-align: center;
font-style: normal;
}
.itemText{
font-family: PingFangSC, PingFang SC;
font-weight: 400;
font-size: 28rpx;
color: #A69E9F;
line-height: 40rpx;
text-align: left;
font-style: normal;
margin-left: 8rpx;
}
}
}
.monthDetail{
position: absolute;
left: 50%;top: 50%;
transform: translate(-50%,-50%);
display: inline-block;
padding: 5px 10px;
background: #fff;
border-radius: 10rpx;
box-shadow: 0rpx 0rpx 40rpx 0rpx rgba(244, 138, 143, 0.21);
z-index:9;
.monthItem{
.label{
display: inline-block;
width: 100px;
}
.value{
display: inline-block;
text-align: left;
margin-right: 12rpx;
}
}
}
}
}
}
.header {
width: 100%;
background: linear-gradient(180deg, #DCE6FF 0%, #F3F4F9 100%);
box-sizing: border-box;
//padding-bottom: 20rpx;
//padding: 0 16px;
//position: relative;
.headerTop{
width: 100%;
background: #DCE6FF;
position: fixed;
top: 0;left:0;
box-sizing: border-box;
padding: 0 15px;
z-index:999997;
.selectTime {
position: absolute;
display: flex;
align-items: center;
.searchIconBox{
display: flex;
align-items: center;
.dateIcon {
width: 168rpx;
height: 50rpx;
}
.searchIconText{
font-size: 30rpx;
font-family: Alimama ShuHeiTi;
font-weight: 400;
color: #160002;
line-height: 40rpx;
margin-left: 6rpx;
//font-style: oblique;
}
}
.seachBox{
width: 334rpx;
background: #fff;
border-radius: 32rpx;
margin-left: 16rpx;
box-sizing: border-box;
padding: 10rpx 20rpx;
display: flex;
align-items: center;
.searchIcon{
width: 32rpx;
height: 32rpx;
margin-right: 8rpx;
}
.searchText{
font-size: 28rpx;
font-family: PingFangSC, PingFang SC;
font-weight: 400;
color: #B6BACB;
line-height: 40rpx;
white-space: nowrap;
}
}
.time {
display: flex;
align-items: center;
margin-right: 4px;
.day {
font-size: 32rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #782717;
line-height: 44rpx;
margin-right: 4px;
}
.uni-input {
font-size: 32rpx;
font-family: PingFangSC-Semibold, PingFang SC;
font-weight: 600;
color: #2249A2;
line-height: 44rpx;
}
.icon {
width: 12px;
height: 12px;
margin-left: 16rpx;
}
}
}
}
.storeDetail{
width: 100%;
margin-top: 16rpx;
box-sizing: border-box;
.storeName{
font-size: 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #782717;
line-height: 20px;
.num{
font-weight: 600;
margin-left: 8px;
}
}
.detailBox{
width: 100%;
//background: rgba(254, 255, 254, 0.3);
//margin-top: 8px;
white-space: nowrap;
.detailItemBox{
width:100%!important;
display: inline-block;
.bigBox{
width: calc(100% - 10px)!important;
background: #fff;
//box-shadow: 0rpx 20rpx 40rpx 0rpx rgba(1,27,90,0.06);
border-radius: 38rpx;
padding: 4rpx;
box-sizing: border-box;
.box{
width: 100%;
display: inline-block;
border-radius: 32rpx;
overflow: hidden;
position: relative;
box-shadow: 0rpx 20rpx 40rpx 0rpx rgba(1,27,90,0.06);
//background: rgba(254, 192, 168,0.8);
.top{
width: 100%;
background: linear-gradient(180deg, #DCE6FF 0%, #FFFFFF 80%, #FFFFFF 100%);
border-bottom-right-radius: 32rpx;
border-bottom-left-radius: 32rpx;
box-sizing: border-box;
padding: 12px 16px;
.topTop{
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
.statistics{
display: flex;
align-items: center;
.staticImg{
width: 50rpx;
height: 40rpx;
}
.staticTitle{
font-size: 28rpx;
font-family: PingFangSC-Semibold, PingFang SC;
font-weight: 500;
color: #160002;
line-height: 40rpx;
margin: 0 4px;
}
.staticUnit{
font-size: 28rpx;
font-family: PingFangSC, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 40rpx;
}
.moreIcon{
width: 32rpx;
height: 32rpx;
display: flex;
align-items: center;
justify-content: center;
color: #A69E9F;
font-size: 12px;
font-weight: 600;
margin-left: 6px;
position: relative;
z-index:21;
.noticeIcon{
width: 32rpx;
height: 32rpx;
}
.realBox{
position: absolute;
left: 0;top: 10px;
transform: translateX(-50%);
//right: 0;bottom: 0;
display: inline-block;
padding: 5px 10px;
background: #fff;
border-radius: 10rpx;
box-shadow: 0rpx 0rpx 40rpx 0rpx rgba(244, 138, 143, 0.21);
z-index:21;
width: 360rpx;
.field{
text-align: right;
display: flex;
.label{
display: inline-block;
width: 160rpx;
text-align: left;
box-sizing: border-box;
}
.value{
width: 200rpx;
text-align: right;
}
}
}
}
.staticIcon{
width: 32rpx;
height: 32rpx;
opacity: 0.25;
margin-left: 12rpx;
}
}
.haveMore{
display: flex;
align-items: center;
background: #fff;
padding:10rpx 16rpx;
border-radius: 16rpx;
.haveMoreText{
font-size: 24rpx;
font-family: PingFangSC, PingFang SC;
font-weight: 400;
color: #786B6C;
line-height: 36rpx;
}
.haveMoreICon{
width: 12px;
height: 18px;
}
}
}
.revenueBox{
.revenueTop{
margin-top: 16rpx;
display: flex;
align-items: center;
justify-content: space-between;
.revenueTopLeft{
display: flex;
align-items: center;
.revenueNumber{
font-size: 48rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #160002;
line-height: 56rpx;
}
.moreIcon{
width: 12px;
height: 12px;
display: flex;
align-items: center;
justify-content: center;
border: 2px solid #A69E9F;
border-radius: 50%;
color: #A69E9F;
font-size: 12px;
font-weight: 600;
margin-left: 6px;
position: relative;
.realBox{
position: absolute;
left: 0;top: 0;
display: inline-block;
padding: 5px 10px;
background: #fff;
border-radius: 10rpx;
box-shadow: 0rpx 0rpx 40rpx 0rpx rgba(244, 138, 143, 0.21);
z-index:9;
}
}
}
.revenueTopRight{
display: flex;
align-items: center;
.addReduce{
width: 28rpx;
height: 28rpx;
margin-right: 4px;
border-radius: 50%;
}
.addValue{
font-size: 36rpx;
font-family: DINAlternate, DINAlternate;
font-weight: bold;
color: #E83944;
line-height: 40rpx;
}
.rightNav{
font-size: 28rpx;
font-family: PingFangSC, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 40rpx;
margin-left: 4rpx;
}
}
}
.revenueNav{
display: flex;
align-items: center;
justify-content: space-between;
.leftNav{
margin-top: 2px;
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
//color: #160002;
color: #A69E9F;
line-height: 40rpx;
.unit{
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 40rpx;
margin-left: 2px;
}
}
.rightNav{
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 40rpx;
margin-right: 64rpx;
}
}
.newBox{
width: 100%;
box-sizing: border-box;
//padding: 16rpx 16rpx 0;
//background: linear-gradient(135deg, #FFE3BA 0%, #FFF5E5 40%, #FFF1DB 78%, #FFDABC 100%); border-radius: 16rpx;
//margin-top: 32rpx;
margin-top: 32rpx;
.progress{
width: 100%;
height: 18rpx;
border-radius: 12rpx;
background: #B1C8FF;
//overflow: hidden;
position: relative;
.have{
position: absolute;
top: 0;left: 0;
width: 60%;
background: #2363FF;
height: 100%;
border-radius: 12rpx;
}
.haveNoticeBox{
position: absolute;
bottom: 13px;left: 50%;
transform: translateX(-50%);
display: inline-block;
padding: 5px 10px;
background: #fff;
border-radius: 10rpx;
box-shadow: 0rpx 0rpx 40rpx 0rpx rgba(244, 138, 143, 0.21);
z-index:9;
}
}
.message{
width: 100%;
display: flex;
margin-top: 16rpx;
.smallDetailItem{
width: 50%;
.messageTop{
display: flex;
align-items: center;
.type{
width: 24rpx;
height: 12rpx;
border-radius: 6rpx;
margin-right: 6px;
}
.typeTitle{
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #160002;
line-height: 40rpx;
.unit{
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 40rpx;
margin-left: 2px;
}
}
}
.middle{
margin-top: 6px;
margin-left: 20px;
display: flex;
align-items: center;
.money{
font-size: 36rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #160002;
line-height: 44rpx;
}
.addItem{
margin-left: 6px;
display: inline-block;
padding: 2px 4px;
font-size: 28rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #E83944;
line-height: 32rpx;
background: rgba(232, 57, 68, 0.1);
border-radius: 18rpx;
}
}
.messageBottom{
margin-left: 20px;
display: flex;
align-items: center;
.addText{
font-size: 28rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #E83944;
line-height: 32rpx
}
.addType{
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 40rpx;
margin-left: 4px;
}
}
}
}
.moneyRate{
width: 100%;
box-sizing: border-box;
margin-top: 16rpx;
height: 144rpx;
display: flex;
align-items: center;
.leftBox{
width: 144rpx;
height: 144rpx;
margin-right: 16rpx;
position: relative;
.rateChartsBox{
width: 144rpx;
height: 144rpx;
}
.haveNoticeBox{
position: absolute;
bottom: 0;left: 0;
transform: translateY(80%);
display: inline-block;
padding: 5px 10px;
background: #fff;
border-radius: 10rpx;
box-shadow: 0rpx 0rpx 40rpx 0rpx rgba(244, 138, 143, 0.21);
z-index:9;
.field{
display: flex;
align-items: center;
.label{
width: 140rpx;
text-align: left;
}
.value{
width: 100rpx;
font-family: DINAlternate-Bold, DINAlternate;
text-align: right;
}
}
}
}
.rightBox{
flex: 1;
display: flex;
align-items: center;
.noticeItem{
width: 50%;
.noticeTop{
width: 24rpx;
height: 12rpx;
background: #A66A37;
border-radius: 6rpx;
margin-bottom: 8rpx;
}
.noticeText{
font-size: 28rpx;
font-family: PingFangSC, PingFang SC;
font-weight: 400;
color: #160002;
line-height: 40rpx;
margin-bottom: 6rpx;
.noticeSmallText{
font-size: 28rpx;
font-family: PingFangSC, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 40rpx;
margin-left: 4rpx;
}
}
.noticeMoney{
font-size: 36rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #160002;
line-height: 44rpx;
}
}
}
.newRightBox{
height: 100%;
flex: 1;
.newRightItem{
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
margin: 8rpx 0;
.itemLeft{
display: flex;
align-items: center;
width: 33%;
.itemIcon{
width: 12rpx;
height: 12rpx;
margin-right: 12rpx;
border-radius: 50%;
}
.itemName{
font-family: PingFangSC, PingFang SC;
font-weight: 400;
font-size: 28rpx;
color: #160002;
line-height: 40rpx;
text-align: left;
font-style: normal;
display: inline-block;
width: 120rpx;
}
}
.itemCenter{
display: inline-block;
width: 33%;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
font-size: 28rpx;
color: #160002;
line-height: 40rpx;
text-align: right;
font-style: normal;
}
.itemRight{
display: inline-block;
width: 33%;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
font-size: 28rpx;
color: #E83944;
line-height: 40rpx;
text-align: right;
font-style: normal;
}
}
}
}
}
.accountRevenue{
width: 100%;
//background: #F9FAFC;
box-sizing: border-box;
padding: 28rpx 24rpx;
margin-top: 48rpx;
.accountItem{
width: 100%;
.itemTop{
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 8rpx;
.itemType{
font-family: PingFangSC, PingFang SC;
font-weight: 400;
font-size: 24rpx;
color: #FFFFFF;
line-height: 24rpx;
text-align: left;
font-style: normal;
padding:4rpx 8rpx;
background: #F2792E;
border-radius: 4rpx;
margin-right: 8rpx;
}
.itemName{
font-family: PingFangSC, PingFang SC;
font-weight: 400;
font-size: 28rpx;
color: #160002;
line-height: 40rpx;
text-align: left;
font-style: normal;
.unit{
font-family: PingFangSC, PingFang SC;
font-weight: 400;
font-size: 24rpx;
color: #9A9A9A;
line-height: 36rpx;
text-align: left;
font-style: normal;
margin-left: 4rpx
}
}
}
.itemBottom{
display: flex;
align-items: center;
justify-content: space-between;
.revenueNum{
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
font-size: 32rpx;
color: #160002;
line-height: 44rpx;
text-align: left;
font-style: normal;
}
.revenueAdd{
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
font-size: 32rpx;
color: #E83944;
line-height: 44rpx;
text-align: left;
font-style: normal;
}
}
}
}
.showMoreLoading{
width: 100%;
display: flex;
align-items: center;
justify-content: center;
margin-top: 16rpx;
.showMorenDown{
width: 32rpx;
height: 32rpx;
}
}
.goBusiness{
width: 100%;
display: flex;
justify-content: flex-end;
.bussinessRight{
display: flex;
align-items: center;
.bussinessText{
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 40rpx;
margin: 0 4px;
}
.moreIcon{
width: 12px;
height: 12px;
display: flex;
align-items: center;
justify-content: center;
border: 2px solid #A69E9F;
border-radius: 50%;
color: #A69E9F;
font-size: 12px;
font-weight: 600;
margin-left: 6px;
position: relative;
.realBox{
position: absolute;
//left: 0;top: 0;
right: 0;bottom: 0;
display: inline-block;
padding: 5px 10px;
background: #fff;
border-radius: 10rpx;
box-shadow: 0rpx 0rpx 40rpx 0rpx rgba(244, 138, 143, 0.21);
z-index:9;
}
}
.staticIcon{
width: 32rpx;
height: 32rpx;
opacity: 0.25;
}
}
}
}
}
.noShowMoreBox{
width: 100%;
display: flex;
align-items: center;
justify-content: center;
position: absolute;
left: 0;bottom: 8px;
.noShowMore{
width: 25px;
height: 14px;
}
}
.monthBox{
display: inline-block;
position: absolute;
right: 1px;top: 1px;
padding: 4rpx 26rpx;
font-size: 28rpx;
font-family: PingFangSC-Semibold, PingFang SC;
font-weight: 600;
color: #B33115;
line-height: 40rpx;
background: #FFD2C4;
border-radius: 0rpx 30rpx 0rpx 30rpx;
}
}
.bottom{
width: 100%;
height: 52rpx;
background: #FDFEFD;
box-sizing: border-box;
padding: 0 32rpx 12rpx;
display: flex;
justify-content: space-between;
align-items: center;
border-bottom-left-radius: 38rpx;
border-bottom-right-radius: 38rpx;
.searchText{
font-size: 28rpx;
font-family: PingFangSC, PingFang SC;
font-weight: 400;
color: #2363FF;
line-height: 40rpx;
}
.searchIcon{
width: 25px;
height: 14px;
}
}
.otherDetail{
width: 100%;
//margin-top: 30px;
.detail{
width: 100%;
//height: 290px;
box-sizing: border-box;
padding: 16px 16px 8px;
//background: linear-gradient(180deg, #DCE6FF 0%, #FFFFFF 68%, #FFFFFF 100%);
border-bottom-left-radius: 32rpx;
border-bottom-right-radius: 32rpx;
//margin-top: 12px;
.detailMessage{
width: 100%;
height: 100%;
.otherDetailTop{
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
.otherDetailTopLeft{
.yearAll{
font-size: 40rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #6D1301;
line-height: 40rpx;
}
.yearLabel{
margin-top: 4rpx;
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #6D1301;
line-height: 40rpx;
.unit{
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #C5846F;
line-height: 40rpx;
margin-left: 4rpx;
}
}
}
.otherDetailRight{
.otherDetailAddBox{
display: flex;
align-items: center;
.otherDetailAddIcon{
width: 28rpx;
height: 28rpx;
margin-right: 6rpx;
}
.otherDetailAddValue{
font-size: 36rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #E83944;
line-height: 40rpx;
}
}
.otherDetailAddLabel{
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #6D1301;
line-height: 40rpx;
text-align: right;
}
}
}
.otherDetailMiddle{
margin-top: 42rpx;
.middleItem{
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
.itemLabel{
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #6D1301;
line-height: 40rpx;
.itemText{
width: 70rpx;
height: 40rpx;
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #C5836E;
line-height: 40rpx;
}
}
.itemValue{
font-size: 32rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #6D1301;
line-height: 40rpx;
}
}
}
.otherDetailBottom{
margin-top: 40rpx;
position: relative;
.bottomItem{
width: 100%;
.bottomSmallItem{
width: 100%;
display: flex;
align-items: center;
}
.itemLeft{
width: 140rpx;
display: flex;
align-items: center;
.leftIcon{
width: 32rpx;
height: 32rpx;
margin-right: 8rpx;
}
.itemTitle{
font-size: 26rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #6D1301;
line-height: 40rpx;
text-align: left;
}
}
.itemCenter,.itemRight{
width: calc((100% - 140rpx)/2);
.itemValue{
font-size: 28rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #6D1301;
line-height: 40rpx;
}
.itemText{
font-size: 26rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #6D1301;
line-height: 40rpx;
margin-left: 4rpx;
}
}
.itemCenter{
text-align: right;
}
.itemRight{
text-align: right;
}
}
.monthDetail{
position: absolute;
left: 50%;top: 50%;
transform: translate(-50%,-50%);
display: inline-block;
padding: 5px 10px;
background: #fff;
border-radius: 10rpx;
box-shadow: 0rpx 0rpx 40rpx 0rpx rgba(244, 138, 143, 0.21);
z-index:9;
.monthItem{
.label{
display: inline-block;
width: 100px;
}
.value{
display: inline-block;
text-align: left;
margin-right: 12rpx;
}
}
}
}
}
.noShowMoreBox{
width: 100%;
display: flex;
align-items: center;
justify-content: center;
margin-top: 14rpx;
.noShowMore{
width: 32rpx;
height: 32rpx;
}
}
}
}
}
}
.noSelectItemBox{
display: inline-block;
.bigBox{
width: calc(100% - 10px)!important;
height: 460rpx;
background: #fff;
box-shadow: 0rpx 20rpx 40rpx 0rpx rgba(1,27,90,0.06);
border-radius: 38rpx;
padding: 4rpx;
box-sizing: border-box;
.box{
width: 100%;
display: inline-block;
border-radius: 32rpx;
overflow: hidden;
position: relative;
//background: rgba(254, 192, 168,0.8);
.top{
width: 100%;
height: 550rpx;
background: linear-gradient(180deg, #DCE6FF 0%, #FFFFFF 68%, #FFFFFF 100%);
border-bottom-right-radius: 32rpx;
border-bottom-left-radius: 32rpx;
box-sizing: border-box;
padding: 12px 16px;
.topTop{
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
.statistics{
display: flex;
align-items: center;
.staticImg{
width: 50rpx;
height: 40rpx;
}
.staticTitle{
font-size: 28rpx;
font-family: PingFangSC-Semibold, PingFang SC;
font-weight: 500;
color: #160002;
line-height: 40rpx;
margin: 0 4px;
}
.staticUnit{
font-size: 28rpx;
font-family: PingFangSC, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 40rpx;
}
.staticIcon{
width: 32rpx;
height: 32rpx;
opacity: 0.25;
margin-left: 12rpx;
}
}
.haveMore{
display: flex;
align-items: center;
background: #fff;
padding:10rpx 16rpx;
border-radius: 16rpx;
.haveMoreText{
font-size: 24rpx;
font-family: PingFangSC, PingFang SC;
font-weight: 400;
color: #786B6C;
line-height: 36rpx;
}
.haveMoreICon{
width: 12px;
height: 18px;
}
}
}
.revenueBox{
.revenueTop{
margin-top: 16rpx;
display: flex;
align-items: center;
justify-content: space-between;
.revenueTopLeft{
display: flex;
align-items: center;
.revenueNumber{
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
font-size: 56rpx;
color: #160002;
line-height: 64rpx;
font-style: normal;
}
.moreIcon{
width: 12px;
height: 12px;
display: flex;
align-items: center;
justify-content: center;
border: 2px solid #A69E9F;
border-radius: 50%;
color: #A69E9F;
font-size: 12px;
font-weight: 600;
margin-left: 6px;
position: relative;
.realBox{
position: absolute;
left: 0;top: 0;
display: inline-block;
padding: 5px 10px;
background: #fff;
border-radius: 10rpx;
box-shadow: 0rpx 0rpx 40rpx 0rpx rgba(244, 138, 143, 0.21);
z-index:9;
}
}
}
.revenueTopRight{
display: flex;
align-items: center;
.addReduce{
width: 28rpx;
height: 28rpx;
margin-right: 4px;
border-radius: 50%;
}
.addValue{
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
font-size: 36rpx;
color: #E83944;
line-height: 40rpx;
text-align: left;
font-style: normal;
}
.rightNav{
font-family: PingFangSC, PingFang SC;
font-weight: 400;
font-size: 28rpx;
color: #A69E9F;
line-height: 40rpx;
text-align: left;
font-style: normal;
}
}
}
.revenueNav{
display: flex;
align-items: center;
justify-content: space-between;
.leftNav{
margin-top: 2px;
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
//color: #160002;
color: #A69E9F;
line-height: 40rpx;
.unit{
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 40rpx;
margin-left: 2px;
}
}
.rightNav{
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 40rpx;
margin-right: 64rpx;
}
}
.newBox{
width: 100%;
box-sizing: border-box;
//padding: 16rpx 16rpx 0;
//background: linear-gradient(135deg, #FFE3BA 0%, #FFF5E5 40%, #FFF1DB 78%, #FFDABC 100%); border-radius: 16rpx;
//margin-top: 32rpx;
margin-top: 32rpx;
.progress{
width: 100%;
height: 18rpx;
border-radius: 12rpx;
background: #B1C8FF;
//overflow: hidden;
position: relative;
.have{
position: absolute;
top: 0;left: 0;
width: 60%;
background: #2363FF;
height: 100%;
border-radius: 12rpx;
}
.haveNoticeBox{
position: absolute;
bottom: 13px;left: 50%;
transform: translateX(-50%);
display: inline-block;
padding: 5px 10px;
background: #fff;
border-radius: 10rpx;
box-shadow: 0rpx 0rpx 40rpx 0rpx rgba(244, 138, 143, 0.21);
z-index:9;
}
}
.message{
width: 100%;
display: flex;
margin-top: 16rpx;
.smallDetailItem{
width: 50%;
.messageTop{
display: flex;
align-items: center;
.type{
width: 24rpx;
height: 12rpx;
border-radius: 6rpx;
margin-right: 6px;
}
.typeTitle{
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #160002;
line-height: 40rpx;
.unit{
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 40rpx;
margin-left: 2px;
}
}
}
.middle{
margin-top: 6px;
margin-left: 20px;
display: flex;
align-items: center;
.money{
font-size: 36rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #160002;
line-height: 44rpx;
}
.addItem{
margin-left: 6px;
display: inline-block;
padding: 2px 4px;
font-size: 28rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #E83944;
line-height: 32rpx;
background: rgba(232, 57, 68, 0.1);
border-radius: 18rpx;
}
}
.messageBottom{
margin-left: 20px;
display: flex;
align-items: center;
.addText{
font-size: 28rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #E83944;
line-height: 32rpx
}
.addType{
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 40rpx;
margin-left: 4px;
}
}
}
}
.moneyRate{
width: 100%;
box-sizing: border-box;
margin-top: 16rpx;
height: 144rpx;
display: flex;
align-items: center;
.leftBox{
width: 144rpx;
height: 144rpx;
margin-right: 16rpx;
position: relative;
.rateChartsBox{
width: 144rpx;
height: 144rpx;
}
.haveNoticeBox{
position: absolute;
bottom: 0;left: 0;
transform: translateY(80%);
display: inline-block;
padding: 5px 10px;
background: #fff;
border-radius: 10rpx;
box-shadow: 0rpx 0rpx 40rpx 0rpx rgba(244, 138, 143, 0.21);
z-index:9;
.field{
display: flex;
align-items: center;
.label{
width: 100rpx;
text-align: left;
}
.value{
font-family: DINAlternate-Bold, DINAlternate;
text-align: right;
}
}
}
}
//.rightBox{
// flex: 1;
// display: flex;
// align-items: center;
// .noticeItem{
// width: 50%;
// .noticeTop{
// width: 24rpx;
// height: 12rpx;
// background: #A66A37;
// border-radius: 6rpx;
// margin-bottom: 8rpx;
// }
// .noticeText{
// font-size: 28rpx;
// font-family: PingFangSC, PingFang SC;
// font-weight: 400;
// color: #160002;
// line-height: 40rpx;
// margin-bottom: 6rpx;
// .noticeSmallText{
// font-size: 28rpx;
// font-family: PingFangSC, PingFang SC;
// font-weight: 400;
// color: #A69E9F;
// line-height: 40rpx;
// margin-left: 4rpx;
// }
// }
// .noticeMoney{
// font-size: 36rpx;
// font-family: DINAlternate-Bold, DINAlternate;
// font-weight: bold;
// color: #160002;
// line-height: 44rpx;
// }
// }
//}
.newRightBox{
height: 100%;
flex: 1;
display: flex;
align-items: center;
.newRightItem{
display: flex;
align-items: center;
justify-content: space-between;
.itemLeft{
.itemIcon{
width: 12rpx;
height: 12rpx;
margin-right: 12rpx;
border-radius: 50%;
}
.itemName{
font-family: PingFangSC, PingFang SC;
font-weight: 400;
font-size: 28rpx;
color: #160002;
line-height: 40rpx;
text-align: left;
font-style: normal;
display: inline-block;
width: 100rpx;
}
.itemValue{
font-family: DINAlternate, DINAlternate;
font-weight: bold;
font-size: 28rpx;
color: #160002;
line-height: 40rpx;
text-align: left;
font-style: normal;
}
}
.itemRight{
font-family: DINAlternate, DINAlternate;
font-weight: bold;
font-size: 28rpx;
color: #E83944;
line-height: 40rpx;
text-align: center;
font-style: normal;
}
}
}
}
}
.goBusiness{
width: 100%;
display: flex;
justify-content: flex-end;
.bussinessRight{
display: flex;
align-items: center;
.bussinessText{
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 40rpx;
margin: 0 4px;
}
.moreIcon{
width: 12px;
height: 12px;
display: flex;
align-items: center;
justify-content: center;
border: 2px solid #A69E9F;
border-radius: 50%;
color: #A69E9F;
font-size: 12px;
font-weight: 600;
margin-left: 6px;
position: relative;
.realBox{
position: absolute;
//left: 0;top: 0;
right: 0;bottom: 0;
display: inline-block;
padding: 5px 10px;
background: #fff;
border-radius: 10rpx;
box-shadow: 0rpx 0rpx 40rpx 0rpx rgba(244, 138, 143, 0.21);
z-index:9;
}
}
.staticIcon{
width: 32rpx;
height: 32rpx;
opacity: 0.25;
}
}
}
}
}
.monthBox{
display: inline-block;
position: absolute;
right: 1px;top: 1px;
padding: 4rpx 26rpx;
font-size: 28rpx;
font-family: PingFangSC-Semibold, PingFang SC;
font-weight: 600;
color: #B33115;
line-height: 40rpx;
background: #FFD2C4;
border-radius: 0rpx 30rpx 0rpx 30rpx;
}
}
.bottom{
width: 100%;
height: 52rpx;
background: #FDFEFD;
box-sizing: border-box;
padding: 0 32rpx 12rpx;
display: flex;
justify-content: space-between;
align-items: center;
border-bottom-left-radius: 38rpx;
border-bottom-right-radius: 38rpx;
.searchText{
font-size: 28rpx;
font-family: PingFangSC, PingFang SC;
font-weight: 400;
color: #2363FF;
line-height: 40rpx;
}
.searchIcon{
width: 25px;
height: 14px;
}
}
.otherDetail{
width: 100%;
margin-top: 30px;
.detail{
width: 100%;
//height: 290px;
box-sizing: border-box;
padding: 16px 16px 8px;
background: linear-gradient(180deg, #DCE6FF 0%, #FFFFFF 68%, #FFFFFF 100%);
border-bottom-left-radius: 32rpx;
border-bottom-right-radius: 32rpx;
//margin-top: 12px;
.detailMessage{
width: 100%;
height: 100%;
.otherDetailTop{
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
.otherDetailTopLeft{
.yearAll{
font-size: 40rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #6D1301;
line-height: 40rpx;
}
.yearLabel{
margin-top: 4rpx;
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #6D1301;
line-height: 40rpx;
.unit{
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #C5846F;
line-height: 40rpx;
margin-left: 4rpx;
}
}
}
.otherDetailRight{
.otherDetailAddBox{
display: flex;
align-items: center;
.otherDetailAddIcon{
width: 28rpx;
height: 28rpx;
margin-right: 6rpx;
}
.otherDetailAddValue{
font-size: 36rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #E83944;
line-height: 40rpx;
}
}
.otherDetailAddLabel{
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #6D1301;
line-height: 40rpx;
text-align: right;
}
}
}
.otherDetailMiddle{
margin-top: 42rpx;
.middleItem{
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
.itemLabel{
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #6D1301;
line-height: 40rpx;
.itemText{
width: 70rpx;
height: 40rpx;
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #C5836E;
line-height: 40rpx;
}
}
.itemValue{
font-size: 32rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #6D1301;
line-height: 40rpx;
}
}
}
.otherDetailBottom{
margin-top: 40rpx;
position: relative;
.bottomItem{
width: 100%;
.bottomSmallItem{
width: 100%;
display: flex;
align-items: center;
}
.itemLeft{
width: 140rpx;
display: flex;
align-items: center;
.leftIcon{
width: 32rpx;
height: 32rpx;
margin-right: 8rpx;
}
.itemTitle{
font-size: 26rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #6D1301;
line-height: 40rpx;
text-align: left;
}
}
.itemCenter,.itemRight{
width: calc((100% - 140rpx)/2);
.itemValue{
font-size: 28rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #6D1301;
line-height: 40rpx;
}
.itemText{
font-size: 26rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #6D1301;
line-height: 40rpx;
margin-left: 4rpx;
}
}
.itemCenter{
text-align: right;
}
.itemRight{
text-align: right;
}
}
.monthDetail{
position: absolute;
left: 50%;top: 50%;
transform: translate(-50%,-50%);
display: inline-block;
padding: 5px 10px;
background: #fff;
border-radius: 10rpx;
box-shadow: 0rpx 0rpx 40rpx 0rpx rgba(244, 138, 143, 0.21);
z-index:9;
.monthItem{
.label{
display: inline-block;
width: 100px;
}
.value{
display: inline-block;
text-align: left;
margin-right: 12rpx;
}
}
}
}
}
.noShowMoreBox{
width: 100%;
display: flex;
align-items: center;
justify-content: center;
margin-top: 12rpx;
.noShowMore{
width: 32rpx;
height: 32rpx;
}
}
}
}
}
}
.detailBottom{
width: 100%;
position: relative;
background: #FEB7A2;
.searchBox{
width: 100%;
height: 38px;
box-sizing: border-box;
padding: 0 16px;
display: flex;
align-items: center;
justify-content: space-between;
.searchText{
font-size: 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #AD6753;
line-height: 20px;
}
.searchIcon{
width: 26px;
height: 14px;
}
}
.otherDetail{
width: 100%;
height: 100%;
.detail{
width: 100%;
height: 190px;
box-sizing: border-box;
padding: 16px 0;
border-radius: 8rpx;
margin-top: 12px;
.detailItem {
width: 33%;
box-sizing: border-box;
padding-left: 16px;
height: 42px;
text-align: left;
float: left;
margin-bottom: 16px;
.itemName {
font-size: 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #782717;
opacity: 0.8;
line-height: 40rpx;
margin-bottom: 2px;
.prompt{
width: 12px;
height: 12px;
border: 1px solid #782717;
border-radius:50%;
display: flex;
align-items: center;
justify-content: center;
font-size: 10px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 600;
color: #782717;
}
.itemUnit {
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #C8806C;
line-height: 40rpx;
margin-left: 2px;
}
}
.price {
font-size: 16px;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #782717;
line-height: 40rpx;
}
}
}
}
}
}
}
.sliderBox{
width: 100%;
height: 16rpx;
margin-top: 20rpx;
}
.other {
width: calc(100% - 32px);
position: absolute;
top: 104px;
.topTitle{
width: 100%;
display: flex;
justify-content: space-between;
align-items: flex-start;
.title {
font-size: 28rpx;
font-family: PingFangSC-Semibold, PingFang SC;
font-weight: 600;
color: #782717;
line-height: 40rpx;
}
.text {
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #782717;
line-height: 40rpx;
margin-left: 8px;
}
.smallTitle{
font-size: 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #782717;
line-height: 20px;
margin-right: 4px;
.month{
margin-left: 4px;
font-size: 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #c97e64;
line-height: 20px;
}
}
}
@keyframes allPriceAnimation {
0%{
transform: translateY(30px);
}
100%{
transform: translateY(0px);
}
}
.box {
display: flex;
align-items: center;
.priceBox{
width: 100%;
display: flex;
align-items: center;
justify-content: flex-start;
margin: 6px 0 0;
.allPrice {
font-size: 56rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #782717;
line-height: 64rpx;
margin-top: 4px;
}
.allPriceMove{
animation: allPriceAnimation 2s;
}
}
.start {
width: 14px;
height: 14px;
margin-left: 8px;
}
}
.addBox {
width: 100%;
margin-top: 6px;
display: flex;
justify-content: space-between;
align-items: center;
.smallTitle{
font-size: 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #782717;
line-height: 20px;
margin-right: 4px;
.month{
margin-left: 4px;
font-size: 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #c97e64;
line-height: 20px;
}
}
.right{
display: flex;
align-items: center;
.arrowTop {
width: 14px;
height: 14px;
margin-right: 4px;
}
.text {
font-size: 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #782717;
line-height: 20px;
margin-right: 4px;
}
.compare {
font-size: 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #c97e64;
line-height: 20px;
}
}
}
.type {
width: 100%;
height: 45px;
margin-top: 8px;
.item {
width: 50%;
display: flex;
align-items: center;
float: left;
.leftImg {
width: 36px;
height: 36px;
border-radius: 50%;
overflow: hidden;
margin-right: 8px;
background: #fff;
image {
width: 100%;
height: 100%;
}
}
.right {
.typeName {
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #782717;
line-height: 40rpx;
.unit {
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #c97a63;
line-height: 40rpx;
margin-left: 4px;
}
}
.price {
font-size: 36rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #782717;
line-height: 44rpx;
margin-top: 2px;
}
}
}
}
.detail {
width: 100%;
height: 190px;
box-sizing: border-box;
padding: 16px 0;
background: linear-gradient(135deg, #fff2df 0%, #ffe3e5 100%);
box-shadow: 0rpx 0rpx 40rpx 0rpx rgba(244, 138, 143, 0.21);
border-radius: 8rpx;
margin-top: 12px;
margin-bottom: 16px;
.detailItem {
width: 33%;
box-sizing: border-box;
padding-left: 16px;
height: 42px;
text-align: left;
float: left;
margin-bottom: 16px;
.itemName {
font-size: 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #782717;
opacity: 0.8;
line-height: 40rpx;
margin-bottom: 2px;
.prompt{
width: 12px;
height: 12px;
border: 1px solid #782717;
border-radius:50%;
display: flex;
align-items: center;
justify-content: center;
font-size: 10px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 600;
color: #782717;
}
.itemUnit {
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #c99f8f;
line-height: 40rpx;
}
}
.price {
font-size: 16px;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #782717;
line-height: 40rpx;
}
}
}
}
.more{
width: calc(100% - 32px);
display: flex;
justify-content: center;
position: absolute;
bottom: 12px;
padding-bottom: 12px;
.img{
width: 16px;
height: 16px;
}
.rate{
transform: rotate(180deg)!important;
}
}
}
.funEntry{
width: 100%;
//height: 208px;
//background-image: url("https://eshangtech.com/ShopICO/ahyd-BID/home/funEntryBg.png");
background-repeat: no-repeat;
background-size: 100% 100%;
box-sizing: border-box;
//padding: 14rpx 0 32px 0;
padding: 0 0 32px 0;
//transform: translateY(-16px);
border-top-right-radius: 16px;
border-top-left-radius: 16px;
.instantRevenue{
width: calc(100% - 64rpx);
height: 104px;
box-sizing: border-box;
padding: 2rpx;
background: #fff;
border-radius: 16rpx;
margin-left: 32rpx;
margin-bottom: 24rpx;
.revenue{
width: 100%;
height: 100%;
box-sizing: border-box;
padding: 24rpx;
background: linear-gradient(176deg, #FFE4CD 0%, #FEF5DE 37%, #FFFFFF 100%);
border-radius: 16rpx;
display: flex;
flex-direction: column;
justify-content: space-between;
.revenueTop{
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
.revenyeTopLeft{
display: flex;
align-items: center;
.monthIcon{
width: 48rpx;
height: 48rpx;
}
.dateText{
font-size: 28rpx;
font-family: PingFangSC, PingFang SC;
font-weight: 500;
color: #FC2E20;
line-height: 40rpx;
margin: 0 8rpx;
}
.day{
font-size: 28rpx;
font-family: PingFangSC, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 40rpx;
}
}
.revenyeTopRight{
width: 100px;
display: flex;
justify-content: flex-end;
align-items: center;
.right{
width: 32rpx;
height: 32rpx;
}
}
}
.revenueMoney{
height: 52rpx;
display: flex;
align-items: center;
justify-content: space-between;
.moneyText{
font-size: 44rpx;
font-family: DINAlternate, DINAlternate;
font-weight: bold;
color: #160002;
line-height: 52rpx;
margin-right: 8rpx;
}
.moneyLabel{
font-size: 28rpx;
font-family: PingFangSC, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 40rpx;
}
}
}
}
.funBox{
width: calc(100% - 64rpx);
margin-left: 32rpx;
background: #FFFFFF;
border-radius: 16rpx;
box-sizing: border-box;
padding: 32rpx 24rpx;
display: flex;
flex-flow: wrap;
.funItem{
width: 25%;
display: flex;
justify-content: center;
.funItemContent{
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
.funIconBox{
width: 88rpx;
height: 88rpx;
//border-radius: 50%;
overflow: hidden;
margin-bottom: 16rpx;
.funIcon{
width: 100%;
height: 100%;
}
}
.funText{
font-size: 28rpx;
font-family: PingFangSC, PingFang SC;
font-weight: 400;
color: #160002;
line-height: 40rpx;
}
}
}
}
.funList{
width: calc(100% - 64rpx);
box-sizing: border-box;
margin-left: 32rpx;
padding: 24rpx;
display: flex;
justify-content: space-between;
background: #F3F4F4;
border-radius: 16rpx;
position: relative;
.san{
width: 16px;
height: 16px;
position: absolute;
top: -8px;left: 108rpx;
background: #F3F4F4;
transform: rotate(-45deg);
}
.funItem{
width: 25%;
display: flex;
flex-direction: column;
align-items: center;
.iconBox{
width: 96rpx;
height: 96rpx;
background: #FFFFFF;
display: flex;
align-items: center;
justify-content: center;
border-radius: 50%;
margin-bottom: 16rpx;
.funItemIcon{
width: 60rpx;
height: 60rpx;
}
}
.funItemText{
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #160002;
line-height: 32rpx;
}
}
}
.nationalDay{
width: calc(100% - 64rpx);
//height: 286rpx;
margin-left: 32rpx;
border-radius: 16rpx;
margin-top: 24rpx;
background: linear-gradient(135deg, rgba(255, 238, 232, 1) 0%, rgba(255, 238, 231, 1) 79%, rgba(255, 221, 215, 1) 100%);
//background-image: url("https://eshangtech.com/ShopICO/ahyd-BID/nationalDay/indexBg.svg");
//background-repeat: no-repeat;
//background-size: 100% 100%;
.national{
box-sizing: border-box;
padding: 20rpx 24rpx;
width: 100%;
height: 100%;
.nationalTop{
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 8px;
.nationalTopLeft{
display: flex;
align-items: center;
.topText{
font-size: 32rpx;
font-family: Alimama ShuHeiTi;
font-weight: bold;
color: #EC6C00;
line-height: 38rpx;
}
.lanternImg{
width: 104rpx;
height: 126rpx;
margin-left: 8rpx;
}
.titleBox{
width: 300rpx;
height: 60rpx;
background-image: url("https://eshangtech.com/ShopICO/ahyd-BID/nationalDay/titleBox.svg");
background-repeat: no-repeat;
background-size: contain;
padding-left: 36rpx;
box-sizing: border-box;
display: flex;
transform: translateX(-30px);
align-items: center;
.title{
display: flex;
align-items: center;
.text{
font-size: 32rpx;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 600;
color: #E93113;
line-height: 44rpx;
}
.rightIcon{
width: 32rpx;
height: 32rpx;
margin-left: 16rpx;
}
}
}
}
.nationalTopRight{
.timeText{
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #E93113;
line-height: 34rpx;
}
}
}
.nationalContent{
width: 100%;
display: flex;
justify-content: space-between;
.itemContent{
width: calc((100% - 32rpx)/3);
box-sizing: border-box;
padding: 24rpx 16rpx;
background: #FFFAF7;
box-shadow: 0rpx 0rpx 20rpx 0rpx rgba(162,4,4,0.1);
border-radius: 12rpx;
border: 2rpx solid #FFFFFF;
overflow: hidden;
position: relative;
.itemBg{
position: absolute;
bottom: 0;right: 0;
width: 100rpx;
height: 100rpx;
}
.value{
font-size: 32rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #E23038;
line-height: 40rpx;
margin-bottom: 8rpx;
}
.title{
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 500;
color: rgba(120, 107, 108, 1);
line-height: 36rpx;
span{
margin-left: 4rpx;
}
}
}
}
}
}
.otherFunBox{
width: 100%;
box-sizing: border-box;
padding: 0 16px;
display: flex;
margin-top: 20px;
.otherFunItem{
width: calc((100% - 9px)/2);
height: 72px;
background-repeat: no-repeat;
background-size: 100% 100%;
position: relative;
.itemTitle{
position: absolute;
left: 12px;
top: 10px;
font-size: 16px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 600;
color: #0D4CDE;
line-height: 22px
}
.itemImg{
position: absolute;
top: 18px;right: 17px;
width: 35px;
height: 35px;
}
.nowBox{
position: absolute;
bottom: 14px;
left: 12px;
display: flex;
align-items: center;
.nowText{
font-size: 12px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #638EEB;
line-height: 12px
}
.searchIcon{
width: 12px;
height: 12px;
margin-left: 4px;
}
}
}
}
.bigCarBox{
width: calc(100vw - 68rpx);
margin-left: 34rpx;
background: #fff;
border-radius: 16rpx;
box-sizing: border-box;
padding: 2rpx;
margin-bottom: 26rpx;
.carWarning{
background: linear-gradient(180deg, #EDF5FF 0%, #FFFFFF 100%);
padding: 12px 16px 8rpx;
border-radius: 16rpx;
position: relative;
.carWarningTop{
width: 100%;
display: flex;
justify-content: space-between;
align-items: center;
.moreStoreBox{
display: flex;
align-items: center;
.moreText{
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 36rpx;
}
.moreIcon{
width: 18px;
height: 18px;
}
}
.warningBox{
display: flex;
align-items: center;
.warningIcon{
width: 48rpx;
height: 48rpx;
margin-right: 8rpx;
}
.trafficBox{
display: flex;
align-items: center;
.trafficCar{
font-size: 28rpx;
font-family: PingFangSC, PingFang SC;
font-weight: 600;
color: #160002;
line-height: 40rpx;
}
.trafficUnit{
font-size: 28rpx;
font-family: PingFangSC, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 40rpx;
margin-left: 8rpx;
}
.moreIcon{
margin-left: 16rpx;
width: 32rpx;
height: 32rpx;
}
}
}
}
.contentList{
width: 100%;
border-radius: 8px;
margin-top: 32rpx;
.contentItem{
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 24rpx;
.index{
width: 12px;
height: 12px;
position: relative;
.boxBg{
width: 12px;
height: 12px;
background: #8BBBFF;
filter: blur(4px);
position: absolute;
top: 0;left: 0;
}
.indexText{
position: absolute;
top: 50%;left: 50%;
transform: translate(-50%,-50%);
z-index: 2;
font-size: 16px;
font-family: DingTalk-JinBuTi, DingTalk;
font-weight: normal;
color: #160002;
line-height: 20px;
}
}
.serviceBox{
width: 35%;
display: inline-block;
margin-left: 8px;
.name{
font-size: 14px;
font-family: PingFangSC-Semibold, PingFang SC;
font-weight: 600;
color: #160002;
line-height: 26px;
}
.position{
font-size: 12px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #786B6C;
line-height: 20px;
margin-left: 4rpx;
}
}
.numberBox{
width: 30%;
display: flex;
justify-content: flex-end;
.number{
font-size: 16px;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #160002;
line-height: 24px;
}
.unit{
font-size: 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 20px;
margin-left: 2px;
}
}
.addBox{
width: calc(30% - 20px);
display: flex;
align-items: center;
justify-content: flex-end;
.addIcon{
width: 14px;
height: 14px;
}
.add{
font-size: 16px;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #E83944;
line-height: 24px;
}
}
}
}
}
}
.peopleWarning{
width:calc(100% - 32px);
margin-left: 16px;
margin-top: 32rpx;
background-image: url("https://eshangtech.com/ShopICO/ahyd-BID/newIndex/personWarningBg.svg");
background-repeat: no-repeat;
background-size: cover;
box-sizing: border-box;
padding: 12px 16px;
border-radius: 16rpx;
position: relative;
.carWarningTop{
width: 100%;
display: flex;
justify-content: space-between;
align-items: center;
.moreStoreBox{
display: flex;
align-items: center;
.moreText{
}
.moreIcon{
width: 18px;
height: 18px;
}
}
.warningBox{
width: 150px;
height: 36px;
position: relative;
.warningIcon{
position: absolute;
left: 0;top: 0;
width: 36px;
height: 36px;
z-index: 2;
}
.trafficBox{
position: absolute;
left: 28px;top: 3px;
z-index: 1;
width: 120px;
height: 30px;
background: #DDEAFF;
border-top-right-radius: 15px;
border-bottom-right-radius: 15px;
box-sizing: border-box;
padding: 4px 16px;
display: flex;
align-items: center;
.trafficCar{
font-size: 16px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 600;
color: #007DA5;
line-height: 16px;
}
.moreIcon{
margin-left: 16rpx;
width: 32rpx;
height: 32rpx;
}
}
}
}
.contentList{
width: 100%;
border-radius: 8px;
.contentItem{
padding: 6px 0;
display: flex;
justify-content: space-between;
align-items: center;
.index{
width: 12px;
height: 12px;
position: relative;
.boxBg{
width: 12px;
height: 12px;
background: #589CFF;
filter: blur(4px);
position: absolute;
top: 0;left: 0;
}
.indexText{
position: absolute;
top: 50%;left: 50%;
transform: translate(-50%,-50%);
z-index: 2;
font-size: 16px;
font-family: DingTalk-JinBuTi, DingTalk;
font-weight: normal;
color: #160002;
line-height: 20px;
}
}
.serviceBox{
width: 35%;
display: inline-block;
margin-left: 8px;
.name{
font-size: 28rpx;
font-family: PingFangSC-Semibold, PingFang SC;
font-weight: 600;
color: #160002;
line-height: 40rpx;
}
.position{
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #786B6C;
line-height: 36rpx;
margin-left: 4rpx;
}
}
.numberBox{
width: 30%;
.number{
font-size: 16px;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #160002;
line-height: 24px;
}
.unit{
font-size: 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 20px;
margin-left: 2px;
}
}
.addBox{
width: calc(30% - 20px);
display: flex;
align-items: center;
.addIcon{
width: 14px;
height: 14px;
}
.add{
font-size: 16px;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #E83944;
line-height: 24px;
}
}
}
}
}
.patrolInspection{
width: calc(100% - 64rpx);
margin-left: 32rpx;
margin-top: 32rpx;
height: 532rpx;
background: #FFF2E5;
border-radius: 20rpx;
box-sizing: border-box;
padding: 20rpx 24rpx;
.patrolTitle{
font-size: 32rpx;
font-family: Alimama ShuHeiTi;
font-weight: bold;
color: #EC6C00;
line-height: 38rpx;
}
.contentBox{
width: 100%;
height: 430rpx;
background: #FFFFFF;
border-radius: 20rpx;
margin-top: 20rpx;
box-sizing: border-box;
padding: 32rpx 24rpx;
.contentFirst{
.firstTop{
display: flex;
justify-content: space-between;
.left{
display: flex;
align-items: center;
.topIcon{
width: 50rpx;
height: 50rpx;
}
.topText{
font-size: 28rpx;
font-family: PingFangSC-Semibold, PingFang SC;
font-weight: 600;
color: #160002;
line-height: 40rpx;
margin-left: 4rpx;
}
}
.right{
display: flex;
align-items: center;
.moreText{
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 36rpx;
}
.moreIcon{
width: 20rpx;
height: 40rpx;
}
}
}
.firstBox{
display: flex;
justify-content: space-between;
margin-top: 22rpx;
padding-bottom: 32rpx;
.boxItem{
display: flex;
flex-direction: column;
.itemValue{
font-size: 36rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #020E1A;
line-height: 44rpx;
}
.itemLabel{
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #786B6C;
line-height: 36rpx;
.unit{
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 36rpx;
margin-left: 2rpx;
}
}
.detailBox{
.detailValue{
font-size: 36rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #E83944;
line-height: 44rpx;
}
.detailLabel{
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #786B6C;
line-height: 36rpx;
.unit{
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 36rpx;
margin-left: 4rpx;
}
}
}
}
}
.secondBox{
display: flex;
justify-content: space-between;
margin-top: 28rpx;
.secondItem{
display: flex;
.itemImg{
width: 80rpx;
height: 80rpx;
}
.secondDetail{
display: flex;
flex-direction: column;
margin-left: 16rpx;
.labelValue{
font-size: 36rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #020E1A;
line-height: 44rpx;
}
.labelTitle{
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #786B6C;
line-height: 36rpx;
.unit{
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 36rpx
}
}
}
}
}
}
}
}
.selfPlan{
width: calc(100% - 64rpx);
height: 630rpx;
padding: 20rpx 24rpx;
box-sizing: border-box;
background: #E8F2FF;
border-radius: 16rpx;
margin-left: 32rpx;
margin-top: 32rpx;
.selfPlanTitle{
font-size: 32rpx;
font-family: Alimama ShuHeiTi;
font-weight: bold;
color: #4157E6;
line-height: 38rpx;
}
.content{
width: 100%;
height: 530rpx;
background: #fff;
margin-top: 20rpx;
border-radius: 20rpx;
box-sizing: border-box;
padding: 32rpx 24rpx;
.contentItem{
.contentTop{
width: 100%;
display: flex;
justify-content: space-between;
.contentLeft{
display: flex;
align-items: center;
.dateImg{
width: 40rpx;
height: 40rpx;
}
.smallTitle{
font-size: 28rpx;
font-family: PingFangSC-Semibold, PingFang SC;
font-weight: 600;
color: #160002;
line-height: 40rpx;
margin-left: 4rpx;
}
}
.contentRight{
display: flex;
align-items: center;
.moreText{
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 36rpx;
}
.moreIcon{
width: 20rpx;
height: 40rpx;
margin-left: 4rpx;
}
}
}
.contentBottom{
margin-top: 24rpx;
display: flex;
.canvaBox{
width: 136rpx;
height: 136rpx;
}
.messageBox{
flex: 1;
margin-left: 32rpx;
.messageTop{
width: 100%;
display: flex;
align-items: center;
.topIcon{
width: 28rpx;
height: 28rpx;
}
.messageValue{
font-size: 36rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #E83944;
line-height: 44rpx;
}
.messageDesc{
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 36rpx;
margin-left: 8rpx;
}
}
.messageBottom{
width: 100%;
margin-top: 16rpx;
display: flex;
justify-content: space-between;
.bottomItem{
.itemValue{
font-size: 32rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #020E1A;
line-height: 40rpx;
}
.itemLabel{
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #786B6C;
line-height: 36rpx;
.unit{
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 36rpx;
}
}
}
}
}
}
}
}
}
.proportion{
width: calc(100% - 64rpx);
margin-left: 32rpx;
border-radius: 20rpx;
background: #E6F6F7;
margin-top: 34rpx;
box-sizing: border-box;
padding: 20rpx 24rpx;
.proportionTitle{
font-size: 32rpx;
font-family: Alimama ShuHeiTi;
font-weight: bold;
color: #02858B;
line-height: 38rpx;
}
.contentPropor{
width: 100%;
background: #fff;
border-radius: 20rpx;
margin-top: 20rpx;
box-sizing: border-box;
padding: 24rpx;
.tabs{
width: 100%;
.tabItem{
display: inline-block;
padding: 8rpx 24rpx;
font-size: 28rpx;
font-family: PingFangSC-Semibold, PingFang SC;
font-weight: 400;
color: #160002;
line-height: 40rpx;
border-radius: 28rpx;
}
.active{
background: #E5F2F3;
color: #02858B;
font-weight: 600;
}
}
.chart{
width: 100%;
margin-top: 12px;
.operation-c-list{
width:100%;
margin-bottom: 12px;
.top{
width: 100%;
margin-bottom: 2px;
display: flex;
justify-content: space-between;
align-items: center;
.left{
display: flex;
justify-content: space-between;
.icon{
width: 20px;
height: 20px;
position: relative;
margin-right: 8px;
display: flex;
justify-content: center;
align-items: center;
image{
width: 100%;
height: 100%;
position: absolute;
top: 0;left: 0;
}
text{
z-index:99;
font-size: 24rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #FFFFFF;
}
}
.name{
font-size: 32rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #160002;
line-height: 40rpx;
}
}
}
.bottom{
display: flex;
justify-content: space-between;
.bar{
width: 352rpx;
height: 16rpx;
background: #EBEEEE;
border-radius: 10rpx;
position: relative;
overflow: hidden;
.progress{
position: absolute;
top: 0;left: 0;
background: #02858B;
height: 100%;
border-radius: 10rpx;
}
}
.number{
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #786B6C;
line-height: 40rpx;
}
}
}
}
}
}
}
.notice{
position: fixed;
bottom: 120px;
left: 5%;
width: 90%;
padding: 10px 10px;
box-sizing: border-box;
border-radius: 10px;
z-index:999999;
background: #2c71f9;
display: flex;
justify-content: space-between;
align-items: center;
.left {
display: flex;
align-items: center;
.icon {
width: 40px;
height: 40px;
margin-right: 10px;
}
.text {
margin-left: 8px;
.name {
font-size: 14px;
font-family: PingFangSC-Semibold, PingFang SC;
font-weight: 600;
color: #ffffff;
line-height: 20px;
}
.desc {
font-size: 12px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #B5CDFC;
line-height: 18px;
}
}
}
.right {
border: 1px solid #fff;
padding: 2px 6px;
font-size: 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
border-radius: 11px;
color: #ffffff;
}
}
.popupIndex {
position: fixed;
top: 30%;
left: 10%;
width: 80%;
height: 250px;
background: #fff;
border-radius: 8px;
overflow: hidden;
padding: 0 16px;
box-sizing: border-box;
.popupTop{
box-sizing: border-box;
height: 60px;
font-size: 15px;
font-weight: 600;
color: #333;
text-align: left;
width: 100%;
padding: 16px 0;
background-color: #fff;
}
.bodyList{
width: 100%;
height: 190px;
box-sizing: border-box;
.item{
width: 100%;
border-bottom: 1px solid #efefef;
padding: 5px 0;
display: flex;
align-items: center;
.index{
height: 16px;
color: #E1B582;
border: 1px solid #E1B582;
border-radius: 4px;
padding: 0 6px;
margin-right: 6px;
font-size: 12px;
line-height: 16px;
}
}
}
}
}
</style>