From 0351b1fdbd210da03317db86ac325ea56717b5f2 Mon Sep 17 00:00:00 2001 From: ltx <1006158920@qq.com> Date: Wed, 1 Jul 2026 17:42:03 +0800 Subject: [PATCH] =?UTF-8?q?update:=E6=97=A0=E6=8A=A5=E5=91=8A=E5=85=BC?= =?UTF-8?q?=E5=AE=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- subpackage/train/user-report/user-report.js | 35 +++++++++++++------ subpackage/train/user-report/user-report.wxml | 18 ++++++++-- subpackage/train/user-report/user-report.wxss | 24 +++++++++++++ 3 files changed, 64 insertions(+), 13 deletions(-) diff --git a/subpackage/train/user-report/user-report.js b/subpackage/train/user-report/user-report.js index efdd448..88e98c8 100644 --- a/subpackage/train/user-report/user-report.js +++ b/subpackage/train/user-report/user-report.js @@ -14,6 +14,7 @@ Page({ type:'1',//日期类型 chartType:'1',//y轴类型 allData:{}, + noChartData: false, // 图表数据是否为空 cWidth: 330, cHeight: 280, pixelRatio: 2, @@ -67,6 +68,11 @@ Page({ }, drawCharts(id){ + const chartKey = this.data.chartType == 1 ? 'chartDataByDuration' : this.data.chartType == 2 ? 'chartDataByCount' : 'chartDataByConsume' + const chartData = this.data.allData[chartKey] + if (!chartData || !chartData.axisX || chartData.axisX.length === 0) { + return + } const query = wx.createSelectorQuery().in(this); query.select('#' + id).fields({ node: true, size: true }).exec(res => { if (res[0]) { @@ -155,21 +161,28 @@ Page({ console.log(res) if(res.data != null){ res.data.accumulatedDuration = utils.formatTimeStr(res.data.accumulatedDuration) + + // 判断图表数据是否为空 + const chartDataByDuration = res.data.chartDataByDuration || {} + const chartDataByCount = res.data.chartDataByCount || {} + const chartDataByConsume = res.data.chartDataByConsume || {} + const isEmptyChartData = + (!chartDataByDuration.axisX || chartDataByDuration.axisX.length === 0) && + (!chartDataByCount.axisX || chartDataByCount.axisX.length === 0) && + (!chartDataByConsume.axisX || chartDataByConsume.axisX.length === 0) + this.setData({ - allData:res.data + allData:res.data, + noChartData: isEmptyChartData }) - let ress = { - categories: this.data.allData[this.data.chartType == 1?'chartDataByDuration':this.data.chartType == 2? 'chartDataByCount':'chartDataByConsume'].axisX, - series: [ - { - data: this.data.allData['chartDataByCount'].axisY - }, - ] - }; - this.drawCharts('mycanvas'); + + if (!isEmptyChartData) { + this.drawCharts('mycanvas'); + } }else{ this.setData({ - noData:true + noData:true, + noChartData: true }) } }, diff --git a/subpackage/train/user-report/user-report.wxml b/subpackage/train/user-report/user-report.wxml index ac6c391..05f169c 100644 --- a/subpackage/train/user-report/user-report.wxml +++ b/subpackage/train/user-report/user-report.wxml @@ -33,13 +33,19 @@ 单位:{{chartType==1?'秒':chartType==2?'个':'kcal'}} - + + + + + 暂无数据 + + - + 我的{{type == '1'?'日':type=='2'?'周':type==3?'月':'年'}}报 @@ -82,6 +88,14 @@ + + + + 我的{{type == '1'?'日':type=='2'?'周':type==3?'月':'年'}}报 + + 暂无统计数据 + + diff --git a/subpackage/train/user-report/user-report.wxss b/subpackage/train/user-report/user-report.wxss index ed00577..d8cb9ee 100644 --- a/subpackage/train/user-report/user-report.wxss +++ b/subpackage/train/user-report/user-report.wxss @@ -306,4 +306,28 @@ .no{ text-align: center; margin-top: 50rpx; + color: #999; + font-size: 28rpx; + padding: 40rpx 0; +} + +/* 图表空状态 */ +.charts-empty { + width: 100%; + height: 420rpx; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; +} + +.charts-empty-img { + width: 200rpx; + height: 200rpx; + margin-bottom: 20rpx; +} + +.charts-empty-text { + font-size: 28rpx; + color: #999; } \ No newline at end of file