BIG_UPDATE deleted vps, added s3 infrastructure.

This commit is contained in:
Georgiy Syralev
2025-11-23 14:35:16 +03:00
parent ae1f93a934
commit c4c2610480
173 changed files with 22684 additions and 5894 deletions

162
TARIFF_CATEGORIES_SETUP.md Normal file
View File

@@ -0,0 +1,162 @@
# Инструкция по добавлению категорий тарифов
## ⚠️ ВАЖНО: Выберите один из вариантов миграции
### Вариант 1: Безопасная миграция (рекомендуется)
Сохраняет существующие серверы и тарифы, добавляет новые тарифы.
**Файл:** `backend/prisma/safe_tariff_migration.sql`
### Вариант 2: Полная очистка (только для разработки!)
Удаляет ВСЕ серверы, платежи и тарифы. Начинает с чистого листа.
**Файл:** `backend/prisma/clean_slate_migration.sql`
---
## 📋 Порядок действий (Вариант 1 - Безопасная миграция):
### 1. Подключитесь к MySQL
```bash
mysql -u root -p ospabhost
```
Или через phpMyAdmin / Adminer / другой клиент БД.
### 2. Проверьте текущее состояние
```sql
-- Посмотрите, какие тарифы используются
SELECT
t.id,
t.name,
COUNT(s.id) as servers_count
FROM `tariff` t
LEFT JOIN `server` s ON s.tariffId = t.id
GROUP BY t.id, t.name;
```
### 3. Примените безопасную миграцию
```bash
source backend/prisma/safe_tariff_migration.sql
```
Или скопируйте и выполните вручную.
**Этот скрипт:**
- ✅ Добавит поле `category` в таблицу `tariff`
- ✅ Обновит существующие тарифы (присвоит им `category = 'vps'`)
- ✅ Удалит только неиспользуемые тарифы
- ✅ Добавит 17 новых тарифов с категориями
### 4. Проверьте результат
```sql
SELECT * FROM `tariff` ORDER BY `category`, `price`;
```
---
## 🔥 Порядок действий (Вариант 2 - Полная очистка):
### ⚠️ ВНИМАНИЕ! Это удалит ВСЕ данные о серверах!
Используйте только если:
- Это тестовая/dev среда
- Вы хотите начать с чистого листа
- У вас есть резервная копия БД
### 1. Сделайте резервную копию!
```bash
mysqldump -u root -p ospabhost > backup_before_migration.sql
```
### 2. Примените миграцию
```bash
mysql -u root -p ospabhost < backend/prisma/clean_slate_migration.sql
```
**Этот скрипт:**
- ❌ Удалит все метрики серверов
- ❌ Удалит все платежи
- ❌ Удалит все серверы
- ❌ Удалит все тарифы
- ✅ Добавит поле `category`
- ✅ Добавит 17 новых тарифов
### 3. Сбросьте Prisma клиент (опционально)
```bash
cd backend
npx prisma generate
```
---
## 📝 Новые тарифы (17 шт):
### VPS/VDS (6 тарифов):
```bash
cd backend
npm start
# или
node dist/src/index.js
```
## 🎨 Что изменилось на frontend:
### Новая страница тарифов:
-**3 категории**: VPS/VDS, Хостинг, S3 Хранилище
-**Вкладки** для переключения между категориями
-**Иконки** для каждой категории
-**Карточки** с галочками для списка функций
-**Hero секция** с описанием
-**Секция преимуществ** внизу
-**CTA секция** с призывом к действию
### Дизайн:
- Современный многосекционный layout
- Sticky-табы для удобной навигации
- Hover-эффекты на карточках
- Градиентные фоны для Hero и CTA секций
- Адаптивный дизайн для всех устройств
## 📦 Размеры после сборки:
- **index.html**: 6.71 kB (gzip: 2.46 kB)
- **CSS**: 66.64 kB (gzip: 10.64 kB)
- **JS main**: 938.19 kB (gzip: 237.62 kB)
- **React vendor**: 173.20 kB (gzip: 57.00 kB)
- **UI vendor**: 17.26 kB (gzip: 5.99 kB)
## 🔧 Изменённые файлы:
### Backend:
-`backend/prisma/schema.prisma` - добавлено поле `category`
-`backend/prisma/manual_migration_category.sql` - миграция БД
-`backend/prisma/add_tariff_categories.sql` - новые тарифы
### Frontend:
-`frontend/src/pages/tariffs.tsx` - полностью переделана страница
## 📝 Примечания:
1. **Старые тарифы** не удаляются автоматически. Если нужно их удалить:
```sql
DELETE FROM `tariff` WHERE `category` IS NULL;
```
2. **Category enum**: Доступные значения - `vps`, `hosting`, `s3`
3. **API**: Backend автоматически вернёт поле `category` в ответе `/api/tariff`
4. **Фильтрация**: Frontend фильтрует тарифы по категории на клиентской стороне
## 🚀 Готово к деплою!
После применения SQL и перезапуска backend всё будет работать.