import { NextRequest } from 'next/server'; import { prisma } from '@/lib/db'; import { requirePermission } from '@/lib/permissions'; import { success, internalError } from '@/lib/api-response'; import { withCrypto } from '@/lib/api-crypto'; // GET /api/admin/models - 获取所有内容模型 export const GET = withCrypto(async (request: NextRequest) => { const permission = await requirePermission(request, 'content-model', 'read'); if ('response' in permission) return permission.response; try { const models = await prisma.contentModel.findMany({ orderBy: { sortOrder: 'asc' }, }); return success(models.map((m) => ({ ...m, fields: JSON.parse(m.fields), }))); } catch (error) { console.error('Get models error:', error); return internalError(); } });