| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- import { Router } from 'express';
- import { body } from 'express-validator';
- import { SystemService } from '../services/SystemService.js';
- import { authenticate, authorize } from '../middleware/auth.js';
- import { asyncHandler } from '../middleware/error.js';
- import { validateRequest } from '../middleware/validate.js';
- const router = Router();
- const systemService = new SystemService();
- // 获取系统配置(公开)
- router.get(
- '/config',
- asyncHandler(async (_req, res) => {
- const config = await systemService.getPublicConfig();
- res.json({ success: true, data: config });
- })
- );
- // 更新系统配置(需要管理员权限)
- router.put(
- '/config',
- authenticate,
- authorize('admin'),
- [
- body('allowRegistration').optional().isBoolean(),
- body('defaultUserRole').optional().isIn(['admin', 'editor', 'operator']),
- validateRequest,
- ],
- asyncHandler(async (req, res) => {
- await systemService.updateConfig(req.body);
- res.json({ success: true, message: '配置已更新' });
- })
- );
- // 获取系统状态(需要管理员权限)
- router.get(
- '/status',
- authenticate,
- authorize('admin'),
- asyncHandler(async (_req, res) => {
- const status = await systemService.getSystemStatus();
- res.json({ success: true, data: status });
- })
- );
- export default router;
|