190 lines
5.9 KiB
JavaScript
190 lines
5.9 KiB
JavaScript
const app = getApp();
|
||
const { count } = require('../../utils/qrPay.js');
|
||
import * as echarts from '../../components/ec-canvas/echarts';
|
||
function initChart(canvas, width, height, dpr) {
|
||
var pageArr = getCurrentPages()
|
||
const chart = echarts.init(canvas, null, {
|
||
width: width,
|
||
height: height,
|
||
devicePixelRatio: dpr // new
|
||
});
|
||
canvas.setChart(chart);
|
||
chart.setOption(pageArr[pageArr.length - 1].data.option);
|
||
return chart;
|
||
}
|
||
Page({
|
||
|
||
/**
|
||
* 页面的初始数据
|
||
*/
|
||
data: {
|
||
option: {
|
||
backgroundColor: 'transparent',
|
||
series: [{
|
||
label: {
|
||
normal: {
|
||
fontSize: 14
|
||
}
|
||
},
|
||
type: 'pie',
|
||
center: ['50%', '50%'],
|
||
radius: ['50%'],
|
||
data: [{
|
||
value: 0,
|
||
name: '钱包特惠'
|
||
}, {
|
||
value: 0,
|
||
name: '电子油卡'
|
||
}, {
|
||
value: 0,
|
||
name: '信用油卡'
|
||
}, {
|
||
value: 0,
|
||
name: '司机优惠'
|
||
}]
|
||
}]
|
||
},
|
||
opacity: false,
|
||
ec: {
|
||
onInit: initChart
|
||
},
|
||
date: '',
|
||
nvabarData: {
|
||
showCapsule: 1, //是否显示左上角图标 1表示显示 0表示不显示
|
||
title: "统计", //导航栏 中间的标题
|
||
},
|
||
// 此页面 页面内容距最顶部的距离
|
||
height: app.globalData.height,
|
||
startDay: '开始时间',
|
||
endDay: '结束时间',
|
||
countData: {},
|
||
picImg: "http://static.sxlyb.com/images/"
|
||
},
|
||
|
||
change2(data1, data2, data3, data4) {
|
||
this.setData({
|
||
option: {
|
||
backgroundColor: 'transparent',
|
||
series: [{
|
||
label: {
|
||
normal: {
|
||
fontSize: 14
|
||
}
|
||
},
|
||
type: 'pie',
|
||
center: ['50%', '50%'],
|
||
radius: ['50%'],
|
||
data: [{
|
||
value: data1,
|
||
name: '钱包特惠'
|
||
}, {
|
||
value: data2,
|
||
name: '电子油卡'
|
||
}, {
|
||
value: data3,
|
||
name: '信用油卡'
|
||
}, {
|
||
value: data4,
|
||
name: '司机优惠'
|
||
}]
|
||
}]
|
||
}
|
||
})
|
||
this.oneComponent.init((canvas, width, height, dpr) => {
|
||
var pageArr = getCurrentPages()
|
||
const chart = echarts.init(canvas, null, {
|
||
width: width,
|
||
height: height,
|
||
devicePixelRatio: dpr // new
|
||
});
|
||
canvas.setChart(chart);
|
||
chart.setOption(pageArr[pageArr.length - 1].data.option);
|
||
return chart;
|
||
});
|
||
},
|
||
|
||
onShow() {
|
||
this.oneComponent = this.selectComponent('#mychart-dom-pie');
|
||
this.getCountData()
|
||
},
|
||
getCountData() {
|
||
var that = this
|
||
const data = {
|
||
startDay: that.data.startDay,
|
||
endDay: that.data.endDay,
|
||
type: 1,
|
||
cooId: wx.getStorageSync("cooperation").id
|
||
}
|
||
|
||
count(data)
|
||
.then(e => {
|
||
wx.hideLoading()
|
||
that.setData({
|
||
countData: e.data.data,
|
||
opacity: e.data.data.walletMoney || e.data.data.cardMoney || e.data.data.creditCardMoney || e.data.data.wxMoney ? true : false
|
||
})
|
||
that.change2(this.data.countData.walletMoney, this.data.countData.cardMoney, this.data.countData.creditCardMoney ? this.data.countData.creditCardMoney : 0, this.data.countData.wxMoney)
|
||
})
|
||
.catch(e => {
|
||
wx.hideLoading()
|
||
wx.showModal({
|
||
title: '错误',
|
||
showCancel: false,
|
||
content: e.msg ? e.msg : '您的系统存在未知异常,请联系客服处理',
|
||
})
|
||
})
|
||
},
|
||
/**
|
||
* 生命周期函数--监听页面加载
|
||
*/
|
||
onLoad: function () {
|
||
var currentDate = new Date(); // 创建一个表示当前日期和时间的Date对象
|
||
var year = currentDate.getFullYear().toString(); // 获取年份并转换为字符串类型
|
||
var month = (currentDate.getMonth() + 1).toString().padStart(2, '0'); // 获取月份(注意需要加上1)并补零到两位数
|
||
var day = currentDate.getDate().toString().padStart(2, '0'); // 获
|
||
this.setData({
|
||
startDay: year + '-' + month + '-' + day,
|
||
endDay: year + '-' + month + '-' + day,
|
||
})
|
||
},
|
||
|
||
changeStartTime(e) {
|
||
|
||
var startTime = new Date(e.detail.value);
|
||
var endTime = new Date(this.data.endDay);
|
||
if (startTime.getTime() > endTime.getTime()) {
|
||
wx.showModal({
|
||
title: '提示',
|
||
showCancel: false,
|
||
content: '您所选的开始时间大于结束时间,请重新选择',
|
||
})
|
||
} else {
|
||
this.setData({
|
||
startDay: e.detail.value
|
||
})
|
||
this.getCountData()
|
||
}
|
||
|
||
},
|
||
|
||
changeEndTime(e) {
|
||
var startTime = new Date(this.data.startDay);
|
||
var endTime = new Date(e.detail.value);
|
||
if (startTime.getTime() > endTime.getTime()) {
|
||
wx.showModal({
|
||
title: '提示',
|
||
showCancel: false,
|
||
content: '您所选的结束时间小于开始时间,请重新选择',
|
||
})
|
||
} else {
|
||
this.setData({
|
||
endDay: e.detail.value
|
||
})
|
||
this.getCountData()
|
||
}
|
||
},
|
||
|
||
|
||
|
||
})
|