From 620a310bdcfb1d8f1b49bf163413afeb522e1b2f Mon Sep 17 00:00:00 2001
From: 刘帅 <rr.iii@qq.com>
Date: 星期一, 21 九月 2026 21:47:53 +0800
Subject: [PATCH] bug:收入类型统计数据问题解决

---
 cloud-server-management/src/main/webapp/WEB-INF/view/system/dataStatistics/platformIncome.html |   53 +++++++++++++++++++++++------------------------------
 1 files changed, 23 insertions(+), 30 deletions(-)

diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/dataStatistics/platformIncome.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/dataStatistics/platformIncome.html
index ca426db..3d72dee 100644
--- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/dataStatistics/platformIncome.html
+++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/dataStatistics/platformIncome.html
@@ -368,7 +368,6 @@
 	});
     function search1() {
         var time =  $("#beginTime").val();
-        loadIncomeTypePieCharts(time);
         // 营收卡片与收入类型卡片使用同一接口、同一时间范围,避免筛选后口径不一致。
         var incomeAjax = new $ax(Feng.ctxPath + "/data/getIncomeData", function(resp){
             $("#totalIncome").text(formatStatisticNumber(resp.incomeStatistics.totalIncomeAmount));
@@ -383,6 +382,8 @@
             $("#fee5").text(formatStatisticNumber(incomeTypeNet[5]));
             $("#fee7").text(formatStatisticNumber(incomeTypeNet[6]));
             renderTicketIncomeChart(resp.ticketIncome || {});
+            renderIncomeTypePieChart('cookieCourse', '课程收入', resp.courseData);
+            renderIncomeTypePieChart('cookieBooking', '订场收入', resp.siteData);
         });
         incomeAjax.set("time", time);
         incomeAjax.start();
@@ -422,19 +423,6 @@
         }, true);
     }
 
-    // 使用接口返回的 JSON 分类数据,避免服务端模板字符串解析遗漏最后一个分类。
-    function loadIncomeTypePieCharts(time) {
-        var ajax = new $ax(Feng.ctxPath + "/data/type1", function (data) {
-            renderIncomeTypePieChart('cookieCourse', '课程收入', data.courseData);
-            renderIncomeTypePieChart('cookieBooking', '订场收入', data.siteData);
-        });
-        ajax.set('time', time);
-        ajax.start();
-    }
-
-    $(function () {
-        loadIncomeTypePieCharts('');
-    });
     // 创建一个日期对象
     var currentDate = new Date();
     // 获取当前日期的号数
@@ -592,6 +580,9 @@
             $("#back3").text(formatStatisticNumber(resp.weekIncomeStatistics[resp.weekIncomeStatistics.length - 1].refundAmount));
             $("#back4").text(formatStatisticNumber(resp.dayIncomeStatistics[resp.dayIncomeStatistics.length - 1].refundAmount));
             renderRefundChart(myChart1, resp);
+            renderTicketIncomeChart(resp.ticketIncome || {});
+            renderIncomeTypePieChart('cookieCourse', '课程收入', resp.courseData);
+            renderIncomeTypePieChart('cookieBooking', '订场收入', resp.siteData);
         });
         ajax.set("type",1);
         ajax.start();
@@ -1512,15 +1503,16 @@
         courseData = courseData.split('},')
 
         var a=[];
-        for (let j = 0; j <courseData.length; j++) {
-            if(j<courseData.length-1){
-                var d = courseData[j].replace("{","").replace("}","").split(",")
-                    let obj ={
-                        name:d[0].split("=")[1],
-                        value:d[1].split("=")[1]
-                    }
-                    a.push(obj)
+        for (let j = 0; j < courseData.length; j++) {
+            var d = courseData[j].replace("{", "").replace("}", "").split(",");
+            if (d.length < 2) {
+                continue;
             }
+            let obj = {
+                name: d[0].split("=")[1],
+                value: d[1].split("=")[1]
+            };
+            a.push(obj);
         }
         var chartDom = document.getElementById('cookieCourse');
         var myChart = echarts.init(chartDom)
@@ -1561,15 +1553,16 @@
         courseData = courseData.split('},')
 
         var a=[];
-        for (let j = 0; j <courseData.length; j++) {
-            if(j<courseData.length-1){
-                var d = courseData[j].replace("{","").replace("}","").split(",")
-                let obj ={
-                    name:d[0].split("=")[1],
-                    value:d[1].split("=")[1]
-                }
-                a.push(obj)
+        for (let j = 0; j < courseData.length; j++) {
+            var d = courseData[j].replace("{", "").replace("}", "").split(",");
+            if (d.length < 2) {
+                continue;
             }
+            let obj = {
+                name: d[0].split("=")[1],
+                value: d[1].split("=")[1]
+            };
+            a.push(obj);
         }
         var chartDom = document.getElementById('cookieBooking');
         var myChart = echarts.init(chartDom);

--
Gitblit v1.7.1