duoqi-api/src/routes/admin/index.ts
Wang Zhuoxuan a2282975ca feat: 集成阿里云融合认证实现手机号一键登录与登录方式管理
- 新增 POST /auth/fusion/token 获取 SDK 鉴权 Token
- 新增 POST /auth/fusion/verify 用 verifyToken 换取手机号并登录/注册
- 新增 GET /auth/providers 按平台返回可用登录方式列表
- 新增 PUT /admin/auth-providers 管理端热切换第三方登录开关
- 新增 appSettings 表存储运行时配置,支持不重启生效
- 修复 schema 中超长外键名称导致的 db:push 失败
2026-05-27 22:50:11 +08:00

29 lines
1.5 KiB
TypeScript

import { FastifyInstance } from 'fastify';
import { adminAuthRoutes } from './auth.js';
import { adminAdminsRoutes } from './admins.js';
import { adminQuestionsRoutes } from './questions.js';
import { adminCategoriesRoutes } from './categories.js';
import { adminKnowledgeCardsRoutes } from './knowledge-cards.js';
import { adminSkillTreeRoutes } from './skill-tree.js';
import { adminUsersRoutes } from './users.js';
import { adminStatsRoutes } from './stats.js';
import { adminFeedbackRoutes } from './feedback.js';
import { adminGamificationRoutes } from './gamification.js';
import { adminJobsRoutes } from './jobs.js';
import { adminAuthProvidersRoutes } from './auth-providers.js';
export async function adminRoutes(app: FastifyInstance): Promise<void> {
app.register(adminAuthRoutes);
app.register(adminAdminsRoutes, { prefix: '/admins' });
app.register(adminQuestionsRoutes, { prefix: '/questions' });
app.register(adminCategoriesRoutes, { prefix: '/categories' });
app.register(adminKnowledgeCardsRoutes, { prefix: '/knowledge-cards' });
app.register(adminSkillTreeRoutes, { prefix: '/skill-tree' });
app.register(adminUsersRoutes, { prefix: '/users' });
app.register(adminStatsRoutes, { prefix: '/stats' });
app.register(adminFeedbackRoutes, { prefix: '/feedback' });
app.register(adminGamificationRoutes, { prefix: '/gamification' });
app.register(adminJobsRoutes, { prefix: '/jobs' });
app.register(adminAuthProvidersRoutes, { prefix: '/auth-providers' });
}