fc39346240
Основные изменения:
- Создан класс PanelImporter для парсинга и импорта клиентов
- Добавлена поддержка wg-easy (db.json)
- Добавлена поддержка 3x-ui (export JSON)
- Создана таблица panel_imports для отслеживания истории
- Добавлен UI для загрузки backup файлов при создании сервера
- Добавлены API endpoints: POST /api/servers/{id}/import и GET /api/servers/{id}/imports
- Автоматический импорт после деплоя сервера
- Переводы на всех 6 языках (EN, RU, ES, DE, FR, ZH)
- Обновлена документация в README
Функционал:
- Импорт клиентов с сохранением ключей и IP (wg-easy)
- Импорт клиентов с автогенерацией ключей (3x-ui)
- Поддержка экспирации и лимитов трафика из исходных панелей
- История импортов с информацией о количестве клиентов
- Обработка ошибок с детальным логированием
21 lines
938 B
SQL
21 lines
938 B
SQL
-- Add panel imports tracking table
|
|
-- This migration adds functionality to track imports from other VPN panels
|
|
|
|
CREATE TABLE IF NOT EXISTS panel_imports (
|
|
id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
|
|
server_id INT UNSIGNED NOT NULL,
|
|
panel_type ENUM('wg-easy', '3x-ui') NOT NULL,
|
|
import_file_name VARCHAR(255) NOT NULL,
|
|
clients_imported INT UNSIGNED DEFAULT 0,
|
|
import_data JSON NULL COMMENT 'Original import data for reference',
|
|
status ENUM('pending', 'processing', 'completed', 'failed') DEFAULT 'pending',
|
|
error_message TEXT NULL,
|
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
created_by INT UNSIGNED NULL,
|
|
INDEX idx_server_id (server_id),
|
|
INDEX idx_panel_type (panel_type),
|
|
INDEX idx_status (status),
|
|
FOREIGN KEY (server_id) REFERENCES vpn_servers(id) ON DELETE CASCADE,
|
|
FOREIGN KEY (created_by) REFERENCES users(id) ON DELETE SET NULL
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|