ahyd_DIB/pages/revenue/index.vue
2023-08-21 15:26:28 +08:00

2705 lines
93 KiB
Vue

<template>
<view class="main">
<view class="meng"
v-if="showCost || showPay || showMonthRevenue || showMonthExpenditure || successRate || thisYearSum || nowYearSumRate || showNetProfit || budget || showYearNetProfit || revenueAll || revenueSuccess || revenueCostRate || budgetSum || incomeSuccess || nowYearBudget || nowYearRevenueCost || compareYesSuccessRate || userRevenueSmallSum || thisMonthSum || thisMonthRevenueRate || thisMonthSmallSumSuccess1st || thisMonthSmallSumSuccess2st || thisMonthSmallSumSuccess2stTitle || otherSmallSum"
@click="handleShowNotice('false')"></view>
<view class="meng" v-if="otherLeftChar || otherMonthSum || otherThisMonthRate || otherThisMonthSuccess"
@click="handleShowNotice2('false')"></view>
<view class="header">
<image class="headerBg" src="https://eshangtech.com/ShopICO/ahyd-BID/revenueBox/revenyeBg.png" />
<view class="headerTop" :style="{ top: menu.top + 'px', height: menu.height + 'px' }">
<image @click="handleBack" class="backIcon"
src="https://eshangtech.com/ShopICO/ahyd-BID/examine/leftArrowWhite.svg"></image>
</view>
<view class="pageTitle" :style="{ top: (menu.bottom + 18) + 'px' }">收支预测</view>
<view class="headerDetail" :style="{ top: (menu.bottom + 68) + 'px' }">
<view class="detailBox">
<image class="monthSumBg" src="https://eshangtech.com/ShopICO/ahyd-BID/revenueBox/monthSum.png" />
<view class="detailPage">
<text class="detailPageTitle">7月累计收支比例</text>
</view>
<view class="moneyBox">
<view class="moneyItem">
<view class="itemTop">
<view class="itemChart">
<YearCharts :success="firstBox1st" />
</view>
<view class="itemMessage">
<text class="itemRate">39.39%</text>
<view class="itemLabel">
成本比
<view class="notice" @click="handleShowNotice('showCost')">?
<view class="noticeBox" :style="{ left: 0 }" v-if="showCost"
@click.stop="handleShowNotice('showCost')">
<text>成本比=本月成本 / 本月收入</text>
</view>
</view>
</view>
</view>
</view>
<view class="successBox">
<view class="successBoxItem">
<text class="successNumber">7,099.41</text>
<view class="successTime">本月收入
<text class="successUnit">/万元</text>
<view class="notice" @click="handleShowNotice('showMonthRevenue')">?
<view class="noticeBox" v-if="showMonthRevenue" @click.stop="handleShowNotice('showMonthRevenue')">
<text>本月收入=营业收入 + 营业外收入</text>
</view>
</view>
</view>
</view>
<view class="successBoxItem" style="margin-top: 12rpx">
<text class="successNumber" style="color: #E83944">+50.59%</text>
<text class="successTime">同比</text>
</view>
</view>
</view>
<view class="moneyItem">
<view class="itemTop">
<view class="itemChart">
<YearCharts :success="firstBox2st" />
</view>
<view class="itemMessage">
<text class="itemRate">167.27%</text>
<view class="itemLabel">
收支比
<view class="notice" @click="handleShowNotice('showPay')">?
<view class="noticeBox" :style="{ right: 0 }" v-if="showPay"
@click.stop="handleShowNotice('showPay')">
<text>收支比=本月成本 / 本月支出</text>
</view>
</view>
</view>
</view>
</view>
<view class="successBox">
<view class="successBoxItem">
<text class="successNumber">4,244.22</text>
<view class="successTime">
本月支出
<text class="successUnit">/万元</text>
<view class="notice" @click="handleShowNotice('showMonthExpenditure')">?
<view class="noticeBox" v-if="showMonthExpenditure"
@click.stop="handleShowNotice('showMonthExpenditure')">
<text>本月支出=管理费用 + 销售费用 + 财务费用 + 营业外支出</text>
</view>
</view>
</view>
</view>
<view class="successBoxItem" style="margin-top: 12rpx">
<text class="successNumber" style="color: #E83944">+9.12%</text>
<text class="successTime">同比</text>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
<view class="content">
<view class="profitYear">
<view class="itemBox">
<view class="itemBoxTitle">2023年度累计利润</view>
<image class="monthSumBg" src="https://eshangtech.com/ShopICO/ahyd-BID/revenueBox/yearSum.png" />
<view class="itemDetailBox">
<view class="detailBoxTop">
<view class="successLabel">
<text class="successLabelText"></text>完成率
<view class="notice" @click="handleShowNotice('successRate')">?
<view class="noticeBox" v-if="successRate" @click.stop="handleShowNotice('successRate')">
<text>完成率=本年累计/年度预算(389.00/275.00)</text>
</view>
</view>
</view>
<text class="successValue">{{ secondBoxProgress + '%' }}</text>
</view>
<view class="progress">
<view class="have" :style="{ width: secondBoxProgress > 100 ? '100%' : secondBoxProgress + '%' }"></view>
</view>
<view class="yearDetail">
<view class="yearItem">
<view class="itemValue">
389.00
<view class="notice" @click="handleShowNotice('thisYearSum')">?
<view class="noticeBox" v-if="thisYearSum" @click.stop="handleShowNotice('thisYearSum')">
<text>本年度利润总额的累计数</text>
</view>
</view>
</view>
<text class="itemLabel">本年累计<text class="itemUnit">/万元</text></text>
</view>
<view class="yearItem">
<view class="itemValue">
275.00
<view class="notice" @click="handleShowNotice('budget')">?
<view class="noticeBox" :style="{ left: 'calc(33.3% + 30px)', top: '40px' }" v-if="budget"
@click.stop="handleShowNotice('budget')">
<text>本年度利润总额的预算数</text>
</view>
</view>
</view>
<text class="itemLabel">年度预算<text class="itemUnit">/万元</text></text>
</view>
<view class="yearItem" style="width: 80px">
<view class="itemValue" style="color: #E83944">+105.59%</view>
<text class="itemLabel">同比</text>
</view>
</view>
<view class="yearDetail">
<view class="yearItem">
<view class="itemValue">292.00</view>
<text class="itemLabel">本年净利润<text class="itemUnit">/万元</text></text>
</view>
<view class="yearItem">
<view class="itemValue">
156.00
<view class="notice" @click="handleShowNotice('showNetProfit')">?
<view class="noticeBox" :style="{ left: 'calc(33.3% + 30px)', top: '115px' }" v-if="showNetProfit"
@click.stop="handleShowNotice('showNetProfit')">
<text>本年度净利润的预算数</text>
</view>
</view>
</view>
<text class="itemLabel">净利润预算<text class="itemUnit">/万元</text></text>
</view>
<view class="yearItem" style="width: 80px">
<view class="itemValue" style="color: #E83944">187.18%</view>
<view class="itemLabel" style="display: flex;align-items: center">
完成度
<view class="notice" @click="handleShowNotice('showYearNetProfit')">?
<view class="noticeBox" :style="{ left: 'calc(33.3% + 30px)', top: '115px' }" v-if="showYearNetProfit"
@click.stop="handleShowNotice('showYearNetProfit')">
<text>完成度=本年净利润/净利润预算(292.00/156.00)</text>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
<view class="accrueYear">
<view class="itemBox">
<view style="display: flex;align-items: center">
<view class="itemBoxTitle">2023年营收累计</view>
<view class="notice" @click="handleShowNotice('revenueAll')">?
<view class="noticeBox" :style="{ left: '50%', top: '0px' }" v-if="revenueAll"
@click.stop="handleShowNotice('revenueAll')">
<text>不包含营业外收入</text>
</view>
</view>
</view>
<image class="monthSumBg" src="https://eshangtech.com/ShopICO/ahyd-BID/revenueBox/yearRevenue.png" />
<view class="itemDetailBox">
<view class="leftCharts" @click="handleShowNotice('revenueSuccess')">
<OtherCharts :success="thirdBoxRate" :colorList="['#9E3CE9', '#ECD8FB']" />
<text class="numberValue">65.12%</text>
</view>
<view class="notices">
<view class="noticeBox" :style="{ left: '0px', top: '50%' }" v-if="revenueSuccess"
@click.stop="handleShowNotice('revenueSuccess')">
<text>完成率=本年累计 / 年度预算(472,356,021.71/725,370,000.00)</text>
</view>
</view>
<view class="rightBox">
<view class="rightBoxTop">
<view class="itemTop">
<text class="itemTopValue">47,235.60</text>
<text class="itemTopTitle">本年累计<text class="itemTopUnit">/万元</text></text>
</view>
<view class="itemRateBox">
<view class="addRate">38.23%</view>
<view class="rateText" style="display: flex;align-items: center">
成本比
<view class="notice" @click="handleShowNotice('revenueCostRate')">?
<view class="noticeBox" :style="{ right: '0px', top: '30%' }" v-if="revenueCostRate"
@click.stop="handleShowNotice('revenueCostRate')">
<text>成本比=本年成本/本年累计收入(180,563,832.50/472,356,021.71)</text>
</view>
</view>
</view>
</view>
</view>
<view class="rightBoxTop">
<view class="itemTop">
<text class="itemTopValue">72,537.00</text>
<text class="itemTopTitle">年度预算<text class="itemTopUnit">/万元</text></text>
</view>
<view class="itemRateBox">
<view class="addRate">+47.81%</view>
<view class="rateText" style="display: flex;align-items: center">
同比
<view class="notice" @click="handleShowNotice('budgetSum')">?
<view class="noticeBox" :style="{ right: '0px', top: '80%' }" v-if="budgetSum"
@click.stop="handleShowNotice('budgetSum')">
<text>本年累计营收的同比值</text>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
<view class="incomeAll">
<view class="itemBox">
<view class="itemBoxTitle" style="color: #EC6C00">2023年收入合计</view>
<image class="monthSumBg" src="https://eshangtech.com/ShopICO/ahyd-BID/revenueBox/allInCome.png" />
<view class="itemDetailBox">
<view class="leftCharts" @click="handleShowNotice('incomeSuccess')">
<OtherCharts :success="firthBox1stRate" :colorList="['#FC7909', '#FEE4CE']" />
<text class="numberValue" style="color: #FE7500">65.18%</text>
<view class="notices">
<view class="noticeBox" :style="{ left: '0px', top: '50%' }" v-if="incomeSuccess"
@click.stop="handleShowNotice('incomeSuccess')">
<text>完成率=本年累计 / 年度预算(473,766,021.71/726,870,000.00)</text>
</view>
</view>
</view>
<view class="rightBox">
<view class="rightBoxTop">
<view class="itemTop">
<text class="itemTopValue">47,376.60</text>
<view class="itemTopTitle" style="display: flex;align-items: center">
本年累计
<text class="itemTopUnit">/万元</text>
<view class="notice" @click="handleShowNotice('nowYearSum')">?
<view class="noticeBox" :style="{ left: '33%', top: '20px' }" v-if="nowYearSum"
@click.stop="handleShowNotice('nowYearSum')">
<text>包含营业外收入</text>
</view>
</view>
</view>
</view>
<view class="itemRateBox">
<view class="addRate">38.11%</view>
<view class="rateText" style="display: flex;align-items: center">
成本比
<view class="notice" @click="handleShowNotice('nowYearRevenueCost')">?
<view class="noticeBox" :style="{ left: '33%', top: '20px' }" v-if="nowYearRevenueCost"
@click.stop="handleShowNotice('nowYearRevenueCost')">
<text>成本比=本年累计成本/本年累计收入(180,563,832.50/473,766,021.71)</text>
</view>
</view>
</view>
</view>
</view>
<view class="rightBoxTop" style="margin-top: 32rpx">
<view class="itemTop">
<text class="itemTopValue">72,687.00</text>
<view class="itemTopTitle" style="display: flex;align-items: center">
年度预算
<text class="itemTopUnit">/万元</text>
<view class="notice" @click="handleShowNotice('nowYearBudget')">?
<view class="noticeBox" :style="{ left: '33%', top: '80%' }" v-if="nowYearBudget"
@click.stop="handleShowNotice('nowYearBudget')">
<text>年度预算包含营业外</text>
</view>
</view>
</view>
</view>
<view class="itemRateBox">
<view class="addRate">+48.54%</view>
<view class="rateText" style="display: flex;align-items: center">
同比
<view class="notice" @click="handleShowNotice('nowYearSumRate')">?
<view class="noticeBox" :style="{ right: '0%', top: '80%' }" v-if="nowYearSumRate"
@click.stop="handleShowNotice('nowYearSumRate')">
<text>本年累计收入的同比值</text>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
<view class="itemDetailSubtotal">
<view class="itemSmallBox">
<view class="xian"></view>
<view class="itemSmallTop">
<view class="leftBox">
<view class="smallIcon">
<image class="img" src="https://eshangtech.com/ShopICO/ahyd-BID/revenueBox/selfOperat.svg" />
</view>
<view style="display: flex;align-items: center">
<view class="smallTitle">自营收入小计</view>
<view class="notice" @click="handleShowNotice('userRevenueSmallSum')">?
<view class="noticeBox" :style="{ left: '30%', top: '0%' }" v-if="userRevenueSmallSum"
@click.stop="handleShowNotice('userRevenueSmallSum')">
<text>便利店餐饮及客房的累计数</text>
</view>
</view>
</view>
</view>
<view class="leftRight" @click="handleGoInComeDetail">
<text class="more">查看更多</text>
<image class="moreIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/revenueBox/moreIcon.svg" />
</view>
</view>
<view class="itemSmallDetail">
<view class="itemSmallLeftBox" @click="handleShowNotice('compareYesSuccessRate')">
<OtherCharts :success="firthBox2stRate" :colorList="['#FC7909', '#F9DCC2']" />
<text class="leftValue">71.70%</text>
<view class="notices">
<view class="noticeBox" :style="{ left: '30%', top: '100px' }" v-if="compareYesSuccessRate"
@click.stop="handleShowNotice('compareYesSuccessRate')">
<text>完成率=本年累计自营收入 / 自营收入的年度预算(339,787,552.17/473,920,000.00)</text>
</view>
</view>
</view>
<view class="itemSmallRightBox">
<view class="rightTopItem">
<view class="itemDetail">
<view class="detailValue" style="font-size: 26rpx">33,978.75</view>
<view class="detailTitle">本年累计<text class="detailTitleUnit">/万元</text></view>
</view>
<view class="itemDetail">
<view class="detailValue" style="font-size: 26rpx;display: flex;align-items: center">
5,070.82
<!-- <view class="notice" @click="handleShowNotice('thisMonthSum')">?
<view class="noticeBox" :style="{ right: '0px', top: '85px' }" v-if="thisMonthSum"
@click.stop="handleShowNotice('thisMonthSum')">
<text>7</text>
</view>
</view> -->
</view>
<view class="detailTitle">
7月累计
<text class="detailTitleUnit">/万元</text>
</view>
</view>
</view>
<view class="rightTopItem" style="margin-top: 32rpx">
<view class="itemDetail">
<view class="detailValue">47,392</view>
<view class="detailTitle">年度预算<text class="detailTitleUnit">/万元</text></view>
</view>
<view class="itemRight">
<view class="rightValue">14.92%</view>
<view class="rightLabel" style="display: flex;align-items: center">
本月占比
<view class="notice" @click="handleShowNotice('thisMonthRevenueRate')">?
<view class="noticeBox" :style="{ right: '0px', top: '120px' }" v-if="thisMonthRevenueRate"
@click.stop="handleShowNotice('thisMonthRevenueRate')">
<text>本月占比=7月自营收入 / 本年累计自营收入(50,708,267.25/339,787,552.17)</text>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
<view class="smallSum">
<view class="smallSumItem">
<view class="smallSumLeft">
<view class="smallSumItemBox"></view>
<text class="smallTitle">服务区自营小计</text>
</view>
<view class="smallSumRight" style="display: flex;align-items: center">
<text class="successText" style="margin-left: 4rpx">完成率</text>
<text class="successValue">64.21%</text>
<view class="notice" @click="handleShowNotice('thisMonthSmallSumSuccess1st')">?
<view class="noticeBox" :style="{ right: '0px', top: '190px' }" v-if="thisMonthSmallSumSuccess1st"
@click.stop="handleShowNotice('thisMonthSmallSumSuccess1st')">
<text>完成率=服务区自营收入 / 自营收入的年度预算(304,283,297.04/473,920,000.00)</text>
</view>
</view>
</view>
</view>
<view class="smallSumItem">
<view class="smallSumLeft" style="display: flex;align-items: center">
<view class="smallSumItemBox"></view>
<text class="smallTitle">分公司收入小计</text>
<view class="notice" @click="handleShowNotice('thisMonthSmallSumSuccess2stTitle')">?
<view class="noticeBox" :style="{ right: '0px', top: '210px' }"
v-if="thisMonthSmallSumSuccess2stTitle"
@click.stop="handleShowNotice('thisMonthSmallSumSuccess2stTitle')">
<text>城市店批发团购及通道费的累计数</text>
</view>
</view>
</view>
<view class="smallSumRight" style="display: flex;align-items: center">
<text class="successText" style="margin-left: 4rpx">完成率</text>
<text class="successValue">7.49%</text>
<view class="notice" @click="handleShowNotice('thisMonthSmallSumSuccess2st')">?
<view class="noticeBox" :style="{ right: '0px', top: '210px' }" v-if="thisMonthSmallSumSuccess2st"
@click.stop="handleShowNotice('thisMonthSmallSumSuccess2st')">
<text>完成率=分公司收入 / 自营收入的年度预算(35,504,255.13/473,920,000.00)</text>
</view>
</view>
</view>
</view>
</view>
</view>
<view class="itemSmallBox">
<view class="itemSmallTop">
<view class="leftBox" style="display: flex;align-items: center">
<view class="smallIcon">
<image class="img" src="https://eshangtech.com/ShopICO/ahyd-BID/revenueBox/otherSum.svg" />
</view>
<view class="smallTitle">其他收入小计</view>
<view class="notice" @click="handleShowNotice('otherSmallSum')">?
<view class="noticeBox" :style="{ left: '30%', top: '20px' }" v-if="otherSmallSum"
@click.stop="handleShowNotice('otherSmallSum')">
<text>场地租赁物业及受托代管公共服务补贴营业外收入的累计数</text>
</view>
</view>
</view>
<view class="leftRight" @click="handleGoInComeDetail">
<text class="more">查看更多</text>
<image class="moreIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/revenueBox/moreIcon.svg" />
</view>
</view>
<view class="itemSmallDetail">
<view class="itemSmallLeftBox" @click="handleShowNotice2('otherLeftChar')">
<OtherCharts :success="firthBox3stRate" :colorList="['#FC7909', '#F9DCC2']" />
<text class="leftValue">52.97%</text>
<view class="notices">
<view class="noticeBox" :style="{ left: '30%', top: '100px' }" v-if="otherLeftChar"
@click.stop="handleShowNotice2('otherLeftChar')">
<text>完成率=7月其他收入 / 其他收入的年度预算(133,978,469.54/252,950,000.00)</text>
</view>
</view>
</view>
<view class="itemSmallRightBox">
<view class="rightTopItem">
<view class="itemDetail">
<view class="detailValue">13,397.84</view>
<view class="detailTitle">本年累计<text class="detailTitleUnit">/万元</text></view>
</view>
<view class="itemDetail">
<view class="detailValue" style="display: flex;align-items: center">
2,028.58
</view>
<view class="detailTitle">7月累计<text class="detailTitleUnit">/万元</text></view>
</view>
</view>
<view class="rightTopItem" style="margin-top: 32rpx">
<view class="itemDetail">
<view class="detailValue">25,295.00</view>
<view class="detailTitle">年度预算<text class="detailTitleUnit">/万元</text></view>
</view>
<view class="itemRight">
<view class="rightValue">15.14%</view>
<view class="rightLabel" style="display: flex;align-items: center">
本月占比
<view class="notice" @click="handleShowNotice2('otherThisMonthRate')">?
<view class="noticeBox" :style="{ right: '0px', top: '120px' }" v-if="otherThisMonthRate"
@click.stop="handleShowNotice2('otherThisMonthRate')">
<text>本月占比=7月其他收入 / 本年累计其他收入(20,285,867.69/133,978,469.54)</text>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
<view class="smallSum">
<view class="smallSumItem">
<view class="smallSumLeft">
<view class="smallSumItemBox"></view>
<text class="smallTitle">服务区租赁小计</text>
<view class="notice" @click="handleShowNotice2('otherThisMonthSuccess')">?
<view class="noticeBox" :style="{ right: '0px', top: '210px' }" v-if="otherThisMonthSuccess"
@click.stop="handleShowNotice2('otherThisMonthSuccess')">
<text>商铺充电桩汽修加油站的租赁累计收入(91,051,247.82/252,950,000.00)</text>
</view>
</view>
</view>
<view class="smallSumRight" style="display: flex;align-items: center">
<text class="successText" style="margin-left: 4rpx">完成率</text>
<text class="successValue">35.99%</text>
<view class="notice" @click="handleShowNotice2('otherThisMonthSuccess')">?
<view class="noticeBox" :style="{ right: '0px', top: '210px' }" v-if="otherThisMonthSuccess"
@click.stop="handleShowNotice2('otherThisMonthSuccess')">
<text>完成率=服务区租赁累计收入 / 本年累计其他收入(91,051,247.82/252,950,000.00)</text>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
<view class="expenditure">
<view class="itemBox">
<view class="itemBoxTitle" style="color: #096EF7">支出合计</view>
<image class="monthSumBg" src="https://eshangtech.com/ShopICO/ahyd-BID/revenueBox/expenditure.png" />
<view class="itemDetailBox">
<view class="leftCharts">
<OtherCharts :success="number" :colorList="['#1679FF', '#E7F1FF']" />
<text class="numberValue" style="color: #1679FF">39.67%</text>
</view>
<view class="rightBox">
<view class="rightBoxTop">
<view class="itemTop">
<text class="itemTopValue">35.00</text>
<text class="itemTopTitle">2023年完成<text class="itemTopUnit">/万元</text></text>
</view>
<view class="itemRateBox">
<view class="addRate">32.54%</view>
<view class="rateText">成本比</view>
</view>
</view>
<view class="rightBoxTop">
<view class="itemTop">
<text class="itemTopValue">300.00</text>
<text class="itemTopTitle">2023年预计<text class="itemTopUnit">/万元</text></text>
</view>
<view class="itemRateBox">
<view class="addRate">12.84%</view>
<view class="rateText">计划比</view>
</view>
</view>
</view>
</view>
</view>
<view class="itemDetailSubtotal">
<view class="itemSmallBox">
<view class="itemSmallTop">
<view class="leftBox">
<view class="smallIcon">
<image class="img" src="https://eshangtech.com/ShopICO/ahyd-BID/revenueBox/operateSum.svg" />
</view>
<view class="smallTitle">运营成本小计</view>
</view>
<view class="leftRight" @click="handleGoExpenditure">
<text class="more">查看更多</text>
<image class="moreIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/revenueBox/moreIcon.svg" />
</view>
</view>
<view class="itemSmallDetail">
<view class="itemSmallLeftBox">
<OtherCharts :success="number" :colorList="['#1679FF', '#E7F1FF']" />
<text class="leftValue">39.67%</text>
</view>
<view class="itemSmallRightBox">
<view class="rightTopItem">
<view class="itemDetail">
<view class="detailValue">35.00</view>
<view class="detailTitle">2023年完成<text class="detailTitleUnit">/万元</text></view>
</view>
<view class="itemRight">
<view class="rightValue">32.54%</view>
<view class="rightLabel">成本比</view>
</view>
</view>
<view class="rightTopItem" style="margin-top: 32rpx">
<view class="itemDetail">
<view class="detailValue">35.00</view>
<view class="detailTitle">2023年预计<text class="detailTitleUnit">/万元</text></view>
</view>
<view class="itemRight">
<view class="rightValue">32.54%</view>
<view class="rightLabel">计划比</view>
</view>
</view>
</view>
</view>
<view class="smallSum">
<view class="smallSumItem">
<view class="smallSumLeft">
<view class="smallSumItemBox"></view>
<text class="smallTitle">服务区自营小计</text>
</view>
<view class="smallSumRight">
<text class="successText">完成率</text>
<text class="successValue">12.84%</text>
</view>
</view>
<view class="smallSumItem">
<view class="smallSumLeft">
<view class="smallSumItemBox"></view>
<text class="smallTitle">分公司收入小计</text>
</view>
<view class="smallSumRight">
<text class="successText">完成率</text>
<text class="successValue">15.87%</text>
</view>
</view>
</view>
</view>
<view class="itemSmallBox">
<view class="itemSmallTop">
<view class="leftBox">
<view class="smallIcon">
<image class="img" src="https://eshangtech.com/ShopICO/ahyd-BID/revenueBox/operateManager.svg" />
</view>
<view class="smallTitle">管理费用小计</view>
</view>
<view class="leftRight" @click="handleGoExpenditure">
<text class="more">查看更多</text>
<image class="moreIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/revenueBox/moreIcon.svg" />
</view>
</view>
<view class="itemSmallDetail">
<view class="itemSmallLeftBox">
<OtherCharts :success="number" :colorList="['#1679FF', '#E7F1FF']" />
<text class="leftValue">39.67%</text>
</view>
<view class="itemSmallRightBox">
<view class="rightTopItem">
<view class="itemDetail">
<view class="detailValue">35.00</view>
<view class="detailTitle">2023年完成<text class="detailTitleUnit">/万元</text></view>
</view>
<view class="itemRight">
<view class="rightValue">32.54%</view>
<view class="rightLabel">成本比</view>
</view>
</view>
<view class="rightTopItem" style="margin-top: 32rpx">
<view class="itemDetail">
<view class="detailValue">35.00</view>
<view class="detailTitle">2023年预计<text class="detailTitleUnit">/万元</text></view>
</view>
<view class="itemRight">
<view class="rightValue">32.54%</view>
<view class="rightLabel">计划比</view>
</view>
</view>
</view>
</view>
<view class="smallSum">
<view class="smallSumItem">
<view class="smallSumLeft">
<view class="smallSumItemBox"></view>
<text class="smallTitle">运营成本小计</text>
</view>
<view class="smallSumRight">
<text class="successText">完成率</text>
<text class="successValue">12.84%</text>
</view>
</view>
<view class="smallSumItem">
<view class="smallSumLeft">
<view class="smallSumItemBox"></view>
<text class="smallTitle">分公司收入小计</text>
</view>
<view class="smallSumRight">
<text class="successText">完成率</text>
<text class="successValue">15.87%</text>
</view>
</view>
</view>
</view>
<view class="itemSmallBox">
<view class="itemSmallTop">
<view class="leftBox">
<view class="smallIcon">
<image class="img" src="https://eshangtech.com/ShopICO/ahyd-BID/revenueBox/buySum.svg" />
</view>
<view class="smallTitle">销售费用小计</view>
</view>
<view class="leftRight" @click="handleGoExpenditure">
<text class="more">查看更多</text>
<image class="moreIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/revenueBox/moreIcon.svg" />
</view>
</view>
<view class="itemSmallDetail">
<view class="itemSmallLeftBox">
<OtherCharts :success="number" :colorList="['#1679FF', '#E7F1FF']" />
<text class="leftValue">39.67%</text>
</view>
<view class="itemSmallRightBox">
<view class="rightTopItem">
<view class="itemDetail">
<view class="detailValue">35.00</view>
<view class="detailTitle">2023年完成<text class="detailTitleUnit">/万元</text></view>
</view>
<view class="itemRight">
<view class="rightValue">32.54%</view>
<view class="rightLabel">成本比</view>
</view>
</view>
<view class="rightTopItem" style="margin-top: 32rpx">
<view class="itemDetail">
<view class="detailValue">35.00</view>
<view class="detailTitle">2023年预计<text class="detailTitleUnit">/万元</text></view>
</view>
<view class="itemRight">
<view class="rightValue">32.54%</view>
<view class="rightLabel">计划比</view>
</view>
</view>
</view>
</view>
<view class="smallSum">
<view class="smallSumItem">
<view class="smallSumLeft">
<view class="smallSumItemBox"></view>
<text class="smallTitle">运营成本小计</text>
</view>
<view class="smallSumRight">
<text class="successText">完成率</text>
<text class="successValue">12.84%</text>
</view>
</view>
<view class="smallSumItem">
<view class="smallSumLeft">
<view class="smallSumItemBox"></view>
<text class="smallTitle">分公司收入小计</text>
</view>
<view class="smallSumRight">
<text class="successText">完成率</text>
<text class="successValue">15.87%</text>
</view>
</view>
</view>
</view>
<view class="itemSmallBox">
<view class="itemSmallTop">
<view class="leftBox">
<view class="smallIcon">
<image class="img" src="https://eshangtech.com/ShopICO/ahyd-BID/revenueBox/otherBuy.svg" />
</view>
<view class="smallTitle">其他费用小计</view>
</view>
<view class="leftRight" @click="handleGoExpenditure">
<text class="more">查看更多</text>
<image class="moreIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/revenueBox/moreIcon.svg" />
</view>
</view>
<view class="itemSmallDetail">
<view class="itemSmallLeftBox">
<OtherCharts :success="number" :colorList="['#1679FF', '#E7F1FF']" />
<text class="leftValue">39.67%</text>
</view>
<view class="itemSmallRightBox">
<view class="rightTopItem">
<view class="itemDetail">
<view class="detailValue">35.00</view>
<view class="detailTitle">2023年完成<text class="detailTitleUnit">/万元</text></view>
</view>
<view class="itemRight">
<view class="rightValue">32.54%</view>
<view class="rightLabel">成本比</view>
</view>
</view>
<view class="rightTopItem" style="margin-top: 32rpx">
<view class="itemDetail">
<view class="detailValue">35.00</view>
<view class="detailTitle">2023年预计<text class="detailTitleUnit">/万元</text></view>
</view>
<view class="itemRight">
<view class="rightValue">32.54%</view>
<view class="rightLabel">计划比</view>
</view>
</view>
</view>
</view>
<view class="smallSum">
<view class="smallSumItem">
<view class="smallSumLeft">
<view class="smallSumItemBox"></view>
<text class="smallTitle">运营成本小计</text>
</view>
<view class="smallSumRight">
<text class="successText">完成率</text>
<text class="successValue">12.84%</text>
</view>
</view>
<view class="smallSumItem">
<view class="smallSumLeft">
<view class="smallSumItemBox"></view>
<text class="smallTitle">分公司收入小计</text>
</view>
<view class="smallSumRight">
<text class="successText">完成率</text>
<text class="successValue">15.87%</text>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
</template>
<script>
import YearCharts from "./component/yearCharts.vue";
import OtherCharts from './component/otherCharts.vue'
export default {
components: { YearCharts, OtherCharts },
data() {
return {
windowHeight: null,
statusBarHeight: null,
menu: {},
number: 0,
firstBox1st: 0, // 第一个框的第一个图表
firstBox2st: 0, // 第二个框的第二个图表
secondBoxProgress: 141.45,// 年度累计利润 的完成率
thirdBoxRate: 0,// 年度营收累计的图表百分比
firthBox1stRate: 0,// 收入合计的第一个图表百分比
firthBox2stRate: 0,// 收入合计的第二个图表百分比
firthBox3stRate: 0,// 收入合计的第三个图表百分比
showCost: false,// 成本比
showPay: false,// 支出比
showMonthRevenue: false,// 点击本月收入显示
showMonthExpenditure: false,// 本月支出
successRate: false,// 累计利润的完成率
thisYearSum: false,// 本年累计利润总额
budget: false,// 年度预算
showNetProfit: false,// 净利润
showYearNetProfit: false,//净利润完成度
revenueAll: false,//营业累计收入
revenueSuccess: false,//完成率
revenueCostRate: false,// 成本比
budgetSum: false,// 本年累计同比值
incomeSuccess: false,//收入完成率
nowYearSum: false,// 本年累计
nowYearRevenueCost: false,// 本年累计收入的成本比
nowYearBudget: false,//年度预算
nowYearSumRate: false,// 年度预算的同比
userRevenueSmallSum: false,// 自营收入小计
compareYesSuccessRate: false,// 自营计划的第一个图表
thisMonthSum: false,//本月累计
thisMonthRevenueRate: false,//本月占比
thisMonthSmallSumSuccess1st: false,// 本月小计的完成率
thisMonthSmallSumSuccess2st: false,// 本月小计的完成率
thisMonthSmallSumSuccess2stTitle: false,//第二个本月小计的完成率的标题
otherSmallSum: false,// 其它收入小计
otherLeftChar: false,// 其它收入的左侧
otherMonthSum: false,// 其它收入的本月累计
otherThisMonthRate: false,//其它收入的本月占比
otherThisMonthSuccess: false,//其它收入的完成率
}
},
onLoad() {
// 获取手机参数对页面进行适配
let systemInfo = uni.getSystemInfoSync()
this.windowHeight = systemInfo.windowHeight
this.statusBarHeight = Number(systemInfo.statusBarHeight)
this.menu = uni.getMenuButtonBoundingClientRect()
console.log('this.menu', this.menu)
let _this = this
setTimeout(() => {
_this.number = 40
_this.firstBox1st = 39.39
_this.firstBox2st = 167.27
_this.thirdBoxRate = 65.12
_this.firthBox1stRate = 65.18
_this.firthBox2stRate = 71.70
_this.firthBox3stRate = 52.97
}, 100)
},
methods: {
// 点击出现备注
handleShowNotice(type) {
console.log('type', type)
switch (type) {
case 'showCost':
this.showCost = !this.showCost
break
case 'showPay':
this.showPay = !this.showPay
break
case 'showMonthRevenue':
this.showMonthRevenue = !this.showMonthRevenue
break
case 'showMonthExpenditure':
this.showMonthExpenditure = !this.showMonthExpenditure
break
case 'successRate':
this.successRate = !this.successRate
break
case 'thisYearSum':
this.thisYearSum = !this.thisYearSum
break
case 'budget':
this.budget = !this.budget
break
case 'showNetProfit':
this.showNetProfit = !this.showNetProfit
break
case 'showYearNetProfit':
this.showYearNetProfit = !this.showYearNetProfit
break
case 'revenueAll':
this.revenueAll = !this.revenueAll
break
case 'revenueSuccess':
this.revenueSuccess = !this.revenueSuccess
break
case 'revenueCostRate':
this.revenueCostRate = !this.revenueCostRate
break
case 'budgetSum':
this.budgetSum = !this.budgetSum
break
case 'incomeSuccess':
this.incomeSuccess = !this.incomeSuccess
break
case 'nowYearSum':
this.nowYearSum = !this.nowYearSum
break
case 'nowYearRevenueCost':
this.nowYearRevenueCost = !this.nowYearRevenueCost
break
case 'nowYearBudget':
this.nowYearBudget = !this.nowYearBudget
break
case 'nowYearSumRate':
this.nowYearSumRate = !this.nowYearSumRate
break
case 'userRevenueSmallSum':
this.userRevenueSmallSum = !this.userRevenueSmallSum
break
case 'compareYesSuccessRate':
this.compareYesSuccessRate = !this.compareYesSuccessRate
break
case 'thisMonthSum':
this.thisMonthSum = !this.thisMonthSum
break
case 'thisMonthRevenueRate':
this.thisMonthRevenueRate = !this.thisMonthRevenueRate
break
case 'thisMonthSmallSumSuccess1st':
this.thisMonthSmallSumSuccess1st = !this.thisMonthSmallSumSuccess1st
break
case 'thisMonthSmallSumSuccess2st':
this.thisMonthSmallSumSuccess2st = !this.thisMonthSmallSumSuccess2st
break
case 'thisMonthSmallSumSuccess2stTitle':
this.thisMonthSmallSumSuccess2stTitle = !this.thisMonthSmallSumSuccess2stTitle
break
case 'otherSmallSum':
this.otherSmallSum = !this.otherSmallSum
break
case 'false':
this.showCost = false
this.showPay = false
this.showMonthRevenue = false
this.showMonthExpenditure = false
this.successRate = false
this.thisYearSum = false
this.budget = false
this.showNetProfit = false
this.showYearNetProfit = false
this.revenueAll = false
this.revenueSuccess = false
this.revenueCostRate = false
this.budgetSum = false
this.incomeSuccess = false
this.nowYearSum = false
this.nowYearRevenueCost = false
this.nowYearBudget = false
this.nowYearSumRate = false
this.userRevenueSmallSum = false
this.compareYesSuccessRate = false
this.thisMonthSum = false
this.thisMonthRevenueRate = false
this.thisMonthSmallSumSuccess1st = false
this.thisMonthSmallSumSuccess2st = false
this.thisMonthSmallSumSuccess2stTitle = false
this.otherSmallSum = false
}
},
handleShowNotice2(type) {
switch (type) {
case 'otherLeftChar':
this.otherLeftChar = !this.otherLeftChar
break
case 'otherMonthSum':
this.otherMonthSum = !this.otherMonthSum
break
case 'otherThisMonthRate':
this.otherThisMonthRate = !this.otherThisMonthRate
break
case 'otherThisMonthSuccess':
this.otherThisMonthSuccess = !this.otherThisMonthSuccess
break
case 'false':
this.otherLeftChar = false
this.otherMonthSum = false
this.otherThisMonthRate = false
this.otherThisMonthSuccess = false
}
},
// 返回按钮的方法
handleBack() {
uni.switchTab({
url: '/pages/index/index'
})
// if (this.come==='index'){
//
// }else{
// uni.switchTab({
// url: '/pages/userCenter/userCenter'
// })
// }
},
// 进入收入详情
handleGoInComeDetail() {
console.log('1111')
uni.navigateTo({
url: '/pages/revenue/incomeDetail'
});
},
// 进入支出详情
handleGoExpenditure() {
uni.navigateTo({
url: '/pages/revenue/expenditureDetail'
});
}
}
}
</script>
<style scoped lang="scss">
//@import '/static/public/font/stylesheet.css';
.main {
width: 100%;
min-height: 100vh;
.meng {
width: 100vw;
height: 100vh;
position: fixed;
top: 0;
left: 0;
z-index: 20;
}
.header {
width: 100%;
height: 664rpx;
//background-image: url("https://eshangtech.com/ShopICO/ahyd-BID/revenueBox/revenyeBg.png");
//background-repeat: no-repeat;
//background-size: 100% 664rpx;
background: linear-gradient(180deg, #008EC2 0%, #26A0CA 36%, #CCE3EB 85%, #F5F5F5 100%);
position: relative;
.headerBg {
width: 100%;
position: absolute;
top: 0;
left: 0;
height: 564rpx;
}
.headerTop {
width: 100%;
position: absolute;
display: flex;
align-items: center;
.backIcon {
width: 48rpx;
height: 48rpx;
margin-left: 32rpx;
}
}
.pageTitle {
position: absolute;
left: 32rpx;
font-size: 56rpx;
font-family: Alimama ShuHeiTi;
font-weight: bold;
color: #FFFFFF;
line-height: 68rpx;
}
.headerDetail {
position: absolute;
width: calc(100% - 64rpx);
left: 32rpx;
background: #FFFFFF;
border-radius: 16rpx;
box-sizing: border-box;
padding: 4rpx;
.detailBox {
width: 100%;
box-sizing: border-box;
padding: 22rpx 24rpx;
background: linear-gradient(180deg, #E9F5FA 0%, #FBFDFE 100%);
border-radius: 16rpx;
position: relative;
.monthSumBg {
position: absolute;
width: 320rpx;
height: 320rpx;
right: 0;
top: 0;
z-index: 1;
}
.detailPage {
display: flex;
align-items: center;
.detailPageTitle {
font-size: 36rpx;
font-family: Alimama ShuHeiTi;
font-weight: bold;
color: #018ABD;
line-height: 44rpx;
}
}
.moneyBox {
width: 100%;
height: 300rpx;
background: #fff;
margin-top: 22rpx;
border-radius: 12rpx;
box-sizing: border-box;
padding: 32rpx;
display: flex;
justify-content: space-between;
position: relative;
z-index: 2;
.moneyItem {
//width: 50%;
height: 100%;
display: inline-block;
.itemTop {
width: 100%;
height: 68rpx;
display: flex;
box-sizing: border-box;
.itemChart {
margin-top: 8rpx;
width: 68rpx;
height: 68rpx;
}
.itemMessage {
display: flex;
flex-direction: column;
margin-left: 16rpx;
.itemRate {
font-size: 40rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #018ABD;
line-height: 48rpx;
}
.itemLabel {
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #786B6C;
line-height: 36rpx;
display: flex;
align-items: center;
.notice {
margin-left: 8rpx;
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;
.noticeBox {
width: 60%;
position: absolute;
top: 10px;
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;
}
}
}
}
}
.successBox {
margin-top: 32rpx;
display: flex;
flex-direction: column;
.successBoxItem {
display: flex;
flex-direction: column;
.successNumber {
font-size: 32rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #160002;
line-height: 36rpx;
margin-bottom: 4rpx;
}
.successTime {
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #786B6C;
line-height: 36rpx;
display: flex;
.successUnit {
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 36rpx;
margin-left: 4rpx;
}
.notice {
margin-left: 8rpx;
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;
.noticeBox {
position: absolute;
right: 0;
top: 70px;
display: inline-block;
padding: 5px 10px;
background: #fff;
border-radius: 10rpx;
box-shadow: 0px 0rpx 4rpx 3rpx #e2e2e2;
z-index: 9;
}
}
}
}
}
}
}
}
}
}
.content {
width: 100%;
box-sizing: border-box;
padding: 74rpx 36rpx 0;
background: #F5F5F5;
.profitYear {
width: 100%;
height: 468rpx;
background: #fff;
box-sizing: border-box;
padding: 4rpx;
border-radius: 16rpx;
.itemBox {
width: 100%;
height: 100%;
background: linear-gradient(180deg, #EDEEFF 0%, #F8F9FF 100%);
;
border-radius: 16rpx;
box-sizing: border-box;
padding: 22rpx 24rpx;
position: relative;
.itemBoxTitle {
font-size: 36rpx;
font-family: Alimama ShuHeiTi;
font-weight: bold;
color: #474EF4;
line-height: 44rpx;
}
.monthSumBg {
position: absolute;
width: 320rpx;
height: 320rpx;
right: 0;
top: 0;
z-index: 1;
}
.itemDetailBox {
position: relative;
z-index: 2;
width: 100%;
height: 356rpx;
background: #FFFFFF;
border-radius: 12rpx;
margin-top: 22rpx;
box-sizing: border-box;
padding: 32rpx;
.detailBoxTop {
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
.successLabel {
display: flex;
align-items: center;
.successLabelText {
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #786B6C;
line-height: 40rpx;
}
.notice {
margin-left: 8rpx;
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;
.noticeBox {
max-width: 60%;
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;
}
}
}
.successValue {
font-size: 40rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #575EF9;
line-height: 48rpx;
}
}
.progress {
width: 100%;
height: 24rpx;
background: rgba(221, 223, 254, 0.2);
border-radius: 12rpx;
position: relative;
margin-top: 12rpx;
overflow: hidden;
.have {
position: absolute;
top: 0;
left: 0;
height: 100%;
background: #575EF9;
border-radius: 12rpx;
}
}
.yearDetail {
width: 100%;
display: flex;
justify-content: space-between;
margin-top: 32rpx;
.yearItem {
display: inline-block;
width: calc((100% - 80px) / 2);
.itemValue {
font-size: 32rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #160002;
line-height: 36rpx;
display: flex;
align-items: center;
.notice {
margin-left: 8rpx;
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;
.noticeBox {
max-width: 60%;
position: absolute;
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;
}
}
}
.itemLabel {
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #786B6C;
line-height: 36rpx;
margin-top: 4rpx;
.notice {
margin-left: 8rpx;
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;
.noticeBox {
max-width: 60%;
position: absolute;
right: 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;
}
}
.itemUnit {
margin-left: 4rpx;
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 36rpx;
}
}
}
}
}
}
}
.accrueYear {
width: 100%;
height: 368rpx;
background: #fff;
box-sizing: border-box;
padding: 4rpx;
border-radius: 16rpx;
margin-top: 24rpx;
.itemBox {
width: 100%;
height: 100%;
background: linear-gradient(180deg, #F6ECFD 0%, #FDFCFF 100%);
border-radius: 16rpx;
box-sizing: border-box;
padding: 22rpx 24rpx;
position: relative;
.itemBoxTitle {
font-size: 36rpx;
font-family: Alimama ShuHeiTi;
font-weight: bold;
color: #9635E0;
line-height: 44rpx;
}
.notice {
margin-left: 8rpx;
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;
.noticeBox {
max-width: 60%;
position: absolute;
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;
}
}
.monthSumBg {
position: absolute;
width: 320rpx;
height: 320rpx;
right: 0;
top: 0;
z-index: 1;
}
.itemDetailBox {
position: relative;
z-index: 2;
width: 100%;
height: 256rpx;
background: #FFFFFF;
border-radius: 12rpx;
margin-top: 22rpx;
box-sizing: border-box;
display: flex;
.notices {
margin-left: 8rpx;
width: 12px;
height: 12px;
display: flex;
align-items: center;
justify-content: center;
color: #A69E9F;
font-size: 12px;
font-weight: 600;
.noticeBox {
max-width: 60%;
position: absolute;
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;
}
}
.leftCharts {
width: 224rpx;
height: 100%;
box-sizing: border-box;
padding: 32rpx 48rpx 0;
.numberValue {
font-size: 40rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #9E3CE9;
line-height: 48rpx;
margin-top: 8rpx;
}
}
.rightBox {
width: calc(100% - 224rpx);
.rightBoxTop {
width: 100%;
box-sizing: border-box;
padding: 32rpx 16rpx;
display: flex;
justify-content: space-between;
align-items: center;
.itemTop {
width: calc(100% - 70px);
display: flex;
flex-direction: column;
.itemTopValue {
font-size: 32rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #160002;
line-height: 36rpx;
}
.itemTopTitle {
margin-top: 4rpx;
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #786B6C;
line-height: 36rpx;
.itemTopUnit {
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 36rpx;
margin-left: 4rpx;
}
}
}
.itemRateBox {
display: inline-block;
width: 70px;
.addRate {
font-size: 32rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #E83944;
line-height: 36rpx;
}
.rateText {
margin-top: 4rpx;
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #786B6C;
line-height: 36rpx;
.notice {
margin-left: 8rpx;
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;
.noticeBox {
max-width: 60%;
position: absolute;
right: 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;
}
}
}
}
}
}
}
}
}
.incomeAll {
width: 100%;
box-sizing: border-box;
padding: 4rpx;
border-radius: 16rpx;
margin-top: 24rpx;
background: #FBFBFB;
.itemBox {
width: 100%;
height: 400rpx;
background: linear-gradient(180deg, #F9F0E2 0%, #FAF9F7 100%);
border-radius: 16rpx;
box-sizing: border-box;
padding: 22rpx 24rpx;
position: relative;
.itemBoxTitle {
font-size: 36rpx;
font-family: Alimama ShuHeiTi;
font-weight: bold;
color: #9635E0;
line-height: 44rpx;
}
.monthSumBg {
position: absolute;
width: 320rpx;
height: 320rpx;
right: 0;
top: 0;
z-index: 1;
}
.itemDetailBox {
position: relative;
z-index: 2;
width: 100%;
height: 256rpx;
background: #FFFFFF;
border-radius: 12rpx;
margin-top: 22rpx;
box-sizing: border-box;
display: flex;
padding: 32rpx;
.leftCharts {
width: 128rpx;
height: 100%;
box-sizing: border-box;
margin-right: 48rpx;
.numberValue {
font-size: 40rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #9E3CE9;
line-height: 48rpx;
display: inline-block;
margin-top: 12rpx;
}
.notices {
margin-left: 8rpx;
width: 12px;
height: 12px;
display: flex;
align-items: center;
justify-content: center;
color: #A69E9F;
font-size: 12px;
font-weight: 600;
.noticeBox {
max-width: 60%;
position: absolute;
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;
}
}
}
.rightBox {
width: calc(100% - 186rpx);
.rightBoxTop {
width: 100%;
box-sizing: border-box;
display: flex;
justify-content: space-between;
align-items: center;
.itemTop {
display: flex;
flex-direction: column;
.itemTopValue {
font-size: 32rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #160002;
line-height: 36rpx;
}
.itemTopTitle {
margin-top: 4rpx;
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #786B6C;
line-height: 36rpx;
.itemTopUnit {
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 36rpx;
margin-left: 4rpx;
}
.notice {
margin-left: 8rpx;
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;
.noticeBox {
max-width: 60%;
position: absolute;
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;
}
}
}
}
.itemRateBox {
display: inline-block;
width: 120rpx;
.addRate {
font-size: 32rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #E83944;
line-height: 36rpx;
}
.rateText {
margin-top: 4rpx;
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #786B6C;
line-height: 36rpx;
white-space: nowrap;
.notice {
margin-left: 8rpx;
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;
.noticeBox {
max-width: 60%;
position: absolute;
right: 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;
}
}
}
}
}
}
}
}
.itemDetailSubtotal {
width: 100%;
background: #FBFBFB;
.itemSmallBox {
margin-top: 24rpx;
padding-bottom: 24rpx;
position: relative;
.xian {
width: 4rpx;
height: 432rpx;
background: #F4F2F1;
border-radius: 1rpx;
position: absolute;
left: 60rpx;
top: 92rpx;
}
.itemSmallTop {
width: 100%;
box-sizing: border-box;
padding: 0 28rpx;
display: flex;
align-items: center;
justify-content: space-between;
.leftBox {
display: flex;
align-items: center;
.smallIcon {
width: 72rpx;
height: 72rpx;
margin-right: 16rpx;
.img {
width: 100%;
height: 100%;
}
}
.smallTitle {
font-size: 32rpx;
font-family: PingFangSC-Semibold, PingFang SC;
font-weight: 600;
color: #160002;
line-height: 44rpx;
}
.notice {
margin-left: 8rpx;
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;
.noticeBox {
max-width: 60%;
position: absolute;
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;
}
}
}
.leftRight {
display: flex;
align-items: center;
.more {
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 36rpx;
margin-right: 10rpx;
}
.moreIcon {
width: 24rpx;
height: 24rpx;
}
}
}
}
.itemSmallDetail {
width: calc(100% - 116rpx - 28rpx);
height: 248rpx;
margin-top: 30rpx;
background: #F9F5F1;
border-radius: 8rpx;
margin-left: 116rpx;
box-sizing: border-box;
padding: 32rpx 16rpx 32rpx 30rpx;
display: flex;
justify-content: space-between;
.itemSmallLeftBox {
width: 128rpx;
height: 100%;
border-radius: 8rpx;
.leftValue {
display: inline-block;
margin-top: 8rpx;
font-size: 40rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #FE7500;
line-height: 48rpx;
}
.notices {
margin-left: 8rpx;
width: 12px;
height: 12px;
display: flex;
align-items: center;
justify-content: center;
color: #A69E9F;
font-size: 12px;
font-weight: 600;
.noticeBox {
max-width: 60%;
position: absolute;
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;
}
}
}
.itemSmallRightBox {
width: calc(100% - 168rpx);
.rightTopItem {
width: 100%;
display: flex;
justify-content: space-between;
.itemDetail {
display: inline-block;
width: 50%;
.detailValue {
font-size: 26rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #160002;
line-height: 36rpx;
.notice {
margin-left: 8rpx;
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;
.noticeBox {
max-width: 60%;
position: absolute;
right: 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;
}
}
}
.detailTitle {
font-size: 22rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #786B6C;
line-height: 36rpx;
margin-top: 4rpx;
white-space: nowrap;
.detailTitleUnit {
color: #A69E9F;
}
.notice {
margin-left: 8rpx;
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;
.noticeBox {
max-width: 60%;
position: absolute;
right: 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;
}
}
}
}
.itemRight {
display: inline-block;
width: 50%;
.rightValue {
font-size: 26rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #E83944;
line-height: 36rpx;
}
.rightLabel {
font-size: 22rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #786B6C;
line-height: 36rpx;
margin-top: 4rpx;
.notice {
margin-left: 8rpx;
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;
.noticeBox {
max-width: 60%;
position: absolute;
right: 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;
}
}
}
}
}
}
}
.smallSum {
width: calc(100% - 116rpx - 28rpx);
margin-left: 116rpx;
.smallSumItem {
margin-top: 24rpx;
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
.smallSumLeft {
display: flex;
align-items: center;
.smallSumItemBox {
width: 12rpx;
height: 12rpx;
background: #EF7A16;
border-radius: 50%;
margin-right: 16rpx;
}
.smallTitle {
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #160002;
line-height: 40rpx;
}
.notice {
margin-left: 8rpx;
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;
.noticeBox {
max-width: 60%;
position: absolute;
right: 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;
}
}
}
.smallSumRight {
display: inline-block;
width: 250rpx;
.notice {
margin-left: 8rpx;
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;
.noticeBox {
max-width: 60%;
position: absolute;
right: 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;
}
}
.successText {
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 40rpx;
}
.successValue {
font-size: 28rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #E83944;
line-height: 40rpx;
margin-left: 8rpx;
}
}
}
}
}
}
.expenditure {
width: 100%;
box-sizing: border-box;
padding: 4rpx;
border-radius: 16rpx;
margin-top: 24rpx;
background: #FBFBFB;
.itemBox {
width: 100%;
height: 400rpx;
background: linear-gradient(180deg, #F1F8FF 0%, #F6FAFF 100%);
border-radius: 16rpx;
box-sizing: border-box;
padding: 22rpx 24rpx;
position: relative;
.monthSumBg {
position: absolute;
width: 320rpx;
height: 320rpx;
right: 0;
top: 0;
z-index: 1;
}
.itemBoxTitle {
font-size: 36rpx;
font-family: Alimama ShuHeiTi;
font-weight: bold;
color: #9635E0;
line-height: 44rpx;
}
.itemDetailBox {
position: relative;
z-index: 2;
width: 100%;
height: 256rpx;
background: #FFFFFF;
border-radius: 12rpx;
margin-top: 22rpx;
box-sizing: border-box;
display: flex;
.leftCharts {
width: 224rpx;
height: 100%;
box-sizing: border-box;
padding: 32rpx 48rpx 0;
.numberValue {
font-size: 40rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #9E3CE9;
line-height: 48rpx;
margin-top: 8rpx;
}
}
.rightBox {
width: calc(100% - 224rpx);
.rightBoxTop {
width: 100%;
box-sizing: border-box;
padding: 32rpx;
display: flex;
justify-content: space-between;
align-items: center;
.itemTop {
display: flex;
flex-direction: column;
.itemTopValue {
font-size: 32rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #160002;
line-height: 36rpx;
}
.itemTopTitle {
margin-top: 4rpx;
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #786B6C;
line-height: 36rpx;
.itemTopUnit {
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 36rpx;
margin-left: 4rpx;
}
}
}
.itemRateBox {
display: inline-block;
.addRate {
font-size: 32rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #E83944;
line-height: 36rpx;
}
.rateText {
margin-top: 4rpx;
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #786B6C;
line-height: 36rpx;
}
}
}
}
}
}
.itemDetailSubtotal {
width: 100%;
background: #FBFBFB;
.itemSmallBox {
margin-top: 48rpx;
.itemSmallTop {
width: 100%;
box-sizing: border-box;
padding: 0 28rpx;
display: flex;
align-items: center;
justify-content: space-between;
.leftBox {
display: flex;
align-items: center;
.smallIcon {
width: 72rpx;
height: 72rpx;
margin-right: 16rpx;
.img {
width: 100%;
height: 100%;
}
}
.smallTitle {
font-size: 32rpx;
font-family: PingFangSC-Semibold, PingFang SC;
font-weight: 600;
color: #160002;
line-height: 44rpx;
}
}
.leftRight {
display: flex;
align-items: center;
.more {
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 36rpx;
margin-right: 10rpx;
}
.moreIcon {
width: 24rpx;
height: 24rpx;
}
}
}
}
.itemSmallDetail {
width: calc(100% - 116rpx - 28rpx);
height: 248rpx;
margin-top: 30rpx;
background: #F8FAFD;
border-radius: 8rpx;
margin-left: 116rpx;
box-sizing: border-box;
padding: 32rpx 30rpx;
display: flex;
justify-content: space-between;
.itemSmallLeftBox {
width: 128rpx;
height: 100%;
border-radius: 8rpx;
.leftValue {
margin-top: 4rpx;
font-size: 40rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #1679FF;
line-height: 48rpx;
}
}
.itemSmallRightBox {
width: calc(100% - 168rpx);
.rightTopItem {
width: 100%;
display: flex;
justify-content: space-between;
.itemDetail {
.detailValue {
font-size: 32rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #160002;
line-height: 36rpx;
}
.detailTitle {
font-size: 22rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #786B6C;
line-height: 36rpx;
margin-top: 4rpx;
}
}
.itemRight {
.rightValue {
font-size: 32rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #E83944;
line-height: 36rpx;
}
.rightLabel {
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #786B6C;
line-height: 36rpx;
margin-top: 4rpx;
}
}
}
}
}
.smallSum {
width: calc(100% - 116rpx - 28rpx);
margin-left: 116rpx;
.smallSumItem {
margin-top: 24rpx;
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
.smallSumLeft {
display: flex;
align-items: center;
.smallSumItemBox {
width: 12rpx;
height: 12rpx;
background: #1679FF;
border-radius: 50%;
margin-right: 16rpx;
}
.smallTitle {
font-size: 28rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #160002;
line-height: 40rpx;
}
}
.smallSumRight {
.successText {
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #A69E9F;
line-height: 40rpx;
}
.successValue {
font-size: 28rpx;
font-family: DINAlternate-Bold, DINAlternate;
font-weight: bold;
color: #E83944;
line-height: 40rpx;
margin-left: 8rpx;
}
}
}
}
}
}
}
}
</style>