xyter/prisma/migrations/20221023164351_init/migration.sql
2022-10-23 19:21:46 +02:00

159 lines
5.5 KiB
SQL

-- CreateTable
CREATE TABLE `Guild` (
`id` VARCHAR(191) NOT NULL,
`embedColorSuccess` VARCHAR(191) NOT NULL DEFAULT '#22bb33',
`embedColorWait` VARCHAR(191) NOT NULL DEFAULT '#f0ad4e',
`embedColorError` VARCHAR(191) NOT NULL DEFAULT '#bb2124',
`embedFooterText` VARCHAR(191) NOT NULL DEFAULT 'https://github.com/ZynerOrg/xyter',
`embedFooterIcon` VARCHAR(191) NOT NULL DEFAULT 'https://github.com/ZynerOrg.png',
`creditsEnabled` BOOLEAN NOT NULL DEFAULT FALSE,
`creditsRate` INTEGER NOT NULL DEFAULT 1,
`creditsTimeout` INTEGER NOT NULL DEFAULT 5,
`creditsWorkRate` INTEGER NOT NULL DEFAULT 25,
`creditsWorkTimeout` INTEGER NOT NULL DEFAULT 86400,
`creditsMinimumLength` INTEGER NOT NULL DEFAULT 5,
`pointsEnabled` BOOLEAN NOT NULL DEFAULT FALSE,
`pointsRate` INTEGER NOT NULL DEFAULT 1,
`pointsTimeout` INTEGER NOT NULL DEFAULT 5,
`pointsMinimumLength` INTEGER NOT NULL DEFAULT 5,
`reputationsEnabled` BOOLEAN NOT NULL DEFAULT FALSE,
`countersEnabled` BOOLEAN NOT NULL DEFAULT FALSE,
`apiCpggUrlIv` VARCHAR(191) NULL,
`apiCpggUrlContent` VARCHAR(191) NULL,
`apiCpggTokenIv` VARCHAR(191) NULL,
`apiCpggTokenContent` VARCHAR(191) NULL,
`auditsEnabled` BOOLEAN NOT NULL DEFAULT FALSE,
`auditsChannelId` VARCHAR(191) NULL,
`shopRolesEnabled` BOOLEAN NOT NULL DEFAULT FALSE,
`shopRolesPricePerHour` INTEGER NOT NULL DEFAULT 5,
`welcomeEnabled` BOOLEAN NOT NULL DEFAULT FALSE,
`welcomeJoinChannelId` VARCHAR(191) NULL,
`welcomeJoinChannelMessage` VARCHAR(191) NULL,
`welcomeLeaveChannelId` VARCHAR(191) NULL,
`welcomeLeaveChannelMessage` VARCHAR(191) NULL,
`createdAt` DATETIME (3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
`updatedAt` DATETIME (3) NOT NULL,
UNIQUE INDEX `Guild_id_key` (`id`))
DEFAULT CHARACTER
SET utf8mb4 COLLATE utf8mb4_unicode_ci;
-- CreateTable
CREATE TABLE `User` (
`id` VARCHAR(191) NOT NULL,
`reputationsEarned` INTEGER NOT NULL DEFAULT 0,
`createdAt` DATETIME (3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
`updatedAt` DATETIME (3) NOT NULL,
UNIQUE INDEX `User_id_key` (`id`))
DEFAULT CHARACTER
SET utf8mb4 COLLATE utf8mb4_unicode_ci;
-- CreateTable
CREATE TABLE `GuildMember` (
`userId` VARCHAR(191) NOT NULL,
`guildId` VARCHAR(191) NOT NULL,
`creditsEarned` INTEGER NOT NULL DEFAULT 0,
`pointsEarned` INTEGER NOT NULL DEFAULT 0,
`createdAt` DATETIME (3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
`updatedAt` DATETIME (3) NOT NULL,
UNIQUE INDEX `GuildMember_userId_guildId_key` (`userId`, `guildId`))
DEFAULT CHARACTER
SET utf8mb4 COLLATE utf8mb4_unicode_ci;
-- CreateTable
CREATE TABLE `GuildCounter` (
`guildId` VARCHAR(191) NOT NULL,
`channelId` VARCHAR(191) NOT NULL,
`triggerWord` VARCHAR(191) NOT NULL,
`count` INTEGER NOT NULL DEFAULT 0,
`createdAt` DATETIME (3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
`updatedAt` DATETIME (3) NOT NULL,
UNIQUE INDEX `GuildCounter_guildId_channelId_key` (`guildId`, `channelId`))
DEFAULT CHARACTER
SET utf8mb4 COLLATE utf8mb4_unicode_ci;
-- CreateTable
CREATE TABLE `Cooldown` (
`guildId` VARCHAR(191) NOT NULL,
`userId` VARCHAR(191) NOT NULL,
`cooldown` INTEGER NOT NULL,
`timeoutId` VARCHAR(191) NOT NULL,
`createdAt` DATETIME (3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
`updatedAt` DATETIME (3) NOT NULL,
UNIQUE INDEX `Cooldown_guildId_userId_timeoutId_key` (`guildId`, `userId`, `timeoutId`))
DEFAULT CHARACTER
SET utf8mb4 COLLATE utf8mb4_unicode_ci;
-- CreateTable
CREATE TABLE `GuildShopRoles` (
`guildId` VARCHAR(191) NOT NULL,
`roleId` VARCHAR(191) NOT NULL,
`userId` VARCHAR(191) NOT NULL,
`pricePerHour` INTEGER NOT NULL DEFAULT 5,
`lastPayed` DATETIME (3) NOT NULL,
`createdAt` DATETIME (3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
`updatedAt` DATETIME (3) NOT NULL,
UNIQUE INDEX `GuildShopRoles_guildId_userId_roleId_key` (`guildId`, `userId`, `roleId`))
DEFAULT CHARACTER
SET utf8mb4 COLLATE utf8mb4_unicode_ci;
-- AddForeignKey
ALTER TABLE `GuildMember`
ADD CONSTRAINT `GuildMember_userId_fkey` FOREIGN KEY (`userId`) REFERENCES `User` (`id`) ON DELETE RESTRICT ON
UPDATE
CASCADE;
-- AddForeignKey
ALTER TABLE `GuildMember`
ADD CONSTRAINT `GuildMember_guildId_fkey` FOREIGN KEY (`guildId`) REFERENCES `Guild` (`id`) ON DELETE RESTRICT ON
UPDATE
CASCADE;
-- AddForeignKey
ALTER TABLE `GuildCounter`
ADD CONSTRAINT `GuildCounter_guildId_fkey` FOREIGN KEY (`guildId`) REFERENCES `Guild` (`id`) ON DELETE RESTRICT ON
UPDATE
CASCADE;
-- AddForeignKey
ALTER TABLE `Cooldown`
ADD CONSTRAINT `Cooldown_guildId_fkey` FOREIGN KEY (`guildId`) REFERENCES `Guild` (`id`) ON DELETE RESTRICT ON
UPDATE
CASCADE;
-- AddForeignKey
ALTER TABLE `Cooldown`
ADD CONSTRAINT `Cooldown_userId_fkey` FOREIGN KEY (`userId`) REFERENCES `User` (`id`) ON DELETE RESTRICT ON
UPDATE
CASCADE;
-- AddForeignKey
ALTER TABLE `GuildShopRoles`
ADD CONSTRAINT `GuildShopRoles_guildId_fkey` FOREIGN KEY (`guildId`) REFERENCES `Guild` (`id`) ON DELETE RESTRICT ON
UPDATE
CASCADE;
-- AddForeignKey
ALTER TABLE `GuildShopRoles`
ADD CONSTRAINT `GuildShopRoles_userId_fkey` FOREIGN KEY (`userId`) REFERENCES `User` (`id`) ON DELETE RESTRICT ON
UPDATE
CASCADE;
-- AddForeignKey
ALTER TABLE `GuildShopRoles`
ADD CONSTRAINT `GuildShopRoles_userId_guildId_fkey` FOREIGN KEY (`userId`, `guildId`) REFERENCES `GuildMember` (`userId`, `guildId`) ON DELETE RESTRICT ON
UPDATE
CASCADE;