feat: add SingleRecordMnt component for student record maintenance with search, add, edit, view, and delete functionalities

This commit is contained in:
skytek_xinliang
2026-03-26 11:24:37 +08:00
parent 507afcc99c
commit 069141794e
116 changed files with 15247 additions and 107 deletions
+124
View File
@@ -0,0 +1,124 @@
import type { RouteRecordRaw } from 'vue-router'
export const routes: RouteRecordRaw[] = [
{
path: '/',
name: 'home',
component: () => import('@/views/Home.vue'),
meta: { layout: 'default', requiresAuth: true },
},
{
path: '/settings',
name: 'settings',
component: () => import('@/views/Settings.vue'),
meta: { layout: 'default' },
},
{
path: '/login',
name: 'login',
component: () => import('@/views/Login.vue'),
meta: { layout: 'none', guestOnly: true },
},
{
path: '/role-management',
name: 'role-management',
component: () => import('@/views/RoleManagement.vue'),
meta: { layout: 'default' },
},
{
path: '/menu-management',
name: 'menu-management',
component: () => import('@/views/MenuManagement.vue'),
meta: { layout: 'default' },
},
{
path: '/dept-management',
name: 'dept-management',
component: () => import('@/views/DeptManagement.vue'),
meta: { layout: 'default' },
},
{
path: '/analysis',
name: 'analysis',
component: () => import('@/views/Analysis.vue'),
meta: { layout: 'default' },
},
{
path: '/single-record-maintenance',
name: 'single-record-maintenance',
component: () => import('@/views/maint/SingleRecordMnt.vue'),
meta: { layout: 'default' },
},
{
path: '/master-detail-maintenance',
name: 'master-detail-maintenance-a',
component: () => import('@/views/maint/MasterDetailMnt.vue'),
meta: { layout: 'default' },
},
{
path: '/master-detail-maintenance-b',
name: 'master-detail-maintenance-b',
component: () => import('@/views/maint/MasterDetailMntB.vue'),
meta: { layout: 'default' },
},
{
path: '/master-detail-maintenance-c',
name: 'master-detail-maintenance-c',
component: () => import('@/views/maint/MasterDetailMntC.vue'),
meta: { layout: 'default' },
},
{
path: '/editable-grid-maintenance',
name: 'editable-grid-maintenance',
component: () => import('@/views/maint/EditableGridMnt.vue'),
meta: { layout: 'default' },
},
{
path: '/dashboard',
name: 'dashboard',
component: () => import('@/views/Dashboard.vue'),
meta: { layout: 'default' },
},
{
path: '/:fncId([0-9A-Z]{5,6})',
name: 'fnc-page',
component: () => import('@/views/FncPage.vue'),
meta: { layout: 'default' },
},
{
path: '/403',
name: 'forbidden',
component: () => import('@/views/errors/Forbidden.vue'),
meta: { title: 'Forbidden', layout: 'none' },
},
{
path: '/500',
name: 'server-error',
component: () => import('@/views/errors/ServerError.vue'),
meta: { title: 'Server Error', layout: 'none' },
},
{
path: '/503',
name: 'service-unavailable',
component: () => import('@/views/errors/ServiceUnavailable.vue'),
meta: { title: 'Service Unavailable', layout: 'none' },
},
{
path: '/network',
name: 'network-error',
component: () => import('@/views/errors/NetworkError.vue'),
meta: { title: 'Network Error', layout: 'none' },
},
{
path: '/maintenance',
name: 'maintenance',
component: () => import('@/views/errors/Maintenance.vue'),
meta: { title: 'Maintenance', layout: 'none' },
},
{
path: '/:pathMatch(.*)*',
name: 'not-found',
component: () => import('@/views/errors/NotFound.vue'),
meta: { title: 'Not Found', layout: 'none' },
},
]