ALTER TABLE `WorkOrder` ADD COLUMN `version` INTEGER UNSIGNED NOT NULL DEFAULT 0;
ALTER TABLE `MaintenancePlan` ADD COLUMN `version` INTEGER UNSIGNED NOT NULL DEFAULT 0;

CREATE TABLE `MaintenanceRequest` (
  `id` VARCHAR(30) NOT NULL,
  `key` VARCHAR(100) NOT NULL,
  `actorId` VARCHAR(30) NOT NULL,
  `operation` VARCHAR(100) NOT NULL,
  `payloadHash` CHAR(64) NOT NULL,
  `result` JSON NOT NULL,
  `createdAt` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
  PRIMARY KEY (`id`),
  UNIQUE INDEX `MaintenanceRequest_key_key` (`key`),
  INDEX `MaintenanceRequest_actorId_createdAt_idx` (`actorId`, `createdAt`),
  CONSTRAINT `MaintenanceRequest_actorId_fkey` FOREIGN KEY (`actorId`) REFERENCES `User` (`id`)
    ON DELETE RESTRICT ON UPDATE CASCADE
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
