CREATE TABLE IF NOT EXISTS `polkurier_integration_settings` (
    `id` TINYINT UNSIGNED NOT NULL PRIMARY KEY,
    `integration_id` INT UNSIGNED NULL,
    `login` VARCHAR(190) NULL,
    `api_token_encrypted` TEXT NULL,
    `default_label_format` VARCHAR(8) NOT NULL DEFAULT 'PDF',
    `created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
    `updated_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    UNIQUE KEY `polkurier_integration_settings_integration_unique` (`integration_id`),
    CONSTRAINT `polkurier_integration_settings_integration_fk`
        FOREIGN KEY (`integration_id`) REFERENCES `integrations` (`id`)
        ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `integrations` (`type`, `name`, `base_url`, `timeout_seconds`, `is_active`, `created_at`, `updated_at`)
VALUES ('polkurier', 'polkurier', 'https://api.polkurier.pl/', 15, 1, NOW(), NOW())
ON DUPLICATE KEY UPDATE
    `base_url` = VALUES(`base_url`),
    `timeout_seconds` = VALUES(`timeout_seconds`),
    `updated_at` = VALUES(`updated_at`);

INSERT INTO `polkurier_integration_settings` (`id`, `integration_id`, `created_at`, `updated_at`)
SELECT 1, `id`, NOW(), NOW()
FROM `integrations`
WHERE `type` = 'polkurier' AND `name` = 'polkurier'
LIMIT 1
ON DUPLICATE KEY UPDATE
    `integration_id` = VALUES(`integration_id`),
    `updated_at` = VALUES(`updated_at`);
