From 1ddd550d9993eb5f53741b2c8535f96eaec6f209 Mon Sep 17 00:00:00 2001 From: Paulo Ferreira Date: Thu, 3 Jul 2025 11:56:23 -0300 Subject: [PATCH 1/2] fix prisma mysql --- prisma/mysql-schema.prisma | 31 +++++++++++++++++-------------- 1 file changed, 17 insertions(+), 14 deletions(-) diff --git a/prisma/mysql-schema.prisma b/prisma/mysql-schema.prisma index 33d09d2b..a6c1a307 100644 --- a/prisma/mysql-schema.prisma +++ b/prisma/mysql-schema.prisma @@ -107,6 +107,9 @@ model Instance { FlowiseSetting FlowiseSetting? Pusher Pusher? N8n N8n[] + N8nSetting N8nSetting[] + Evoai Evoai[] + EvoaiSetting EvoaiSetting? } model Session { @@ -647,22 +650,22 @@ model IsOnWhatsapp { model N8n { id String @id @default(cuid()) - enabled Boolean @default(true) @db.Boolean + enabled Boolean @default(true) description String? @db.VarChar(255) webhookUrl String? @db.VarChar(255) basicAuthUser String? @db.VarChar(255) basicAuthPass String? @db.VarChar(255) expire Int? @default(0) @db.Int keywordFinish String? @db.VarChar(100) - delayMessage Int? @db.Integer + delayMessage Int? @db.Int unknownMessage String? @db.VarChar(100) listeningFromMe Boolean? @default(false) stopBotFromMe Boolean? @default(false) keepOpen Boolean? @default(false) - debounceTime Int? @db.Integer + debounceTime Int? @db.Int ignoreJids Json? splitMessages Boolean? @default(false) - timePerChar Int? @default(50) @db.Integer + timePerChar Int? @default(50) @db.Int triggerType TriggerType? triggerOperator TriggerOperator? triggerValue String? @@ -677,15 +680,15 @@ model N8nSetting { id String @id @default(cuid()) expire Int? @default(0) @db.Int keywordFinish String? @db.VarChar(100) - delayMessage Int? @db.Integer + delayMessage Int? @db.Int unknownMessage String? @db.VarChar(100) listeningFromMe Boolean? @default(false) stopBotFromMe Boolean? @default(false) keepOpen Boolean? @default(false) - debounceTime Int? @db.Integer + debounceTime Int? @db.Int ignoreJids Json? splitMessages Boolean? @default(false) - timePerChar Int? @default(50) @db.Integer + timePerChar Int? @default(50) @db.Int createdAt DateTime? @default(now()) @db.Timestamp updatedAt DateTime @updatedAt @db.Timestamp Fallback N8n? @relation(fields: [n8nIdFallback], references: [id]) @@ -696,21 +699,21 @@ model N8nSetting { model Evoai { id String @id @default(cuid()) - enabled Boolean @default(true) @db.Boolean + enabled Boolean @default(true) description String? @db.VarChar(255) agentUrl String? @db.VarChar(255) apiKey String? @db.VarChar(255) expire Int? @default(0) @db.Int keywordFinish String? @db.VarChar(100) - delayMessage Int? @db.Integer + delayMessage Int? @db.Int unknownMessage String? @db.VarChar(100) listeningFromMe Boolean? @default(false) stopBotFromMe Boolean? @default(false) keepOpen Boolean? @default(false) - debounceTime Int? @db.Integer + debounceTime Int? @db.Int ignoreJids Json? splitMessages Boolean? @default(false) - timePerChar Int? @default(50) @db.Integer + timePerChar Int? @default(50) @db.Int triggerType TriggerType? triggerOperator TriggerOperator? triggerValue String? @@ -725,15 +728,15 @@ model EvoaiSetting { id String @id @default(cuid()) expire Int? @default(0) @db.Int keywordFinish String? @db.VarChar(100) - delayMessage Int? @db.Integer + delayMessage Int? @db.Int unknownMessage String? @db.VarChar(100) listeningFromMe Boolean? @default(false) stopBotFromMe Boolean? @default(false) keepOpen Boolean? @default(false) - debounceTime Int? @db.Integer + debounceTime Int? @db.Int ignoreJids Json? splitMessages Boolean? @default(false) - timePerChar Int? @default(50) @db.Integer + timePerChar Int? @default(50) @db.Int createdAt DateTime? @default(now()) @db.Timestamp updatedAt DateTime @updatedAt @db.Timestamp Fallback Evoai? @relation(fields: [evoaiIdFallback], references: [id]) From 18968b50753c0617a97ab903b92ca4ef4597fe34 Mon Sep 17 00:00:00 2001 From: Paulo Ferreira Date: Thu, 3 Jul 2025 15:13:19 -0300 Subject: [PATCH 2/2] added missing migrations in mysql prisma --- .../migration.sql | 17 +++++ .../migration.sql | 62 +++++++++++++++++++ .../migration.sql | 61 ++++++++++++++++++ .../migration.sql | 2 + .../migration.sql | 7 +++ .../migration.sql | 2 + 6 files changed, 151 insertions(+) create mode 100644 prisma/mysql-migrations/20250225180031_add_nats_integration/migration.sql create mode 100644 prisma/mysql-migrations/20250514232744_add_n8n_table/migration.sql create mode 100644 prisma/mysql-migrations/20250515211815_add_evoai_table/migration.sql create mode 100644 prisma/mysql-migrations/20250516012152_remove_unique_atribute_for_file_name_in_media/migration.sql create mode 100644 prisma/mysql-migrations/20250612155048_add_coluns_trypebot_tables/migration.sql create mode 100644 prisma/mysql-migrations/20250613143000_add_lid_column_to_is_onwhatsapp/migration.sql diff --git a/prisma/mysql-migrations/20250225180031_add_nats_integration/migration.sql b/prisma/mysql-migrations/20250225180031_add_nats_integration/migration.sql new file mode 100644 index 00000000..bd90c55c --- /dev/null +++ b/prisma/mysql-migrations/20250225180031_add_nats_integration/migration.sql @@ -0,0 +1,17 @@ +-- CreateTable +CREATE TABLE `Nats` ( + `id` VARCHAR(191) NOT NULL, + `enabled` BOOLEAN NOT NULL DEFAULT false, + `events` JSON NOT NULL, + `createdAt` TIMESTAMP DEFAULT CURRENT_TIMESTAMP, + `updatedAt` TIMESTAMP NOT NULL, + `instanceId` VARCHAR(191) NOT NULL, + + PRIMARY KEY (`id`) +) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + +-- CreateIndex +CREATE UNIQUE INDEX `Nats_instanceId_key` ON `Nats`(`instanceId`); + +-- AddForeignKey +ALTER TABLE `Nats` ADD CONSTRAINT `Nats_instanceId_fkey` FOREIGN KEY (`instanceId`) REFERENCES `Instance`(`id`) ON DELETE CASCADE ON UPDATE CASCADE; \ No newline at end of file diff --git a/prisma/mysql-migrations/20250514232744_add_n8n_table/migration.sql b/prisma/mysql-migrations/20250514232744_add_n8n_table/migration.sql new file mode 100644 index 00000000..3024583d --- /dev/null +++ b/prisma/mysql-migrations/20250514232744_add_n8n_table/migration.sql @@ -0,0 +1,62 @@ +-- CreateTable +CREATE TABLE `N8n` ( + `id` VARCHAR(191) NOT NULL, + `enabled` BOOLEAN NOT NULL DEFAULT true, + `description` VARCHAR(255), + `webhookUrl` VARCHAR(255), + `basicAuthUser` VARCHAR(255), + `basicAuthPass` VARCHAR(255), + `expire` INTEGER DEFAULT 0, + `keywordFinish` VARCHAR(100), + `delayMessage` INTEGER, + `unknownMessage` VARCHAR(100), + `listeningFromMe` BOOLEAN DEFAULT false, + `stopBotFromMe` BOOLEAN DEFAULT false, + `keepOpen` BOOLEAN DEFAULT false, + `debounceTime` INTEGER, + `ignoreJids` JSON, + `splitMessages` BOOLEAN DEFAULT false, + `timePerChar` INTEGER DEFAULT 50, + `triggerType` ENUM('all', 'keyword', 'none') NULL, + `triggerOperator` ENUM('contains', 'equals', 'startsWith', 'endsWith', 'regex') NULL, + `triggerValue` VARCHAR(191) NULL, + `createdAt` TIMESTAMP DEFAULT CURRENT_TIMESTAMP, + `updatedAt` TIMESTAMP NOT NULL, + `instanceId` VARCHAR(191) NOT NULL, + + PRIMARY KEY (`id`) +) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + +-- CreateTable +CREATE TABLE `N8nSetting` ( + `id` VARCHAR(191) NOT NULL, + `expire` INTEGER DEFAULT 0, + `keywordFinish` VARCHAR(100), + `delayMessage` INTEGER, + `unknownMessage` VARCHAR(100), + `listeningFromMe` BOOLEAN DEFAULT false, + `stopBotFromMe` BOOLEAN DEFAULT false, + `keepOpen` BOOLEAN DEFAULT false, + `debounceTime` INTEGER, + `ignoreJids` JSON, + `splitMessages` BOOLEAN DEFAULT false, + `timePerChar` INTEGER DEFAULT 50, + `createdAt` TIMESTAMP DEFAULT CURRENT_TIMESTAMP, + `updatedAt` TIMESTAMP NOT NULL, + `n8nIdFallback` VARCHAR(100), + `instanceId` VARCHAR(191) NOT NULL, + + PRIMARY KEY (`id`) +) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + +-- CreateIndex +CREATE UNIQUE INDEX `N8nSetting_instanceId_key` ON `N8nSetting`(`instanceId`); + +-- AddForeignKey +ALTER TABLE `N8n` ADD CONSTRAINT `N8n_instanceId_fkey` FOREIGN KEY (`instanceId`) REFERENCES `Instance`(`id`) ON DELETE CASCADE ON UPDATE CASCADE; + +-- AddForeignKey +ALTER TABLE `N8nSetting` ADD CONSTRAINT `N8nSetting_n8nIdFallback_fkey` FOREIGN KEY (`n8nIdFallback`) REFERENCES `N8n`(`id`) ON DELETE SET NULL ON UPDATE CASCADE; + +-- AddForeignKey +ALTER TABLE `N8nSetting` ADD CONSTRAINT `N8nSetting_instanceId_fkey` FOREIGN KEY (`instanceId`) REFERENCES `Instance`(`id`) ON DELETE CASCADE ON UPDATE CASCADE; diff --git a/prisma/mysql-migrations/20250515211815_add_evoai_table/migration.sql b/prisma/mysql-migrations/20250515211815_add_evoai_table/migration.sql new file mode 100644 index 00000000..0fe549f6 --- /dev/null +++ b/prisma/mysql-migrations/20250515211815_add_evoai_table/migration.sql @@ -0,0 +1,61 @@ +-- CreateTable +CREATE TABLE `Evoai` ( + `id` VARCHAR(191) NOT NULL, + `enabled` BOOLEAN NOT NULL DEFAULT true, + `description` VARCHAR(255), + `agentUrl` VARCHAR(255), + `apiKey` VARCHAR(255), + `expire` INTEGER DEFAULT 0, + `keywordFinish` VARCHAR(100), + `delayMessage` INTEGER, + `unknownMessage` VARCHAR(100), + `listeningFromMe` BOOLEAN DEFAULT false, + `stopBotFromMe` BOOLEAN DEFAULT false, + `keepOpen` BOOLEAN DEFAULT false, + `debounceTime` INTEGER, + `ignoreJids` JSON, + `splitMessages` BOOLEAN DEFAULT false, + `timePerChar` INTEGER DEFAULT 50, + `triggerType` ENUM('all', 'keyword', 'none') NULL, + `triggerOperator` ENUM('contains', 'equals', 'startsWith', 'endsWith', 'regex') NULL, + `triggerValue` VARCHAR(191) NULL, + `createdAt` TIMESTAMP DEFAULT CURRENT_TIMESTAMP, + `updatedAt` TIMESTAMP NOT NULL, + `instanceId` VARCHAR(191) NOT NULL, + + PRIMARY KEY (`id`) +) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + +-- CreateTable +CREATE TABLE `EvoaiSetting` ( + `id` VARCHAR(191) NOT NULL, + `expire` INTEGER DEFAULT 0, + `keywordFinish` VARCHAR(100), + `delayMessage` INTEGER, + `unknownMessage` VARCHAR(100), + `listeningFromMe` BOOLEAN DEFAULT false, + `stopBotFromMe` BOOLEAN DEFAULT false, + `keepOpen` BOOLEAN DEFAULT false, + `debounceTime` INTEGER, + `ignoreJids` JSON, + `splitMessages` BOOLEAN DEFAULT false, + `timePerChar` INTEGER DEFAULT 50, + `createdAt` TIMESTAMP DEFAULT CURRENT_TIMESTAMP, + `updatedAt` TIMESTAMP NOT NULL, + `evoaiIdFallback` VARCHAR(100), + `instanceId` VARCHAR(191) NOT NULL, + + PRIMARY KEY (`id`) +) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + +-- CreateIndex +CREATE UNIQUE INDEX `EvoaiSetting_instanceId_key` ON `EvoaiSetting`(`instanceId`); + +-- AddForeignKey +ALTER TABLE `Evoai` ADD CONSTRAINT `Evoai_instanceId_fkey` FOREIGN KEY (`instanceId`) REFERENCES `Instance`(`id`) ON DELETE CASCADE ON UPDATE CASCADE; + +-- AddForeignKey +ALTER TABLE `EvoaiSetting` ADD CONSTRAINT `EvoaiSetting_evoaiIdFallback_fkey` FOREIGN KEY (`evoaiIdFallback`) REFERENCES `Evoai`(`id`) ON DELETE SET NULL ON UPDATE CASCADE; + +-- AddForeignKey +ALTER TABLE `EvoaiSetting` ADD CONSTRAINT `EvoaiSetting_instanceId_fkey` FOREIGN KEY (`instanceId`) REFERENCES `Instance`(`id`) ON DELETE CASCADE ON UPDATE CASCADE; diff --git a/prisma/mysql-migrations/20250516012152_remove_unique_atribute_for_file_name_in_media/migration.sql b/prisma/mysql-migrations/20250516012152_remove_unique_atribute_for_file_name_in_media/migration.sql new file mode 100644 index 00000000..09211634 --- /dev/null +++ b/prisma/mysql-migrations/20250516012152_remove_unique_atribute_for_file_name_in_media/migration.sql @@ -0,0 +1,2 @@ +-- DropIndex +ALTER TABLE `Media` DROP INDEX `Media_fileName_key`; diff --git a/prisma/mysql-migrations/20250612155048_add_coluns_trypebot_tables/migration.sql b/prisma/mysql-migrations/20250612155048_add_coluns_trypebot_tables/migration.sql new file mode 100644 index 00000000..3e97649c --- /dev/null +++ b/prisma/mysql-migrations/20250612155048_add_coluns_trypebot_tables/migration.sql @@ -0,0 +1,7 @@ +-- AlterTable +ALTER TABLE `Typebot` ADD COLUMN `splitMessages` BOOLEAN DEFAULT false, +ADD COLUMN `timePerChar` INTEGER DEFAULT 50; + +-- AlterTable +ALTER TABLE `TypebotSetting` ADD COLUMN `splitMessages` BOOLEAN DEFAULT false, +ADD COLUMN `timePerChar` INTEGER DEFAULT 50; diff --git a/prisma/mysql-migrations/20250613143000_add_lid_column_to_is_onwhatsapp/migration.sql b/prisma/mysql-migrations/20250613143000_add_lid_column_to_is_onwhatsapp/migration.sql new file mode 100644 index 00000000..78cf8bd1 --- /dev/null +++ b/prisma/mysql-migrations/20250613143000_add_lid_column_to_is_onwhatsapp/migration.sql @@ -0,0 +1,2 @@ +-- AlterTable +ALTER TABLE `IsOnWhatsapp` ADD COLUMN `lid` VARCHAR(100);