This commit is contained in:
Stefan Lazic committed 2026-08-04 09:57:58 +01:00
1 parent 546613e677
commit 4785510144
82 files changed
+4903 -287

No files matched your search

@@ -0,0 +1,77 @@
-- AlterTable
ALTER TABLE `BookingRule` MODIFY `allowGuestBooking` BOOLEAN NOT NULL DEFAULT false;
-- AlterTable
ALTER TABLE `Business` ADD COLUMN `appIconUrl` VARCHAR(191) NULL,
ADD COLUMN `backgroundColor` VARCHAR(191) NULL,
ADD COLUMN `coverImageUrl` VARCHAR(191) NULL,
ADD COLUMN `faviconUrl` VARCHAR(191) NULL,
ADD COLUMN `shortName` VARCHAR(191) NULL,
ADD COLUMN `themeColor` VARCHAR(191) NULL;
-- CreateTable
CREATE TABLE `ApplicationInstallation` (
`id` VARCHAR(191) NOT NULL,
`status` ENUM('NOT_INSTALLED', 'INSTALLING', 'INSTALLED', 'FAILED') NOT NULL DEFAULT 'NOT_INSTALLED',
`installedAt` DATETIME(3) NULL,
`installedVersion` VARCHAR(191) NULL,
`initialAdminUserId` VARCHAR(191) NULL,
`primaryBusinessId` VARCHAR(191) NULL,
`metadata` JSON NULL,
`failureReason` TEXT NULL,
`createdAt` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
`updatedAt` DATETIME(3) NOT NULL,
PRIMARY KEY (`id`)
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci;
-- CreateTable
CREATE TABLE `StaffCalendarConnection` (
`id` VARCHAR(191) NOT NULL,
`staffId` VARCHAR(191) NOT NULL,
`provider` ENUM('GOOGLE') NOT NULL DEFAULT 'GOOGLE',
`externalAccountId` VARCHAR(191) NOT NULL,
`accountEmail` VARCHAR(191) NOT NULL,
`encryptedAccessToken` TEXT NULL,
`encryptedRefreshToken` TEXT NOT NULL,
`tokenExpiresAt` DATETIME(3) NULL,
`selectedCalendarId` VARCHAR(191) NOT NULL,
`selectedCalendarName` VARCHAR(191) NOT NULL,
`connectedAt` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
`lastSyncAt` DATETIME(3) NULL,
`lastSyncError` TEXT NULL,
`revokedAt` DATETIME(3) NULL,
`createdAt` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
`updatedAt` DATETIME(3) NOT NULL,
UNIQUE INDEX `StaffCalendarConnection_staffId_key`(`staffId`),
PRIMARY KEY (`id`)
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci;
-- CreateTable
CREATE TABLE `AppointmentCalendarEvent` (
`id` VARCHAR(191) NOT NULL,
`appointmentId` VARCHAR(191) NOT NULL,
`connectionId` VARCHAR(191) NOT NULL,
`providerEventId` VARCHAR(191) NOT NULL,
`providerCalendarId` VARCHAR(191) NOT NULL,
`status` ENUM('SYNCED', 'PENDING', 'FAILED', 'CANCELLED') NOT NULL DEFAULT 'SYNCED',
`lastSyncedAt` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
`lastSyncError` TEXT NULL,
`sourceVersion` INTEGER NOT NULL DEFAULT 1,
`createdAt` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
`updatedAt` DATETIME(3) NOT NULL,
INDEX `AppointmentCalendarEvent_connectionId_idx`(`connectionId`),
UNIQUE INDEX `AppointmentCalendarEvent_appointmentId_connectionId_key`(`appointmentId`, `connectionId`),
PRIMARY KEY (`id`)
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci;
-- AddForeignKey
ALTER TABLE `StaffCalendarConnection` ADD CONSTRAINT `StaffCalendarConnection_staffId_fkey` FOREIGN KEY (`staffId`) REFERENCES `StaffProfile`(`id`) ON DELETE CASCADE ON UPDATE CASCADE;
-- AddForeignKey
ALTER TABLE `AppointmentCalendarEvent` ADD CONSTRAINT `AppointmentCalendarEvent_appointmentId_fkey` FOREIGN KEY (`appointmentId`) REFERENCES `Appointment`(`id`) ON DELETE CASCADE ON UPDATE CASCADE;
-- AddForeignKey
ALTER TABLE `AppointmentCalendarEvent` ADD CONSTRAINT `AppointmentCalendarEvent_connectionId_fkey` FOREIGN KEY (`connectionId`) REFERENCES `StaffCalendarConnection`(`id`) ON DELETE CASCADE ON UPDATE CASCADE;