题库导入功能完成,考试计划功能完成。

This commit is contained in:
2025-12-19 00:58:58 +08:00
parent ba252b2f56
commit 465d4d7b4a
27 changed files with 1851 additions and 177 deletions

View File

@@ -38,6 +38,7 @@ const apiRouter = express.Router();
apiRouter.post('/users', UserController.createUser);
apiRouter.get('/users/:id', UserController.getUser);
apiRouter.post('/users/validate', UserController.validateUserInfo);
apiRouter.get('/users/name/:name', UserController.getUsersByName);
// 题库管理
apiRouter.get('/questions', QuestionController.getQuestions);
@@ -66,6 +67,8 @@ apiRouter.delete('/admin/subjects/:id', adminAuth, ExamSubjectController.deleteS
// 考试任务
apiRouter.get('/exam-tasks', ExamTaskController.getTasks);
apiRouter.get('/admin/tasks', adminAuth, ExamTaskController.getTasks);
apiRouter.get('/admin/tasks/:id/users', adminAuth, ExamTaskController.getTaskUsers);
apiRouter.get('/exam-tasks/user/:userId', ExamTaskController.getUserTasks);
apiRouter.post('/admin/tasks', adminAuth, ExamTaskController.createTask);
apiRouter.put('/admin/tasks/:id', adminAuth, ExamTaskController.updateTask);
@@ -74,6 +77,7 @@ apiRouter.get('/admin/tasks/:id/report', adminAuth, ExamTaskController.getTaskRe
// 用户管理
apiRouter.get('/admin/users', adminAuth, AdminUserController.getUsers);
apiRouter.put('/admin/users/:id', adminAuth, AdminUserController.updateUser);
apiRouter.delete('/admin/users', adminAuth, AdminUserController.deleteUser);
apiRouter.get('/admin/users/export', adminAuth, AdminUserController.exportUsers);
apiRouter.post('/admin/users/import', adminAuth, upload.single('file'), AdminUserController.importUsers);
@@ -89,9 +93,10 @@ apiRouter.get('/quiz/records', adminAuth, QuizController.getAllRecords);
// 管理员相关
apiRouter.post('/admin/login', AdminController.login);
apiRouter.get('/admin/config', adminAuth, AdminController.getQuizConfig);
apiRouter.put('/admin/config', adminAuth, AdminController.updateQuizConfig);
apiRouter.get('/admin/statistics', adminAuth, AdminController.getStatistics);
apiRouter.get('/admin/active-tasks', adminAuth, AdminController.getActiveTasksStats);
apiRouter.put('/admin/config', adminAuth, AdminController.updateQuizConfig);
apiRouter.get('/admin/config', adminAuth, AdminController.getQuizConfig);
apiRouter.put('/admin/password', adminAuth, AdminController.updatePassword);
apiRouter.get('/admin/configs', adminAuth, AdminController.getAllConfigs);