From cc9fc9added33031b94d1af4d1fd6a28ef65c2e9 Mon Sep 17 00:00:00 2001 From: chenghuan Date: Fri, 13 Mar 2026 16:17:50 +0800 Subject: [PATCH] =?UTF-8?q?feat(=E7=BB=9F=E8=AE=A1=E4=B8=9A=E5=8A=A1):=20?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=E8=AF=BE=E7=A8=8B=E7=BB=9F=E8=AE=A1=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=EF=BC=8C=E6=94=AF=E6=8C=81=E6=8C=89=E9=87=91=E9=A2=9D?= =?UTF-8?q?=E3=80=81=E8=AF=BE=E7=A8=8B=E5=92=8C=E5=88=86=E7=B1=BB=E7=BB=9F?= =?UTF-8?q?=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 添加课程统计主页面,包含三个统计维度的标签页切换 - 实现按金额统计功能,支持年份选择和月度详情查看 - 实现按课程统计功能,支持年份/月份切换和分页展示 - 实现按分类统计功能,支持年份/月份切换 - 各统计页面均支持数据导出为Excel报表 - 添加路由配置,将课程统计页面集成到导航系统中 --- src/router/index.js | 3 +- .../courseStatistics/amountStatistics.vue | 238 ++++++++++ .../courseStatistics/courseStatistics.vue | 448 ++++++++++++++++++ .../courseStatistics/index.vue | 38 ++ .../courseStatistics/labelStatistics.vue | 194 ++++++++ 5 files changed, 920 insertions(+), 1 deletion(-) create mode 100644 src/views/modules/statisticsBusiness/courseStatistics/amountStatistics.vue create mode 100644 src/views/modules/statisticsBusiness/courseStatistics/courseStatistics.vue create mode 100644 src/views/modules/statisticsBusiness/courseStatistics/index.vue create mode 100644 src/views/modules/statisticsBusiness/courseStatistics/labelStatistics.vue diff --git a/src/router/index.js b/src/router/index.js index 35bced7..09071e3 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -92,7 +92,8 @@ const mainRoutes = { { path: '/reportList-trainingCourseClassList', component: _import('modules/reportList/trainingCourseClassList'), name: 'reportList-trainingCourseClassList', meta: { title: '培训班报表', isTab: true } }, { path: '/reportList-courseList', component: _import('modules/reportList/courseList'), name: 'reportList-courseList', meta: { title: '课程报表', isTab: true } }, { path: '/reportList-lingshuFullYear', component: _import('modules/reportList/lingshuFullYear'), name: 'reportList-lingshuFullYear', meta: { title: '灵枢年度报表', isTab: true } }, - { path: '/content-psychologicalForum', component: _import('modules/content/psychologicalForum'), name: 'content-psychologicalForum', meta: { title: '心理论坛', isTab: true } } + { path: '/content-psychologicalForum', component: _import('modules/content/psychologicalForum'), name: 'content-psychologicalForum', meta: { title: '心理论坛', isTab: true } }, + { path: '/statisticsBusiness-courseStatistics', component: _import('modules/statisticsBusiness/courseStatistics/index'), name: 'statisticsBusiness-courseStatistics', meta: { title: '课程统计', isTab: true } } ], beforeEnter (to, from, next) { let token = Vue.cookie.get('token') diff --git a/src/views/modules/statisticsBusiness/courseStatistics/amountStatistics.vue b/src/views/modules/statisticsBusiness/courseStatistics/amountStatistics.vue new file mode 100644 index 0000000..81fe51d --- /dev/null +++ b/src/views/modules/statisticsBusiness/courseStatistics/amountStatistics.vue @@ -0,0 +1,238 @@ + + + + + diff --git a/src/views/modules/statisticsBusiness/courseStatistics/courseStatistics.vue b/src/views/modules/statisticsBusiness/courseStatistics/courseStatistics.vue new file mode 100644 index 0000000..28dfbbb --- /dev/null +++ b/src/views/modules/statisticsBusiness/courseStatistics/courseStatistics.vue @@ -0,0 +1,448 @@ + + + + + diff --git a/src/views/modules/statisticsBusiness/courseStatistics/index.vue b/src/views/modules/statisticsBusiness/courseStatistics/index.vue new file mode 100644 index 0000000..9c4360e --- /dev/null +++ b/src/views/modules/statisticsBusiness/courseStatistics/index.vue @@ -0,0 +1,38 @@ + + + + + diff --git a/src/views/modules/statisticsBusiness/courseStatistics/labelStatistics.vue b/src/views/modules/statisticsBusiness/courseStatistics/labelStatistics.vue new file mode 100644 index 0000000..b26b585 --- /dev/null +++ b/src/views/modules/statisticsBusiness/courseStatistics/labelStatistics.vue @@ -0,0 +1,194 @@ + + + + +