update README

This commit is contained in:
Georgiy Syralev
2025-11-26 21:43:57 +03:00
parent c4c2610480
commit 753696cc93
58 changed files with 8674 additions and 3752 deletions

View File

@@ -0,0 +1,2 @@
-- AlterTable
ALTER TABLE `storage_console_credential` ADD COLUMN `lastGeneratedAt` DATETIME(3) NULL;

View File

@@ -1,6 +0,0 @@
-- Добавление полей для интеграции с VPS Panel
ALTER TABLE `server` ADD COLUMN `panelVpsId` INT,
ADD COLUMN `panelSyncStatus` VARCHAR(255) DEFAULT 'pending';
-- Создание индекса для быстрого поиска серверов по ID на панели
CREATE INDEX `idx_panelVpsId` ON `server`(`panelVpsId`);

View File

@@ -0,0 +1,18 @@
-- CreateTable
CREATE TABLE `storage_plan` (
`id` INTEGER NOT NULL AUTO_INCREMENT,
`code` VARCHAR(64) NOT NULL,
`name` VARCHAR(128) NOT NULL,
`price` DOUBLE NOT NULL,
`quotaGb` INTEGER NOT NULL,
`bandwidthGb` INTEGER NOT NULL,
`requestLimit` VARCHAR(64) NOT NULL,
`order` INTEGER NOT NULL DEFAULT 0,
`isActive` BOOLEAN NOT NULL DEFAULT TRUE,
`description` VARCHAR(191) NULL,
`createdAt` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
`updatedAt` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
UNIQUE INDEX `storage_plan_code_key`(`code`),
PRIMARY KEY (`id`)
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

View File

@@ -0,0 +1,4 @@
-- AlterTable
ALTER TABLE `storage_bucket`
ADD CONSTRAINT `storage_bucket_plan_fkey`
FOREIGN KEY (`plan`) REFERENCES `storage_plan`(`code`) ON UPDATE CASCADE ON DELETE RESTRICT;

View File

@@ -0,0 +1,13 @@
-- CreateTable
CREATE TABLE `storage_console_credential` (
`id` INTEGER NOT NULL AUTO_INCREMENT,
`bucketId` INTEGER NOT NULL,
`login` VARCHAR(191) NOT NULL,
`passwordHash` VARCHAR(191) NOT NULL,
`createdAt` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
`updatedAt` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3),
UNIQUE INDEX `storage_console_credential_bucketId_key`(`bucketId`),
PRIMARY KEY (`id`),
CONSTRAINT `storage_console_credential_bucketId_fkey` FOREIGN KEY (`bucketId`) REFERENCES `storage_bucket`(`id`) ON DELETE CASCADE ON UPDATE CASCADE
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

View File

@@ -0,0 +1,22 @@
-- AlterTable
ALTER TABLE `storage_plan` ADD COLUMN `pricePerGb` DECIMAL(10,4) NULL AFTER `price`;
ALTER TABLE `storage_plan` ADD COLUMN `bandwidthPerGb` DECIMAL(10,4) NULL AFTER `pricePerGb`;
ALTER TABLE `storage_plan` ADD COLUMN `requestsPerGb` INT NULL AFTER `bandwidthPerGb`;
-- Add custom storage plan (цена, трафик и операции считаются пропорционально GB)
INSERT INTO `storage_plan`
(`code`, `name`, `price`, `pricePerGb`, `bandwidthPerGb`, `requestsPerGb`, `quotaGb`, `bandwidthGb`, `requestLimit`, `order`, `isActive`, `description`, `createdAt`, `updatedAt`)
VALUES
('custom', 'Custom', 0, 0.5, 1.2, 100000, 0, 0, '', 999, true, 'Кастомный тариф - укажите нужное количество GB', NOW(), NOW())
ON DUPLICATE KEY UPDATE
`name` = VALUES(`name`),
`price` = VALUES(`price`),
`pricePerGb` = VALUES(`pricePerGb`),
`bandwidthPerGb` = VALUES(`bandwidthPerGb`),
`requestsPerGb` = VALUES(`requestsPerGb`),
`quotaGb` = VALUES(`quotaGb`),
`bandwidthGb` = VALUES(`bandwidthGb`),
`requestLimit` = VALUES(`requestLimit`),
`order` = VALUES(`order`),
`isActive` = VALUES(`isActive`),
`description` = VALUES(`description`);