# Полный список файлов — Админ-панель, Модерация, Монетизация

## Новые серверные файлы (16)

```
server/src/middleware/requireRole.ts          — RBAC middleware
server/src/middleware/checkBanned.ts           — Проверка бана
server/src/utils/moderation.ts                — Кэш конфига + keyword check
server/src/routes/admin/index.ts              — Агрегатор админ-роутов
server/src/routes/admin/stats.ts              — Аналитика дашборда
server/src/routes/admin/users.ts              — Управление юзерами
server/src/routes/admin/listings.ts           — Управление листингами
server/src/routes/admin/reports.ts            — Управление жалобами
server/src/routes/admin/moderation.ts         — Очередь модерации
server/src/routes/admin/payments.ts           — Платежи и выручка
server/src/routes/admin/settings.ts           — Настройки платформы
server/src/routes/report.ts                   — Создание жалобы (юзер)
server/src/routes/subscription.ts             — Подписки
server/src/routes/promotion.ts                — Продвижение листингов
server/src/validators/admin.ts                — Zod-схемы для админки
server/src/validators/report.ts               — Zod-схема жалобы
```

## Новые клиентские файлы (13)

```
client/src/components/layout/RequireRole.tsx   — Route guard по роли
client/src/components/layout/AdminLayout.tsx   — Sidebar-layout админки
client/src/components/ui/StatCard.tsx           — Карточка метрики
client/src/components/ui/DataTable.tsx          — Таблица с пагинацией
client/src/components/ReportModal.tsx           — Модалка жалобы
client/src/pages/admin/AdminDashboardPage.tsx   — Дашборд
client/src/pages/admin/AdminUsersPage.tsx       — Юзеры
client/src/pages/admin/AdminUserDetailPage.tsx  — Детали юзера
client/src/pages/admin/AdminListingsPage.tsx    — Листинги
client/src/pages/admin/AdminReportsPage.tsx     — Жалобы
client/src/pages/admin/AdminModerationPage.tsx  — Очередь модерации
client/src/pages/admin/AdminPaymentsPage.tsx    — Платежи
client/src/pages/admin/AdminSettingsPage.tsx    — Настройки
```

## Модифицированные файлы (13)

```
server/prisma/schema.prisma                    — 8 enum + 6 моделей + расширение 3 моделей
server/prisma/seed.ts                          — PlatformConfig + роли + cleanup
server/src/index.ts                            — 4 новых route group
server/src/middleware/auth.ts                  — userRole в Request
server/src/routes/auth.ts                      — role в select + isBanned check
server/src/routes/listing.ts                   — autoApprove + keywords + isFeatured
server/src/routes/payment.ts                   — динамический listingFee
server/src/routes/offer.ts                     — commission при accept
client/src/types/index.ts                      — role + новые типы
client/src/context/AuthContext.tsx              — isAdmin/isModerator/isSuperAdmin
client/src/router.tsx                          — /admin/* routes
client/src/components/layout/Header.tsx         — ссылка Admin
client/src/pages/ProductDetailPage.tsx          — ReportModal
client/src/pages/NotificationsPage.tsx          — новые notification types
```

## Итого

- **29 новых файлов**
- **13+1 изменённых файлов**
- **43 файла** затронуто

## Структура папки admin routes

```
server/src/routes/admin/
├── index.ts        — authenticate + mount sub-routers
├── stats.ts        — GET /stats, /stats/revenue, /stats/users, /stats/listings
├── users.ts        — GET/PATCH/POST users, ban, unban, role
├── listings.ts     — GET listings, approve, reject, delete, feature
├── reports.ts      — GET/PATCH reports
├── moderation.ts   — GET queue, GET logs
├── payments.ts     — GET payments, GET revenue
└── settings.ts     — GET/PATCH settings
```

## Структура папки admin pages

```
client/src/pages/admin/
├── AdminDashboardPage.tsx
├── AdminUsersPage.tsx
├── AdminUserDetailPage.tsx
├── AdminListingsPage.tsx
├── AdminReportsPage.tsx
├── AdminModerationPage.tsx
├── AdminPaymentsPage.tsx
└── AdminSettingsPage.tsx
```
