USE `garage_management`;

INSERT INTO `settings` (`setting_key`, `setting_value`) VALUES
  ('reminder_cycle_months', '3'),
  ('smtp_host', ''),
  ('smtp_port', '587'),
  ('smtp_username', ''),
  ('smtp_password', ''),
  ('smtp_encryption', 'tls'),
  ('smtp_from_email', ''),
  ('smtp_from_name', '')
ON DUPLICATE KEY UPDATE `setting_value` = `setting_value`;

INSERT INTO `permissions` (`module`, `slug`, `name`) VALUES
  ('reminders', 'reminders.view', 'View Next Service Reminders'),
  ('reminders', 'reminders.manage', 'Send/Dismiss Service Reminders'),
  ('rework', 'rework.view', 'View Rework Cost Report')
ON DUPLICATE KEY UPDATE `name` = VALUES(`name`);

INSERT INTO `role_permissions` (`role_id`, `permission_id`)
SELECT (SELECT id FROM roles WHERE name = 'Admin'), p.id FROM permissions p
WHERE p.module IN ('reminders','rework')
ON DUPLICATE KEY UPDATE `role_id` = `role_id`;

INSERT INTO `role_permissions` (`role_id`, `permission_id`)
SELECT (SELECT id FROM roles WHERE name = 'Manager'), p.id FROM permissions p
WHERE p.module IN ('reminders','rework')
ON DUPLICATE KEY UPDATE `role_id` = `role_id`;

INSERT INTO `role_permissions` (`role_id`, `permission_id`)
SELECT (SELECT id FROM roles WHERE name = 'Receptionist'), p.id FROM permissions p
WHERE p.slug IN ('reminders.view','reminders.manage')
ON DUPLICATE KEY UPDATE `role_id` = `role_id`;

INSERT INTO `role_permissions` (`role_id`, `permission_id`)
SELECT (SELECT id FROM roles WHERE name = 'Service Advisor'), p.id FROM permissions p
WHERE p.slug IN ('reminders.view','reminders.manage')
ON DUPLICATE KEY UPDATE `role_id` = `role_id`;
