This commit is contained in:
cclu 2023-11-30 18:24:19 +08:00
parent 0f50b3f824
commit 50ea9fc5c7
3 changed files with 166 additions and 84 deletions

View File

@ -182,7 +182,7 @@
<script>
import OtherCharts from "./component/otherCharts.vue";
import outData from './expenditureData'
import request from '@/util/index.js'
export default {
components:{OtherCharts},
data(){
@ -213,25 +213,19 @@ export default {
},
onLoad(query){
this.selectTab = Number(query.type)
if (query.month){
this.month = Number(query.month)
outData.forEach(item=>{
if (item.month === Number(query.month)){
this.pageData = item
this.pageList = this.selectTab===1?item.costList:this.selectTab===2?item.managerList:this.selectTab===3?item.sellingList:this.selectTab===4?item.financialList:''
console.log('pageData',this.pageData)
console.log('pageList',this.pageList)
}
})
}
const date = new Date()
let y = date.getFullYear()
let m = date.getMonth()+1
this.thisYear = y
this.startDate = `${y}-07`
this.endData = `${y}-10`
this.single = `${y}-${this.month}`
this.single = `${y}-${ Number(query.month)}`
if (query.month){
this.month = Number(query.month)
this.handleGetPageData()
}
//
let systemInfo = uni.getSystemInfoSync()
@ -268,12 +262,13 @@ export default {
const date = new Date(this.single)
const y = date.getMonth() + 1
this.month = y
outData.forEach(item=>{
if (item.month === y){
this.pageData = item
this.pageList = this.selectTab===1?item.costList:this.selectTab===2?item.managerList:this.selectTab===3?item.sellingList:this.selectTab===4?item.financialList:''
}
})
this.handleGetPageData()
// outData.forEach(item=>{
// if (item.month === y){
// this.pageData = item
// this.pageList = this.selectTab===1?item.costList:this.selectTab===2?item.managerList:this.selectTab===3?item.sellingList:this.selectTab===4?item.financialList:''
// }
// })
},
handleShowNotice(index,subIndex,thirdIndex,fourthIndex){
this.firstIndex = index
@ -295,6 +290,20 @@ export default {
this.secondIndex = null
this.thirdIndexs = null
this.fourthIndexs = null
},
//
async handleGetPageData(){
uni.showLoading({
title:'正在加载'
})
const req = {
Month:this.month
}
const data = await request.$webGetTest('EShangApiMain/Budget/GetbudgetProjectReportOut',req)
console.log('data',data)
this.pageData = data.Result_Data
this.pageList = this.selectTab===1?data.Result_Data.costList:this.selectTab===2?data.Result_Data.managerList:this.selectTab===3?data.Result_Data.sellingList:this.selectTab===4?data.Result_Data.financialList:''
uni.hideLoading()
}
}
}

View File

@ -104,6 +104,7 @@
<script>
import OtherCharts from './component/otherCharts.vue'
import inComeData from './data'
import request from '@/util/index.js'
export default {
components:{OtherCharts},
data(){
@ -132,24 +133,27 @@ export default {
}
},
onLoad(query){
console.log('query',query)
this.selectTab = Number(query.type)
if (query.month){
this.month = Number(query.month)
inComeData.forEach(item=>{
if (item.month === Number(query.month)){
this.pageData = item
this.pageList = this.selectTab===1?item.supportList:item.otherList
}
})
}
const date = new Date()
let y = date.getFullYear()
let m = date.getMonth()+1
this.thisYear = y
this.startDate = `${y}-07`
this.endData = `${y}-10`
this.single = `${y}-${this.month}`
this.single = `${y}-${Number(query.month)}`
if (query.month){
this.month = Number(query.month)
this.handleGetPageData()
// inComeData.forEach(item=>{
// if (item.month === Number(query.month)){
// this.pageData = item
// this.pageList = this.selectTab===1?item.supportList:item.otherList
// }
// })
}
//
let systemInfo = uni.getSystemInfoSync()
this.windowHeight = systemInfo.windowHeight
@ -181,12 +185,7 @@ export default {
const date = new Date(this.single)
const y = date.getMonth() + 1
this.month = y
inComeData.forEach(item=>{
if (item.month === y){
this.pageData = item
this.pageList = this.selectTab===1?item.supportList:item.otherList
}
})
this.handleGetPageData()
},
//
handleShowNotice(index){
@ -202,6 +201,20 @@ export default {
handleAllNotice(){
this.showMeng = false
this.firstIndex = null
},
//
async handleGetPageData(){
uni.showLoading({
title:'正在加载'
})
const req = {
Month:this.month
}
const data = await request.$webGetTest('EShangApiMain/Budget/GetbudgetProjectReportIn',req)
console.log('data',data)
this.pageData = data.Result_Data
this.pageList = this.selectTab===1?data.Result_Data.supportList:data.Result_Data.otherList
uni.hideLoading()
}
}
}

View File

@ -3,7 +3,7 @@
<!-- 当蒙层框里面的if判断中的任意一个参数变为true 就表示有悬浮框产生 然后生成一层最上面的蒙层 让它可以点击任意位置关闭悬浮框 -->
<view class="meng" v-if="showCost || showPay|| showMonthRevenue|| showMonthExpenditure|| successRate|| thisYearSum|| nowYearSumRate|| showNetProfit|| budget|| showYearNetProfit|| revenueAll|| revenueSuccess|| revenueCostRate|| nowYearSum|| 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 || serviceSmallSum" @click="handleShowNotice2('false')"></view>
<view class="meng" v-if="showOutNoitive || showInComeNotice || otherLeftChar || otherMonthSum ||otherThisMonthRate ||otherThisMonthSuccess || serviceSmallSum" @click="handleShowNotice2('false')"></view>
<!-- :style="{height: ((668/750) * pageWidth + 36)+'px'}"-->
<view class="header" >
<!-- <image class="headerBg" src="https://eshangtech.com/ShopICO/ahyd-BID/revenueBox/revenyeBg.png"/>-->
@ -345,7 +345,11 @@
</view>
</view>
</view>
<view class="inComeRateBox">
<view class="inComeRateBox" @click="handleShowInComeNotice">
<view v-if="showInComeNotice" class="noticeRate" >
<view class="noticeView">自营收入:<span>{{currentResult.inComeList[0].thisYear}}</span>万元<span>{{`${((currentResult.inComeList[0].thisYearRealNumber / (currentResult.inComeList[0].thisYearRealNumber + currentResult.inComeList[1].thisYearRealNumber))*100).toFixed(2)}%`}}</span></view>
<view class="noticeView">其他收入:<span>{{currentResult.inComeList[1].thisYear}}</span>万元<span>{{`${((currentResult.inComeList[1].thisYearRealNumber / (currentResult.inComeList[0].thisYearRealNumber + currentResult.inComeList[1].thisYearRealNumber))*100).toFixed(2)}%`}}</span></view>
</view>
<view class="inComeRate">
<view class="owner" :style="{background:'#FC7909',left: 0,width:`${(currentResult.inComeList[0].thisYearRealNumber / (currentResult.inComeList[0].thisYearRealNumber + currentResult.inComeList[1].thisYearRealNumber))*100}%`}"></view>
<view class="otherRate" :style="{background:'#F9DCC2',right: 0,width:`${(currentResult.inComeList[1].thisYearRealNumber / (currentResult.inComeList[0].thisYearRealNumber + currentResult.inComeList[1].thisYearRealNumber))*100}%`}"></view>
@ -392,7 +396,7 @@
</view>
</view>
</view>
<view class="leftRight" @click="handleGoInComeDetail(1)">
<view class="leftRight" @click="handleGoInComeDetail(index+1)">
<text class="more">查看更多</text>
<image class="moreIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/revenueBox/moreIcon.svg" />
</view>
@ -512,7 +516,13 @@
</view>
</view>
<view class="expenditureRateBox">
<view class="expenditureRateBox" @click="handleShowOutNotice">
<view v-if="showOutNoitive" class="noticeRate">
<view class="noticeView">营业成本:<span>{{currentResult.outList[0].expenditureCostThisYear}}</span>万元<span>{{`${outFirst.toFixed(2)}%`}}</span></view>
<view class="noticeView">销售费用:<span>{{currentResult.outList[1].expenditureCostThisYear}}</span>万元<span>{{`${outSecond.toFixed(2)}%`}}</span></view>
<view class="noticeView">管理费用:<span>{{currentResult.outList[2].expenditureCostThisYear}}</span>万元<span>{{`${outThird.toFixed(2)}%`}}</span></view>
<view class="noticeView">财务费用:<span>{{currentResult.outList[3].expenditureCostThisYear}}</span>万元<span>{{`${outFourth.toFixed(2)}%`}}</span></view>
</view>
<view class="expenditureRate">
<view class="first" :style="{left:0,width: outFirst+'%',background:'#1679FF'}"></view>
<view class="second" :style="{left:outFirst+'%',width: outSecond+'%',background: 'lightgreen'}"></view>
@ -1092,6 +1102,8 @@ export default {
outSecond:0,//
outThird:0,//
outFourth:0,//
showInComeNotice:false,//
showOutNoitive:false,
}
},
onLoad(){
@ -1122,13 +1134,22 @@ export default {
this.single = `${y}-07`
this.thisMonth = '07'
//
// this.handleGetData()
// this.selectMonth = 0
//
this.handleGetPageData()
setTimeout(()=>{
this.handleChangeSwiper({target:{current:3}})
// this.handleChangeSwiper({target:{current:3}})
this.single = `${y}-10`
this.thisMonth = '10'
this.thisYear = this.single.split('-')[0]
this.thisMonth = this.single.split('-')[1]
if (this.thisMonth.indexOf('7')!==-1){
this.selectMonth = 0
}else if(this.thisMonth.indexOf('8')!==-1){
this.selectMonth = 1
}else if(this.thisMonth.indexOf('9')!==-1){
this.selectMonth = 2
}else if(this.thisMonth.indexOf('10')!==-1){
this.selectMonth = 3
}
},500)
// this.currentResult = this.monthResult[this.selectMonth]
},
@ -1267,6 +1288,8 @@ export default {
this.otherThisMonthSuccess = false
this.serviceSmallSum = false
}
this.showInComeNotice = false
this.showOutNoitive = false
},
//
handleBack(){
@ -1286,20 +1309,7 @@ export default {
url: `/pages/revenue/expenditureDetail?month=${this.thisMonth}&type=${type}`
});
},
//
async handleGetData(){
uni.showLoading({
title: '正在加载...'
})
const req = {
serverpartId:0,
year:this.thisYear,
month:this.thisMonth
}
const data = await request.$webGet('/CommercialApi/Budget/GetBudgetMainShow',req)
this.pageDetail = data.Result_Data
uni.hideLoading()
},
//
bindDateChange(e){
this.single = e.detail.value
@ -1311,18 +1321,18 @@ export default {
this.selectMonth = 1
}else if(this.thisMonth.indexOf('9')!==-1){
this.selectMonth = 2
}else if(this.thisMonth.indexOf('10')!==-1){
this.selectMonth = 3
}
this.currentResult = this.monthResult[this.selectMonth]
let sum = 0
this.currentResult.outList.forEach(item=>{
sum+=item.expenditureCostThisYearNumber
})
this.outAll = sum
this.outFirst = (this.currentResult.outList[0].expenditureCostThisYearNumber/sum)*100
this.outSecond = (this.currentResult.outList[1].expenditureCostThisYearNumber/sum)*100
this.outThird = (this.currentResult.outList[2].expenditureCostThisYearNumber/sum)*100
this.outFourth = (this.currentResult.outList[3].expenditureCostThisYearNumber/sum)*100
this.handleGetData()
// let sum = 0
// this.currentResult.outList.forEach(item=>{
// sum+=item.expenditureCostThisYearNumber
// })
// this.outAll = sum
// this.outFirst = (this.currentResult.outList[0].expenditureCostThisYearNumber/sum)*100
// this.outSecond = (this.currentResult.outList[1].expenditureCostThisYearNumber/sum)*100
// this.outThird = (this.currentResult.outList[2].expenditureCostThisYearNumber/sum)*100
// this.outFourth = (this.currentResult.outList[3].expenditureCostThisYearNumber/sum)*100
},
//
incomeChildrenShow(item){
@ -1335,27 +1345,43 @@ export default {
},
// swiper
handleChangeSwiper(e){
console.log('e',e)
this.selectMonth = e.target.current
this.thisMonth = this.monthList[this.selectMonth]
this.single = `${this.thisYear}-${this.thisMonth<10?'0'+this.thisMonth:this.thisMonth}`
this.currentResult = this.monthResult[this.selectMonth]
let sum = 0
this.currentResult.outList.forEach(item=>{
sum+=item.expenditureCostThisYearNumber
})
this.outAll = sum
this.outFirst = (this.currentResult.outList[0].expenditureCostThisYearNumber/sum)*100
this.outSecond = (this.currentResult.outList[1].expenditureCostThisYearNumber/sum)*100
this.outThird = (this.currentResult.outList[2].expenditureCostThisYearNumber/sum)*100
this.outFourth = (this.currentResult.outList[3].expenditureCostThisYearNumber/sum)*100
// this.currentResult = this.monthResult[this.selectMonth]
this.handleGetPageData()
},
//
async handleGetPageData(){
// const req = {
//
// }
// const data = await request.$webGet('',req)
uni.showLoading({
title:'正在加载'
})
const req = {
Month:this.thisMonth
}
const data = await request.$webGetTest('EShangApiMain/Budget/GetbudgetProjectReport',req)
console.log('data',data)
this.currentResult = data.Result_Data
let sum = 0
if (this.currentResult.outList && this.currentResult.outList.length>0){
this.currentResult.outList.forEach(item=>{
sum+=item.expenditureCostThisYearNumber
})
this.outAll = sum
this.outFirst = (this.currentResult.outList[0].expenditureCostThisYearNumber/sum)*100
this.outSecond = (this.currentResult.outList[1].expenditureCostThisYearNumber/sum)*100
this.outThird = (this.currentResult.outList[2].expenditureCostThisYearNumber/sum)*100
this.outFourth = (this.currentResult.outList[3].expenditureCostThisYearNumber/sum)*100
}
uni.hideLoading()
},
//
handleShowInComeNotice(){
this.showInComeNotice = !this.showInComeNotice
},
handleShowOutNotice(){
this.showOutNoitive = !this.showOutNoitive
}
}
}
@ -2241,6 +2267,23 @@ export default {
box-sizing: border-box;
padding: 0 32rpx 16rpx;
background: #fff;
position: relative;
.noticeRate{
display: inline-block;
position: absolute;
top: 10px;left: 50%;
width: 80%;
transform: translateX(-50%);
box-sizing: border-box;
padding: 12px;
background: #fff;
border-radius: 6px;
z-index:99;
color: #A69E9F;
font-size: 12px;
font-weight: 500;
box-shadow: 0rpx 4rpx 12rpx 0rpx rgba(166, 158, 159, 0.3);
}
.inComeRate{
width: 100%;
height: 12px;
@ -2748,6 +2791,23 @@ export default {
box-sizing: border-box;
padding: 0 32rpx 16rpx;
background: #fff;
position: relative;
.noticeRate{
display: inline-block;
position: absolute;
top: 10px;left: 50%;
width: 80%;
transform: translateX(-50%);
box-sizing: border-box;
padding: 12px;
background: #fff;
border-radius: 6px;
z-index:99;
color: #A69E9F;
font-size: 12px;
font-weight: 500;
box-shadow: 0 4rpx 12rpx 0 rgba(166, 158, 159, 0.3);
}
.expenditureRate{
width: 100%;
height: 12px;