ahyd_DIB/src/pages/index/getInfo.ts

66 lines
1.7 KiB
TypeScript

import { getRevenueData } from '@/api/index'
import { handleYesterday } from '@/utils/dateTime/index'
// ticketCount: number // 客单数量 ,
// totalCount: number// 总数量 ,
// totalOffAmount: number// 优惠金额 ,
// mobilePayment: number// 移动支付金额 ,
// cashPay: number// 实收金额 ,
// different_Price_Less: number// 短款金额 ,
// different_Price_More: number// 长款金额 ,
interface allDateType {
headMsg: {
compared?: string
sumPay: number
TicketCount?: number
average?: number
}
}
export async function getInfo(params) {
//传入的参数
console.log(params)
const yesterday = handleYesterday(params.Statistics_Date)
const yesterdayData = {
pushProvinceCode: '340000',
Statistics_Date: yesterday,
}
//要输出的值
const allData: allDateType = {
headMsg: {
sumPay: 0,
},
}
//获取营收数据
const todayRevenue = await getRevenueData(params)
//获取昨日营收数据
const yesterdayRevenue = await getRevenueData(yesterdayData)
allData.headMsg = getTotalReven(todayRevenue.Result_Data.List)
//昨日营收总额
const yesterdaySumPay = getTotalReven(yesterdayRevenue.Result_Data.List)
allData.headMsg.compared = (
((allData.headMsg.sumPay - yesterdaySumPay.sumPay) / yesterdaySumPay.sumPay) *
100
).toFixed(2)
return allData
}
//计算总的对客营收
function getTotalReven(list) {
const data = {
sumPay: 0,
TicketCount: 0,
average: 0,
}
list.forEach((item) => {
data.sumPay += item.CashPay
data.TicketCount += item.TicketCount
})
data.average = Number((data.sumPay / data.TicketCount).toFixed(2))
data.sumPay = Number(data.sumPay.toFixed(2))
console.log('data', data)
return data
}