Implement comprehensive academic statistics and grade analysis workflows

This commit is contained in:
biss committed 2026-08-18 11:05:03 +08:00
1 parent 370a82d4d4
commit f677cf8dca
24 files changed
+8703 -42

No files matched your search

+5 -1
View File
@@ -1,10 +1,14 @@
<script setup lang="ts">
import { computed } from 'vue'
import { useRoute } from 'vue-router'
import SiteFooter from './components/SiteFooter.vue'
import SmartLaunchScreen from './components/SmartLaunchScreen.vue'
const route = useRoute()
const isVenueDisplay = computed(() => route.name === 'venue-display')
</script>
<template>
<SmartLaunchScreen />
<RouterView />
<SiteFooter />
<SiteFooter v-if="!isVenueDisplay" />
</template>
+4
View File
@@ -161,6 +161,10 @@ const navigationGroups = computed<NavigationGroup[]>(() => [
path: '/classroom-reservations',
label: hasAnyRole(['CollegeAdmin']) ? '教室借用审核' : '教室借用',
},
...whenVisible(
hasAnyRole(['SuperAdmin', 'AcademicAdmin', 'MaintenanceAdmin', 'MaintenanceStaff']),
{ path: '/classroom-repairs', label: '教室报修与维修' },
),
...whenVisible(
hasAnyRole(['SuperAdmin', 'AcademicAdmin', 'CollegeAdmin', 'Student']),
{
+12
View File
@@ -49,6 +49,12 @@ const router = createRouter({
component: () => import('../views/OfficialDocumentVerifyView.vue'),
meta: { public: true },
},
{
path: '/classroom-repairs/report/:classroomId',
name: 'classroom-repair-report',
component: () => import('../views/ClassroomRepairReportView.vue'),
meta: { public: true },
},
{
path: '/',
component: AdminLayout,
@@ -227,6 +233,12 @@ const router = createRouter({
name: 'classroom-reservations',
component: () => import('../views/ClassroomReservationsView.vue'),
},
{
path: 'classroom-repairs',
name: 'classroom-repairs',
component: () => import('../views/ClassroomRepairsView.vue'),
meta: { roles: ['SuperAdmin', 'AcademicAdmin', 'MaintenanceAdmin', 'MaintenanceStaff'] },
},
{
path: 'experiments',
name: 'experiments',
Loaded 3 of 24 files, more files were not shown because too many files have changed in this diff. Show more