From 8cd22653aab0c0e592c1b065e5a62be17e6a929b Mon Sep 17 00:00:00 2001 From: yuk255 Date: Fri, 22 Aug 2025 16:42:55 +0800 Subject: [PATCH] =?UTF-8?q?feat=EF=BC=9A=E6=B7=BB=E5=8A=A0=E7=BB=83?= =?UTF-8?q?=E8=80=83=E9=80=9A=E6=A8=A1=E5=9D=97=E4=B8=8B=E7=9A=84=E8=AF=95?= =?UTF-8?q?=E5=8D=B7=E5=BA=93=E5=92=8C=E6=96=B0=E5=A2=9E=E8=AF=95=E5=8D=B7?= =?UTF-8?q?=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/CourseDetailManagement.vue | 0 .../ExamComponents/BatchSetScoreModal.vue | 324 ++++ .../ExamComponents/ExamSettingsModal.vue | 761 ++++++++ src/main.ts | 10 +- src/router/index.ts | 36 +- src/views/teacher/course/CourseEditor.vue | 110 +- .../teacher/course/ExamPages/AddExam.vue | 1544 +++++++++++++++++ .../teacher/course/ExamPages/ExamLibrary.vue | 236 +++ .../course/ExamPages/MarkingCenter.vue | 11 + .../teacher/course/PracticeManagement.vue | 21 +- 10 files changed, 3025 insertions(+), 28 deletions(-) create mode 100644 src/components/admin/CourseDetailManagement.vue create mode 100644 src/components/admin/ExamComponents/BatchSetScoreModal.vue create mode 100644 src/components/admin/ExamComponents/ExamSettingsModal.vue create mode 100644 src/views/teacher/course/ExamPages/AddExam.vue create mode 100644 src/views/teacher/course/ExamPages/ExamLibrary.vue create mode 100644 src/views/teacher/course/ExamPages/MarkingCenter.vue diff --git a/src/components/admin/CourseDetailManagement.vue b/src/components/admin/CourseDetailManagement.vue new file mode 100644 index 0000000..e69de29 diff --git a/src/components/admin/ExamComponents/BatchSetScoreModal.vue b/src/components/admin/ExamComponents/BatchSetScoreModal.vue new file mode 100644 index 0000000..561047a --- /dev/null +++ b/src/components/admin/ExamComponents/BatchSetScoreModal.vue @@ -0,0 +1,324 @@ + + + + + diff --git a/src/components/admin/ExamComponents/ExamSettingsModal.vue b/src/components/admin/ExamComponents/ExamSettingsModal.vue new file mode 100644 index 0000000..e8e772f --- /dev/null +++ b/src/components/admin/ExamComponents/ExamSettingsModal.vue @@ -0,0 +1,761 @@ + + + + + diff --git a/src/main.ts b/src/main.ts index 24bc150..4eeb027 100644 --- a/src/main.ts +++ b/src/main.ts @@ -34,6 +34,7 @@ import { NBreadcrumbItem, NInput, NInputGroup, + NInputNumber, NForm, NFormItem, NSelect, @@ -41,6 +42,7 @@ import { NTimePicker, NCheckbox, NRadio, + NRadioGroup, NSwitch, NSlider, NRate, @@ -82,7 +84,8 @@ import { NStep, NTimeline, NTimelineItem, - NMessageProvider + NMessageProvider, + NPopselect } from 'naive-ui' const naive = create({ @@ -104,6 +107,7 @@ const naive = create({ NBreadcrumbItem, NInput, NInputGroup, + NInputNumber, NForm, NFormItem, NSelect, @@ -111,6 +115,7 @@ const naive = create({ NTimePicker, NCheckbox, NRadio, + NRadioGroup, NSwitch, NSlider, NRate, @@ -152,7 +157,8 @@ const naive = create({ NStep, NTimeline, NTimelineItem, - NMessageProvider + NMessageProvider, + NPopselect ] }) diff --git a/src/router/index.ts b/src/router/index.ts index 4d14738..f1f0b2d 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -52,6 +52,12 @@ import StatisticsManagement from '@/views/teacher/course/StatisticsManagement.vu import NotificationManagement from '@/views/teacher/course/NotificationManagement.vue' import GeneralManagement from '@/views/teacher/course/GeneralManagement.vue' + +// 练考通菜单组件 +import ExamLibrary from '@/views/teacher/course/ExamPages/ExamLibrary.vue' +import MarkingCenter from '@/views/teacher/course/ExamPages/MarkingCenter.vue' +import AddExam from '@/views/teacher/course/ExamPages/AddExam.vue' + // ========== 路由配置 ========== const routes: RouteRecordRaw[] = [ // 管理后台路由 @@ -132,7 +138,35 @@ const routes: RouteRecordRaw[] = [ path: 'practice', name: 'PracticeManagement', component: PracticeManagement, - meta: { title: '练考通管理' } + meta: { title: '练考通管理' }, + redirect: (to) => `/teacher/course-editor/${to.params.id}/practice/exam-library`, + children: [ + { + path: 'exam-library', + name: 'ExamLibrary', + component: ExamLibrary, + meta: { + title: '试卷库' + }, + }, + { + path: 'marking-center', + name: 'MarkingCenter', + component: MarkingCenter, + meta: { + title: '阅卷中心' + } + }, + { + path: 'add', + name: 'AddExam', + component: AddExam, + meta: { + title: '添加试卷', + hideSidebar: true + } + } + ] }, { path: 'question-bank', diff --git a/src/views/teacher/course/CourseEditor.vue b/src/views/teacher/course/CourseEditor.vue index 9bc3792..ea97f69 100644 --- a/src/views/teacher/course/CourseEditor.vue +++ b/src/views/teacher/course/CourseEditor.vue @@ -1,7 +1,7 @@