-- Table structure for table `expenses`
--

CREATE TABLE `expenses` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `expense_date` date NOT NULL,
  `amount` decimal(15,2) NOT NULL DEFAULT 0.00,
  `expense_account_id` bigint(20) UNSIGNED NOT NULL,
  `pay_from_type` enum('bank','cash') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'bank',
  `pay_from_id` bigint(20) UNSIGNED NOT NULL,
  `cost_center_id` bigint(20) UNSIGNED DEFAULT NULL,
  `payee` varchar(150) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `reference` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `status` enum('draft','approved','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft',
  `journal_entry_id` bigint(20) UNSIGNED DEFAULT NULL,
  `approved_at` datetime DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `expenses`
--

INSERT INTO `expenses` (`id`, `number`, `expense_date`, `amount`, `expense_account_id`, `pay_from_type`, `pay_from_id`, `cost_center_id`, `payee`, `reference`, `notes`, `status`, `journal_entry_id`, `approved_at`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'EXP-DEMO-001', '2026-07-08', 45.50, 13, 'cash', 1, 1, 'Office supplies shop', NULL, NULL, 'approved', NULL, '2026-07-11 16:01:58', 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `fiscal_years`
--

CREATE TABLE `fiscal_years` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL,
  `code` varchar(30) COLLATE utf8mb4_unicode_ci NOT NULL,
  `start_date` date NOT NULL,
  `end_date` date NOT NULL,
  `status` enum('open','closed') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'open',
  `is_current` tinyint(1) NOT NULL DEFAULT 0,
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `fiscal_years`
--

INSERT INTO `fiscal_years` (`id`, `name`, `code`, `start_date`, `end_date`, `status`, `is_current`, `notes`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'Fiscal Year 2026', 'FY2026', '2026-01-01', '2026-12-31', 'open', 1, NULL, 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `fixed_assets`
--

CREATE TABLE `fixed_assets` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `name` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL,
  `category_id` bigint(20) UNSIGNED NOT NULL,
  `purchase_date` date NOT NULL,
  `in_service_date` date DEFAULT NULL,
  `cost` decimal(15,2) NOT NULL DEFAULT 0.00,
  `salvage_value` decimal(15,2) NOT NULL DEFAULT 0.00,
  `useful_life_months` int(11) DEFAULT NULL,
  `accum_depreciation` decimal(15,2) NOT NULL DEFAULT 0.00,
  `book_value` decimal(15,2) NOT NULL DEFAULT 0.00,
  `status` enum('active','disposed','fully_depreciated') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'active',
  `location` varchar(200) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `asset_account_id` bigint(20) UNSIGNED DEFAULT NULL,
  `accum_depr_account_id` bigint(20) UNSIGNED DEFAULT NULL,
  `depr_expense_account_id` bigint(20) UNSIGNED DEFAULT NULL,
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `fs_customer_signatures`
--

CREATE TABLE `fs_customer_signatures` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `service_visit_id` bigint(20) UNSIGNED DEFAULT NULL,
  `inspection_report_id` bigint(20) UNSIGNED DEFAULT NULL,
  `company_id` bigint(20) UNSIGNED DEFAULT NULL,
  `signer_name` varchar(150) COLLATE utf8mb4_unicode_ci NOT NULL,
  `signer_title` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `signature_notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `signed_at` datetime DEFAULT NULL,
  `status` enum('captured','voided') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'captured',
  `captured_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `fs_inspection_reports`
--

CREATE TABLE `fs_inspection_reports` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `service_visit_id` bigint(20) UNSIGNED DEFAULT NULL,
  `work_order_id` bigint(20) UNSIGNED DEFAULT NULL,
  `inspector_employee_id` bigint(20) UNSIGNED DEFAULT NULL,
  `title` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL,
  `findings` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `result` enum('pass','fail','conditional','pending') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'pending',
  `status` enum('draft','submitted','approved','rejected') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft',
  `inspected_at` datetime DEFAULT NULL,
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `fs_service_visits`
--

CREATE TABLE `fs_service_visits` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `title` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `company_id` bigint(20) UNSIGNED DEFAULT NULL,
  `work_order_id` bigint(20) UNSIGNED DEFAULT NULL,
  `technician_employee_id` bigint(20) UNSIGNED DEFAULT NULL,
  `priority` enum('low','normal','high','urgent') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'normal',
  `status` enum('draft','scheduled','en_route','on_site','completed','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft',
  `location` varchar(200) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `scheduled_date` date DEFAULT NULL,
  `scheduled_start` datetime DEFAULT NULL,
  `scheduled_end` datetime DEFAULT NULL,
  `arrived_at` datetime DEFAULT NULL,
  `completed_at` datetime DEFAULT NULL,
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `fs_technician_jobs`
--

CREATE TABLE `fs_technician_jobs` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `service_visit_id` bigint(20) UNSIGNED DEFAULT NULL,
  `employee_id` bigint(20) UNSIGNED NOT NULL,
  `title` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL,
  `role` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `status` enum('assigned','accepted','in_progress','done','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'assigned',
  `priority` enum('low','normal','high','urgent') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'normal',
  `due_date` date DEFAULT NULL,
  `assigned_at` datetime DEFAULT NULL,
  `started_at` datetime DEFAULT NULL,
  `completed_at` datetime DEFAULT NULL,
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `assigned_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `goods_receipts`
--

CREATE TABLE `goods_receipts` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `purchase_order_id` bigint(20) UNSIGNED NOT NULL,
  `supplier_id` bigint(20) UNSIGNED NOT NULL,
  `receipt_date` date NOT NULL,
  `status` enum('draft','posted','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft',
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `posted_by` bigint(20) UNSIGNED DEFAULT NULL,
  `posted_at` datetime DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `goods_receipts`
--

INSERT INTO `goods_receipts` (`id`, `number`, `purchase_order_id`, `supplier_id`, `receipt_date`, `status`, `notes`, `posted_by`, `posted_at`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'GRN-DEMO-001', 1, 1, '2026-07-09', 'posted', NULL, 2, '2026-07-11 16:01:58', 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `goods_receipt_lines`
--

CREATE TABLE `goods_receipt_lines` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `goods_receipt_id` bigint(20) UNSIGNED NOT NULL,
  `item_code` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `item_name` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL,
  `quantity` decimal(12,3) NOT NULL DEFAULT 1.000,
  `unit` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT 'pcs',
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `sort_order` int(11) NOT NULL DEFAULT 0,
  `created_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `goods_receipt_lines`
--

INSERT INTO `goods_receipt_lines` (`id`, `goods_receipt_id`, `item_code`, `item_name`, `quantity`, `unit`, `notes`, `sort_order`, `created_at`) VALUES
(1, 1, 'DET-5L', 'Floor Detergent 5L', 50.000, 'pcs', NULL, 1, '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `holidays`
--

CREATE TABLE `holidays` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `name` varchar(150) COLLATE utf8mb4_unicode_ci NOT NULL,
  `date` date NOT NULL,
  `is_recurring` tinyint(1) NOT NULL DEFAULT 0,
  `branch_id` bigint(20) UNSIGNED DEFAULT NULL,
  `description` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `holidays`
--

INSERT INTO `holidays` (`id`, `name`, `date`, `is_recurring`, `branch_id`, `description`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'Labour Day', '2026-05-01', 1, NULL, 'Public holiday', 3, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(2, 'National Day', '2026-12-16', 1, NULL, 'Bahrain National Day', 3, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `inventory_assets`
--

CREATE TABLE `inventory_assets` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `asset_tag` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL,
  `name` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL,
  `product_id` bigint(20) UNSIGNED DEFAULT NULL,
  `category` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `location` varchar(150) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `serial_number` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `purchase_date` date DEFAULT NULL,
  `purchase_cost` decimal(15,2) NOT NULL DEFAULT 0.00,
  `status` enum('active','in_repair','disposed','lost') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'active',
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `inventory_assets`
--

INSERT INTO `inventory_assets` (`id`, `asset_tag`, `name`, `product_id`, `category`, `location`, `serial_number`, `purchase_date`, `purchase_cost`, `status`, `notes`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'EQ-DEMO-001', 'Industrial Vacuum', NULL, 'Equipment', 'Main Warehouse', 'VAC-99821', '2025-07-11', 185.00, 'active', NULL, 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(2, 'EQ-DEMO-002', 'Floor Scrubber', NULL, 'Equipment', 'BCC Store', 'SCR-44102', '2025-11-11', 420.00, 'active', NULL, 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `invoices`
--

CREATE TABLE `invoices` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `company_id` bigint(20) UNSIGNED NOT NULL,
  `sales_order_id` bigint(20) UNSIGNED DEFAULT NULL,
  `invoice_date` date NOT NULL,
  `due_date` date DEFAULT NULL,
  `status` enum('draft','issued','partially_paid','paid','overdue','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft',
  `subtotal` decimal(15,2) NOT NULL DEFAULT 0.00,
  `tax_amount` decimal(15,2) NOT NULL DEFAULT 0.00,
  `total` decimal(15,2) NOT NULL DEFAULT 0.00,
  `amount_paid` decimal(15,2) NOT NULL DEFAULT 0.00,
  `payment_notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `issued_at` datetime DEFAULT NULL,
  `paid_at` datetime DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `invoices`
--

INSERT INTO `invoices` (`id`, `number`, `company_id`, `sales_order_id`, `invoice_date`, `due_date`, `status`, `subtotal`, `tax_amount`, `total`, `amount_paid`, `payment_notes`, `notes`, `issued_at`, `paid_at`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'INV-DEMO-001', 3, 1, '2026-07-01', '2026-07-31', 'issued', 850.00, 0.00, 850.00, 0.00, NULL, NULL, '2026-07-11 16:01:58', NULL, 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `invoice_lines`
--

CREATE TABLE `invoice_lines` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `invoice_id` bigint(20) UNSIGNED NOT NULL,
  `item_code` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `item_name` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `quantity` decimal(12,3) NOT NULL DEFAULT 1.000,
  `unit` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT 'pcs',
  `unit_price` decimal(15,2) NOT NULL DEFAULT 0.00,
  `line_total` decimal(15,2) NOT NULL DEFAULT 0.00,
  `sort_order` int(11) NOT NULL DEFAULT 0,
  `created_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `invoice_lines`
--

INSERT INTO `invoice_lines` (`id`, `invoice_id`, `item_code`, `item_name`, `description`, `quantity`, `unit`, `unit_price`, `line_total`, `sort_order`, `created_at`) VALUES
(1, 1, 'SVC-CLEAN', 'Cleaning Service (month)', NULL, 1.000, 'month', 850.00, 850.00, 1, '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `journal_entries`
--

CREATE TABLE `journal_entries` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `entry_date` date NOT NULL,
  `fiscal_year_id` bigint(20) UNSIGNED DEFAULT NULL,
  `reference` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `description` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `status` enum('draft','posted','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft',
  `total_debit` decimal(15,2) NOT NULL DEFAULT 0.00,
  `total_credit` decimal(15,2) NOT NULL DEFAULT 0.00,
  `posted_by` bigint(20) UNSIGNED DEFAULT NULL,
  `posted_at` datetime DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `journal_entries`
--

INSERT INTO `journal_entries` (`id`, `number`, `entry_date`, `fiscal_year_id`, `reference`, `description`, `status`, `total_debit`, `total_credit`, `posted_by`, `posted_at`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'JE-DEMO-001', '2026-07-06', 1, 'Opening demo', 'Demo posted journal entry', 'posted', 5000.00, 5000.00, 2, '2026-07-11 16:01:58', 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `journal_entry_lines`
--

CREATE TABLE `journal_entry_lines` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `journal_entry_id` bigint(20) UNSIGNED NOT NULL,
  `account_id` bigint(20) UNSIGNED NOT NULL,
  `description` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `debit` decimal(15,2) NOT NULL DEFAULT 0.00,
  `credit` decimal(15,2) NOT NULL DEFAULT 0.00,
  `sort_order` int(11) NOT NULL DEFAULT 0,
  `created_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `journal_entry_lines`
--

INSERT INTO `journal_entry_lines` (`id`, `journal_entry_id`, `account_id`, `description`, `debit`, `credit`, `sort_order`, `created_at`) VALUES
(1, 1, 3, 'Bank', 5000.00, 0.00, 1, '2026-07-11 16:01:58'),
(2, 1, 9, 'Equity', 0.00, 5000.00, 2, '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `leads`
--

CREATE TABLE `leads` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `first_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL,
  `last_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL,
  `company_name` varchar(150) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `email` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `phone` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `job_title` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `lead_source_id` bigint(20) UNSIGNED DEFAULT NULL,
  `assigned_to` bigint(20) UNSIGNED DEFAULT NULL,
  `score` int(11) NOT NULL DEFAULT 0,
  `status` enum('new','contacted','qualified','unqualified','converted') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'new',
  `priority` enum('low','medium','high') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'medium',
  `estimated_value` decimal(15,2) DEFAULT NULL,
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `converted_at` datetime DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `leads`
--

INSERT INTO `leads` (`id`, `first_name`, `last_name`, `company_name`, `email`, `phone`, `job_title`, `lead_source_id`, `assigned_to`, `score`, `status`, `priority`, `estimated_value`, `notes`, `converted_at`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'Sara', 'Abdulla', 'Bright Offices', 'sara@bright.demo', '+97339001111', 'Facilities Head', 1, 2, 45, 'new', 'high', 8500.00, 'Interested in cleaning contract', NULL, 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(2, 'Rashid', 'Nasser', 'Island Cafe', 'rashid@island.demo', '+97339002222', NULL, 2, 2, 30, 'contacted', 'medium', 3200.00, NULL, NULL, 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(3, 'Layla', 'Hameed', 'Desert Logistics', 'layla@desert.demo', '+97339003333', NULL, 1, 2, 70, 'qualified', 'high', 15000.00, NULL, NULL, 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `lead_assignment_rules`
--

CREATE TABLE `lead_assignment_rules` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL,
  `lead_source_id` bigint(20) UNSIGNED DEFAULT NULL,
  `assign_to_user_id` bigint(20) UNSIGNED NOT NULL,
  `priority` int(11) NOT NULL DEFAULT 0,
  `status` enum('active','inactive') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'active',
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `lead_conversions`
--

CREATE TABLE `lead_conversions` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `lead_id` bigint(20) UNSIGNED NOT NULL,
  `converted_by` bigint(20) UNSIGNED DEFAULT NULL,
  `conversion_type` enum('customer','opportunity') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'customer',
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `converted_at` datetime NOT NULL,
  `created_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `lead_scoring_rules`
--

CREATE TABLE `lead_scoring_rules` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL,
  `criterion` enum('has_email','has_phone','has_company','source','estimated_value','priority') COLLATE utf8mb4_unicode_ci NOT NULL,
  `operator` enum('equals','not_equals','greater_than','less_than','is_set') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'is_set',
  `value` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `points` int(11) NOT NULL DEFAULT 0,
  `status` enum('active','inactive') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'active',
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `lead_scoring_rules`
--

INSERT INTO `lead_scoring_rules` (`id`, `name`, `criterion`, `operator`, `value`, `points`, `status`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'Has email address', 'has_email', 'is_set', NULL, 10, 'active', NULL, NULL, '2026-07-10 03:48:06', NULL),
(2, 'Has phone number', 'has_phone', 'is_set', NULL, 10, 'active', NULL, NULL, '2026-07-10 03:48:06', NULL),
(3, 'Has company name', 'has_company', 'is_set', NULL, 15, 'active', NULL, NULL, '2026-07-10 03:48:06', NULL),
(4, 'High priority lead', 'priority', 'equals', 'high', 20, 'active', NULL, NULL, '2026-07-10 03:48:06', NULL),
(5, 'Estimated value over 10,000', 'estimated_value', 'greater_than', '10000', 25, 'active', NULL, NULL, '2026-07-10 03:48:06', NULL);

-- --------------------------------------------------------

--
-- Table structure for table `lead_sources`
--

CREATE TABLE `lead_sources` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL,
  `code` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `status` enum('active','inactive') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'active',
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `lead_sources`
--

INSERT INTO `lead_sources` (`id`, `name`, `code`, `description`, `status`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'Website', 'WEB', 'Inbound leads from company website', 'active', NULL, NULL, '2026-07-10 03:48:06', NULL),
(2, 'Referral', 'REF', 'Referred by existing customer or partner', 'active', NULL, NULL, '2026-07-10 03:48:06', NULL),
(3, 'Cold Call', 'CC', 'Outbound cold calling campaign', 'active', NULL, NULL, '2026-07-10 03:48:06', NULL),
(4, 'Trade Show', 'TS', 'Event or exhibition leads', 'active', NULL, NULL, '2026-07-10 03:48:06', NULL),
(5, 'Social Media', 'SM', 'LinkedIn, Facebook, or other social channels', 'active', NULL, NULL, '2026-07-10 03:48:06', NULL);

-- --------------------------------------------------------

--
-- Table structure for table `leave_balances`
--

CREATE TABLE `leave_balances` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `employee_id` bigint(20) UNSIGNED NOT NULL,
  `leave_type_id` bigint(20) UNSIGNED NOT NULL,
  `year` smallint(5) UNSIGNED NOT NULL,
  `entitled` decimal(5,1) NOT NULL DEFAULT 0.0,
  `used` decimal(5,1) NOT NULL DEFAULT 0.0,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `leave_balances`
--

INSERT INTO `leave_balances` (`id`, `employee_id`, `leave_type_id`, `year`, `entitled`, `used`, `created_at`, `updated_at`) VALUES
(1, 1, 1, 2026, 30.0, 2.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(2, 1, 2, 2026, 15.0, 1.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(3, 1, 3, 2026, 7.0, 0.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(4, 1, 4, 2026, 0.0, 0.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(5, 2, 1, 2026, 30.0, 2.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(6, 2, 2, 2026, 15.0, 1.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(7, 2, 3, 2026, 7.0, 0.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(8, 2, 4, 2026, 0.0, 0.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(9, 3, 1, 2026, 30.0, 2.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(10, 3, 2, 2026, 15.0, 1.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(11, 3, 3, 2026, 7.0, 0.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(12, 3, 4, 2026, 0.0, 0.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(13, 4, 1, 2026, 30.0, 2.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(14, 4, 2, 2026, 15.0, 1.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(15, 4, 3, 2026, 7.0, 0.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(16, 4, 4, 2026, 0.0, 0.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(17, 5, 1, 2026, 30.0, 2.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(18, 5, 2, 2026, 15.0, 1.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(19, 5, 3, 2026, 7.0, 0.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(20, 5, 4, 2026, 0.0, 0.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(21, 6, 1, 2026, 30.0, 2.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(22, 6, 2, 2026, 15.0, 1.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(23, 6, 3, 2026, 7.0, 0.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(24, 6, 4, 2026, 0.0, 0.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(25, 7, 1, 2026, 30.0, 2.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(26, 7, 2, 2026, 15.0, 1.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(27, 7, 3, 2026, 7.0, 0.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(28, 7, 4, 2026, 0.0, 0.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(29, 8, 1, 2026, 30.0, 2.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(30, 8, 2, 2026, 15.0, 1.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(31, 8, 3, 2026, 7.0, 0.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(32, 8, 4, 2026, 0.0, 0.0, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `leave_requests`
--

CREATE TABLE `leave_requests` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `employee_id` bigint(20) UNSIGNED NOT NULL,
  `leave_type_id` bigint(20) UNSIGNED NOT NULL,
  `start_date` date NOT NULL,
  `end_date` date NOT NULL,
  `days` decimal(5,1) NOT NULL DEFAULT 0.0,
  `reason` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `status` enum('pending','approved','rejected','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'pending',
  `approved_by` bigint(20) UNSIGNED DEFAULT NULL,
  `approved_at` datetime DEFAULT NULL,
  `rejection_reason` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `leave_requests`
--

INSERT INTO `leave_requests` (`id`, `employee_id`, `leave_type_id`, `start_date`, `end_date`, `days`, `reason`, `status`, `approved_by`, `approved_at`, `rejection_reason`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 4, 1, '2026-07-16', '2026-07-18', 3.0, 'Family trip', 'pending', NULL, NULL, NULL, 3, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(2, 5, 2, '2026-07-01', '2026-07-02', 2.0, 'Flu', 'approved', 3, '2026-07-11 16:01:58', NULL, 3, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(3, 8, 1, '2026-06-21', '2026-06-23', 3.0, 'Personal', 'rejected', 3, '2026-07-11 16:01:58', 'Busy season — please rebook', 3, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `leave_types`
--

CREATE TABLE `leave_types` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL,
  `code` varchar(10) COLLATE utf8mb4_unicode_ci NOT NULL,
  `days_per_year` decimal(5,1) NOT NULL DEFAULT 0.0,
  `is_paid` tinyint(1) NOT NULL DEFAULT 1,
  `requires_approval` tinyint(1) NOT NULL DEFAULT 1,
  `description` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `status` enum('active','inactive') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'active',
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `leave_types`
--

INSERT INTO `leave_types` (`id`, `name`, `code`, `days_per_year`, `is_paid`, `requires_approval`, `description`, `status`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'Annual Leave', 'AL', 30.0, 1, 1, 'Standard annual vacation entitlement', 'active', NULL, NULL, '2026-07-10 02:11:43', NULL),
(2, 'Sick Leave', 'SL', 15.0, 1, 1, 'Medical or health-related absence', 'active', NULL, NULL, '2026-07-10 02:11:44', NULL),
(3, 'Casual Leave', 'CL', 7.0, 1, 1, 'Short-notice personal leave', 'active', NULL, NULL, '2026-07-10 02:11:44', NULL),
(4, 'Unpaid Leave', 'UL', 0.0, 0, 1, 'Leave without pay', 'active', NULL, NULL, '2026-07-10 02:11:44', NULL);

-- --------------------------------------------------------

--
-- Table structure for table `login_attempts`
--

CREATE TABLE `login_attempts` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `user_id` bigint(20) UNSIGNED DEFAULT NULL,
  `identifier` varchar(191) NOT NULL COMMENT 'Raw username/email submitted at login time',
  `ip_address` varchar(45) NOT NULL,
  `user_agent` varchar(255) DEFAULT NULL,
  `was_successful` tinyint(1) NOT NULL DEFAULT 0,
  `failure_reason` varchar(100) DEFAULT NULL,
  `created_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

--
-- Dumping data for table `login_attempts`
--

INSERT INTO `login_attempts` (`id`, `user_id`, `identifier`, `ip_address`, `user_agent`, `was_successful`, `failure_reason`, `created_at`) VALUES
(1, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.0.0 Safari/537.36', 0, 'bad_password', '2026-07-09 11:56:55'),
(2, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.0.0 Safari/537.36', 1, NULL, '2026-07-09 11:57:33'),
(3, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.0.0 Safari/537.36', 0, 'bad_password', '2026-07-09 12:44:23'),
(4, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.0.0 Safari/537.36', 0, 'bad_password', '2026-07-09 12:44:34'),
(5, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.0.0 Safari/537.36', 1, NULL, '2026-07-09 12:44:42'),
(6, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.0.0 Safari/537.36', 1, NULL, '2026-07-09 14:30:21'),
(7, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.0.0 Safari/537.36', 1, NULL, '2026-07-09 14:39:54'),
(8, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.0.0 Safari/537.36', 0, 'bad_password', '2026-07-09 22:54:37'),
(9, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.0.0 Safari/537.36', 0, 'bad_password', '2026-07-09 22:54:56'),
(10, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.0.0 Safari/537.36', 1, NULL, '2026-07-09 22:55:19'),
(11, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.0.0 Safari/537.36', 0, 'bad_password', '2026-07-09 23:05:49'),
(12, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.0.0 Safari/537.36', 1, NULL, '2026-07-09 23:05:53'),
(13, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.0.0 Safari/537.36', 1, NULL, '2026-07-09 23:08:48'),
(14, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Cursor/3.1.17 Chrome/142.0.7444.265 Electron/39.8.1 Safari/537.36', 1, NULL, '2026-07-09 23:13:15'),
(15, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.0.0 Safari/537.36', 1, NULL, '2026-07-10 00:54:06'),
(16, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 1, NULL, '2026-07-10 13:37:01'),
(17, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 1, NULL, '2026-07-10 14:51:53'),
(18, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 1, NULL, '2026-07-10 15:47:02'),
(19, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 0, 'bad_password', '2026-07-10 17:44:43'),
(20, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 1, NULL, '2026-07-10 17:44:51'),
(21, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 1, NULL, '2026-07-10 23:10:31'),
(22, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 1, NULL, '2026-07-11 07:34:49'),
(23, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 1, NULL, '2026-07-11 10:11:20'),
(24, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 1, NULL, '2026-07-11 12:55:30'),
(25, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 1, NULL, '2026-07-11 20:33:16'),
(26, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 1, NULL, '2026-07-11 22:58:17'),
(27, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 1, NULL, '2026-07-12 06:22:17'),
(28, 2, 'boss', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 1, NULL, '2026-07-12 06:32:09'),
(29, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 1, NULL, '2026-07-12 06:32:30'),
(30, 2, 'muhammedazan254', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 0, 'bad_password', '2026-07-12 06:34:34'),
(31, 2, 'muhammedazan254', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 1, NULL, '2026-07-12 06:34:43'),
(32, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 1, NULL, '2026-07-12 06:35:09'),
(33, 2, 'muhammedazan254', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 1, NULL, '2026-07-12 06:45:28'),
(34, 2, 'muhammedazan254', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 1, NULL, '2026-07-12 06:46:12'),
(35, 2, 'muhammedazan254', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 0, 'bad_password', '2026-07-12 06:50:42'),
(36, 2, 'muhammedazan254', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 1, NULL, '2026-07-12 06:50:49'),
(37, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 1, NULL, '2026-07-12 07:00:07'),
(38, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 1, NULL, '2026-07-12 09:14:33'),
(39, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 0, 'bad_password', '2026-07-12 12:41:44'),
(40, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 1, NULL, '2026-07-12 12:41:55'),
(41, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 1, NULL, '2026-07-13 15:58:38'),
(42, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 1, NULL, '2026-07-13 16:00:33'),
(43, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 1, NULL, '2026-07-13 17:45:45'),
(44, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 1, NULL, '2026-07-13 20:06:40'),
(45, 1, 'admin', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36', 1, NULL, '2026-07-14 12:43:17');

-- --------------------------------------------------------

--
-- Table structure for table `messages`
--

CREATE TABLE `messages` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `conversation_id` bigint(20) UNSIGNED NOT NULL,
  `sender_id` bigint(20) UNSIGNED NOT NULL,
  `body` text COLLATE utf8mb4_unicode_ci NOT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL,
  `deleted_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `messages`
--

INSERT INTO `messages` (`id`, `conversation_id`, `sender_id`, `body`, `created_at`, `updated_at`, `deleted_at`) VALUES
(1, 1, 2, 'Welcome to the demo environment — use boss / hrm / attendance to explore.', '2026-07-11 16:01:58', '2026-07-11 16:01:58', NULL),
(2, 2, 2, 'Please review the pending leave requests today.', '2026-07-11 16:01:58', '2026-07-11 16:01:58', NULL);

-- --------------------------------------------------------

--
-- Table structure for table `message_conversations`
--

CREATE TABLE `message_conversations` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `type` enum('direct','group','public') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'direct',
  `name` varchar(150) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `description` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `is_system` tinyint(1) NOT NULL DEFAULT 0,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `message_conversations`
--

INSERT INTO `message_conversations` (`id`, `type`, `name`, `description`, `created_by`, `is_system`, `created_at`, `updated_at`) VALUES
(1, 'public', 'Public', 'Company-wide public channel — everyone can read and post.', NULL, 1, '2026-07-11 03:34:30', '2026-07-11 03:34:30'),
(2, 'direct', NULL, NULL, 2, 0, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `message_participants`
--

CREATE TABLE `message_participants` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `conversation_id` bigint(20) UNSIGNED NOT NULL,
  `user_id` bigint(20) UNSIGNED NOT NULL,
  `last_read_at` datetime DEFAULT NULL,
  `joined_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `message_participants`
--

INSERT INTO `message_participants` (`id`, `conversation_id`, `user_id`, `last_read_at`, `joined_at`) VALUES
(1, 1, 1, '2026-07-11 20:41:51', '2026-07-11 00:35:35'),
(2, 1, 2, NULL, '2026-07-11 16:01:58'),
(3, 1, 3, NULL, '2026-07-11 16:01:58'),
(4, 1, 4, NULL, '2026-07-11 16:01:58'),
(5, 2, 2, NULL, '2026-07-11 16:01:58'),
(6, 2, 3, NULL, '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `migrations`
--

CREATE TABLE `migrations` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `version` varchar(255) NOT NULL,
  `class` varchar(255) NOT NULL,
  `group` varchar(255) NOT NULL,
  `namespace` varchar(255) NOT NULL,
  `time` int(11) NOT NULL,
  `batch` int(11) UNSIGNED NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

--
-- Dumping data for table `migrations`
--

INSERT INTO `migrations` (`id`, `version`, `class`, `group`, `namespace`, `time`, `batch`) VALUES
(1, '2026-01-01-000000', 'App\\Database\\Migrations\\CreateCiSessionsTable', 'default', 'App', 1783598179, 1),
(2, '2026-01-01-000001', 'App\\Database\\Migrations\\CreateUsersTable', 'default', 'App', 1783598179, 1),
(3, '2026-01-01-000002', 'App\\Database\\Migrations\\CreateLoginAttemptsTable', 'default', 'App', 1783598179, 1),
(4, '2026-01-01-000003', 'App\\Database\\Migrations\\CreateUserSessionsTable', 'default', 'App', 1783598179, 1),
(5, '2026-01-01-000004', 'App\\Database\\Migrations\\CreatePasswordResetsTable', 'default', 'App', 1783598179, 1),
(6, '2026-01-01-000005', 'App\\Database\\Migrations\\CreatePasswordHistoryTable', 'default', 'App', 1783598179, 1),
(7, '2026-01-01-000006', 'App\\Database\\Migrations\\CreateActivityLogsTable', 'default', 'App', 1783598179, 1),
(8, '2026-01-02-000001', 'App\\Database\\Migrations\\CreateRolesTable', 'default', 'App', 1783598179, 1),
(9, '2026-01-02-000002', 'App\\Database\\Migrations\\CreateBranchesTable', 'default', 'App', 1783598179, 1),
(10, '2026-01-02-000003', 'App\\Database\\Migrations\\CreateDepartmentsTable', 'default', 'App', 1783598180, 1),
(11, '2026-01-03-000001', 'App\\Database\\Migrations\\CreatePermissionsTable', 'default', 'App', 1783598180, 1),
(12, '2026-01-03-000002', 'App\\Database\\Migrations\\CreateRolePermissionsTable', 'default', 'App', 1783598180, 1);

-- --------------------------------------------------------

--
-- Table structure for table `operations_approval_requests`
--

CREATE TABLE `operations_approval_requests` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `request_type` enum('expense','work','purchase','leave','general') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'general',
  `title` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `amount` decimal(15,2) DEFAULT NULL,
  `requester_user_id` bigint(20) UNSIGNED NOT NULL,
  `approver_user_id` bigint(20) UNSIGNED NOT NULL,
  `status` enum('pending','approved','rejected','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'pending',
  `rejection_reason` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `decided_at` datetime DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `operations_approval_requests`
--

INSERT INTO `operations_approval_requests` (`id`, `number`, `request_type`, `title`, `description`, `amount`, `requester_user_id`, `approver_user_id`, `status`, `rejection_reason`, `decided_at`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'OAR-DEMO-001', 'work', 'Approve overtime for Level 2 clean', 'Extra 2 hours requested for food court deep clean', NULL, 4, 2, 'pending', NULL, NULL, 4, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `operations_tasks`
--

CREATE TABLE `operations_tasks` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `title` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `priority` enum('low','normal','high','urgent') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'normal',
  `status` enum('open','in_progress','completed','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'open',
  `due_date` date DEFAULT NULL,
  `completed_at` datetime DEFAULT NULL,
  `assignee_employee_id` bigint(20) UNSIGNED DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `operations_tasks`
--

INSERT INTO `operations_tasks` (`id`, `number`, `title`, `description`, `priority`, `status`, `due_date`, `completed_at`, `assignee_employee_id`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'OT-DEMO-001', 'Restock cleaning cart supplies', NULL, 'normal', 'open', '2026-07-12', NULL, 6, 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `operations_task_checklist_items`
--

CREATE TABLE `operations_task_checklist_items` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `task_id` bigint(20) UNSIGNED NOT NULL,
  `title` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `is_done` tinyint(1) NOT NULL DEFAULT 0,
  `sort_order` int(11) NOT NULL DEFAULT 0,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `operations_task_checklist_items`
--

INSERT INTO `operations_task_checklist_items` (`id`, `task_id`, `title`, `is_done`, `sort_order`, `created_at`, `updated_at`) VALUES
(1, 1, 'Check detergent stock', 1, 1, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(2, 1, 'Refill gloves', 0, 2, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `opportunities`
--

CREATE TABLE `opportunities` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `name` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL,
  `company_id` bigint(20) UNSIGNED DEFAULT NULL,
  `contact_id` bigint(20) UNSIGNED DEFAULT NULL,
  `sales_stage_id` bigint(20) UNSIGNED DEFAULT NULL,
  `competitor_id` bigint(20) UNSIGNED DEFAULT NULL,
  `expected_revenue` decimal(15,2) NOT NULL DEFAULT 0.00,
  `probability` tinyint(3) UNSIGNED NOT NULL DEFAULT 0,
  `expected_close_date` date DEFAULT NULL,
  `status` enum('open','won','lost','abandoned') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'open',
  `description` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `opportunities`
--

INSERT INTO `opportunities` (`id`, `name`, `company_id`, `contact_id`, `sales_stage_id`, `competitor_id`, `expected_revenue`, `probability`, `expected_close_date`, `status`, `description`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'Gulf Tech annual IT support', 2, 2, 4, NULL, 24000.00, 75, '2026-07-31', 'open', '12-month support retainer', 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(2, 'CleanPro mall night shift', 3, NULL, 3, NULL, 18000.00, 50, '2026-08-15', 'open', NULL, 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(3, 'Marina fit-out project', 4, NULL, 1, NULL, 45000.00, 10, '2026-09-09', 'open', NULL, 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `ops_equipment_allocations`
--

CREATE TABLE `ops_equipment_allocations` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `inventory_asset_id` bigint(20) UNSIGNED NOT NULL,
  `work_order_id` bigint(20) UNSIGNED DEFAULT NULL,
  `service_visit_id` bigint(20) UNSIGNED DEFAULT NULL,
  `status` enum('assigned','returned','lost') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'assigned',
  `notes` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `assigned_at` datetime DEFAULT NULL,
  `returned_at` datetime DEFAULT NULL,
  `assigned_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `ops_material_usage`
--

CREATE TABLE `ops_material_usage` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `product_id` bigint(20) UNSIGNED NOT NULL,
  `work_order_id` bigint(20) UNSIGNED DEFAULT NULL,
  `service_visit_id` bigint(20) UNSIGNED DEFAULT NULL,
  `quantity` decimal(12,3) NOT NULL DEFAULT 0.000,
  `unit_label` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `used_at` datetime DEFAULT NULL,
  `used_by_employee_id` bigint(20) UNSIGNED DEFAULT NULL,
  `notes` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `status` enum('recorded','voided') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'recorded',
  `recorded_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `ops_staff_allocations`
--

CREATE TABLE `ops_staff_allocations` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `employee_id` bigint(20) UNSIGNED NOT NULL,
  `work_order_id` bigint(20) UNSIGNED DEFAULT NULL,
  `service_visit_id` bigint(20) UNSIGNED DEFAULT NULL,
  `role` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `status` enum('planned','active','released') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'planned',
  `from_date` date DEFAULT NULL,
  `to_date` date DEFAULT NULL,
  `notes` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `assigned_at` datetime DEFAULT NULL,
  `assigned_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `payment_vouchers`
--

CREATE TABLE `payment_vouchers` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `voucher_date` date NOT NULL,
  `amount` decimal(15,2) NOT NULL DEFAULT 0.00,
  `account_id` bigint(20) UNSIGNED NOT NULL,
  `pay_from_type` enum('bank','cash') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'bank',
  `pay_from_id` bigint(20) UNSIGNED NOT NULL,
  `cost_center_id` bigint(20) UNSIGNED DEFAULT NULL,
  `payee` varchar(150) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `reference` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `status` enum('draft','posted','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft',
  `journal_entry_id` bigint(20) UNSIGNED DEFAULT NULL,
  `posted_at` datetime DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `payroll_components`
--

CREATE TABLE `payroll_components` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `code` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL,
  `name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL,
  `type` enum('earning','deduction','employer_cost') COLLATE utf8mb4_unicode_ci NOT NULL,
  `is_sio_applicable` tinyint(1) NOT NULL DEFAULT 0,
  `is_eosb_applicable` tinyint(1) NOT NULL DEFAULT 0,
  `is_system` tinyint(1) NOT NULL DEFAULT 0,
  `sort_order` smallint(5) UNSIGNED NOT NULL DEFAULT 0,
  `status` enum('active','inactive') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'active',
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `payroll_components`
--

INSERT INTO `payroll_components` (`id`, `code`, `name`, `type`, `is_sio_applicable`, `is_eosb_applicable`, `is_system`, `sort_order`, `status`, `created_at`, `updated_at`) VALUES
(1, 'BASIC', 'Basic Salary', 'earning', 1, 1, 1, 10, 'active', '2026-07-10 02:56:38', NULL),
(2, 'SOCIAL', 'Social Allowance', 'earning', 1, 1, 1, 20, 'active', '2026-07-10 02:56:38', NULL),
(3, 'HOUSING', 'Housing Allowance', 'earning', 0, 0, 1, 30, 'active', '2026-07-10 02:56:38', NULL),
(4, 'TRANSPORT', 'Transport Allowance', 'earning', 0, 0, 1, 40, 'active', '2026-07-10 02:56:38', NULL),
(5, 'OTHER', 'Other Allowances', 'earning', 0, 0, 1, 50, 'active', '2026-07-10 02:56:38', NULL),
(6, 'OT_DAY', 'Overtime (Day)', 'earning', 0, 0, 1, 60, 'active', '2026-07-10 02:56:38', NULL),
(7, 'OT_NIGHT', 'Overtime (Night/Holiday)', 'earning', 0, 0, 1, 70, 'active', '2026-07-10 02:56:38', NULL),
(8, 'SIO_EE', 'SIO (Employee)', 'deduction', 0, 0, 1, 100, 'active', '2026-07-10 02:56:38', NULL),
(9, 'ABSENCE', 'Absence Deduction', 'deduction', 0, 0, 1, 110, 'active', '2026-07-10 02:56:38', NULL),
(10, 'UNPAID_LV', 'Unpaid Leave Deduction', 'deduction', 0, 0, 1, 120, 'active', '2026-07-10 02:56:38', NULL),
(11, 'SIO_ER', 'SIO (Employer)', 'employer_cost', 0, 0, 1, 200, 'active', '2026-07-10 02:56:38', NULL),
(12, 'EOSB', 'End-of-Service (Employer)', 'employer_cost', 0, 0, 1, 210, 'active', '2026-07-10 02:56:38', NULL);

-- --------------------------------------------------------

--
-- Table structure for table `payroll_items`
--

CREATE TABLE `payroll_items` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `payroll_run_id` bigint(20) UNSIGNED NOT NULL,
  `employee_id` bigint(20) UNSIGNED NOT NULL,
  `days_worked` decimal(5,1) NOT NULL DEFAULT 0.0,
  `days_absent` decimal(5,1) NOT NULL DEFAULT 0.0,
  `unpaid_leave_days` decimal(5,1) NOT NULL DEFAULT 0.0,
  `overtime_minutes_day` int(10) UNSIGNED NOT NULL DEFAULT 0,
  `overtime_minutes_night` int(10) UNSIGNED NOT NULL DEFAULT 0,
  `gross_earnings` decimal(12,3) NOT NULL DEFAULT 0.000,
  `total_deductions` decimal(12,3) NOT NULL DEFAULT 0.000,
  `net_pay` decimal(12,3) NOT NULL DEFAULT 0.000,
  `employer_sio` decimal(12,3) NOT NULL DEFAULT 0.000,
  `employer_eosb` decimal(12,3) NOT NULL DEFAULT 0.000,
  `employer_total_cost` decimal(12,3) NOT NULL DEFAULT 0.000,
  `status` enum('draft','approved','paid') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft',
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `payroll_items`
--

INSERT INTO `payroll_items` (`id`, `payroll_run_id`, `employee_id`, `days_worked`, `days_absent`, `unpaid_leave_days`, `overtime_minutes_day`, `overtime_minutes_night`, `gross_earnings`, `total_deductions`, `net_pay`, `employer_sio`, `employer_eosb`, `employer_total_cost`, `status`, `created_at`, `updated_at`) VALUES
(1, 2, 2, 26.0, 0.0, 0.0, 0, 0, 1300.000, 104.000, 1196.000, 234.000, 54.600, 1588.600, 'draft', '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(2, 2, 3, 26.0, 0.0, 0.0, 0, 0, 620.000, 49.600, 570.400, 111.600, 26.040, 757.640, 'draft', '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(3, 2, 4, 26.0, 0.0, 0.0, 0, 0, 900.000, 72.000, 828.000, 162.000, 37.800, 1099.800, 'draft', '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(4, 2, 5, 26.0, 0.0, 0.0, 0, 0, 990.000, 79.200, 910.800, 178.200, 41.580, 1209.780, 'draft', '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(5, 1, 1, 0.0, 0.0, 0.0, 0, 0, 3000.000, 200.000, 2800.000, 450.000, 0.000, 3450.000, 'draft', '2026-07-14 12:43:55', '2026-07-14 12:43:55'),
(6, 1, 2, 0.0, 0.0, 0.0, 0, 0, 1300.000, 84.000, 1216.000, 189.000, 0.000, 1489.000, 'draft', '2026-07-14 12:43:55', '2026-07-14 12:43:55'),
(7, 1, 3, 6.0, 0.0, 0.0, 0, 0, 620.000, 40.000, 580.000, 90.000, 0.000, 710.000, 'draft', '2026-07-14 12:43:55', '2026-07-14 12:43:55'),
(8, 1, 4, 6.0, 0.0, 0.0, 0, 0, 900.000, 58.400, 841.600, 131.400, 0.000, 1031.400, 'draft', '2026-07-14 12:43:55', '2026-07-14 12:43:55'),
(9, 1, 5, 6.0, 0.0, 0.0, 0, 0, 990.000, 62.400, 927.600, 140.400, 0.000, 1130.400, 'draft', '2026-07-14 12:43:55', '2026-07-14 12:43:55'),
(10, 1, 6, 6.0, 0.0, 0.0, 0, 0, 690.000, 44.000, 646.000, 99.000, 0.000, 789.000, 'draft', '2026-07-14 12:43:55', '2026-07-14 12:43:55'),
(11, 1, 7, 0.0, 0.0, 0.0, 0, 0, 1100.000, 72.000, 1028.000, 162.000, 0.000, 1262.000, 'draft', '2026-07-14 12:43:55', '2026-07-14 12:43:55'),
(12, 1, 8, 5.0, 1.0, 0.0, 0, 0, 650.000, 60.862, 589.138, 95.400, 0.000, 745.400, 'draft', '2026-07-14 12:43:55', '2026-07-14 12:43:55');

-- --------------------------------------------------------

--
-- Table structure for table `payroll_item_lines`
--

CREATE TABLE `payroll_item_lines` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `payroll_item_id` bigint(20) UNSIGNED NOT NULL,
  `component_id` bigint(20) UNSIGNED NOT NULL,
  `amount` decimal(12,3) NOT NULL DEFAULT 0.000,
  `notes` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `payroll_item_lines`
--

INSERT INTO `payroll_item_lines` (`id`, `payroll_item_id`, `component_id`, `amount`, `notes`, `created_at`) VALUES
(1, 5, 1, 2200.000, NULL, '2026-07-14 12:43:55'),
(2, 5, 2, 300.000, NULL, '2026-07-14 12:43:55'),
(3, 5, 3, 400.000, NULL, '2026-07-14 12:43:55'),
(4, 5, 4, 100.000, NULL, '2026-07-14 12:43:55'),
(5, 5, 8, 200.000, NULL, '2026-07-14 12:43:55'),
(6, 5, 11, 450.000, NULL, '2026-07-14 12:43:55'),
(7, 6, 1, 950.000, NULL, '2026-07-14 12:43:55'),
(8, 6, 2, 100.000, NULL, '2026-07-14 12:43:55'),
(9, 6, 3, 200.000, NULL, '2026-07-14 12:43:55'),
(10, 6, 4, 50.000, NULL, '2026-07-14 12:43:55'),
(11, 6, 8, 84.000, NULL, '2026-07-14 12:43:55'),
(12, 6, 11, 189.000, NULL, '2026-07-14 12:43:55'),
(13, 7, 1, 450.000, NULL, '2026-07-14 12:43:55'),
(14, 7, 2, 50.000, NULL, '2026-07-14 12:43:55'),
(15, 7, 3, 80.000, NULL, '2026-07-14 12:43:55'),
(16, 7, 4, 40.000, NULL, '2026-07-14 12:43:55'),
(17, 7, 8, 40.000, NULL, '2026-07-14 12:43:55'),
(18, 7, 11, 90.000, NULL, '2026-07-14 12:43:55'),
(19, 8, 1, 650.000, NULL, '2026-07-14 12:43:55'),
(20, 8, 2, 80.000, NULL, '2026-07-14 12:43:55'),
(21, 8, 3, 120.000, NULL, '2026-07-14 12:43:55'),
(22, 8, 4, 50.000, NULL, '2026-07-14 12:43:55'),
(23, 8, 8, 58.400, NULL, '2026-07-14 12:43:55'),
(24, 8, 11, 131.400, NULL, '2026-07-14 12:43:55'),
(25, 9, 1, 700.000, NULL, '2026-07-14 12:43:55'),
(26, 9, 2, 80.000, NULL, '2026-07-14 12:43:55'),
(27, 9, 3, 150.000, NULL, '2026-07-14 12:43:55'),
(28, 9, 4, 60.000, NULL, '2026-07-14 12:43:55'),
(29, 9, 8, 62.400, NULL, '2026-07-14 12:43:55'),
(30, 9, 11, 140.400, NULL, '2026-07-14 12:43:55'),
(31, 10, 1, 500.000, NULL, '2026-07-14 12:43:55'),
(32, 10, 2, 50.000, NULL, '2026-07-14 12:43:55'),
(33, 10, 3, 100.000, NULL, '2026-07-14 12:43:55'),
(34, 10, 4, 40.000, NULL, '2026-07-14 12:43:55'),
(35, 10, 8, 44.000, NULL, '2026-07-14 12:43:55'),
(36, 10, 11, 99.000, NULL, '2026-07-14 12:43:55'),
(37, 11, 1, 800.000, NULL, '2026-07-14 12:43:55'),
(38, 11, 2, 100.000, NULL, '2026-07-14 12:43:55'),
(39, 11, 3, 150.000, NULL, '2026-07-14 12:43:55'),
(40, 11, 4, 50.000, NULL, '2026-07-14 12:43:55'),
(41, 11, 8, 72.000, NULL, '2026-07-14 12:43:55'),
(42, 11, 11, 162.000, NULL, '2026-07-14 12:43:55'),
(43, 12, 1, 480.000, NULL, '2026-07-14 12:43:55'),
(44, 12, 2, 50.000, NULL, '2026-07-14 12:43:55'),
(45, 12, 3, 80.000, NULL, '2026-07-14 12:43:55'),
(46, 12, 4, 40.000, NULL, '2026-07-14 12:43:55'),
(47, 12, 8, 42.400, NULL, '2026-07-14 12:43:55'),
(48, 12, 9, -18.462, NULL, '2026-07-14 12:43:55'),
(49, 12, 11, 95.400, NULL, '2026-07-14 12:43:55');

-- --------------------------------------------------------

--
-- Table structure for table `payroll_runs`
--

CREATE TABLE `payroll_runs` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `period_year` smallint(5) UNSIGNED NOT NULL,
  `period_month` tinyint(3) UNSIGNED NOT NULL,
  `title` varchar(150) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `status` enum('draft','calculated','approved','paid','locked') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft',
  `run_date` date DEFAULT NULL,
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `approved_by` bigint(20) UNSIGNED DEFAULT NULL,
  `approved_at` datetime DEFAULT NULL,
  `paid_at` datetime DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `payroll_runs`
--

INSERT INTO `payroll_runs` (`id`, `period_year`, `period_month`, `title`, `status`, `run_date`, `notes`, `approved_by`, `approved_at`, `paid_at`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 2026, 7, 'July 2026 Payroll', 'calculated', '2026-07-11', NULL, NULL, NULL, NULL, 1, 1, '2026-07-11 10:47:01', '2026-07-14 12:43:58'),
(2, 2026, 6, 'Demo payroll — previous month', 'calculated', '2026-07-01', 'Sample calculated run for testing payslips UI', NULL, NULL, NULL, 3, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `payroll_settings`
--

CREATE TABLE `payroll_settings` (
  `id` tinyint(3) UNSIGNED NOT NULL,
  `sio_cap_amount` decimal(12,3) NOT NULL DEFAULT 4000.000,
  `sio_bahraini_employer_rate` decimal(5,2) NOT NULL DEFAULT 18.00,
  `sio_bahraini_employee_rate` decimal(5,2) NOT NULL DEFAULT 8.00,
  `sio_expat_employer_rate` decimal(5,2) NOT NULL DEFAULT 3.00,
  `sio_expat_employee_rate` decimal(5,2) NOT NULL DEFAULT 1.00,
  `eosb_rate_first_3_years` decimal(5,2) NOT NULL DEFAULT 4.20,
  `eosb_rate_after_3_years` decimal(5,2) NOT NULL DEFAULT 8.40,
  `eosb_effective_date` date NOT NULL DEFAULT '2024-03-01',
  `working_days_per_month` tinyint(3) UNSIGNED NOT NULL DEFAULT 26,
  `daily_work_hours` decimal(4,2) NOT NULL DEFAULT 8.00,
  `overtime_day_multiplier` decimal(4,2) NOT NULL DEFAULT 1.25,
  `overtime_night_multiplier` decimal(4,2) NOT NULL DEFAULT 1.50,
  `payment_day` tinyint(3) UNSIGNED NOT NULL DEFAULT 25,
  `wps_employer_id` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `payroll_settings`
--

INSERT INTO `payroll_settings` (`id`, `sio_cap_amount`, `sio_bahraini_employer_rate`, `sio_bahraini_employee_rate`, `sio_expat_employer_rate`, `sio_expat_employee_rate`, `eosb_rate_first_3_years`, `eosb_rate_after_3_years`, `eosb_effective_date`, `working_days_per_month`, `daily_work_hours`, `overtime_day_multiplier`, `overtime_night_multiplier`, `payment_day`, `wps_employer_id`, `created_at`, `updated_at`) VALUES
(1, 4000.000, 18.00, 8.00, 3.00, 1.00, 4.20, 8.40, '2024-03-01', 26, 8.00, 1.25, 1.50, 25, NULL, '2026-07-10 02:56:38', '2026-07-10 02:56:38');

-- --------------------------------------------------------

--
-- Table structure for table `payroll_settlements`
--

CREATE TABLE `payroll_settlements` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `employee_id` bigint(20) UNSIGNED NOT NULL,
  `termination_date` date NOT NULL,
  `last_working_day` date NOT NULL,
  `years_of_service` decimal(6,2) NOT NULL DEFAULT 0.00,
  `unused_leave_days` decimal(5,1) NOT NULL DEFAULT 0.0,
  `leave_encashment` decimal(12,3) NOT NULL DEFAULT 0.000,
  `legacy_eosb` decimal(12,3) NOT NULL DEFAULT 0.000,
  `notice_pay` decimal(12,3) NOT NULL DEFAULT 0.000,
  `last_salary` decimal(12,3) NOT NULL DEFAULT 0.000,
  `other_entitlements` decimal(12,3) NOT NULL DEFAULT 0.000,
  `total_deductions` decimal(12,3) NOT NULL DEFAULT 0.000,
  `total_settlement` decimal(12,3) NOT NULL DEFAULT 0.000,
  `status` enum('draft','approved','paid') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft',
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `approved_by` bigint(20) UNSIGNED DEFAULT NULL,
  `approved_at` datetime DEFAULT NULL,
  `paid_at` datetime DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `permissions`
--

CREATE TABLE `permissions` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `group` varchar(100) NOT NULL COMMENT 'Module this permission belongs to, e.g. users, roles',
  `slug` varchar(150) NOT NULL COMMENT 'e.g. users.view, users.create',
  `label` varchar(150) NOT NULL,
  `is_system` tinyint(1) NOT NULL DEFAULT 0,
  `created_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

--
-- Dumping data for table `permissions`
--

INSERT INTO `permissions` (`id`, `group`, `slug`, `label`, `is_system`, `created_at`) VALUES
(1, 'dashboard', 'dashboard.view', 'View Dashboard', 1, '2026-07-09 11:56:20'),
(2, 'users', 'users.view', 'View Users', 1, '2026-07-09 11:56:20'),
(3, 'users', 'users.create', 'Create Users', 1, '2026-07-09 11:56:20'),
(4, 'users', 'users.edit', 'Edit Users', 1, '2026-07-09 11:56:20'),
(5, 'users', 'users.delete', 'Delete Users', 1, '2026-07-09 11:56:20'),
(6, 'users', 'users.export', 'Export Users', 1, '2026-07-09 11:56:20'),
(7, 'users', 'users.print', 'Print Users', 1, '2026-07-09 11:56:20'),
(8, 'roles', 'roles.view', 'View Roles', 1, '2026-07-09 11:56:20'),
(9, 'roles', 'roles.create', 'Create Roles', 1, '2026-07-09 11:56:20'),
(10, 'roles', 'roles.edit', 'Edit Roles', 1, '2026-07-09 11:56:20'),
(11, 'roles', 'roles.delete', 'Delete Roles', 1, '2026-07-09 11:56:20'),
(12, 'permissions', 'permissions.view', 'View Permissions', 1, '2026-07-09 11:56:20'),
(13, 'permissions', 'permissions.create', 'Create Permissions', 1, '2026-07-09 11:56:20'),
(14, 'permissions', 'permissions.delete', 'Delete Permissions', 1, '2026-07-09 11:56:20'),
(15, 'departments', 'departments.view', 'View Departments', 1, '2026-07-09 18:33:22'),
(16, 'departments', 'departments.create', 'Create Departments', 1, '2026-07-09 18:33:22'),
(17, 'departments', 'departments.edit', 'Edit Departments', 1, '2026-07-09 18:33:22'),
(18, 'departments', 'departments.delete', 'Delete Departments', 1, '2026-07-09 18:33:22'),
(19, 'departments', 'departments.export', 'Export Departments', 1, '2026-07-09 18:33:22'),
(20, 'departments', 'departments.print', 'Print Departments', 1, '2026-07-09 18:33:22'),
(21, 'employees', 'employees.view', 'View Employees', 1, '2026-07-09 18:33:22'),
(22, 'employees', 'employees.create', 'Create Employees', 1, '2026-07-09 18:33:23'),
(23, 'employees', 'employees.edit', 'Edit Employees', 1, '2026-07-09 18:33:23'),
(24, 'employees', 'employees.delete', 'Delete Employees', 1, '2026-07-09 18:33:23'),
(25, 'employees', 'employees.export', 'Export Employees', 1, '2026-07-09 18:33:23'),
(26, 'employees', 'employees.print', 'Print Employees', 1, '2026-07-09 18:33:23'),
(27, 'leave_types', 'leave_types.view', 'View Leave Types', 1, '2026-07-10 02:11:44'),
(28, 'leave_types', 'leave_types.create', 'Create Leave Types', 1, '2026-07-10 02:11:44'),
(29, 'leave_types', 'leave_types.edit', 'Edit Leave Types', 1, '2026-07-10 02:11:44'),
(30, 'leave_types', 'leave_types.delete', 'Delete Leave Types', 1, '2026-07-10 02:11:44'),
(31, 'leave_balances', 'leave_balances.view', 'View Leave Balances', 1, '2026-07-10 02:11:44'),
(32, 'leave_balances', 'leave_balances.edit', 'Edit Leave Balances', 1, '2026-07-10 02:11:44'),
(33, 'leave_requests', 'leave_requests.view', 'View Leave Requests', 1, '2026-07-10 02:11:44'),
(34, 'leave_requests', 'leave_requests.create', 'Create Leave Requests', 1, '2026-07-10 02:11:44'),
(35, 'leave_requests', 'leave_requests.edit', 'Edit Leave Requests', 1, '2026-07-10 02:11:45'),
(36, 'leave_requests', 'leave_requests.delete', 'Delete Leave Requests', 1, '2026-07-10 02:11:45'),
(37, 'leave_requests', 'leave_requests.approve', 'Approve Leave Requests', 1, '2026-07-10 02:11:45'),
(38, 'leave_calendar', 'leave_calendar.view', 'View Leave Calendar', 1, '2026-07-10 02:11:45'),
(39, 'holidays', 'holidays.view', 'View Holidays', 1, '2026-07-10 02:11:45'),
(40, 'holidays', 'holidays.create', 'Create Holidays', 1, '2026-07-10 02:11:45'),
(41, 'holidays', 'holidays.edit', 'Edit Holidays', 1, '2026-07-10 02:11:45'),
(42, 'holidays', 'holidays.delete', 'Delete Holidays', 1, '2026-07-10 02:11:45'),
(43, 'attendance', 'attendance.view', 'View Attendance', 1, '2026-07-10 02:36:27'),
(44, 'attendance', 'attendance.clock', 'Clock In/Out Employees', 1, '2026-07-10 02:36:27'),
(45, 'attendance', 'attendance.manual', 'Manual Attendance Entry', 1, '2026-07-10 02:36:27'),
(46, 'attendance', 'attendance.edit', 'Edit Attendance', 1, '2026-07-10 02:36:27'),
(47, 'attendance', 'attendance.delete', 'Delete Attendance', 1, '2026-07-10 02:36:27'),
(48, 'attendance', 'attendance.auto_punch', 'Run Auto Punch', 1, '2026-07-10 02:36:27'),
(49, 'attendance_corrections', 'attendance_corrections.view', 'View Attendance Corrections', 1, '2026-07-10 02:36:27'),
(50, 'attendance_corrections', 'attendance_corrections.create', 'Request Attendance Corrections', 1, '2026-07-10 02:36:27'),
(51, 'attendance_corrections', 'attendance_corrections.approve', 'Approve Attendance Corrections', 1, '2026-07-10 02:36:28'),
(52, 'attendance_shifts', 'attendance_shifts.view', 'View Attendance Shifts', 1, '2026-07-10 02:36:28'),
(53, 'attendance_shifts', 'attendance_shifts.create', 'Create Attendance Shifts', 1, '2026-07-10 02:36:28'),
(54, 'attendance_shifts', 'attendance_shifts.edit', 'Edit Attendance Shifts', 1, '2026-07-10 02:36:28'),
(55, 'attendance_shifts', 'attendance_shifts.delete', 'Delete Attendance Shifts', 1, '2026-07-10 02:36:28'),
(56, 'payroll_settings', 'payroll_settings.view', 'View Payroll Settings', 1, '2026-07-10 02:56:39'),
(57, 'payroll_settings', 'payroll_settings.edit', 'Edit Payroll Settings', 1, '2026-07-10 02:56:39'),
(58, 'payroll_salary', 'payroll_salary.view', 'View Salary Structures', 1, '2026-07-10 02:56:39'),
(59, 'payroll_salary', 'payroll_salary.create', 'Create Salary Structures', 1, '2026-07-10 02:56:39'),
(60, 'payroll_salary', 'payroll_salary.edit', 'Edit Salary Structures', 1, '2026-07-10 02:56:39'),
(61, 'payroll_runs', 'payroll_runs.view', 'View Payroll Runs', 1, '2026-07-10 02:56:39'),
(62, 'payroll_runs', 'payroll_runs.create', 'Create Payroll Runs', 1, '2026-07-10 02:56:39'),
(63, 'payroll_runs', 'payroll_runs.edit', 'Edit Payroll Runs', 1, '2026-07-10 02:56:39'),
(64, 'payroll_runs', 'payroll_runs.approve', 'Approve Payroll Runs', 1, '2026-07-10 02:56:39'),
(65, 'payroll_runs', 'payroll_runs.delete', 'Delete Payroll Runs', 1, '2026-07-10 02:56:39'),
(66, 'payroll_payslips', 'payroll_payslips.view', 'View Payslips', 1, '2026-07-10 02:56:39'),
(67, 'payroll_payslips', 'payroll_payslips.export', 'Export Payslips / WPS', 1, '2026-07-10 02:56:39'),
(68, 'payroll_payslips', 'payroll_payslips.print', 'Print Payslips', 1, '2026-07-10 02:56:39'),
(69, 'payroll_reports', 'payroll_reports.view', 'View Payroll Reports', 1, '2026-07-10 02:56:39'),
(70, 'payroll_settlements', 'payroll_settlements.view', 'View Final Settlements', 1, '2026-07-10 02:56:39'),
(71, 'payroll_settlements', 'payroll_settlements.create', 'Create Final Settlements', 1, '2026-07-10 02:56:39'),
(72, 'payroll_settlements', 'payroll_settlements.approve', 'Approve Final Settlements', 1, '2026-07-10 02:56:39'),
(73, 'asset_types', 'asset_types.view', 'View Asset Types', 1, '2026-07-10 03:04:07'),
(74, 'asset_types', 'asset_types.create', 'Create Asset Types', 1, '2026-07-10 03:04:07'),
(75, 'asset_types', 'asset_types.edit', 'Edit Asset Types', 1, '2026-07-10 03:04:07'),
(76, 'asset_types', 'asset_types.delete', 'Delete Asset Types', 1, '2026-07-10 03:04:07'),
(77, 'employee_assets', 'employee_assets.view', 'View Employee Assets', 1, '2026-07-10 03:04:07'),
(78, 'employee_assets', 'employee_assets.create', 'Assign Employee Assets', 1, '2026-07-10 03:04:07'),
(79, 'employee_assets', 'employee_assets.edit', 'Edit Employee Assets', 1, '2026-07-10 03:04:08'),
(80, 'employee_assets', 'employee_assets.delete', 'Delete Employee Assets', 1, '2026-07-10 03:04:08'),
(81, 'employee_assets', 'employee_assets.return', 'Return Employee Assets', 1, '2026-07-10 03:04:08'),
(82, 'document_types', 'document_types.view', 'View Document Types', 1, '2026-07-10 03:15:14'),
(83, 'document_types', 'document_types.create', 'Create Document Types', 1, '2026-07-10 03:15:14'),
(84, 'document_types', 'document_types.edit', 'Edit Document Types', 1, '2026-07-10 03:15:14'),
(85, 'document_types', 'document_types.delete', 'Delete Document Types', 1, '2026-07-10 03:15:14'),
(86, 'employee_documents', 'employee_documents.view', 'View Employee Documents', 1, '2026-07-10 03:15:14'),
(87, 'employee_documents', 'employee_documents.create', 'Upload Employee Documents', 1, '2026-07-10 03:15:14'),
(88, 'employee_documents', 'employee_documents.edit', 'Edit Employee Documents', 1, '2026-07-10 03:15:14'),
(89, 'employee_documents', 'employee_documents.delete', 'Delete Employee Documents', 1, '2026-07-10 03:15:14'),
(90, 'employee_documents', 'employee_documents.download', 'Download Employee Documents', 1, '2026-07-10 03:15:15'),
(139, 'sale', 'sale.view', 'View Sales & CRM Dashboard', 1, '2026-07-10 03:42:17'),
(140, 'leads', 'leads.view', 'View Leads', 1, '2026-07-10 03:48:07'),
(141, 'leads', 'leads.create', 'Create Leads', 1, '2026-07-10 03:48:07'),
(142, 'leads', 'leads.edit', 'Edit Leads', 1, '2026-07-10 03:48:07'),
(143, 'leads', 'leads.delete', 'Delete Leads', 1, '2026-07-10 03:48:07'),
(144, 'lead_sources', 'lead_sources.view', 'View Lead Sources', 1, '2026-07-10 03:48:07'),
(145, 'lead_sources', 'lead_sources.create', 'Create Lead Sources', 1, '2026-07-10 03:48:07'),
(146, 'lead_sources', 'lead_sources.edit', 'Edit Lead Sources', 1, '2026-07-10 03:48:07'),
(147, 'lead_sources', 'lead_sources.delete', 'Delete Lead Sources', 1, '2026-07-10 03:48:07'),
(148, 'lead_assignment', 'lead_assignment.view', 'View Lead Assignment', 1, '2026-07-10 03:48:07'),
(149, 'lead_assignment', 'lead_assignment.edit', 'Manage Lead Assignment', 1, '2026-07-10 03:48:07'),
(150, 'lead_scoring', 'lead_scoring.view', 'View Lead Scoring', 1, '2026-07-10 03:48:07'),
(151, 'lead_scoring', 'lead_scoring.create', 'Create Lead Scoring Rules', 1, '2026-07-10 03:48:07'),
(152, 'lead_scoring', 'lead_scoring.edit', 'Edit Lead Scoring Rules', 1, '2026-07-10 03:48:07'),
(153, 'lead_scoring', 'lead_scoring.delete', 'Delete Lead Scoring Rules', 1, '2026-07-10 03:48:07'),
(154, 'lead_conversion', 'lead_conversion.view', 'View Lead Conversions', 1, '2026-07-10 03:48:07'),
(155, 'lead_conversion', 'lead_conversion.convert', 'Convert Leads', 1, '2026-07-10 03:48:07'),
(156, 'companies', 'companies.view', 'View Companies', 1, '2026-07-10 16:50:32'),
(157, 'companies', 'companies.create', 'Create Companies', 1, '2026-07-10 16:50:32'),
(158, 'companies', 'companies.edit', 'Edit Companies', 1, '2026-07-10 16:50:32'),
(159, 'companies', 'companies.delete', 'Delete Companies', 1, '2026-07-10 16:50:32'),
(160, 'contacts', 'contacts.view', 'View Contacts', 1, '2026-07-10 16:50:32'),
(161, 'contacts', 'contacts.create', 'Create Contacts', 1, '2026-07-10 16:50:32'),
(162, 'contacts', 'contacts.edit', 'Edit Contacts', 1, '2026-07-10 16:50:32'),
(163, 'contacts', 'contacts.delete', 'Delete Contacts', 1, '2026-07-10 16:50:32'),
(164, 'customer_groups', 'customer_groups.view', 'View Customer Groups', 1, '2026-07-10 16:50:32'),
(165, 'customer_groups', 'customer_groups.create', 'Create Customer Groups', 1, '2026-07-10 16:50:32'),
(166, 'customer_groups', 'customer_groups.edit', 'Edit Customer Groups', 1, '2026-07-10 16:50:32'),
(167, 'customer_groups', 'customer_groups.delete', 'Delete Customer Groups', 1, '2026-07-10 16:50:32'),
(168, 'customer_history', 'customer_history.view', 'View Customer History', 1, '2026-07-10 16:50:32'),
(169, 'customer_history', 'customer_history.create', 'Create Customer History', 1, '2026-07-10 16:50:32'),
(170, 'customer_history', 'customer_history.delete', 'Delete Customer History', 1, '2026-07-10 16:50:32'),
(171, 'customer_documents', 'customer_documents.view', 'View Customer Documents', 1, '2026-07-10 16:50:32'),
(172, 'customer_documents', 'customer_documents.create', 'Create Customer Documents', 1, '2026-07-10 16:50:32'),
(173, 'customer_documents', 'customer_documents.edit', 'Edit Customer Documents', 1, '2026-07-10 16:50:32'),
(174, 'customer_documents', 'customer_documents.delete', 'Delete Customer Documents', 1, '2026-07-10 16:50:32'),
(175, 'calls', 'calls.view', 'View Calls', 1, '2026-07-10 17:00:09'),
(176, 'calls', 'calls.create', 'Create Calls', 1, '2026-07-10 17:00:09'),
(177, 'calls', 'calls.edit', 'Edit Calls', 1, '2026-07-10 17:00:09'),
(178, 'calls', 'calls.delete', 'Delete Calls', 1, '2026-07-10 17:00:09'),
(179, 'emails', 'emails.view', 'View Emails', 1, '2026-07-10 17:00:09'),
(180, 'emails', 'emails.create', 'Create Emails', 1, '2026-07-10 17:00:09'),
(181, 'emails', 'emails.edit', 'Edit Emails', 1, '2026-07-10 17:00:09'),
(182, 'emails', 'emails.delete', 'Delete Emails', 1, '2026-07-10 17:00:09'),
(183, 'meetings', 'meetings.view', 'View Meetings', 1, '2026-07-10 17:00:10'),
(184, 'meetings', 'meetings.create', 'Create Meetings', 1, '2026-07-10 17:00:10'),
(185, 'meetings', 'meetings.edit', 'Edit Meetings', 1, '2026-07-10 17:00:10'),
(186, 'meetings', 'meetings.delete', 'Delete Meetings', 1, '2026-07-10 17:00:10'),
(187, 'tasks', 'tasks.view', 'View Tasks', 1, '2026-07-10 17:00:10'),
(188, 'tasks', 'tasks.create', 'Create Tasks', 1, '2026-07-10 17:00:10'),
(189, 'tasks', 'tasks.edit', 'Edit Tasks', 1, '2026-07-10 17:00:10'),
(190, 'tasks', 'tasks.delete', 'Delete Tasks', 1, '2026-07-10 17:00:10'),
(191, 'follow_ups', 'follow_ups.view', 'View Follow-ups', 1, '2026-07-10 17:00:11'),
(192, 'follow_ups', 'follow_ups.create', 'Create Follow-ups', 1, '2026-07-10 17:00:11'),
(193, 'follow_ups', 'follow_ups.edit', 'Edit Follow-ups', 1, '2026-07-10 17:00:11'),
(194, 'follow_ups', 'follow_ups.delete', 'Delete Follow-ups', 1, '2026-07-10 17:00:11'),
(195, 'opportunities', 'opportunities.view', 'View Opportunities', 1, '2026-07-10 17:01:04'),
(196, 'opportunities', 'opportunities.create', 'Create Opportunities', 1, '2026-07-10 17:01:04'),
(197, 'opportunities', 'opportunities.edit', 'Edit Opportunities', 1, '2026-07-10 17:01:04'),
(198, 'opportunities', 'opportunities.delete', 'Delete Opportunities', 1, '2026-07-10 17:01:04'),
(199, 'sales_stages', 'sales_stages.view', 'View Sales Stages', 1, '2026-07-10 17:01:04'),
(200, 'sales_stages', 'sales_stages.create', 'Create Sales Stages', 1, '2026-07-10 17:01:04'),
(201, 'sales_stages', 'sales_stages.edit', 'Edit Sales Stages', 1, '2026-07-10 17:01:04'),
(202, 'sales_stages', 'sales_stages.delete', 'Delete Sales Stages', 1, '2026-07-10 17:01:04'),
(203, 'expected_revenue', 'expected_revenue.view', 'View Expected Revenue', 1, '2026-07-10 17:01:04'),
(204, 'probability', 'probability.view', 'View Probability', 1, '2026-07-10 17:01:04'),
(205, 'probability', 'probability.edit', 'Edit Probability', 1, '2026-07-10 17:01:04'),
(206, 'competitors', 'competitors.view', 'View Competitors', 1, '2026-07-10 17:01:04'),
(207, 'competitors', 'competitors.create', 'Create Competitors', 1, '2026-07-10 17:01:04'),
(208, 'competitors', 'competitors.edit', 'Edit Competitors', 1, '2026-07-10 17:01:04'),
(209, 'competitors', 'competitors.delete', 'Delete Competitors', 1, '2026-07-10 17:01:04'),
(210, 'price_lists', 'price_lists.view', 'View Price Lists', 1, '2026-07-11 02:24:49'),
(211, 'price_lists', 'price_lists.create', 'Create Price Lists', 1, '2026-07-11 02:24:49'),
(212, 'price_lists', 'price_lists.edit', 'Edit Price Lists', 1, '2026-07-11 02:24:49'),
(213, 'price_lists', 'price_lists.delete', 'Delete Price Lists', 1, '2026-07-11 02:24:49'),
(214, 'quotation_templates', 'quotation_templates.view', 'View Quotation Templates', 1, '2026-07-11 02:24:49'),
(215, 'quotation_templates', 'quotation_templates.create', 'Create Quotation Templates', 1, '2026-07-11 02:24:49'),
(216, 'quotation_templates', 'quotation_templates.edit', 'Edit Quotation Templates', 1, '2026-07-11 02:24:49'),
(217, 'quotation_templates', 'quotation_templates.delete', 'Delete Quotation Templates', 1, '2026-07-11 02:24:49'),
(218, 'quotations', 'quotations.view', 'View Quotations', 1, '2026-07-11 02:24:49'),
(219, 'quotations', 'quotations.create', 'Create Quotations', 1, '2026-07-11 02:24:49'),
(220, 'quotations', 'quotations.edit', 'Edit Quotations', 1, '2026-07-11 02:24:49'),
(221, 'quotations', 'quotations.delete', 'Delete Quotations', 1, '2026-07-11 02:24:49'),
(222, 'quotations', 'quotations.approve', 'Approve Quotations', 1, '2026-07-11 02:24:49'),
(223, 'sales_orders', 'sales_orders.view', 'View Sales Orders', 1, '2026-07-11 02:24:49'),
(224, 'sales_orders', 'sales_orders.create', 'Create Sales Orders', 1, '2026-07-11 02:24:49'),
(225, 'sales_orders', 'sales_orders.edit', 'Edit Sales Orders', 1, '2026-07-11 02:24:49'),
(226, 'sales_orders', 'sales_orders.delete', 'Delete Sales Orders', 1, '2026-07-11 02:24:49'),
(227, 'sales_orders', 'sales_orders.approve', 'Approve Sales Orders', 1, '2026-07-11 02:24:49'),
(228, 'deliveries', 'deliveries.view', 'View Deliveries', 1, '2026-07-11 02:24:49'),
(229, 'deliveries', 'deliveries.create', 'Create Deliveries', 1, '2026-07-11 02:24:49'),
(230, 'deliveries', 'deliveries.edit', 'Edit Deliveries', 1, '2026-07-11 02:24:49'),
(231, 'deliveries', 'deliveries.delete', 'Delete Deliveries', 1, '2026-07-11 02:24:49'),
(232, 'deliveries', 'deliveries.dispatch', 'Dispatch Deliveries', 1, '2026-07-11 02:24:49'),
(233, 'invoices', 'invoices.view', 'View Invoices', 1, '2026-07-11 02:47:46'),
(234, 'invoices', 'invoices.create', 'Create Invoices', 1, '2026-07-11 02:47:46'),
(235, 'invoices', 'invoices.edit', 'Edit Invoices', 1, '2026-07-11 02:47:46'),
(236, 'invoices', 'invoices.delete', 'Delete Invoices', 1, '2026-07-11 02:47:46'),
(237, 'sales_returns', 'sales_returns.view', 'View Sales Returns', 1, '2026-07-11 02:47:46'),
(238, 'sales_returns', 'sales_returns.create', 'Create Sales Returns', 1, '2026-07-11 02:47:46'),
(239, 'sales_returns', 'sales_returns.edit', 'Edit Sales Returns', 1, '2026-07-11 02:47:46'),
(240, 'sales_returns', 'sales_returns.delete', 'Delete Sales Returns', 1, '2026-07-11 02:47:46'),
(241, 'refunds', 'refunds.view', 'View Refunds', 1, '2026-07-11 02:47:46'),
(242, 'refunds', 'refunds.create', 'Create Refunds', 1, '2026-07-11 02:47:46'),
(243, 'refunds', 'refunds.edit', 'Edit Refunds', 1, '2026-07-11 02:47:46'),
(244, 'refunds', 'refunds.delete', 'Delete Refunds', 1, '2026-07-11 02:47:46'),
(245, 'sales_team', 'sales_team.view', 'View Sales Team', 1, '2026-07-11 02:47:46'),
(246, 'sales_team', 'sales_team.create', 'Create Sales Team Records', 1, '2026-07-11 02:47:46'),
(247, 'sales_team', 'sales_team.edit', 'Edit Sales Team Records', 1, '2026-07-11 02:47:46'),
(248, 'sales_team', 'sales_team.delete', 'Delete Sales Team Records', 1, '2026-07-11 02:47:46'),
(249, 'sale_reports', 'sale_reports.view', 'View Sales Reports', 1, '2026-07-11 02:56:30'),
(250, 'contracts', 'contracts.view', 'View Contracts', 1, '2026-07-11 03:26:02'),
(251, 'contracts', 'contracts.create', 'Create Contracts', 1, '2026-07-11 03:26:02'),
(252, 'contracts', 'contracts.edit', 'Edit Contracts', 1, '2026-07-11 03:26:02'),
(253, 'contracts', 'contracts.delete', 'Delete Contracts', 1, '2026-07-11 03:26:02'),
(254, 'messages', 'messages.view', 'View Messages', 1, '2026-07-11 03:34:30'),
(255, 'messages', 'messages.send', 'Send Messages', 1, '2026-07-11 03:34:30'),
(256, 'messages', 'messages.manage_groups', 'Manage Message Groups', 1, '2026-07-11 03:34:30'),
(257, 'procurement', 'procurement.view', 'View Procurement Dashboard', 1, '2026-07-11 10:55:37'),
(258, 'suppliers', 'suppliers.view', 'View Suppliers', 1, '2026-07-11 10:55:37'),
(259, 'suppliers', 'suppliers.create', 'Create Suppliers', 1, '2026-07-11 10:55:37'),
(260, 'suppliers', 'suppliers.edit', 'Edit Suppliers', 1, '2026-07-11 10:55:37'),
(261, 'suppliers', 'suppliers.delete', 'Delete Suppliers', 1, '2026-07-11 10:55:37'),
(262, 'supplier_contacts', 'supplier_contacts.view', 'View Supplier Contacts', 1, '2026-07-11 10:55:37'),
(263, 'supplier_contacts', 'supplier_contacts.create', 'Create Supplier Contacts', 1, '2026-07-11 10:55:37'),
(264, 'supplier_contacts', 'supplier_contacts.edit', 'Edit Supplier Contacts', 1, '2026-07-11 10:55:37'),
(265, 'supplier_contacts', 'supplier_contacts.delete', 'Delete Supplier Contacts', 1, '2026-07-11 10:55:37'),
(266, 'purchase_requests', 'purchase_requests.view', 'View Purchase Requests', 1, '2026-07-11 10:55:37'),
(267, 'purchase_requests', 'purchase_requests.create', 'Create Purchase Requests', 1, '2026-07-11 10:55:37'),
(268, 'purchase_requests', 'purchase_requests.edit', 'Edit Purchase Requests', 1, '2026-07-11 10:55:37'),
(269, 'purchase_requests', 'purchase_requests.delete', 'Delete Purchase Requests', 1, '2026-07-11 10:55:37'),
(270, 'purchase_requests', 'purchase_requests.approve', 'Approve Purchase Requests', 1, '2026-07-11 10:55:37'),
(271, 'rfqs', 'rfqs.view', 'View RFQs', 1, '2026-07-11 10:55:37'),
(272, 'rfqs', 'rfqs.create', 'Create RFQs', 1, '2026-07-11 10:55:37'),
(273, 'rfqs', 'rfqs.edit', 'Edit RFQs', 1, '2026-07-11 10:55:37'),
(274, 'rfqs', 'rfqs.delete', 'Delete RFQs', 1, '2026-07-11 10:55:37'),
(275, 'rfqs', 'rfqs.approve', 'Approve RFQs', 1, '2026-07-11 10:55:37'),
(276, 'supplier_quotations', 'supplier_quotations.view', 'View Supplier Quotations', 1, '2026-07-11 10:55:37'),
(277, 'supplier_quotations', 'supplier_quotations.create', 'Create Supplier Quotations', 1, '2026-07-11 10:55:37'),
(278, 'supplier_quotations', 'supplier_quotations.edit', 'Edit Supplier Quotations', 1, '2026-07-11 10:55:37'),
(279, 'supplier_quotations', 'supplier_quotations.delete', 'Delete Supplier Quotations', 1, '2026-07-11 10:55:37'),
(280, 'supplier_quotations', 'supplier_quotations.approve', 'Approve Supplier Quotations', 1, '2026-07-11 10:55:37'),
(281, 'purchase_orders', 'purchase_orders.view', 'View Purchase Orders', 1, '2026-07-11 10:55:37'),
(282, 'purchase_orders', 'purchase_orders.create', 'Create Purchase Orders', 1, '2026-07-11 10:55:37'),
(283, 'purchase_orders', 'purchase_orders.edit', 'Edit Purchase Orders', 1, '2026-07-11 10:55:37'),
(284, 'purchase_orders', 'purchase_orders.delete', 'Delete Purchase Orders', 1, '2026-07-11 10:55:37'),
(285, 'purchase_orders', 'purchase_orders.approve', 'Approve Purchase Orders', 1, '2026-07-11 10:55:37'),
(286, 'goods_receipts', 'goods_receipts.view', 'View Goods Receipts', 1, '2026-07-11 10:55:37'),
(287, 'goods_receipts', 'goods_receipts.create', 'Create Goods Receipts', 1, '2026-07-11 10:55:37'),
(288, 'goods_receipts', 'goods_receipts.edit', 'Edit Goods Receipts', 1, '2026-07-11 10:55:37'),
(289, 'goods_receipts', 'goods_receipts.delete', 'Delete Goods Receipts', 1, '2026-07-11 10:55:37'),
(290, 'purchase_returns', 'purchase_returns.view', 'View Purchase Returns', 1, '2026-07-11 11:08:51'),
(291, 'purchase_returns', 'purchase_returns.create', 'Create Purchase Returns', 1, '2026-07-11 11:08:51'),
(292, 'purchase_returns', 'purchase_returns.edit', 'Edit Purchase Returns', 1, '2026-07-11 11:08:51'),
(293, 'purchase_returns', 'purchase_returns.delete', 'Delete Purchase Returns', 1, '2026-07-11 11:08:51'),
(294, 'purchase_returns', 'purchase_returns.approve', 'Approve Purchase Returns', 1, '2026-07-11 11:08:51'),
(295, 'vendor_bills', 'vendor_bills.view', 'View Vendor Bills', 1, '2026-07-11 11:08:51'),
(296, 'vendor_bills', 'vendor_bills.create', 'Create Vendor Bills', 1, '2026-07-11 11:08:51'),
(297, 'vendor_bills', 'vendor_bills.edit', 'Edit Vendor Bills', 1, '2026-07-11 11:08:51'),
(298, 'vendor_bills', 'vendor_bills.delete', 'Delete Vendor Bills', 1, '2026-07-11 11:08:51'),
(299, 'supplier_payments', 'supplier_payments.view', 'View Supplier Payments', 1, '2026-07-11 11:08:51'),
(300, 'supplier_payments', 'supplier_payments.create', 'Create Supplier Payments', 1, '2026-07-11 11:08:51'),
(301, 'supplier_payments', 'supplier_payments.edit', 'Edit Supplier Payments', 1, '2026-07-11 11:08:52'),
(302, 'supplier_payments', 'supplier_payments.delete', 'Delete Supplier Payments', 1, '2026-07-11 11:08:52'),
(303, 'supplier_contracts', 'supplier_contracts.view', 'View Supplier Contracts', 1, '2026-07-11 11:08:52'),
(304, 'supplier_contracts', 'supplier_contracts.create', 'Create Supplier Contracts', 1, '2026-07-11 11:08:52'),
(305, 'supplier_contracts', 'supplier_contracts.edit', 'Edit Supplier Contracts', 1, '2026-07-11 11:08:52'),
(306, 'supplier_contracts', 'supplier_contracts.delete', 'Delete Supplier Contracts', 1, '2026-07-11 11:08:52'),
(307, 'procurement', 'procurement.approve', 'Approve Procurement Documents', 1, '2026-07-11 11:08:52'),
(308, 'procurement', 'procurement.reports', 'View Procurement Reports', 1, '2026-07-11 11:08:52'),
(309, 'inventory', 'inventory.view', 'View Inventory Dashboard', 1, '2026-07-11 11:23:22'),
(310, 'products', 'products.view', 'View Products', 1, '2026-07-11 11:23:23'),
(311, 'products', 'products.create', 'Create Products', 1, '2026-07-11 11:23:23'),
(312, 'products', 'products.edit', 'Edit Products', 1, '2026-07-11 11:23:23'),
(313, 'products', 'products.delete', 'Delete Products', 1, '2026-07-11 11:23:23'),
(314, 'categories', 'categories.view', 'View Categories', 1, '2026-07-11 11:23:23'),
(315, 'categories', 'categories.create', 'Create Categories', 1, '2026-07-11 11:23:23'),
(316, 'categories', 'categories.edit', 'Edit Categories', 1, '2026-07-11 11:23:23'),
(317, 'categories', 'categories.delete', 'Delete Categories', 1, '2026-07-11 11:23:23'),
(318, 'brands', 'brands.view', 'View Brands', 1, '2026-07-11 11:23:23'),
(319, 'brands', 'brands.create', 'Create Brands', 1, '2026-07-11 11:23:23'),
(320, 'brands', 'brands.edit', 'Edit Brands', 1, '2026-07-11 11:23:23'),
(321, 'brands', 'brands.delete', 'Delete Brands', 1, '2026-07-11 11:23:23'),
(322, 'units_of_measure', 'units_of_measure.view', 'View Units of Measure', 1, '2026-07-11 11:23:23'),
(323, 'units_of_measure', 'units_of_measure.create', 'Create Units of Measure', 1, '2026-07-11 11:23:23'),
(324, 'units_of_measure', 'units_of_measure.edit', 'Edit Units of Measure', 1, '2026-07-11 11:23:23'),
(325, 'units_of_measure', 'units_of_measure.delete', 'Delete Units of Measure', 1, '2026-07-11 11:23:23'),
(326, 'warehouses', 'warehouses.view', 'View Warehouses', 1, '2026-07-11 11:23:23'),
(327, 'warehouses', 'warehouses.create', 'Create Warehouses', 1, '2026-07-11 11:23:23'),
(328, 'warehouses', 'warehouses.edit', 'Edit Warehouses', 1, '2026-07-11 11:23:23'),
(329, 'warehouses', 'warehouses.delete', 'Delete Warehouses', 1, '2026-07-11 11:23:24'),
(330, 'stock', 'stock.view', 'View Stock', 1, '2026-07-11 11:23:24'),
(331, 'stock', 'stock.adjust', 'Adjust Stock', 1, '2026-07-11 11:23:24'),
(332, 'stock_transfers', 'stock_transfers.view', 'View Stock Transfers', 1, '2026-07-11 11:23:24'),
(333, 'stock_transfers', 'stock_transfers.create', 'Create Stock Transfers', 1, '2026-07-11 11:23:24'),
(334, 'stock_transfers', 'stock_transfers.edit', 'Edit Stock Transfers', 1, '2026-07-11 11:23:24'),
(335, 'stock_transfers', 'stock_transfers.delete', 'Delete Stock Transfers', 1, '2026-07-11 11:23:24'),
(336, 'stock_transfers', 'stock_transfers.complete', 'Complete Stock Transfers', 1, '2026-07-11 11:23:24'),
(337, 'accounting', 'accounting.view', 'View Accounting Dashboard', 1, '2026-07-11 11:42:25'),
(338, 'accounting', 'accounting.reports', 'View Accounting Reports', 1, '2026-07-11 11:42:25'),
(339, 'chart_of_accounts', 'chart_of_accounts.view', 'View Chart of Accounts', 1, '2026-07-11 11:42:25'),
(340, 'chart_of_accounts', 'chart_of_accounts.create', 'Create Chart of Accounts', 1, '2026-07-11 11:42:25'),
(341, 'chart_of_accounts', 'chart_of_accounts.edit', 'Edit Chart of Accounts', 1, '2026-07-11 11:42:25'),
(342, 'chart_of_accounts', 'chart_of_accounts.delete', 'Delete Chart of Accounts', 1, '2026-07-11 11:42:25'),
(343, 'journal_entries', 'journal_entries.view', 'View Journal Entries', 1, '2026-07-11 11:42:25'),
(344, 'journal_entries', 'journal_entries.create', 'Create Journal Entries', 1, '2026-07-11 11:42:25'),
(345, 'journal_entries', 'journal_entries.edit', 'Edit Journal Entries', 1, '2026-07-11 11:42:25'),
(346, 'journal_entries', 'journal_entries.post', 'Post Journal Entries', 1, '2026-07-11 11:42:25'),
(347, 'journal_entries', 'journal_entries.delete', 'Delete Journal Entries', 1, '2026-07-11 11:42:25'),
(348, 'fiscal_years', 'fiscal_years.view', 'View Fiscal Years', 1, '2026-07-11 11:42:25'),
(349, 'fiscal_years', 'fiscal_years.create', 'Create Fiscal Years', 1, '2026-07-11 11:42:25'),
(350, 'fiscal_years', 'fiscal_years.edit', 'Edit Fiscal Years', 1, '2026-07-11 11:42:25'),
(351, 'fiscal_years', 'fiscal_years.delete', 'Delete Fiscal Years', 1, '2026-07-11 11:42:25'),
(352, 'cost_centers', 'cost_centers.view', 'View Cost Centers', 1, '2026-07-11 11:42:25'),
(353, 'cost_centers', 'cost_centers.create', 'Create Cost Centers', 1, '2026-07-11 11:42:25'),
(354, 'cost_centers', 'cost_centers.edit', 'Edit Cost Centers', 1, '2026-07-11 11:42:25'),
(355, 'cost_centers', 'cost_centers.delete', 'Delete Cost Centers', 1, '2026-07-11 11:42:25'),
(356, 'bank_accounts', 'bank_accounts.view', 'View Bank Accounts', 1, '2026-07-11 11:42:25'),
(357, 'bank_accounts', 'bank_accounts.create', 'Create Bank Accounts', 1, '2026-07-11 11:42:25'),
(358, 'bank_accounts', 'bank_accounts.edit', 'Edit Bank Accounts', 1, '2026-07-11 11:42:25'),
(359, 'bank_accounts', 'bank_accounts.delete', 'Delete Bank Accounts', 1, '2026-07-11 11:42:25'),
(360, 'bank_reconciliations', 'bank_reconciliations.view', 'View Bank Reconciliations', 1, '2026-07-11 11:42:25'),
(361, 'bank_reconciliations', 'bank_reconciliations.create', 'Create Bank Reconciliations', 1, '2026-07-11 11:42:25'),
(362, 'bank_reconciliations', 'bank_reconciliations.edit', 'Edit Bank Reconciliations', 1, '2026-07-11 11:42:25'),
(363, 'bank_reconciliations', 'bank_reconciliations.complete', 'Complete Bank Reconciliations', 1, '2026-07-11 11:42:25'),
(364, 'bank_reconciliations', 'bank_reconciliations.delete', 'Delete Bank Reconciliations', 1, '2026-07-11 11:42:25'),
(365, 'payment_vouchers', 'payment_vouchers.view', 'View Payment Vouchers', 1, '2026-07-11 11:42:25'),
(366, 'payment_vouchers', 'payment_vouchers.create', 'Create Payment Vouchers', 1, '2026-07-11 11:42:25'),
(367, 'payment_vouchers', 'payment_vouchers.edit', 'Edit Payment Vouchers', 1, '2026-07-11 11:42:25'),
(368, 'payment_vouchers', 'payment_vouchers.post', 'Post Payment Vouchers', 1, '2026-07-11 11:42:25'),
(369, 'payment_vouchers', 'payment_vouchers.delete', 'Delete Payment Vouchers', 1, '2026-07-11 11:42:25'),
(370, 'receipt_vouchers', 'receipt_vouchers.view', 'View Receipt Vouchers', 1, '2026-07-11 11:42:25'),
(371, 'receipt_vouchers', 'receipt_vouchers.create', 'Create Receipt Vouchers', 1, '2026-07-11 11:42:25'),
(372, 'receipt_vouchers', 'receipt_vouchers.edit', 'Edit Receipt Vouchers', 1, '2026-07-11 11:42:25'),
(373, 'receipt_vouchers', 'receipt_vouchers.post', 'Post Receipt Vouchers', 1, '2026-07-11 11:42:25'),
(374, 'receipt_vouchers', 'receipt_vouchers.delete', 'Delete Receipt Vouchers', 1, '2026-07-11 11:42:25'),
(375, 'expenses', 'expenses.view', 'View Expenses', 1, '2026-07-11 11:42:25'),
(376, 'expenses', 'expenses.create', 'Create Expenses', 1, '2026-07-11 11:42:25'),
(377, 'expenses', 'expenses.edit', 'Edit Expenses', 1, '2026-07-11 11:42:25'),
(378, 'expenses', 'expenses.approve', 'Approve Expenses', 1, '2026-07-11 11:42:25'),
(379, 'expenses', 'expenses.delete', 'Delete Expenses', 1, '2026-07-11 11:42:25'),
(380, 'taxes', 'taxes.view', 'View Taxes', 1, '2026-07-11 11:42:25'),
(381, 'taxes', 'taxes.create', 'Create Taxes', 1, '2026-07-11 11:42:25'),
(382, 'taxes', 'taxes.edit', 'Edit Taxes', 1, '2026-07-11 11:42:25'),
(383, 'taxes', 'taxes.delete', 'Delete Taxes', 1, '2026-07-11 11:42:25'),
(384, 'budgets', 'budgets.view', 'View Budgets', 1, '2026-07-11 11:42:25'),
(385, 'budgets', 'budgets.create', 'Create Budgets', 1, '2026-07-11 11:42:25'),
(386, 'budgets', 'budgets.edit', 'Edit Budgets', 1, '2026-07-11 11:42:25'),
(387, 'budgets', 'budgets.delete', 'Delete Budgets', 1, '2026-07-11 11:42:25'),
(388, 'customer_invoices', 'customer_invoices.view', 'View Customer Invoices', 1, '2026-07-11 12:14:55'),
(389, 'customer_invoices', 'customer_invoices.create', 'Create Customer Invoices', 1, '2026-07-11 12:14:55'),
(390, 'customer_invoices', 'customer_invoices.edit', 'Edit Customer Invoices', 1, '2026-07-11 12:14:55'),
(391, 'customer_invoices', 'customer_invoices.post', 'Post Customer Invoices', 1, '2026-07-11 12:14:55'),
(392, 'customer_invoices', 'customer_invoices.delete', 'Delete Customer Invoices', 1, '2026-07-11 12:14:55'),
(393, 'receipts', 'receipts.view', 'View Receipts', 1, '2026-07-11 12:14:55'),
(394, 'receipts', 'receipts.create', 'Create Receipts', 1, '2026-07-11 12:14:55'),
(395, 'receipts', 'receipts.edit', 'Edit Receipts', 1, '2026-07-11 12:14:55'),
(396, 'receipts', 'receipts.post', 'Post Receipts', 1, '2026-07-11 12:14:55'),
(397, 'receipts', 'receipts.delete', 'Delete Receipts', 1, '2026-07-11 12:14:55'),
(398, 'credit_notes', 'credit_notes.view', 'View Credit Notes', 1, '2026-07-11 12:14:55'),
(399, 'credit_notes', 'credit_notes.create', 'Create Credit Notes', 1, '2026-07-11 12:14:55'),
(400, 'credit_notes', 'credit_notes.edit', 'Edit Credit Notes', 1, '2026-07-11 12:14:55'),
(401, 'credit_notes', 'credit_notes.post', 'Post Credit Notes', 1, '2026-07-11 12:14:55'),
(402, 'credit_notes', 'credit_notes.delete', 'Delete Credit Notes', 1, '2026-07-11 12:14:55'),
(403, 'customer_statements', 'customer_statements.view', 'View Customer Statements', 1, '2026-07-11 12:14:55'),
(404, 'receivables_aging', 'receivables_aging.view', 'View Receivables Aging Report', 1, '2026-07-11 12:14:55'),
(405, 'supplier_bills', 'supplier_bills.view', 'View Supplier Bills', 1, '2026-07-11 12:14:55'),
(406, 'supplier_bills', 'supplier_bills.create', 'Create Supplier Bills', 1, '2026-07-11 12:14:55'),
(407, 'supplier_bills', 'supplier_bills.edit', 'Edit Supplier Bills', 1, '2026-07-11 12:14:55'),
(408, 'supplier_bills', 'supplier_bills.post', 'Post Supplier Bills', 1, '2026-07-11 12:14:55'),
(409, 'supplier_bills', 'supplier_bills.delete', 'Delete Supplier Bills', 1, '2026-07-11 12:14:55'),
(410, 'payments', 'payments.view', 'View Payments', 1, '2026-07-11 12:14:55'),
(411, 'payments', 'payments.create', 'Create Payments', 1, '2026-07-11 12:14:55'),
(412, 'payments', 'payments.edit', 'Edit Payments', 1, '2026-07-11 12:14:55'),
(413, 'payments', 'payments.post', 'Post Payments', 1, '2026-07-11 12:14:55'),
(414, 'payments', 'payments.delete', 'Delete Payments', 1, '2026-07-11 12:14:55'),
(415, 'debit_notes', 'debit_notes.view', 'View Debit Notes', 1, '2026-07-11 12:14:55'),
(416, 'debit_notes', 'debit_notes.create', 'Create Debit Notes', 1, '2026-07-11 12:14:55'),
(417, 'debit_notes', 'debit_notes.edit', 'Edit Debit Notes', 1, '2026-07-11 12:14:55'),
(418, 'debit_notes', 'debit_notes.post', 'Post Debit Notes', 1, '2026-07-11 12:14:55'),
(419, 'debit_notes', 'debit_notes.delete', 'Delete Debit Notes', 1, '2026-07-11 12:14:55'),
(420, 'supplier_statements', 'supplier_statements.view', 'View Supplier Statements', 1, '2026-07-11 12:14:55'),
(421, 'payables_aging', 'payables_aging.view', 'View Payables Aging Report', 1, '2026-07-11 12:14:55'),
(422, 'cash_accounts', 'cash_accounts.view', 'View Cash Accounts', 1, '2026-07-11 13:26:22'),
(423, 'cash_accounts', 'cash_accounts.create', 'Create Cash Accounts', 1, '2026-07-11 13:26:22'),
(424, 'cash_accounts', 'cash_accounts.edit', 'Edit Cash Accounts', 1, '2026-07-11 13:26:22'),
(425, 'cash_accounts', 'cash_accounts.delete', 'Delete Cash Accounts', 1, '2026-07-11 13:26:22'),
(426, 'bank_transfers', 'bank_transfers.view', 'View Bank Transfers', 1, '2026-07-11 13:26:22'),
(427, 'bank_transfers', 'bank_transfers.create', 'Create Bank Transfers', 1, '2026-07-11 13:26:22'),
(428, 'bank_transfers', 'bank_transfers.edit', 'Edit Bank Transfers', 1, '2026-07-11 13:26:22'),
(429, 'bank_transfers', 'bank_transfers.post', 'Post Bank Transfers', 1, '2026-07-11 13:26:22'),
(430, 'bank_transfers', 'bank_transfers.delete', 'Delete Bank Transfers', 1, '2026-07-11 13:26:22'),
(431, 'cheques', 'cheques.view', 'View Cheques', 1, '2026-07-11 13:26:22'),
(432, 'cheques', 'cheques.create', 'Create Cheques', 1, '2026-07-11 13:26:22'),
(433, 'cheques', 'cheques.edit', 'Edit Cheques', 1, '2026-07-11 13:26:22'),
(434, 'cheques', 'cheques.clear', 'Clear Cheques', 1, '2026-07-11 13:26:22'),
(435, 'cheques', 'cheques.delete', 'Delete Cheques', 1, '2026-07-11 13:26:22'),
(436, 'asset_categories', 'asset_categories.view', 'View Asset Categories', 1, '2026-07-11 13:26:22'),
(437, 'asset_categories', 'asset_categories.create', 'Create Asset Categories', 1, '2026-07-11 13:26:22'),
(438, 'asset_categories', 'asset_categories.edit', 'Edit Asset Categories', 1, '2026-07-11 13:26:22'),
(439, 'asset_categories', 'asset_categories.delete', 'Delete Asset Categories', 1, '2026-07-11 13:26:22'),
(440, 'fixed_assets', 'fixed_assets.view', 'View Fixed Assets', 1, '2026-07-11 13:26:22'),
(441, 'fixed_assets', 'fixed_assets.create', 'Create Fixed Assets', 1, '2026-07-11 13:26:22'),
(442, 'fixed_assets', 'fixed_assets.edit', 'Edit Fixed Assets', 1, '2026-07-11 13:26:22'),
(443, 'fixed_assets', 'fixed_assets.delete', 'Delete Fixed Assets', 1, '2026-07-11 13:26:22'),
(444, 'depreciation', 'depreciation.view', 'View Depreciation', 1, '2026-07-11 13:26:22'),
(445, 'depreciation', 'depreciation.create', 'Create Depreciation Runs', 1, '2026-07-11 13:26:22'),
(446, 'depreciation', 'depreciation.edit', 'Edit Depreciation Runs', 1, '2026-07-11 13:26:22'),
(447, 'depreciation', 'depreciation.post', 'Post Depreciation Runs', 1, '2026-07-11 13:26:22'),
(448, 'depreciation', 'depreciation.delete', 'Delete Depreciation Runs', 1, '2026-07-11 13:26:22'),
(449, 'asset_disposals', 'asset_disposals.view', 'View Asset Disposals', 1, '2026-07-11 13:26:22'),
(450, 'asset_disposals', 'asset_disposals.create', 'Create Asset Disposals', 1, '2026-07-11 13:26:22'),
(451, 'asset_disposals', 'asset_disposals.edit', 'Edit Asset Disposals', 1, '2026-07-11 13:26:22'),
(452, 'asset_disposals', 'asset_disposals.post', 'Post Asset Disposals', 1, '2026-07-11 13:26:22'),
(453, 'asset_disposals', 'asset_disposals.delete', 'Delete Asset Disposals', 1, '2026-07-11 13:26:22'),
(454, 'tax_rates', 'tax_rates.view', 'View Tax Rates', 1, '2026-07-11 13:26:22'),
(455, 'tax_rates', 'tax_rates.create', 'Create Tax Rates', 1, '2026-07-11 13:26:22'),
(456, 'tax_rates', 'tax_rates.edit', 'Edit Tax Rates', 1, '2026-07-11 13:26:22'),
(457, 'tax_rates', 'tax_rates.delete', 'Delete Tax Rates', 1, '2026-07-11 13:26:22'),
(458, 'vat_returns', 'vat_returns.view', 'View VAT Returns', 1, '2026-07-11 13:26:22'),
(459, 'vat_returns', 'vat_returns.create', 'Create VAT Returns', 1, '2026-07-11 13:26:22'),
(460, 'vat_returns', 'vat_returns.edit', 'Edit VAT Returns', 1, '2026-07-11 13:26:22'),
(461, 'vat_returns', 'vat_returns.submit', 'Submit VAT Returns', 1, '2026-07-11 13:26:22'),
(462, 'vat_returns', 'vat_returns.delete', 'Delete VAT Returns', 1, '2026-07-11 13:26:22'),
(463, 'tax_reports', 'tax_reports.view', 'View Tax Reports', 1, '2026-07-11 13:26:22'),
(464, 'customer_sites', 'customer_sites.view', 'View Customer Sites', 1, '2026-07-11 14:05:26'),
(465, 'customer_sites', 'customer_sites.create', 'Create Customer Sites', 1, '2026-07-11 14:05:26'),
(466, 'customer_sites', 'customer_sites.edit', 'Edit Customer Sites', 1, '2026-07-11 14:05:26'),
(467, 'customer_sites', 'customer_sites.delete', 'Delete Customer Sites', 1, '2026-07-11 14:05:26'),
(468, 'operations', 'operations.view', 'View Operations Dashboard', 1, '2026-07-11 14:13:34'),
(469, 'work_orders', 'work_orders.view', 'View Work Orders', 1, '2026-07-11 14:20:32'),
(470, 'work_orders', 'work_orders.create', 'Create Work Orders', 1, '2026-07-11 14:20:32'),
(471, 'work_orders', 'work_orders.assign_staff', 'Assign Staff to Work Orders', 1, '2026-07-11 14:20:32'),
(472, 'work_orders', 'work_orders.assign_equipment', 'Assign Equipment to Work Orders', 1, '2026-07-11 14:20:32'),
(473, 'work_orders', 'work_orders.edit', 'Edit Work Orders', 1, '2026-07-11 14:25:48'),
(474, 'work_orders', 'work_orders.delete', 'Delete Work Orders', 1, '2026-07-11 14:25:48'),
(475, 'work_orders', 'work_orders.complete', 'Complete Work Orders', 1, '2026-07-11 14:25:48'),
(476, 'stock_adjustments', 'stock_adjustments.view', 'View Stock Adjustments', 1, '2026-07-11 14:32:17'),
(477, 'stock_adjustments', 'stock_adjustments.create', 'Create Stock Adjustments', 1, '2026-07-11 14:32:17'),
(478, 'serial_numbers', 'serial_numbers.view', 'View Serial Numbers', 1, '2026-07-11 14:32:17'),
(479, 'serial_numbers', 'serial_numbers.create', 'Create Serial Numbers', 1, '2026-07-11 14:32:17'),
(480, 'serial_numbers', 'serial_numbers.edit', 'Edit Serial Numbers', 1, '2026-07-11 14:32:17'),
(481, 'serial_numbers', 'serial_numbers.delete', 'Delete Serial Numbers', 1, '2026-07-11 14:32:18'),
(482, 'batches', 'batches.view', 'View Batch Tracking', 1, '2026-07-11 14:32:18'),
(483, 'batches', 'batches.create', 'Create Batches', 1, '2026-07-11 14:32:18'),
(484, 'batches', 'batches.edit', 'Edit Batches', 1, '2026-07-11 14:32:18'),
(485, 'batches', 'batches.delete', 'Delete Batches', 1, '2026-07-11 14:32:18'),
(486, 'barcodes', 'barcodes.view', 'View Barcode & Labels', 1, '2026-07-11 14:32:18'),
(487, 'stock_counts', 'stock_counts.view', 'View Stock Counts', 1, '2026-07-11 14:32:18'),
(488, 'stock_counts', 'stock_counts.create', 'Create Stock Counts', 1, '2026-07-11 14:32:18'),
(489, 'stock_counts', 'stock_counts.edit', 'Edit Stock Counts', 1, '2026-07-11 14:32:18'),
(490, 'stock_counts', 'stock_counts.complete', 'Complete Stock Counts', 1, '2026-07-11 14:32:18'),
(491, 'stock_counts', 'stock_counts.delete', 'Delete Stock Counts', 1, '2026-07-11 14:32:18'),
(492, 'reorder_levels', 'reorder_levels.view', 'View Reorder Levels', 1, '2026-07-11 14:32:18'),
(493, 'reorder_levels', 'reorder_levels.edit', 'Edit Reorder Levels', 1, '2026-07-11 14:32:18'),
(494, 'asset_inventory', 'asset_inventory.view', 'View Asset Inventory', 1, '2026-07-11 14:32:18'),
(495, 'asset_inventory', 'asset_inventory.create', 'Create Asset Inventory', 1, '2026-07-11 14:32:18'),
(496, 'asset_inventory', 'asset_inventory.edit', 'Edit Asset Inventory', 1, '2026-07-11 14:32:18'),
(497, 'asset_inventory', 'asset_inventory.delete', 'Delete Asset Inventory', 1, '2026-07-11 14:32:18'),
(498, 'inventory', 'inventory.reports', 'View Inventory Reports', 1, '2026-07-11 14:32:19'),
(499, 'scheduling', 'scheduling.view', 'View Scheduling', 1, '2026-07-11 15:01:09'),
(500, 'scheduling', 'scheduling.create', 'Create Scheduling', 1, '2026-07-11 15:01:09'),
(501, 'scheduling', 'scheduling.edit', 'Edit Scheduling', 1, '2026-07-11 15:01:09'),
(502, 'scheduling', 'scheduling.delete', 'Delete Scheduling', 1, '2026-07-11 15:01:09'),
(503, 'operations_tasks', 'operations_tasks.view', 'View Operations Tasks', 1, '2026-07-11 16:07:20'),
(504, 'operations_tasks', 'operations_tasks.create', 'Create Operations Tasks', 1, '2026-07-11 16:07:20'),
(505, 'operations_tasks', 'operations_tasks.edit', 'Edit Operations Tasks', 1, '2026-07-11 16:07:20'),
(506, 'operations_tasks', 'operations_tasks.delete', 'Delete Operations Tasks', 1, '2026-07-11 16:07:20'),
(507, 'work_orders', 'work_orders.approve', 'Approve Work Orders', 1, '2026-07-11 16:07:20'),
(508, 'operations_approvals', 'operations_approvals.view', 'View Operations Approval Requests', 1, '2026-07-11 16:19:17'),
(509, 'operations_approvals', 'operations_approvals.create', 'Create Operations Approval Requests', 1, '2026-07-11 16:19:17'),
(510, 'operations_approvals', 'operations_approvals.decide', 'Approve or Reject Operations Approval Requests', 1, '2026-07-11 16:19:17'),
(511, 'tpin', 'tpin.assign', 'Assign TPIN Requirement', 1, '2026-07-11 16:27:45'),
(512, 'tpin', 'tpin.clear', 'Clear User TPIN', 1, '2026-07-11 16:27:45'),
(513, 'field_service', 'field_service.view', 'View Field Service', 1, '2026-07-11 23:42:05'),
(514, 'quality_control', 'quality_control.view', 'View Quality Control', 1, '2026-07-11 23:42:05'),
(515, 'operations_resources', 'operations_resources.view', 'View Operations Resources', 1, '2026-07-11 23:42:05'),
(516, 'field_service', 'field_service.create', 'Create Field Service Records', 1, '2026-07-11 23:45:25'),
(517, 'field_service', 'field_service.edit', 'Edit Field Service Records', 1, '2026-07-11 23:45:25'),
(518, 'field_service', 'field_service.delete', 'Delete Field Service Records', 1, '2026-07-11 23:45:25'),
(519, 'quality_control', 'quality_control.create', 'Create Quality Control Records', 1, '2026-07-11 23:45:25'),
(520, 'quality_control', 'quality_control.edit', 'Edit Quality Control Records', 1, '2026-07-11 23:45:25'),
(521, 'quality_control', 'quality_control.delete', 'Delete Quality Control Records', 1, '2026-07-11 23:45:25'),
(522, 'operations_resources', 'operations_resources.create', 'Create Operations Resource Records', 1, '2026-07-11 23:45:25'),
(523, 'operations_resources', 'operations_resources.edit', 'Edit Operations Resource Records', 1, '2026-07-11 23:45:25'),
(524, 'operations_resources', 'operations_resources.delete', 'Delete Operations Resource Records', 1, '2026-07-11 23:45:25'),
(525, 'transport', 'transport.view', 'View Transport Dashboard', 1, '2026-07-12 00:12:57'),
(526, 'transport_vehicles', 'transport_vehicles.view', 'View Vehicles', 1, '2026-07-12 00:12:57'),
(527, 'transport_vehicles', 'transport_vehicles.create', 'Create Vehicles', 1, '2026-07-12 00:12:58'),
(528, 'transport_vehicles', 'transport_vehicles.edit', 'Edit Vehicles', 1, '2026-07-12 00:12:58'),
(529, 'transport_vehicles', 'transport_vehicles.delete', 'Delete Vehicles', 1, '2026-07-12 00:12:58'),
(530, 'transport_drivers', 'transport_drivers.view', 'View Drivers', 1, '2026-07-12 00:12:58'),
(531, 'transport_drivers', 'transport_drivers.create', 'Create Drivers', 1, '2026-07-12 00:12:58'),
(532, 'transport_drivers', 'transport_drivers.edit', 'Edit Drivers', 1, '2026-07-12 00:12:58'),
(533, 'transport_drivers', 'transport_drivers.delete', 'Delete Drivers', 1, '2026-07-12 00:12:58'),
(534, 'transport_locations', 'transport_locations.view', 'View Transport Locations', 1, '2026-07-12 00:12:58'),
(535, 'transport_locations', 'transport_locations.create', 'Create Transport Locations', 1, '2026-07-12 00:12:58'),
(536, 'transport_locations', 'transport_locations.edit', 'Edit Transport Locations', 1, '2026-07-12 00:12:58'),
(537, 'transport_locations', 'transport_locations.delete', 'Delete Transport Locations', 1, '2026-07-12 00:12:58'),
(538, 'transport_routes', 'transport_routes.view', 'View Routes', 1, '2026-07-12 00:12:58'),
(539, 'transport_routes', 'transport_routes.create', 'Create Routes', 1, '2026-07-12 00:12:58'),
(540, 'transport_routes', 'transport_routes.edit', 'Edit Routes', 1, '2026-07-12 00:12:58'),
(541, 'transport_routes', 'transport_routes.delete', 'Delete Routes', 1, '2026-07-12 00:12:58'),
(542, 'transport_scheduling', 'transport_scheduling.view', 'View Transport Scheduling', 1, '2026-07-12 00:12:58'),
(543, 'transport_scheduling', 'transport_scheduling.create', 'Create Transport Schedules', 1, '2026-07-12 00:12:58'),
(544, 'transport_scheduling', 'transport_scheduling.edit', 'Edit Transport Schedules', 1, '2026-07-12 00:12:58'),
(545, 'transport_scheduling', 'transport_scheduling.delete', 'Delete Transport Schedules', 1, '2026-07-12 00:12:58'),
(546, 'transport_maps', 'transport_maps.view', 'View Transport Maps', 1, '2026-07-12 00:12:58'),
(547, 'transport_maps', 'transport_maps.edit', 'Edit Transport Map Settings', 1, '2026-07-12 00:12:58'),
(548, 'transport_reports', 'transport_reports.view', 'View Transport Reports', 1, '2026-07-12 00:12:58'),
(549, 'transport_ai', 'transport_ai.view', 'View AI Transport Plans', 1, '2026-07-12 00:33:51'),
(550, 'transport_ai', 'transport_ai.generate', 'Generate AI Transport Plans', 1, '2026-07-12 00:33:51'),
(551, 'transport_ai', 'transport_ai.approve', 'Approve AI Transport Plans', 1, '2026-07-12 00:33:51'),
(552, 'transport_ai', 'transport_ai.settings', 'Manage AI Transport Settings', 1, '2026-07-12 00:33:51');

-- --------------------------------------------------------

--
-- Table structure for table `price_lists`
--

CREATE TABLE `price_lists` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `name` varchar(150) COLLATE utf8mb4_unicode_ci NOT NULL,
  `code` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `currency` varchar(3) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'USD',
  `status` enum('active','inactive') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'active',
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `price_lists`
--

INSERT INTO `price_lists` (`id`, `name`, `code`, `currency`, `status`, `notes`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'Standard BHD', 'STD-BHD', 'BHD', 'active', NULL, 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `price_list_items`
--

CREATE TABLE `price_list_items` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `price_list_id` bigint(20) UNSIGNED NOT NULL,
  `item_code` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `item_name` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `unit` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT 'pcs',
  `unit_price` decimal(15,2) NOT NULL DEFAULT 0.00,
  `sort_order` int(11) NOT NULL DEFAULT 0,
  `created_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `price_list_items`
--

INSERT INTO `price_list_items` (`id`, `price_list_id`, `item_code`, `item_name`, `description`, `unit`, `unit_price`, `sort_order`, `created_at`) VALUES
(1, 1, 'SVC-CLEAN', 'Cleaning Service (month)', NULL, 'month', 850.00, 1, '2026-07-11 16:01:58'),
(2, 1, 'SVC-IT', 'IT Support Retainer', NULL, 'month', 1200.00, 2, '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `products`
--

CREATE TABLE `products` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `name` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL,
  `sku` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL,
  `barcode` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `category_id` bigint(20) UNSIGNED DEFAULT NULL,
  `brand_id` bigint(20) UNSIGNED DEFAULT NULL,
  `unit_id` bigint(20) UNSIGNED DEFAULT NULL,
  `description` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `cost_price` decimal(15,2) NOT NULL DEFAULT 0.00,
  `sale_price` decimal(15,2) NOT NULL DEFAULT 0.00,
  `reorder_level` decimal(12,3) NOT NULL DEFAULT 0.000,
  `status` enum('active','inactive') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'active',
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `products`
--

INSERT INTO `products` (`id`, `name`, `sku`, `barcode`, `category_id`, `brand_id`, `unit_id`, `description`, `cost_price`, `sale_price`, `reorder_level`, `status`, `notes`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'Floor Detergent 5L', 'DET-5L', '628362db02788', 1, 1, 1, NULL, 2.50, 4.00, 20.000, 'active', NULL, 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(2, 'Garbage Bags Large (roll)', 'BAG-LG', '62855bc5b95ab', 1, 1, 1, NULL, 1.20, 2.00, 50.000, 'active', NULL, 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(3, 'Nitrile Gloves M', 'GLV-M', '628136d442a1a', 1, 1, 1, NULL, 0.80, 1.50, 30.000, 'active', NULL, 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(4, 'USB Keyboard', 'KB-USB', '628e789a075ee', 2, 1, 1, NULL, 4.00, 7.50, 5.000, 'active', NULL, 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(5, 'Wireless Mouse', 'MSE-WL', '628d50612517f', 2, 1, 1, NULL, 3.50, 6.00, 5.000, 'active', NULL, 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `product_batches`
--

CREATE TABLE `product_batches` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `product_id` bigint(20) UNSIGNED NOT NULL,
  `warehouse_id` bigint(20) UNSIGNED DEFAULT NULL,
  `batch_number` varchar(80) COLLATE utf8mb4_unicode_ci NOT NULL,
  `quantity` decimal(12,3) NOT NULL DEFAULT 0.000,
  `manufactured_date` date DEFAULT NULL,
  `expiry_date` date DEFAULT NULL,
  `status` enum('active','expired','depleted') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'active',
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `product_brands`
--

CREATE TABLE `product_brands` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL,
  `code` varchar(30) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `status` enum('active','inactive') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'active',
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `product_brands`
--

INSERT INTO `product_brands` (`id`, `name`, `code`, `description`, `status`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'Generic', 'GEN', NULL, 'active', 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `product_categories`
--

CREATE TABLE `product_categories` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL,
  `code` varchar(30) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `status` enum('active','inactive') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'active',
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `product_categories`
--

INSERT INTO `product_categories` (`id`, `name`, `code`, `description`, `status`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'Cleaning Supplies', 'CLEAN', NULL, 'active', 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(2, 'IT Hardware', 'IT', NULL, 'active', 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `product_serials`
--

CREATE TABLE `product_serials` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `product_id` bigint(20) UNSIGNED NOT NULL,
  `warehouse_id` bigint(20) UNSIGNED DEFAULT NULL,
  `serial_number` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL,
  `status` enum('in_stock','allocated','sold','scrapped') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'in_stock',
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `purchase_orders`
--

CREATE TABLE `purchase_orders` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `supplier_quotation_id` bigint(20) UNSIGNED DEFAULT NULL,
  `supplier_id` bigint(20) UNSIGNED NOT NULL,
  `order_date` date NOT NULL,
  `expected_date` date DEFAULT NULL,
  `status` enum('draft','pending_approval','approved','rejected','confirmed','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft',
  `subtotal` decimal(15,2) NOT NULL DEFAULT 0.00,
  `tax_amount` decimal(15,2) NOT NULL DEFAULT 0.00,
  `total` decimal(15,2) NOT NULL DEFAULT 0.00,
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `rejection_reason` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `approved_by` bigint(20) UNSIGNED DEFAULT NULL,
  `approved_at` datetime DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `purchase_orders`
--

INSERT INTO `purchase_orders` (`id`, `number`, `supplier_quotation_id`, `supplier_id`, `order_date`, `expected_date`, `status`, `subtotal`, `tax_amount`, `total`, `notes`, `rejection_reason`, `approved_by`, `approved_at`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'PO-DEMO-001', NULL, 1, '2026-07-06', '2026-07-14', 'approved', 125.00, 0.00, 125.00, NULL, NULL, 2, '2026-07-11 16:01:58', 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `purchase_order_lines`
--

CREATE TABLE `purchase_order_lines` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `purchase_order_id` bigint(20) UNSIGNED NOT NULL,
  `item_code` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `item_name` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `quantity` decimal(12,3) NOT NULL DEFAULT 1.000,
  `unit` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT 'pcs',
  `unit_price` decimal(15,2) NOT NULL DEFAULT 0.00,
  `line_total` decimal(15,2) NOT NULL DEFAULT 0.00,
  `sort_order` int(11) NOT NULL DEFAULT 0,
  `created_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `purchase_order_lines`
--

INSERT INTO `purchase_order_lines` (`id`, `purchase_order_id`, `item_code`, `item_name`, `description`, `quantity`, `unit`, `unit_price`, `line_total`, `sort_order`, `created_at`) VALUES
(1, 1, 'DET-5L', 'Floor Detergent 5L', NULL, 50.000, 'pcs', 2.50, 125.00, 1, '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `purchase_requests`
--

CREATE TABLE `purchase_requests` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `request_date` date NOT NULL,
  `needed_by` date DEFAULT NULL,
  `department` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `status` enum('draft','pending_approval','approved','rejected','converted','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft',
  `subtotal` decimal(15,2) NOT NULL DEFAULT 0.00,
  `tax_amount` decimal(15,2) NOT NULL DEFAULT 0.00,
  `total` decimal(15,2) NOT NULL DEFAULT 0.00,
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `rejection_reason` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `approved_by` bigint(20) UNSIGNED DEFAULT NULL,
  `approved_at` datetime DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `purchase_requests`
--

INSERT INTO `purchase_requests` (`id`, `number`, `request_date`, `needed_by`, `department`, `status`, `subtotal`, `tax_amount`, `total`, `notes`, `rejection_reason`, `approved_by`, `approved_at`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'PR-DEMO-001', '2026-07-04', '2026-07-18', 'Operations', 'approved', 125.00, 0.00, 125.00, NULL, NULL, 2, '2026-07-11 16:01:58', 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `purchase_request_lines`
--

CREATE TABLE `purchase_request_lines` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `purchase_request_id` bigint(20) UNSIGNED NOT NULL,
  `item_code` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `item_name` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `quantity` decimal(12,3) NOT NULL DEFAULT 1.000,
  `unit` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT 'pcs',
  `unit_price` decimal(15,2) NOT NULL DEFAULT 0.00,
  `line_total` decimal(15,2) NOT NULL DEFAULT 0.00,
  `sort_order` int(11) NOT NULL DEFAULT 0,
  `created_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `purchase_request_lines`
--

INSERT INTO `purchase_request_lines` (`id`, `purchase_request_id`, `item_code`, `item_name`, `description`, `quantity`, `unit`, `unit_price`, `line_total`, `sort_order`, `created_at`) VALUES
(1, 1, 'DET-5L', 'Floor Detergent 5L', NULL, 50.000, 'pcs', 2.50, 125.00, 1, '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `purchase_returns`
--

CREATE TABLE `purchase_returns` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `supplier_id` bigint(20) UNSIGNED NOT NULL,
  `purchase_order_id` bigint(20) UNSIGNED DEFAULT NULL,
  `goods_receipt_id` bigint(20) UNSIGNED DEFAULT NULL,
  `return_date` date NOT NULL,
  `status` enum('draft','submitted','approved','completed','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft',
  `subtotal` decimal(15,2) NOT NULL DEFAULT 0.00,
  `tax_amount` decimal(15,2) NOT NULL DEFAULT 0.00,
  `total` decimal(15,2) NOT NULL DEFAULT 0.00,
  `reason` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `approved_by` bigint(20) UNSIGNED DEFAULT NULL,
  `approved_at` datetime DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `purchase_return_lines`
--

CREATE TABLE `purchase_return_lines` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `purchase_return_id` bigint(20) UNSIGNED NOT NULL,
  `item_code` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `item_name` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `quantity` decimal(12,3) NOT NULL DEFAULT 1.000,
  `unit` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT 'pcs',
  `unit_price` decimal(15,2) NOT NULL DEFAULT 0.00,
  `line_total` decimal(15,2) NOT NULL DEFAULT 0.00,
  `sort_order` int(11) NOT NULL DEFAULT 0,
  `created_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `qc_audit_checklists`
--

CREATE TABLE `qc_audit_checklists` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `name` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL,
  `code` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `description` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `status` enum('active','inactive') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'active',
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `qc_audit_checklist_items`
--

CREATE TABLE `qc_audit_checklist_items` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `checklist_id` bigint(20) UNSIGNED NOT NULL,
  `title` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `is_required` tinyint(1) NOT NULL DEFAULT 1,
  `sort_order` int(11) NOT NULL DEFAULT 0,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `qc_inspections`
--

CREATE TABLE `qc_inspections` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `title` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `company_id` bigint(20) UNSIGNED DEFAULT NULL,
  `work_order_id` bigint(20) UNSIGNED DEFAULT NULL,
  `service_visit_id` bigint(20) UNSIGNED DEFAULT NULL,
  `inspector_employee_id` bigint(20) UNSIGNED DEFAULT NULL,
  `priority` enum('low','normal','high','urgent') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'normal',
  `status` enum('planned','in_progress','completed','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'planned',
  `overall_result` enum('pass','fail','na','pending') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'pending',
  `location` varchar(200) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `scheduled_date` date DEFAULT NULL,
  `completed_at` datetime DEFAULT NULL,
  `score` decimal(8,2) DEFAULT NULL,
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `qc_performance_scores`
--

CREATE TABLE `qc_performance_scores` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `subject_type` enum('employee','work_order','service_visit','inspection') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'employee',
  `subject_id` bigint(20) UNSIGNED NOT NULL,
  `subject_label` varchar(200) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `metric_code` varchar(80) COLLATE utf8mb4_unicode_ci NOT NULL,
  `metric_name` varchar(150) COLLATE utf8mb4_unicode_ci NOT NULL,
  `score` decimal(8,2) NOT NULL DEFAULT 0.00,
  `max_score` decimal(8,2) NOT NULL DEFAULT 100.00,
  `period_start` date DEFAULT NULL,
  `period_end` date DEFAULT NULL,
  `status` enum('draft','published') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft',
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `scored_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `quotations`
--

CREATE TABLE `quotations` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `company_id` bigint(20) UNSIGNED NOT NULL,
  `contact_id` bigint(20) UNSIGNED DEFAULT NULL,
  `opportunity_id` bigint(20) UNSIGNED DEFAULT NULL,
  `template_id` bigint(20) UNSIGNED DEFAULT NULL,
  `price_list_id` bigint(20) UNSIGNED DEFAULT NULL,
  `quotation_date` date NOT NULL,
  `valid_until` date DEFAULT NULL,
  `status` enum('draft','pending_approval','approved','rejected','sent','converted','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft',
  `subtotal` decimal(15,2) NOT NULL DEFAULT 0.00,
  `tax_amount` decimal(15,2) NOT NULL DEFAULT 0.00,
  `total` decimal(15,2) NOT NULL DEFAULT 0.00,
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `rejection_reason` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `approved_by` bigint(20) UNSIGNED DEFAULT NULL,
  `approved_at` datetime DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `quotations`
--

INSERT INTO `quotations` (`id`, `number`, `company_id`, `contact_id`, `opportunity_id`, `template_id`, `price_list_id`, `quotation_date`, `valid_until`, `status`, `subtotal`, `tax_amount`, `total`, `notes`, `rejection_reason`, `approved_by`, `approved_at`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'QT-DEMO-001', 2, 2, 1, NULL, 1, '2026-07-11', '2026-08-10', 'sent', 14400.00, 0.00, 14400.00, '12 months IT support', NULL, NULL, NULL, 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `quotation_lines`
--

CREATE TABLE `quotation_lines` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `quotation_id` bigint(20) UNSIGNED NOT NULL,
  `item_code` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `item_name` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `quantity` decimal(12,3) NOT NULL DEFAULT 1.000,
  `unit` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT 'pcs',
  `unit_price` decimal(15,2) NOT NULL DEFAULT 0.00,
  `line_total` decimal(15,2) NOT NULL DEFAULT 0.00,
  `sort_order` int(11) NOT NULL DEFAULT 0,
  `created_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `quotation_lines`
--

INSERT INTO `quotation_lines` (`id`, `quotation_id`, `item_code`, `item_name`, `description`, `quantity`, `unit`, `unit_price`, `line_total`, `sort_order`, `created_at`) VALUES
(1, 1, 'SVC-IT', 'IT Support Retainer', NULL, 12.000, 'month', 1200.00, 14400.00, 1, '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `quotation_templates`
--

CREATE TABLE `quotation_templates` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `name` varchar(150) COLLATE utf8mb4_unicode_ci NOT NULL,
  `code` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `subject` varchar(200) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `intro_text` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `terms_text` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `default_validity_days` int(10) UNSIGNED NOT NULL DEFAULT 30,
  `status` enum('active','inactive') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'active',
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `receipt_vouchers`
--

CREATE TABLE `receipt_vouchers` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `voucher_date` date NOT NULL,
  `amount` decimal(15,2) NOT NULL DEFAULT 0.00,
  `account_id` bigint(20) UNSIGNED NOT NULL,
  `receive_to_type` enum('bank','cash') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'bank',
  `receive_to_id` bigint(20) UNSIGNED NOT NULL,
  `cost_center_id` bigint(20) UNSIGNED DEFAULT NULL,
  `payer` varchar(150) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `reference` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `status` enum('draft','posted','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft',
  `journal_entry_id` bigint(20) UNSIGNED DEFAULT NULL,
  `posted_at` datetime DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `refunds`
--

CREATE TABLE `refunds` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `company_id` bigint(20) UNSIGNED NOT NULL,
  `invoice_id` bigint(20) UNSIGNED DEFAULT NULL,
  `sales_return_id` bigint(20) UNSIGNED DEFAULT NULL,
  `refund_date` date NOT NULL,
  `amount` decimal(15,2) NOT NULL DEFAULT 0.00,
  `method` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `status` enum('draft','pending','processed','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft',
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `processed_at` datetime DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `rfqs`
--

CREATE TABLE `rfqs` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `purchase_request_id` bigint(20) UNSIGNED DEFAULT NULL,
  `rfq_date` date NOT NULL,
  `valid_until` date DEFAULT NULL,
  `status` enum('draft','pending_approval','approved','rejected','sent','converted','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft',
  `subtotal` decimal(15,2) NOT NULL DEFAULT 0.00,
  `tax_amount` decimal(15,2) NOT NULL DEFAULT 0.00,
  `total` decimal(15,2) NOT NULL DEFAULT 0.00,
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `rejection_reason` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `approved_by` bigint(20) UNSIGNED DEFAULT NULL,
  `approved_at` datetime DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `rfq_lines`
--

CREATE TABLE `rfq_lines` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `rfq_id` bigint(20) UNSIGNED NOT NULL,
  `item_code` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `item_name` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `quantity` decimal(12,3) NOT NULL DEFAULT 1.000,
  `unit` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT 'pcs',
  `unit_price` decimal(15,2) NOT NULL DEFAULT 0.00,
  `line_total` decimal(15,2) NOT NULL DEFAULT 0.00,
  `sort_order` int(11) NOT NULL DEFAULT 0,
  `created_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `rfq_suppliers`
--

CREATE TABLE `rfq_suppliers` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `rfq_id` bigint(20) UNSIGNED NOT NULL,
  `supplier_id` bigint(20) UNSIGNED NOT NULL,
  `created_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `roles`
--

CREATE TABLE `roles` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `name` varchar(100) NOT NULL,
  `slug` varchar(100) NOT NULL,
  `description` text DEFAULT NULL,
  `is_system` tinyint(1) NOT NULL DEFAULT 0,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

--
-- Dumping data for table `roles`
--

INSERT INTO `roles` (`id`, `name`, `slug`, `description`, `is_system`, `created_at`, `updated_at`) VALUES
(1, 'Administrator', 'administrator', 'Full, unrestricted access to every module. Cannot be deleted.', 1, '2026-07-09 11:56:20', '2026-07-09 11:56:20'),
(2, 'hr', 'hr', '', 0, '2026-07-09 12:45:42', '2026-07-09 12:45:42'),
(3, 'Boss / Managing Director', 'boss', 'Full business access for testing (like admin).', 0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(4, 'HR Manager', 'hrm_manager', 'HRM modules: employees, leave, attendance, payroll, assets, documents.', 0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(5, 'Attendance Clerk', 'attendance_clerk', 'Attendance viewing and clocking only.', 0, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(6, 'Transport', 'transport', '', 0, '2026-07-12 06:23:25', '2026-07-12 06:23:25');

-- --------------------------------------------------------

--
-- Table structure for table `role_permissions`
--

CREATE TABLE `role_permissions` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `role_id` bigint(20) UNSIGNED NOT NULL,
  `permission_id` bigint(20) UNSIGNED NOT NULL,
  `created_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

--
-- Dumping data for table `role_permissions`
--

INSERT INTO `role_permissions` (`id`, `role_id`, `permission_id`, `created_at`) VALUES
(1, 1, 1, '2026-07-09 11:56:20'),
(2, 1, 2, '2026-07-09 11:56:20'),
(3, 1, 3, '2026-07-09 11:56:20'),
(4, 1, 4, '2026-07-09 11:56:20'),
(5, 1, 5, '2026-07-09 11:56:20'),
(6, 1, 6, '2026-07-09 11:56:20'),
(7, 1, 7, '2026-07-09 11:56:20'),
(8, 1, 8, '2026-07-09 11:56:20'),
(9, 1, 9, '2026-07-09 11:56:20'),
(10, 1, 10, '2026-07-09 11:56:20'),
(11, 1, 11, '2026-07-09 11:56:20'),
(12, 1, 12, '2026-07-09 11:56:20'),
(13, 1, 13, '2026-07-09 11:56:20'),
(14, 1, 14, '2026-07-09 11:56:20'),
(15, 1, 16, '2026-07-09 18:33:23'),
(16, 1, 18, '2026-07-09 18:33:23'),
(17, 1, 17, '2026-07-09 18:33:23'),
(18, 1, 19, '2026-07-09 18:33:23'),
(19, 1, 20, '2026-07-09 18:33:23'),
(20, 1, 15, '2026-07-09 18:33:23'),
(22, 1, 22, '2026-07-09 18:33:23'),
(23, 1, 24, '2026-07-09 18:33:23'),
(24, 1, 23, '2026-07-09 18:33:23'),
(25, 1, 25, '2026-07-09 18:33:23'),
(26, 1, 26, '2026-07-09 18:33:23'),
(27, 1, 21, '2026-07-09 18:33:23'),
(28, 1, 40, '2026-07-10 02:11:45'),
(29, 1, 42, '2026-07-10 02:11:45'),
(30, 1, 41, '2026-07-10 02:11:45'),
(31, 1, 39, '2026-07-10 02:11:45'),
(32, 1, 32, '2026-07-10 02:11:45'),
(33, 1, 31, '2026-07-10 02:11:45'),
(34, 1, 38, '2026-07-10 02:11:45'),
(35, 1, 37, '2026-07-10 02:11:45'),
(36, 1, 34, '2026-07-10 02:11:45'),
(37, 1, 36, '2026-07-10 02:11:45'),
(38, 1, 35, '2026-07-10 02:11:45'),
(39, 1, 33, '2026-07-10 02:11:45'),
(40, 1, 28, '2026-07-10 02:11:45'),
(41, 1, 30, '2026-07-10 02:11:45'),
(42, 1, 29, '2026-07-10 02:11:45'),
(43, 1, 27, '2026-07-10 02:11:45'),
(59, 1, 48, '2026-07-10 02:36:28'),
(60, 1, 44, '2026-07-10 02:36:28'),
(61, 1, 47, '2026-07-10 02:36:28'),
(62, 1, 46, '2026-07-10 02:36:28'),
(63, 1, 45, '2026-07-10 02:36:28'),
(64, 1, 43, '2026-07-10 02:36:28'),
(65, 1, 51, '2026-07-10 02:36:28'),
(66, 1, 50, '2026-07-10 02:36:28'),
(67, 1, 49, '2026-07-10 02:36:28'),
(68, 1, 53, '2026-07-10 02:36:28'),
(69, 1, 55, '2026-07-10 02:36:28'),
(70, 1, 54, '2026-07-10 02:36:28'),
(71, 1, 52, '2026-07-10 02:36:28'),
(74, 1, 67, '2026-07-10 02:56:39'),
(75, 1, 68, '2026-07-10 02:56:39'),
(76, 1, 66, '2026-07-10 02:56:39'),
(77, 1, 69, '2026-07-10 02:56:39'),
(78, 1, 64, '2026-07-10 02:56:39'),
(79, 1, 62, '2026-07-10 02:56:39'),
(80, 1, 65, '2026-07-10 02:56:39'),
(81, 1, 63, '2026-07-10 02:56:39'),
(82, 1, 61, '2026-07-10 02:56:39'),
(83, 1, 59, '2026-07-10 02:56:39'),
(84, 1, 60, '2026-07-10 02:56:39'),
(85, 1, 58, '2026-07-10 02:56:39'),
(86, 1, 57, '2026-07-10 02:56:39'),
(87, 1, 56, '2026-07-10 02:56:39'),
(88, 1, 72, '2026-07-10 02:56:39'),
(89, 1, 71, '2026-07-10 02:56:39'),
(90, 1, 70, '2026-07-10 02:56:39'),
(105, 1, 74, '2026-07-10 03:04:08'),
(106, 1, 76, '2026-07-10 03:04:08'),
(107, 1, 75, '2026-07-10 03:04:08'),
(108, 1, 73, '2026-07-10 03:04:08'),
(109, 1, 78, '2026-07-10 03:04:08'),
(110, 1, 80, '2026-07-10 03:04:08'),
(111, 1, 79, '2026-07-10 03:04:08'),
(112, 1, 81, '2026-07-10 03:04:08'),
(113, 1, 77, '2026-07-10 03:04:08'),
(120, 1, 83, '2026-07-10 03:15:15'),
(121, 1, 85, '2026-07-10 03:15:15'),
(122, 1, 84, '2026-07-10 03:15:15'),
(123, 1, 82, '2026-07-10 03:15:15'),
(124, 1, 87, '2026-07-10 03:15:15'),
(125, 1, 89, '2026-07-10 03:15:15'),
(126, 1, 90, '2026-07-10 03:15:15'),
(127, 1, 88, '2026-07-10 03:15:15'),
(128, 1, 86, '2026-07-10 03:15:15'),
(198, 1, 139, '2026-07-10 03:42:17'),
(199, 1, 141, '2026-07-10 03:48:07'),
(200, 1, 143, '2026-07-10 03:48:07'),
(201, 1, 142, '2026-07-10 03:48:07'),
(202, 1, 140, '2026-07-10 03:48:07'),
(203, 1, 149, '2026-07-10 03:48:07'),
(204, 1, 148, '2026-07-10 03:48:07'),
(205, 1, 155, '2026-07-10 03:48:07'),
(206, 1, 154, '2026-07-10 03:48:07'),
(207, 1, 151, '2026-07-10 03:48:07'),
(208, 1, 153, '2026-07-10 03:48:07'),
(209, 1, 152, '2026-07-10 03:48:07'),
(210, 1, 150, '2026-07-10 03:48:07'),
(211, 1, 145, '2026-07-10 03:48:07'),
(212, 1, 147, '2026-07-10 03:48:07'),
(213, 1, 146, '2026-07-10 03:48:07'),
(214, 1, 144, '2026-07-10 03:48:07'),
(215, 1, 157, '2026-07-10 16:50:32'),
(216, 1, 159, '2026-07-10 16:50:32'),
(217, 1, 158, '2026-07-10 16:50:32'),
(218, 1, 156, '2026-07-10 16:50:32'),
(219, 1, 161, '2026-07-10 16:50:32'),
(220, 1, 163, '2026-07-10 16:50:32'),
(221, 1, 162, '2026-07-10 16:50:32'),
(222, 1, 160, '2026-07-10 16:50:32'),
(223, 1, 172, '2026-07-10 16:50:32'),
(224, 1, 174, '2026-07-10 16:50:32'),
(225, 1, 173, '2026-07-10 16:50:32'),
(226, 1, 171, '2026-07-10 16:50:32'),
(227, 1, 165, '2026-07-10 16:50:32'),
(228, 1, 167, '2026-07-10 16:50:32'),
(229, 1, 166, '2026-07-10 16:50:32'),
(230, 1, 164, '2026-07-10 16:50:32'),
(231, 1, 169, '2026-07-10 16:50:32'),
(232, 1, 170, '2026-07-10 16:50:32'),
(233, 1, 168, '2026-07-10 16:50:32'),
(246, 1, 176, '2026-07-10 17:00:11'),
(247, 1, 178, '2026-07-10 17:00:11'),
(248, 1, 177, '2026-07-10 17:00:11'),
(249, 1, 175, '2026-07-10 17:00:11'),
(250, 1, 180, '2026-07-10 17:00:11'),
(251, 1, 182, '2026-07-10 17:00:11'),
(252, 1, 181, '2026-07-10 17:00:11'),
(253, 1, 179, '2026-07-10 17:00:11'),
(254, 1, 192, '2026-07-10 17:00:11'),
(255, 1, 194, '2026-07-10 17:00:11'),
(256, 1, 193, '2026-07-10 17:00:11'),
(257, 1, 191, '2026-07-10 17:00:11'),
(258, 1, 184, '2026-07-10 17:00:11'),
(259, 1, 186, '2026-07-10 17:00:11'),
(260, 1, 185, '2026-07-10 17:00:11'),
(261, 1, 183, '2026-07-10 17:00:11'),
(262, 1, 188, '2026-07-10 17:00:11'),
(263, 1, 190, '2026-07-10 17:00:11'),
(264, 1, 189, '2026-07-10 17:00:11'),
(265, 1, 187, '2026-07-10 17:00:11'),
(277, 1, 207, '2026-07-10 17:01:04'),
(278, 1, 209, '2026-07-10 17:01:04'),
(279, 1, 208, '2026-07-10 17:01:04'),
(280, 1, 206, '2026-07-10 17:01:04'),
(281, 1, 203, '2026-07-10 17:01:04'),
(282, 1, 196, '2026-07-10 17:01:04'),
(283, 1, 198, '2026-07-10 17:01:04'),
(284, 1, 197, '2026-07-10 17:01:04'),
(285, 1, 195, '2026-07-10 17:01:04'),
(286, 1, 205, '2026-07-10 17:01:04'),
(287, 1, 204, '2026-07-10 17:01:04'),
(288, 1, 200, '2026-07-10 17:01:04'),
(289, 1, 202, '2026-07-10 17:01:04'),
(290, 1, 201, '2026-07-10 17:01:04'),
(291, 1, 199, '2026-07-10 17:01:04'),
(292, 1, 229, '2026-07-11 02:24:49'),
(293, 1, 231, '2026-07-11 02:24:49'),
(294, 1, 232, '2026-07-11 02:24:49'),
(295, 1, 230, '2026-07-11 02:24:49'),
(296, 1, 228, '2026-07-11 02:24:49'),
(297, 1, 211, '2026-07-11 02:24:49'),
(298, 1, 213, '2026-07-11 02:24:49'),
(299, 1, 212, '2026-07-11 02:24:49'),
(300, 1, 210, '2026-07-11 02:24:49'),
(301, 1, 222, '2026-07-11 02:24:49'),
(302, 1, 219, '2026-07-11 02:24:49'),
(303, 1, 221, '2026-07-11 02:24:49'),
(304, 1, 220, '2026-07-11 02:24:49'),
(305, 1, 218, '2026-07-11 02:24:49'),
(306, 1, 215, '2026-07-11 02:24:49'),
(307, 1, 217, '2026-07-11 02:24:49'),
(308, 1, 216, '2026-07-11 02:24:49'),
(309, 1, 214, '2026-07-11 02:24:49'),
(310, 1, 227, '2026-07-11 02:24:49'),
(311, 1, 224, '2026-07-11 02:24:49'),
(312, 1, 226, '2026-07-11 02:24:49'),
(313, 1, 225, '2026-07-11 02:24:49'),
(314, 1, 223, '2026-07-11 02:24:49'),
(323, 1, 234, '2026-07-11 02:47:46'),
(324, 1, 236, '2026-07-11 02:47:46'),
(325, 1, 235, '2026-07-11 02:47:46'),
(326, 1, 233, '2026-07-11 02:47:46'),
(327, 1, 242, '2026-07-11 02:47:46'),
(328, 1, 244, '2026-07-11 02:47:46'),
(329, 1, 243, '2026-07-11 02:47:46'),
(330, 1, 241, '2026-07-11 02:47:46'),
(331, 1, 238, '2026-07-11 02:47:46'),
(332, 1, 240, '2026-07-11 02:47:46'),
(333, 1, 239, '2026-07-11 02:47:46'),
(334, 1, 237, '2026-07-11 02:47:46'),
(335, 1, 246, '2026-07-11 02:47:46'),
(336, 1, 248, '2026-07-11 02:47:46'),
(337, 1, 247, '2026-07-11 02:47:46'),
(338, 1, 245, '2026-07-11 02:47:46'),
(354, 1, 249, '2026-07-11 02:56:30'),
(355, 1, 251, '2026-07-11 03:26:02'),
(356, 1, 253, '2026-07-11 03:26:02'),
(357, 1, 252, '2026-07-11 03:26:02'),
(358, 1, 250, '2026-07-11 03:26:02'),
(362, 1, 255, '2026-07-11 03:34:30'),
(363, 1, 254, '2026-07-11 03:34:30'),
(364, 2, 255, '2026-07-11 03:34:30'),
(365, 2, 254, '2026-07-11 03:34:30'),
(369, 1, 256, '2026-07-11 03:34:30'),
(370, 1, 287, '2026-07-11 10:55:37'),
(371, 1, 289, '2026-07-11 10:55:37'),
(372, 1, 288, '2026-07-11 10:55:37'),
(373, 1, 286, '2026-07-11 10:55:37'),
(374, 1, 257, '2026-07-11 10:55:37'),
(375, 1, 285, '2026-07-11 10:55:37'),
(376, 1, 282, '2026-07-11 10:55:37'),
(377, 1, 284, '2026-07-11 10:55:37'),
(378, 1, 283, '2026-07-11 10:55:37'),
(379, 1, 281, '2026-07-11 10:55:37'),
(380, 1, 270, '2026-07-11 10:55:37'),
(381, 1, 267, '2026-07-11 10:55:37'),
(382, 1, 269, '2026-07-11 10:55:37'),
(383, 1, 268, '2026-07-11 10:55:37'),
(384, 1, 266, '2026-07-11 10:55:37'),
(385, 1, 275, '2026-07-11 10:55:37'),
(386, 1, 272, '2026-07-11 10:55:37'),
(387, 1, 274, '2026-07-11 10:55:37'),
(388, 1, 273, '2026-07-11 10:55:37'),
(389, 1, 271, '2026-07-11 10:55:37'),
(390, 1, 259, '2026-07-11 10:55:37'),
(391, 1, 261, '2026-07-11 10:55:37'),
(392, 1, 260, '2026-07-11 10:55:37'),
(393, 1, 258, '2026-07-11 10:55:37'),
(394, 1, 263, '2026-07-11 10:55:37'),
(395, 1, 265, '2026-07-11 10:55:37'),
(396, 1, 264, '2026-07-11 10:55:37'),
(397, 1, 262, '2026-07-11 10:55:37'),
(398, 1, 280, '2026-07-11 10:55:37'),
(399, 1, 277, '2026-07-11 10:55:37'),
(400, 1, 279, '2026-07-11 10:55:37'),
(401, 1, 278, '2026-07-11 10:55:37'),
(402, 1, 276, '2026-07-11 10:55:37'),
(433, 1, 307, '2026-07-11 11:08:52'),
(434, 1, 308, '2026-07-11 11:08:52'),
(435, 1, 294, '2026-07-11 11:08:52'),
(436, 1, 291, '2026-07-11 11:08:52'),
(437, 1, 293, '2026-07-11 11:08:52'),
(438, 1, 292, '2026-07-11 11:08:52'),
(439, 1, 290, '2026-07-11 11:08:52'),
(440, 1, 304, '2026-07-11 11:08:52'),
(441, 1, 306, '2026-07-11 11:08:52'),
(442, 1, 305, '2026-07-11 11:08:52'),
(443, 1, 303, '2026-07-11 11:08:52'),
(444, 1, 300, '2026-07-11 11:08:52'),
(445, 1, 302, '2026-07-11 11:08:52'),
(446, 1, 301, '2026-07-11 11:08:52'),
(447, 1, 299, '2026-07-11 11:08:52'),
(448, 1, 296, '2026-07-11 11:08:52'),
(449, 1, 298, '2026-07-11 11:08:52'),
(450, 1, 297, '2026-07-11 11:08:52'),
(451, 1, 295, '2026-07-11 11:08:52'),
(464, 1, 319, '2026-07-11 11:23:24'),
(465, 1, 321, '2026-07-11 11:23:24'),
(466, 1, 320, '2026-07-11 11:23:24'),
(467, 1, 318, '2026-07-11 11:23:24'),
(468, 1, 315, '2026-07-11 11:23:24'),
(469, 1, 317, '2026-07-11 11:23:24'),
(470, 1, 316, '2026-07-11 11:23:24'),
(471, 1, 314, '2026-07-11 11:23:24'),
(472, 1, 309, '2026-07-11 11:23:24'),
(473, 1, 311, '2026-07-11 11:23:24'),
(474, 1, 313, '2026-07-11 11:23:24'),
(475, 1, 312, '2026-07-11 11:23:24'),
(476, 1, 310, '2026-07-11 11:23:24'),
(477, 1, 331, '2026-07-11 11:23:24'),
(478, 1, 330, '2026-07-11 11:23:24'),
(479, 1, 336, '2026-07-11 11:23:24'),
(480, 1, 333, '2026-07-11 11:23:24'),
(481, 1, 335, '2026-07-11 11:23:24'),
(482, 1, 334, '2026-07-11 11:23:24'),
(483, 1, 332, '2026-07-11 11:23:24'),
(484, 1, 323, '2026-07-11 11:23:24'),
(485, 1, 325, '2026-07-11 11:23:24'),
(486, 1, 324, '2026-07-11 11:23:24'),
(487, 1, 322, '2026-07-11 11:23:24'),
(488, 1, 327, '2026-07-11 11:23:24'),
(489, 1, 329, '2026-07-11 11:23:24'),
(490, 1, 328, '2026-07-11 11:23:24'),
(491, 1, 326, '2026-07-11 11:23:24'),
(495, 1, 338, '2026-07-11 11:42:25'),
(496, 1, 337, '2026-07-11 11:42:25'),
(497, 1, 357, '2026-07-11 11:42:25'),
(498, 1, 359, '2026-07-11 11:42:25'),
(499, 1, 358, '2026-07-11 11:42:25'),
(500, 1, 356, '2026-07-11 11:42:25'),
(501, 1, 363, '2026-07-11 11:42:25'),
(502, 1, 361, '2026-07-11 11:42:25'),
(503, 1, 364, '2026-07-11 11:42:25'),
(504, 1, 362, '2026-07-11 11:42:25'),
(505, 1, 360, '2026-07-11 11:42:25'),
(506, 1, 385, '2026-07-11 11:42:25'),
(507, 1, 387, '2026-07-11 11:42:25'),
(508, 1, 386, '2026-07-11 11:42:25'),
(509, 1, 384, '2026-07-11 11:42:25'),
(510, 1, 340, '2026-07-11 11:42:25'),
(511, 1, 342, '2026-07-11 11:42:25'),
(512, 1, 341, '2026-07-11 11:42:25'),
(513, 1, 339, '2026-07-11 11:42:25'),
(514, 1, 353, '2026-07-11 11:42:25'),
(515, 1, 355, '2026-07-11 11:42:25'),
(516, 1, 354, '2026-07-11 11:42:25'),
(517, 1, 352, '2026-07-11 11:42:25'),
(518, 1, 378, '2026-07-11 11:42:25'),
(519, 1, 376, '2026-07-11 11:42:25'),
(520, 1, 379, '2026-07-11 11:42:25'),
(521, 1, 377, '2026-07-11 11:42:25'),
(522, 1, 375, '2026-07-11 11:42:25'),
(523, 1, 349, '2026-07-11 11:42:25'),
(524, 1, 351, '2026-07-11 11:42:25'),
(525, 1, 350, '2026-07-11 11:42:25'),
(526, 1, 348, '2026-07-11 11:42:25'),
(527, 1, 344, '2026-07-11 11:42:25'),
(528, 1, 347, '2026-07-11 11:42:25'),
(529, 1, 345, '2026-07-11 11:42:25'),
(530, 1, 346, '2026-07-11 11:42:25'),
(531, 1, 343, '2026-07-11 11:42:25'),
(532, 1, 366, '2026-07-11 11:42:25'),
(533, 1, 369, '2026-07-11 11:42:25'),
(534, 1, 367, '2026-07-11 11:42:25'),
(535, 1, 368, '2026-07-11 11:42:25'),
(536, 1, 365, '2026-07-11 11:42:25'),
(537, 1, 371, '2026-07-11 11:42:25'),
(538, 1, 374, '2026-07-11 11:42:25'),
(539, 1, 372, '2026-07-11 11:42:25'),
(540, 1, 373, '2026-07-11 11:42:25'),
(541, 1, 370, '2026-07-11 11:42:25'),
(542, 1, 381, '2026-07-11 11:42:25'),
(543, 1, 383, '2026-07-11 11:42:25'),
(544, 1, 382, '2026-07-11 11:42:25'),
(545, 1, 380, '2026-07-11 11:42:25'),
(558, 1, 399, '2026-07-11 12:14:55'),
(559, 1, 402, '2026-07-11 12:14:55'),
(560, 1, 400, '2026-07-11 12:14:55'),
(561, 1, 401, '2026-07-11 12:14:55'),
(562, 1, 398, '2026-07-11 12:14:55'),
(563, 1, 389, '2026-07-11 12:14:55'),
(564, 1, 392, '2026-07-11 12:14:55'),
(565, 1, 390, '2026-07-11 12:14:55'),
(566, 1, 391, '2026-07-11 12:14:55'),
(567, 1, 388, '2026-07-11 12:14:55'),
(568, 1, 403, '2026-07-11 12:14:55'),
(569, 1, 416, '2026-07-11 12:14:55'),
(570, 1, 419, '2026-07-11 12:14:55'),
(571, 1, 417, '2026-07-11 12:14:55'),
(572, 1, 418, '2026-07-11 12:14:55'),
(573, 1, 415, '2026-07-11 12:14:55'),
(574, 1, 421, '2026-07-11 12:14:55'),
(575, 1, 411, '2026-07-11 12:14:55'),
(576, 1, 414, '2026-07-11 12:14:55'),
(577, 1, 412, '2026-07-11 12:14:55'),
(578, 1, 413, '2026-07-11 12:14:55'),
(579, 1, 410, '2026-07-11 12:14:55'),
(580, 1, 394, '2026-07-11 12:14:55'),
(581, 1, 397, '2026-07-11 12:14:55'),
(582, 1, 395, '2026-07-11 12:14:55'),
(583, 1, 396, '2026-07-11 12:14:55'),
(584, 1, 393, '2026-07-11 12:14:55'),
(585, 1, 404, '2026-07-11 12:14:55'),
(586, 1, 406, '2026-07-11 12:14:55'),
(587, 1, 409, '2026-07-11 12:14:55'),
(588, 1, 407, '2026-07-11 12:14:55'),
(589, 1, 408, '2026-07-11 12:14:55'),
(590, 1, 405, '2026-07-11 12:14:55'),
(591, 1, 420, '2026-07-11 12:14:55'),
(621, 1, 437, '2026-07-11 13:26:22'),
(622, 1, 439, '2026-07-11 13:26:22'),
(623, 1, 438, '2026-07-11 13:26:22'),
(624, 1, 436, '2026-07-11 13:26:22'),
(625, 1, 450, '2026-07-11 13:26:22'),
(626, 1, 453, '2026-07-11 13:26:22'),
(627, 1, 451, '2026-07-11 13:26:22'),
(628, 1, 452, '2026-07-11 13:26:22'),
(629, 1, 449, '2026-07-11 13:26:22'),
(630, 1, 427, '2026-07-11 13:26:22'),
(631, 1, 430, '2026-07-11 13:26:22'),
(632, 1, 428, '2026-07-11 13:26:22'),
(633, 1, 429, '2026-07-11 13:26:22'),
(634, 1, 426, '2026-07-11 13:26:22'),
(635, 1, 423, '2026-07-11 13:26:22'),
(636, 1, 425, '2026-07-11 13:26:22'),
(637, 1, 424, '2026-07-11 13:26:22'),
(638, 1, 422, '2026-07-11 13:26:22'),
(639, 1, 434, '2026-07-11 13:26:22'),
(640, 1, 432, '2026-07-11 13:26:22'),
(641, 1, 435, '2026-07-11 13:26:22'),
(642, 1, 433, '2026-07-11 13:26:22'),
(643, 1, 431, '2026-07-11 13:26:22'),
(644, 1, 445, '2026-07-11 13:26:22'),
(645, 1, 448, '2026-07-11 13:26:22'),
(646, 1, 446, '2026-07-11 13:26:22'),
(647, 1, 447, '2026-07-11 13:26:22'),
(648, 1, 444, '2026-07-11 13:26:22'),
(649, 1, 441, '2026-07-11 13:26:22'),
(650, 1, 443, '2026-07-11 13:26:22'),
(651, 1, 442, '2026-07-11 13:26:22'),
(652, 1, 440, '2026-07-11 13:26:22'),
(653, 1, 455, '2026-07-11 13:26:22'),
(654, 1, 457, '2026-07-11 13:26:22'),
(655, 1, 456, '2026-07-11 13:26:22'),
(656, 1, 454, '2026-07-11 13:26:22'),
(657, 1, 463, '2026-07-11 13:26:22'),
(658, 1, 459, '2026-07-11 13:26:22'),
(659, 1, 462, '2026-07-11 13:26:22'),
(660, 1, 460, '2026-07-11 13:26:22'),
(661, 1, 461, '2026-07-11 13:26:22'),
(662, 1, 458, '2026-07-11 13:26:22'),
(684, 1, 465, '2026-07-11 14:05:26'),
(685, 1, 467, '2026-07-11 14:05:26'),
(686, 1, 466, '2026-07-11 14:05:26'),
(687, 1, 464, '2026-07-11 14:05:26'),
(691, 1, 468, '2026-07-11 14:13:34'),
(692, 1, 472, '2026-07-11 14:20:32'),
(693, 1, 471, '2026-07-11 14:20:32'),
(694, 1, 470, '2026-07-11 14:20:32'),
(695, 1, 469, '2026-07-11 14:20:32'),
(699, 1, 475, '2026-07-11 14:25:48'),
(700, 1, 474, '2026-07-11 14:25:48'),
(701, 1, 473, '2026-07-11 14:25:48'),
(702, 1, 495, '2026-07-11 14:32:19'),
(703, 1, 497, '2026-07-11 14:32:19'),
(704, 1, 496, '2026-07-11 14:32:19'),
(705, 1, 494, '2026-07-11 14:32:19'),
(706, 1, 486, '2026-07-11 14:32:19'),
(707, 1, 483, '2026-07-11 14:32:19'),
(708, 1, 485, '2026-07-11 14:32:19'),
(709, 1, 484, '2026-07-11 14:32:19'),
(710, 1, 482, '2026-07-11 14:32:19'),
(711, 1, 498, '2026-07-11 14:32:19'),
(712, 1, 493, '2026-07-11 14:32:19'),
(713, 1, 492, '2026-07-11 14:32:19'),
(714, 1, 479, '2026-07-11 14:32:19'),
(715, 1, 481, '2026-07-11 14:32:19'),
(716, 1, 480, '2026-07-11 14:32:19'),
(717, 1, 478, '2026-07-11 14:32:19'),
(718, 1, 477, '2026-07-11 14:32:19'),
(719, 1, 476, '2026-07-11 14:32:19'),
(720, 1, 490, '2026-07-11 14:32:19'),
(721, 1, 488, '2026-07-11 14:32:19'),
(722, 1, 491, '2026-07-11 14:32:19'),
(723, 1, 489, '2026-07-11 14:32:19'),
(724, 1, 487, '2026-07-11 14:32:19'),
(733, 1, 500, '2026-07-11 15:01:09'),
(734, 1, 502, '2026-07-11 15:01:09'),
(735, 1, 501, '2026-07-11 15:01:09'),
(736, 1, 499, '2026-07-11 15:01:09'),
(740, 1, 504, '2026-07-11 16:07:20'),
(741, 1, 506, '2026-07-11 16:07:20'),
(742, 1, 505, '2026-07-11 16:07:20'),
(743, 1, 503, '2026-07-11 16:07:20'),
(744, 1, 507, '2026-07-11 16:07:20'),
(747, 1, 509, '2026-07-11 16:19:17'),
(748, 1, 510, '2026-07-11 16:19:17'),
(749, 1, 508, '2026-07-11 16:19:17'),
(750, 1, 511, '2026-07-11 16:27:45'),
(751, 1, 512, '2026-07-11 16:27:45'),
(753, 3, 337, '2026-07-11 16:01:58'),
(754, 3, 338, '2026-07-11 16:01:58'),
(755, 3, 436, '2026-07-11 16:01:58'),
(756, 3, 437, '2026-07-11 16:01:58'),
(757, 3, 438, '2026-07-11 16:01:58'),
(758, 3, 439, '2026-07-11 16:01:58'),
(759, 3, 449, '2026-07-11 16:01:58'),
(760, 3, 450, '2026-07-11 16:01:58'),
(761, 3, 451, '2026-07-11 16:01:58'),
(762, 3, 452, '2026-07-11 16:01:58'),
(763, 3, 453, '2026-07-11 16:01:58'),
(764, 3, 494, '2026-07-11 16:01:58'),
(765, 3, 495, '2026-07-11 16:01:58'),
(766, 3, 496, '2026-07-11 16:01:58'),
(767, 3, 497, '2026-07-11 16:01:58'),
(768, 3, 73, '2026-07-11 16:01:58'),
(769, 3, 74, '2026-07-11 16:01:58'),
(770, 3, 75, '2026-07-11 16:01:58'),
(771, 3, 76, '2026-07-11 16:01:58'),
(772, 3, 43, '2026-07-11 16:01:58'),
(773, 3, 44, '2026-07-11 16:01:58'),
(774, 3, 45, '2026-07-11 16:01:58'),
(775, 3, 46, '2026-07-11 16:01:58'),
(776, 3, 47, '2026-07-11 16:01:58'),
(777, 3, 48, '2026-07-11 16:01:58'),
(778, 3, 49, '2026-07-11 16:01:58'),
(779, 3, 50, '2026-07-11 16:01:58'),
(780, 3, 51, '2026-07-11 16:01:58'),
(781, 3, 52, '2026-07-11 16:01:58'),
(782, 3, 53, '2026-07-11 16:01:58'),
(783, 3, 54, '2026-07-11 16:01:58'),
(784, 3, 55, '2026-07-11 16:01:58'),
(785, 3, 356, '2026-07-11 16:01:58'),
(786, 3, 357, '2026-07-11 16:01:58'),
(787, 3, 358, '2026-07-11 16:01:58'),
(788, 3, 359, '2026-07-11 16:01:58'),
(789, 3, 360, '2026-07-11 16:01:58'),
(790, 3, 361, '2026-07-11 16:01:58'),
(791, 3, 362, '2026-07-11 16:01:58'),
(792, 3, 363, '2026-07-11 16:01:58'),
(793, 3, 364, '2026-07-11 16:01:58'),
(794, 3, 426, '2026-07-11 16:01:58'),
(795, 3, 427, '2026-07-11 16:01:58'),
(796, 3, 428, '2026-07-11 16:01:58'),
(797, 3, 429, '2026-07-11 16:01:58'),
(798, 3, 430, '2026-07-11 16:01:58'),
(799, 3, 486, '2026-07-11 16:01:58'),
(800, 3, 482, '2026-07-11 16:01:58'),
(801, 3, 483, '2026-07-11 16:01:58'),
(802, 3, 484, '2026-07-11 16:01:58'),
(803, 3, 485, '2026-07-11 16:01:58'),
(804, 3, 318, '2026-07-11 16:01:58'),
(805, 3, 319, '2026-07-11 16:01:58'),
(806, 3, 320, '2026-07-11 16:01:58'),
(807, 3, 321, '2026-07-11 16:01:58'),
(808, 3, 384, '2026-07-11 16:01:58'),
(809, 3, 385, '2026-07-11 16:01:58'),
(810, 3, 386, '2026-07-11 16:01:58'),
(811, 3, 387, '2026-07-11 16:01:58'),
(812, 3, 175, '2026-07-11 16:01:58'),
(813, 3, 176, '2026-07-11 16:01:58'),
(814, 3, 177, '2026-07-11 16:01:58'),
(815, 3, 178, '2026-07-11 16:01:58'),
(816, 3, 422, '2026-07-11 16:01:58'),
(817, 3, 423, '2026-07-11 16:01:58'),
(818, 3, 424, '2026-07-11 16:01:58'),
(819, 3, 425, '2026-07-11 16:01:58'),
(820, 3, 314, '2026-07-11 16:01:58'),
(821, 3, 315, '2026-07-11 16:01:58'),
(822, 3, 316, '2026-07-11 16:01:58'),
(823, 3, 317, '2026-07-11 16:01:58'),
(824, 3, 339, '2026-07-11 16:01:58'),
(825, 3, 340, '2026-07-11 16:01:58'),
(826, 3, 341, '2026-07-11 16:01:58'),
(827, 3, 342, '2026-07-11 16:01:58'),
(828, 3, 431, '2026-07-11 16:01:58'),
(829, 3, 432, '2026-07-11 16:01:58'),
(830, 3, 433, '2026-07-11 16:01:58'),
(831, 3, 434, '2026-07-11 16:01:58'),
(832, 3, 435, '2026-07-11 16:01:58'),
(833, 3, 156, '2026-07-11 16:01:58'),
(834, 3, 157, '2026-07-11 16:01:58'),
(835, 3, 158, '2026-07-11 16:01:58'),
(836, 3, 159, '2026-07-11 16:01:58'),
(837, 3, 206, '2026-07-11 16:01:58'),
(838, 3, 207, '2026-07-11 16:01:58'),
(839, 3, 208, '2026-07-11 16:01:58'),
(840, 3, 209, '2026-07-11 16:01:58'),
(841, 3, 160, '2026-07-11 16:01:58'),
(842, 3, 161, '2026-07-11 16:01:58'),
(843, 3, 162, '2026-07-11 16:01:58'),
(844, 3, 163, '2026-07-11 16:01:58'),
(845, 3, 250, '2026-07-11 16:01:58'),
(846, 3, 251, '2026-07-11 16:01:58'),
(847, 3, 252, '2026-07-11 16:01:58'),
(848, 3, 253, '2026-07-11 16:01:58'),
(849, 3, 352, '2026-07-11 16:01:58'),
(850, 3, 353, '2026-07-11 16:01:58'),
(851, 3, 354, '2026-07-11 16:01:58'),
(852, 3, 355, '2026-07-11 16:01:58'),
(853, 3, 398, '2026-07-11 16:01:58'),
(854, 3, 399, '2026-07-11 16:01:58'),
(855, 3, 400, '2026-07-11 16:01:58'),
(856, 3, 401, '2026-07-11 16:01:58'),
(857, 3, 402, '2026-07-11 16:01:58'),
(858, 3, 171, '2026-07-11 16:01:58'),
(859, 3, 172, '2026-07-11 16:01:58'),
(860, 3, 173, '2026-07-11 16:01:58'),
(861, 3, 174, '2026-07-11 16:01:58'),
(862, 3, 164, '2026-07-11 16:01:58'),
(863, 3, 165, '2026-07-11 16:01:58'),
(864, 3, 166, '2026-07-11 16:01:58'),
(865, 3, 167, '2026-07-11 16:01:58'),
(866, 3, 168, '2026-07-11 16:01:58'),
(867, 3, 169, '2026-07-11 16:01:58'),
(868, 3, 170, '2026-07-11 16:01:58'),
(869, 3, 388, '2026-07-11 16:01:58'),
(870, 3, 389, '2026-07-11 16:01:58'),
(871, 3, 390, '2026-07-11 16:01:58'),
(872, 3, 391, '2026-07-11 16:01:58'),
(873, 3, 392, '2026-07-11 16:01:58'),
(874, 3, 464, '2026-07-11 16:01:58'),
(875, 3, 465, '2026-07-11 16:01:58'),
(876, 3, 466, '2026-07-11 16:01:58'),
(877, 3, 467, '2026-07-11 16:01:58'),
(878, 3, 403, '2026-07-11 16:01:58'),
(879, 3, 1, '2026-07-11 16:01:58'),
(880, 3, 415, '2026-07-11 16:01:58'),
(881, 3, 416, '2026-07-11 16:01:58'),
(882, 3, 417, '2026-07-11 16:01:58'),
(883, 3, 418, '2026-07-11 16:01:58'),
(884, 3, 419, '2026-07-11 16:01:58'),
(885, 3, 228, '2026-07-11 16:01:58'),
(886, 3, 229, '2026-07-11 16:01:58'),
(887, 3, 230, '2026-07-11 16:01:58'),
(888, 3, 231, '2026-07-11 16:01:58'),
(889, 3, 232, '2026-07-11 16:01:58'),
(890, 3, 15, '2026-07-11 16:01:58'),
(891, 3, 16, '2026-07-11 16:01:58'),
(892, 3, 17, '2026-07-11 16:01:58'),
(893, 3, 18, '2026-07-11 16:01:58'),
(894, 3, 19, '2026-07-11 16:01:58'),
(895, 3, 20, '2026-07-11 16:01:58'),
(896, 3, 444, '2026-07-11 16:01:58'),
(897, 3, 445, '2026-07-11 16:01:58'),
(898, 3, 446, '2026-07-11 16:01:58'),
(899, 3, 447, '2026-07-11 16:01:58'),
(900, 3, 448, '2026-07-11 16:01:58'),
(901, 3, 82, '2026-07-11 16:01:58'),
(902, 3, 83, '2026-07-11 16:01:58'),
(903, 3, 84, '2026-07-11 16:01:58'),
(904, 3, 85, '2026-07-11 16:01:58'),
(905, 3, 179, '2026-07-11 16:01:58'),
(906, 3, 180, '2026-07-11 16:01:58'),
(907, 3, 181, '2026-07-11 16:01:58'),
(908, 3, 182, '2026-07-11 16:01:58'),
(909, 3, 21, '2026-07-11 16:01:58'),
(910, 3, 22, '2026-07-11 16:01:58'),
(911, 3, 23, '2026-07-11 16:01:58'),
(912, 3, 24, '2026-07-11 16:01:58'),
(913, 3, 25, '2026-07-11 16:01:58'),
(914, 3, 26, '2026-07-11 16:01:58'),
(915, 3, 77, '2026-07-11 16:01:58'),
(916, 3, 78, '2026-07-11 16:01:58'),
(917, 3, 79, '2026-07-11 16:01:58'),
(918, 3, 80, '2026-07-11 16:01:58'),
(919, 3, 81, '2026-07-11 16:01:58'),
(920, 3, 86, '2026-07-11 16:01:58'),
(921, 3, 87, '2026-07-11 16:01:58'),
(922, 3, 88, '2026-07-11 16:01:58'),
(923, 3, 89, '2026-07-11 16:01:58'),
(924, 3, 90, '2026-07-11 16:01:58'),
(925, 3, 203, '2026-07-11 16:01:58'),
(926, 3, 375, '2026-07-11 16:01:58'),
(927, 3, 376, '2026-07-11 16:01:58'),
(928, 3, 377, '2026-07-11 16:01:58'),
(929, 3, 378, '2026-07-11 16:01:58'),
(930, 3, 379, '2026-07-11 16:01:58'),
(931, 3, 348, '2026-07-11 16:01:58'),
(932, 3, 349, '2026-07-11 16:01:58'),
(933, 3, 350, '2026-07-11 16:01:58'),
(934, 3, 351, '2026-07-11 16:01:58'),
(935, 3, 440, '2026-07-11 16:01:58'),
(936, 3, 441, '2026-07-11 16:01:58'),
(937, 3, 442, '2026-07-11 16:01:58'),
(938, 3, 443, '2026-07-11 16:01:58'),
(939, 3, 191, '2026-07-11 16:01:58'),
(940, 3, 192, '2026-07-11 16:01:58'),
(941, 3, 193, '2026-07-11 16:01:58'),
(942, 3, 194, '2026-07-11 16:01:58'),
(943, 3, 286, '2026-07-11 16:01:58'),
(944, 3, 287, '2026-07-11 16:01:58'),
(945, 3, 288, '2026-07-11 16:01:58'),
(946, 3, 289, '2026-07-11 16:01:58'),
(947, 3, 39, '2026-07-11 16:01:58'),
(948, 3, 40, '2026-07-11 16:01:58'),
(949, 3, 41, '2026-07-11 16:01:58'),
(950, 3, 42, '2026-07-11 16:01:58'),
(951, 3, 309, '2026-07-11 16:01:58'),
(952, 3, 498, '2026-07-11 16:01:58'),
(953, 3, 233, '2026-07-11 16:01:58'),
(954, 3, 234, '2026-07-11 16:01:58'),
(955, 3, 235, '2026-07-11 16:01:58'),
(956, 3, 236, '2026-07-11 16:01:58'),
(957, 3, 343, '2026-07-11 16:01:58'),
(958, 3, 344, '2026-07-11 16:01:58'),
(959, 3, 345, '2026-07-11 16:01:58'),
(960, 3, 346, '2026-07-11 16:01:58'),
(961, 3, 347, '2026-07-11 16:01:58'),
(962, 3, 140, '2026-07-11 16:01:58'),
(963, 3, 141, '2026-07-11 16:01:58'),
(964, 3, 142, '2026-07-11 16:01:58'),
(965, 3, 143, '2026-07-11 16:01:58'),
(966, 3, 148, '2026-07-11 16:01:58'),
(967, 3, 149, '2026-07-11 16:01:58'),
(968, 3, 154, '2026-07-11 16:01:58'),
(969, 3, 155, '2026-07-11 16:01:58'),
(970, 3, 150, '2026-07-11 16:01:58'),
(971, 3, 151, '2026-07-11 16:01:58'),
(972, 3, 152, '2026-07-11 16:01:58'),
(973, 3, 153, '2026-07-11 16:01:58'),
(974, 3, 144, '2026-07-11 16:01:58'),
(975, 3, 145, '2026-07-11 16:01:58'),
(976, 3, 146, '2026-07-11 16:01:58'),
(977, 3, 147, '2026-07-11 16:01:58'),
(978, 3, 31, '2026-07-11 16:01:58'),
(979, 3, 32, '2026-07-11 16:01:58'),
(980, 3, 38, '2026-07-11 16:01:58'),
(981, 3, 33, '2026-07-11 16:01:58'),
(982, 3, 34, '2026-07-11 16:01:58'),
(983, 3, 35, '2026-07-11 16:01:58'),
(984, 3, 36, '2026-07-11 16:01:58'),
(985, 3, 37, '2026-07-11 16:01:58'),
(986, 3, 27, '2026-07-11 16:01:58'),
(987, 3, 28, '2026-07-11 16:01:58'),
(988, 3, 29, '2026-07-11 16:01:58'),
(989, 3, 30, '2026-07-11 16:01:58'),
(990, 3, 183, '2026-07-11 16:01:58'),
(991, 3, 184, '2026-07-11 16:01:58'),
(992, 3, 185, '2026-07-11 16:01:58'),
(993, 3, 186, '2026-07-11 16:01:58'),
(994, 3, 254, '2026-07-11 16:01:58'),
(995, 3, 255, '2026-07-11 16:01:58'),
(996, 3, 256, '2026-07-11 16:01:58'),
(997, 3, 468, '2026-07-11 16:01:58'),
(998, 3, 508, '2026-07-11 16:01:58'),
(999, 3, 509, '2026-07-11 16:01:58'),
(1000, 3, 510, '2026-07-11 16:01:58'),
(1001, 3, 503, '2026-07-11 16:01:58'),
(1002, 3, 504, '2026-07-11 16:01:58'),
(1003, 3, 505, '2026-07-11 16:01:58'),
(1004, 3, 506, '2026-07-11 16:01:58'),
(1005, 3, 195, '2026-07-11 16:01:58'),
(1006, 3, 196, '2026-07-11 16:01:58'),
(1007, 3, 197, '2026-07-11 16:01:58'),
(1008, 3, 198, '2026-07-11 16:01:58'),
(1009, 3, 421, '2026-07-11 16:01:58'),
(1010, 3, 410, '2026-07-11 16:01:58'),
(1011, 3, 411, '2026-07-11 16:01:58'),
(1012, 3, 412, '2026-07-11 16:01:58'),
(1013, 3, 413, '2026-07-11 16:01:58'),
(1014, 3, 414, '2026-07-11 16:01:58'),
(1015, 3, 365, '2026-07-11 16:01:58'),
(1016, 3, 366, '2026-07-11 16:01:58'),
(1017, 3, 367, '2026-07-11 16:01:58'),
(1018, 3, 368, '2026-07-11 16:01:58'),
(1019, 3, 369, '2026-07-11 16:01:58'),
(1020, 3, 66, '2026-07-11 16:01:58'),
(1021, 3, 67, '2026-07-11 16:01:58'),
(1022, 3, 68, '2026-07-11 16:01:58'),
(1023, 3, 69, '2026-07-11 16:01:58'),
(1024, 3, 61, '2026-07-11 16:01:58'),
(1025, 3, 62, '2026-07-11 16:01:58'),
(1026, 3, 63, '2026-07-11 16:01:58'),
(1027, 3, 64, '2026-07-11 16:01:58'),
(1028, 3, 65, '2026-07-11 16:01:58'),
(1029, 3, 58, '2026-07-11 16:01:58'),
(1030, 3, 59, '2026-07-11 16:01:58'),
(1031, 3, 60, '2026-07-11 16:01:58'),
(1032, 3, 56, '2026-07-11 16:01:58'),
(1033, 3, 57, '2026-07-11 16:01:58'),
(1034, 3, 70, '2026-07-11 16:01:58'),
(1035, 3, 71, '2026-07-11 16:01:58'),
(1036, 3, 72, '2026-07-11 16:01:58'),
(1037, 3, 12, '2026-07-11 16:01:58'),
(1038, 3, 13, '2026-07-11 16:01:58'),
(1039, 3, 14, '2026-07-11 16:01:58'),
(1040, 3, 210, '2026-07-11 16:01:58'),
(1041, 3, 211, '2026-07-11 16:01:58'),
(1042, 3, 212, '2026-07-11 16:01:58'),
(1043, 3, 213, '2026-07-11 16:01:58'),
(1044, 3, 204, '2026-07-11 16:01:58'),
(1045, 3, 205, '2026-07-11 16:01:58'),
(1046, 3, 257, '2026-07-11 16:01:58'),
(1047, 3, 307, '2026-07-11 16:01:58'),
(1048, 3, 308, '2026-07-11 16:01:58'),
(1049, 3, 310, '2026-07-11 16:01:58'),
(1050, 3, 311, '2026-07-11 16:01:58'),
(1051, 3, 312, '2026-07-11 16:01:58'),
(1052, 3, 313, '2026-07-11 16:01:58'),
(1053, 3, 281, '2026-07-11 16:01:58'),
(1054, 3, 282, '2026-07-11 16:01:58'),
(1055, 3, 283, '2026-07-11 16:01:58'),
(1056, 3, 284, '2026-07-11 16:01:58'),
(1057, 3, 285, '2026-07-11 16:01:58'),
(1058, 3, 266, '2026-07-11 16:01:58'),
(1059, 3, 267, '2026-07-11 16:01:58'),
(1060, 3, 268, '2026-07-11 16:01:58'),
(1061, 3, 269, '2026-07-11 16:01:58'),
(1062, 3, 270, '2026-07-11 16:01:58'),
(1063, 3, 290, '2026-07-11 16:01:58'),
(1064, 3, 291, '2026-07-11 16:01:58'),
(1065, 3, 292, '2026-07-11 16:01:58'),
(1066, 3, 293, '2026-07-11 16:01:58'),
(1067, 3, 294, '2026-07-11 16:01:58'),
(1068, 3, 218, '2026-07-11 16:01:58'),
(1069, 3, 219, '2026-07-11 16:01:58'),
(1070, 3, 220, '2026-07-11 16:01:58'),
(1071, 3, 221, '2026-07-11 16:01:58'),
(1072, 3, 222, '2026-07-11 16:01:58'),
(1073, 3, 214, '2026-07-11 16:01:58'),
(1074, 3, 215, '2026-07-11 16:01:58'),
(1075, 3, 216, '2026-07-11 16:01:58'),
(1076, 3, 217, '2026-07-11 16:01:58'),
(1077, 3, 393, '2026-07-11 16:01:58'),
(1078, 3, 394, '2026-07-11 16:01:58'),
(1079, 3, 395, '2026-07-11 16:01:58'),
(1080, 3, 396, '2026-07-11 16:01:58'),
(1081, 3, 397, '2026-07-11 16:01:58'),
(1082, 3, 370, '2026-07-11 16:01:58'),
(1083, 3, 371, '2026-07-11 16:01:58'),
(1084, 3, 372, '2026-07-11 16:01:58'),
(1085, 3, 373, '2026-07-11 16:01:58'),
(1086, 3, 374, '2026-07-11 16:01:58'),
(1087, 3, 404, '2026-07-11 16:01:58'),
(1088, 3, 241, '2026-07-11 16:01:58'),
(1089, 3, 242, '2026-07-11 16:01:58'),
(1090, 3, 243, '2026-07-11 16:01:58'),
(1091, 3, 244, '2026-07-11 16:01:58'),
(1092, 3, 492, '2026-07-11 16:01:58'),
(1093, 3, 493, '2026-07-11 16:01:58'),
(1094, 3, 271, '2026-07-11 16:01:58'),
(1095, 3, 272, '2026-07-11 16:01:58'),
(1096, 3, 273, '2026-07-11 16:01:58'),
(1097, 3, 274, '2026-07-11 16:01:58'),
(1098, 3, 275, '2026-07-11 16:01:58'),
(1099, 3, 8, '2026-07-11 16:01:58'),
(1100, 3, 9, '2026-07-11 16:01:58'),
(1101, 3, 10, '2026-07-11 16:01:58'),
(1102, 3, 11, '2026-07-11 16:01:58'),
(1103, 3, 139, '2026-07-11 16:01:58'),
(1104, 3, 223, '2026-07-11 16:01:58'),
(1105, 3, 224, '2026-07-11 16:01:58'),
(1106, 3, 225, '2026-07-11 16:01:58'),
(1107, 3, 226, '2026-07-11 16:01:58'),
(1108, 3, 227, '2026-07-11 16:01:58'),
(1109, 3, 237, '2026-07-11 16:01:58'),
(1110, 3, 238, '2026-07-11 16:01:58'),
(1111, 3, 239, '2026-07-11 16:01:58'),
(1112, 3, 240, '2026-07-11 16:01:58'),
(1113, 3, 199, '2026-07-11 16:01:58'),
(1114, 3, 200, '2026-07-11 16:01:58'),
(1115, 3, 201, '2026-07-11 16:01:58'),
(1116, 3, 202, '2026-07-11 16:01:58'),
(1117, 3, 245, '2026-07-11 16:01:58'),
(1118, 3, 246, '2026-07-11 16:01:58'),
(1119, 3, 247, '2026-07-11 16:01:58'),
(1120, 3, 248, '2026-07-11 16:01:58'),
(1121, 3, 249, '2026-07-11 16:01:58'),
(1122, 3, 499, '2026-07-11 16:01:58'),
(1123, 3, 500, '2026-07-11 16:01:58'),
(1124, 3, 501, '2026-07-11 16:01:58'),
(1125, 3, 502, '2026-07-11 16:01:58'),
(1126, 3, 478, '2026-07-11 16:01:58'),
(1127, 3, 479, '2026-07-11 16:01:58'),
(1128, 3, 480, '2026-07-11 16:01:58'),
(1129, 3, 481, '2026-07-11 16:01:58'),
(1130, 3, 330, '2026-07-11 16:01:58'),
(1131, 3, 331, '2026-07-11 16:01:58'),
(1132, 3, 476, '2026-07-11 16:01:58'),
(1133, 3, 477, '2026-07-11 16:01:58'),
(1134, 3, 487, '2026-07-11 16:01:58'),
(1135, 3, 488, '2026-07-11 16:01:58'),
(1136, 3, 489, '2026-07-11 16:01:58'),
(1137, 3, 490, '2026-07-11 16:01:58'),
(1138, 3, 491, '2026-07-11 16:01:58'),
(1139, 3, 332, '2026-07-11 16:01:58'),
(1140, 3, 333, '2026-07-11 16:01:58'),
(1141, 3, 334, '2026-07-11 16:01:58'),
(1142, 3, 335, '2026-07-11 16:01:58'),
(1143, 3, 336, '2026-07-11 16:01:58'),
(1144, 3, 258, '2026-07-11 16:01:58'),
(1145, 3, 259, '2026-07-11 16:01:58'),
(1146, 3, 260, '2026-07-11 16:01:58'),
(1147, 3, 261, '2026-07-11 16:01:58'),
(1148, 3, 405, '2026-07-11 16:01:58'),
(1149, 3, 406, '2026-07-11 16:01:58'),
(1150, 3, 407, '2026-07-11 16:01:58'),
(1151, 3, 408, '2026-07-11 16:01:58'),
(1152, 3, 409, '2026-07-11 16:01:58'),
(1153, 3, 262, '2026-07-11 16:01:58'),
(1154, 3, 263, '2026-07-11 16:01:58'),
(1155, 3, 264, '2026-07-11 16:01:58'),
(1156, 3, 265, '2026-07-11 16:01:58'),
(1157, 3, 303, '2026-07-11 16:01:58'),
(1158, 3, 304, '2026-07-11 16:01:58'),
(1159, 3, 305, '2026-07-11 16:01:58'),
(1160, 3, 306, '2026-07-11 16:01:58'),
(1161, 3, 299, '2026-07-11 16:01:58'),
(1162, 3, 300, '2026-07-11 16:01:58'),
(1163, 3, 301, '2026-07-11 16:01:58'),
(1164, 3, 302, '2026-07-11 16:01:58'),
(1165, 3, 276, '2026-07-11 16:01:58'),
(1166, 3, 277, '2026-07-11 16:01:58'),
(1167, 3, 278, '2026-07-11 16:01:58'),
(1168, 3, 279, '2026-07-11 16:01:58'),
(1169, 3, 280, '2026-07-11 16:01:58'),
(1170, 3, 420, '2026-07-11 16:01:58'),
(1171, 3, 187, '2026-07-11 16:01:58'),
(1172, 3, 188, '2026-07-11 16:01:58'),
(1173, 3, 189, '2026-07-11 16:01:58'),
(1174, 3, 190, '2026-07-11 16:01:58'),
(1175, 3, 380, '2026-07-11 16:01:58'),
(1176, 3, 381, '2026-07-11 16:01:58'),
(1177, 3, 382, '2026-07-11 16:01:58'),
(1178, 3, 383, '2026-07-11 16:01:58'),
(1179, 3, 454, '2026-07-11 16:01:58'),
(1180, 3, 455, '2026-07-11 16:01:58'),
(1181, 3, 456, '2026-07-11 16:01:58'),
(1182, 3, 457, '2026-07-11 16:01:58'),
(1183, 3, 463, '2026-07-11 16:01:58'),
(1184, 3, 511, '2026-07-11 16:01:58'),
(1185, 3, 512, '2026-07-11 16:01:58'),
(1186, 3, 322, '2026-07-11 16:01:58'),
(1187, 3, 323, '2026-07-11 16:01:58'),
(1188, 3, 324, '2026-07-11 16:01:58'),
(1189, 3, 325, '2026-07-11 16:01:58'),
(1190, 3, 2, '2026-07-11 16:01:58'),
(1191, 3, 3, '2026-07-11 16:01:58'),
(1192, 3, 4, '2026-07-11 16:01:58'),
(1193, 3, 5, '2026-07-11 16:01:58'),
(1194, 3, 6, '2026-07-11 16:01:58'),
(1195, 3, 7, '2026-07-11 16:01:58'),
(1196, 3, 458, '2026-07-11 16:01:58'),
(1197, 3, 459, '2026-07-11 16:01:58'),
(1198, 3, 460, '2026-07-11 16:01:58'),
(1199, 3, 461, '2026-07-11 16:01:58'),
(1200, 3, 462, '2026-07-11 16:01:58'),
(1201, 3, 295, '2026-07-11 16:01:58'),
(1202, 3, 296, '2026-07-11 16:01:58'),
(1203, 3, 297, '2026-07-11 16:01:58'),
(1204, 3, 298, '2026-07-11 16:01:58'),
(1205, 3, 326, '2026-07-11 16:01:58'),
(1206, 3, 327, '2026-07-11 16:01:58'),
(1207, 3, 328, '2026-07-11 16:01:58'),
(1208, 3, 329, '2026-07-11 16:01:58'),
(1209, 3, 469, '2026-07-11 16:01:58'),
(1210, 3, 470, '2026-07-11 16:01:58'),
(1211, 3, 471, '2026-07-11 16:01:58'),
(1212, 3, 472, '2026-07-11 16:01:58'),
(1213, 3, 473, '2026-07-11 16:01:58'),
(1214, 3, 474, '2026-07-11 16:01:58'),
(1215, 3, 475, '2026-07-11 16:01:58'),
(1216, 3, 507, '2026-07-11 16:01:58'),
(1264, 4, 73, '2026-07-11 16:01:58'),
(1265, 4, 74, '2026-07-11 16:01:58'),
(1266, 4, 75, '2026-07-11 16:01:58'),
(1267, 4, 76, '2026-07-11 16:01:58'),
(1268, 4, 43, '2026-07-11 16:01:58'),
(1269, 4, 44, '2026-07-11 16:01:58'),
(1270, 4, 45, '2026-07-11 16:01:58'),
(1271, 4, 46, '2026-07-11 16:01:58'),
(1272, 4, 47, '2026-07-11 16:01:58'),
(1273, 4, 48, '2026-07-11 16:01:58'),
(1274, 4, 49, '2026-07-11 16:01:58'),
(1275, 4, 50, '2026-07-11 16:01:58'),
(1276, 4, 51, '2026-07-11 16:01:58'),
(1277, 4, 52, '2026-07-11 16:01:58'),
(1278, 4, 53, '2026-07-11 16:01:58'),
(1279, 4, 54, '2026-07-11 16:01:58'),
(1280, 4, 55, '2026-07-11 16:01:58'),
(1281, 4, 1, '2026-07-11 16:01:58'),
(1282, 4, 15, '2026-07-11 16:01:58'),
(1283, 4, 16, '2026-07-11 16:01:58'),
(1284, 4, 17, '2026-07-11 16:01:58'),
(1285, 4, 18, '2026-07-11 16:01:58'),
(1286, 4, 19, '2026-07-11 16:01:58'),
(1287, 4, 20, '2026-07-11 16:01:58'),
(1288, 4, 82, '2026-07-11 16:01:58'),
(1289, 4, 83, '2026-07-11 16:01:58'),
(1290, 4, 84, '2026-07-11 16:01:58'),
(1291, 4, 85, '2026-07-11 16:01:58'),
(1292, 4, 21, '2026-07-11 16:01:58'),
(1293, 4, 22, '2026-07-11 16:01:58'),
(1294, 4, 23, '2026-07-11 16:01:58'),
(1295, 4, 24, '2026-07-11 16:01:58'),
(1296, 4, 25, '2026-07-11 16:01:58'),
(1297, 4, 26, '2026-07-11 16:01:58'),
(1298, 4, 77, '2026-07-11 16:01:58'),
(1299, 4, 78, '2026-07-11 16:01:58'),
(1300, 4, 79, '2026-07-11 16:01:58'),
(1301, 4, 80, '2026-07-11 16:01:58'),
(1302, 4, 81, '2026-07-11 16:01:58'),
(1303, 4, 86, '2026-07-11 16:01:58'),
(1304, 4, 87, '2026-07-11 16:01:58'),
(1305, 4, 88, '2026-07-11 16:01:58'),
(1306, 4, 89, '2026-07-11 16:01:58'),
(1307, 4, 90, '2026-07-11 16:01:58'),
(1308, 4, 39, '2026-07-11 16:01:58'),
(1309, 4, 40, '2026-07-11 16:01:58'),
(1310, 4, 41, '2026-07-11 16:01:58'),
(1311, 4, 42, '2026-07-11 16:01:58'),
(1312, 4, 31, '2026-07-11 16:01:58'),
(1313, 4, 32, '2026-07-11 16:01:58'),
(1314, 4, 38, '2026-07-11 16:01:58'),
(1315, 4, 33, '2026-07-11 16:01:58'),
(1316, 4, 34, '2026-07-11 16:01:58'),
(1317, 4, 35, '2026-07-11 16:01:58'),
(1318, 4, 36, '2026-07-11 16:01:58'),
(1319, 4, 37, '2026-07-11 16:01:58'),
(1320, 4, 27, '2026-07-11 16:01:58'),
(1321, 4, 28, '2026-07-11 16:01:58'),
(1322, 4, 29, '2026-07-11 16:01:58'),
(1323, 4, 30, '2026-07-11 16:01:58'),
(1324, 4, 254, '2026-07-11 16:01:58'),
(1325, 4, 255, '2026-07-11 16:01:58'),
(1326, 4, 256, '2026-07-11 16:01:58'),
(1327, 4, 66, '2026-07-11 16:01:58'),
(1328, 4, 67, '2026-07-11 16:01:58'),
(1329, 4, 68, '2026-07-11 16:01:58'),
(1330, 4, 69, '2026-07-11 16:01:58'),
(1331, 4, 61, '2026-07-11 16:01:58'),
(1332, 4, 62, '2026-07-11 16:01:58'),
(1333, 4, 63, '2026-07-11 16:01:58'),
(1334, 4, 64, '2026-07-11 16:01:58'),
(1335, 4, 65, '2026-07-11 16:01:58'),
(1336, 4, 58, '2026-07-11 16:01:58'),
(1337, 4, 59, '2026-07-11 16:01:58'),
(1338, 4, 60, '2026-07-11 16:01:58'),
(1339, 4, 56, '2026-07-11 16:01:58'),
(1340, 4, 57, '2026-07-11 16:01:58'),
(1341, 4, 70, '2026-07-11 16:01:58'),
(1342, 4, 71, '2026-07-11 16:01:58'),
(1343, 4, 72, '2026-07-11 16:01:58'),
(1344, 4, 499, '2026-07-11 16:01:58'),
(1345, 4, 500, '2026-07-11 16:01:58'),
(1346, 4, 501, '2026-07-11 16:01:58'),
(1347, 4, 502, '2026-07-11 16:01:58'),
(1391, 5, 44, '2026-07-11 16:01:58'),
(1392, 5, 45, '2026-07-11 16:01:58'),
(1393, 5, 43, '2026-07-11 16:01:58'),
(1394, 5, 50, '2026-07-11 16:01:58'),
(1395, 5, 49, '2026-07-11 16:01:58'),
(1396, 5, 1, '2026-07-11 16:01:58'),
(1397, 5, 255, '2026-07-11 16:01:58'),
(1398, 5, 254, '2026-07-11 16:01:58'),
(1399, 1, 513, '2026-07-11 23:42:05'),
(1400, 1, 515, '2026-07-11 23:42:05'),
(1401, 1, 514, '2026-07-11 23:42:05'),
(1402, 1, 516, '2026-07-11 23:45:25'),
(1403, 1, 518, '2026-07-11 23:45:25'),
(1404, 1, 517, '2026-07-11 23:45:25'),
(1405, 1, 522, '2026-07-11 23:45:25'),
(1406, 1, 524, '2026-07-11 23:45:25'),
(1407, 1, 523, '2026-07-11 23:45:25'),
(1408, 1, 519, '2026-07-11 23:45:25'),
(1409, 1, 521, '2026-07-11 23:45:25'),
(1410, 1, 520, '2026-07-11 23:45:25'),
(1417, 1, 525, '2026-07-12 00:12:58'),
(1418, 1, 531, '2026-07-12 00:12:58'),
(1419, 1, 533, '2026-07-12 00:12:58'),
(1420, 1, 532, '2026-07-12 00:12:58'),
(1421, 1, 530, '2026-07-12 00:12:58'),
(1422, 1, 535, '2026-07-12 00:12:58'),
(1423, 1, 537, '2026-07-12 00:12:58'),
(1424, 1, 536, '2026-07-12 00:12:58'),
(1425, 1, 534, '2026-07-12 00:12:58'),
(1426, 1, 547, '2026-07-12 00:12:58'),
(1427, 1, 546, '2026-07-12 00:12:58'),
(1428, 1, 548, '2026-07-12 00:12:58'),
(1429, 1, 539, '2026-07-12 00:12:58'),
(1430, 1, 541, '2026-07-12 00:12:58'),
(1431, 1, 540, '2026-07-12 00:12:58'),
(1432, 1, 538, '2026-07-12 00:12:58'),
(1433, 1, 543, '2026-07-12 00:12:58'),
(1434, 1, 545, '2026-07-12 00:12:58'),
(1435, 1, 544, '2026-07-12 00:12:58'),
(1436, 1, 542, '2026-07-12 00:12:58'),
(1437, 1, 527, '2026-07-12 00:12:58'),
(1438, 1, 529, '2026-07-12 00:12:58'),
(1439, 1, 528, '2026-07-12 00:12:58'),
(1440, 1, 526, '2026-07-12 00:12:58'),
(1448, 1, 551, '2026-07-12 00:33:51'),
(1449, 1, 550, '2026-07-12 00:33:51'),
(1450, 1, 552, '2026-07-12 00:33:51'),
(1451, 1, 549, '2026-07-12 00:33:51'),
(1512, 6, 156, '2026-07-12 06:35:58'),
(1513, 6, 157, '2026-07-12 06:35:58'),
(1514, 6, 158, '2026-07-12 06:35:58'),
(1515, 6, 159, '2026-07-12 06:35:58'),
(1516, 6, 250, '2026-07-12 06:35:58'),
(1517, 6, 251, '2026-07-12 06:35:58'),
(1518, 6, 252, '2026-07-12 06:35:58'),
(1519, 6, 253, '2026-07-12 06:35:58'),
(1520, 6, 525, '2026-07-12 06:35:58'),
(1521, 6, 549, '2026-07-12 06:35:58'),
(1522, 6, 551, '2026-07-12 06:35:58'),
(1523, 6, 530, '2026-07-12 06:35:58'),
(1524, 6, 531, '2026-07-12 06:35:58'),
(1525, 6, 532, '2026-07-12 06:35:58'),
(1526, 6, 533, '2026-07-12 06:35:58'),
(1527, 6, 534, '2026-07-12 06:35:58'),
(1528, 6, 535, '2026-07-12 06:35:58'),
(1529, 6, 536, '2026-07-12 06:35:58'),
(1530, 6, 537, '2026-07-12 06:35:58'),
(1531, 6, 546, '2026-07-12 06:35:58'),
(1532, 6, 547, '2026-07-12 06:35:58'),
(1533, 6, 548, '2026-07-12 06:35:58'),
(1534, 6, 538, '2026-07-12 06:35:58'),
(1535, 6, 539, '2026-07-12 06:35:58'),
(1536, 6, 540, '2026-07-12 06:35:58'),
(1537, 6, 541, '2026-07-12 06:35:58'),
(1538, 6, 542, '2026-07-12 06:35:58'),
(1539, 6, 543, '2026-07-12 06:35:58'),
(1540, 6, 544, '2026-07-12 06:35:58'),
(1541, 6, 545, '2026-07-12 06:35:58'),
(1542, 6, 526, '2026-07-12 06:35:58'),
(1543, 6, 527, '2026-07-12 06:35:58'),
(1544, 6, 528, '2026-07-12 06:35:58'),
(1545, 6, 529, '2026-07-12 06:35:58');

-- --------------------------------------------------------

--
-- Table structure for table `sales_activities`
--

CREATE TABLE `sales_activities` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `activity_type` enum('call','email','meeting','task','follow_up') COLLATE utf8mb4_unicode_ci NOT NULL,
  `subject` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL,
  `opportunity_id` bigint(20) UNSIGNED DEFAULT NULL,
  `company_id` bigint(20) UNSIGNED DEFAULT NULL,
  `contact_id` bigint(20) UNSIGNED DEFAULT NULL,
  `status` enum('planned','completed','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'planned',
  `priority` enum('low','normal','high') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'normal',
  `scheduled_at` datetime DEFAULT NULL,
  `completed_at` datetime DEFAULT NULL,
  `due_at` datetime DEFAULT NULL,
  `duration_minutes` int(10) UNSIGNED DEFAULT NULL,
  `description` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `sales_activities`
--

INSERT INTO `sales_activities` (`id`, `activity_type`, `subject`, `opportunity_id`, `company_id`, `contact_id`, `status`, `priority`, `scheduled_at`, `completed_at`, `due_at`, `duration_minutes`, `description`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'call', 'Follow up with Gulf Tech', 1, 2, NULL, 'planned', 'high', '2026-07-12 10:00:00', NULL, NULL, NULL, NULL, 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(2, 'meeting', 'Site walkthrough — CleanPro', NULL, 3, NULL, 'completed', 'normal', '2026-07-08 14:00:00', '2026-07-08 15:30:00', NULL, 90, NULL, 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `sales_commissions`
--

CREATE TABLE `sales_commissions` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `sales_rep_id` bigint(20) UNSIGNED NOT NULL,
  `period_start` date NOT NULL,
  `period_end` date NOT NULL,
  `base_amount` decimal(15,2) NOT NULL DEFAULT 0.00,
  `rate_percent` decimal(8,2) NOT NULL DEFAULT 0.00,
  `commission_amount` decimal(15,2) NOT NULL DEFAULT 0.00,
  `status` enum('draft','approved','paid','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft',
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `approved_at` datetime DEFAULT NULL,
  `paid_at` datetime DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `sales_orders`
--

CREATE TABLE `sales_orders` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `quotation_id` bigint(20) UNSIGNED DEFAULT NULL,
  `company_id` bigint(20) UNSIGNED NOT NULL,
  `contact_id` bigint(20) UNSIGNED DEFAULT NULL,
  `order_date` date NOT NULL,
  `required_date` date DEFAULT NULL,
  `status` enum('draft','pending_approval','approved','rejected','confirmed','in_progress','fulfilled','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft',
  `subtotal` decimal(15,2) NOT NULL DEFAULT 0.00,
  `tax_amount` decimal(15,2) NOT NULL DEFAULT 0.00,
  `total` decimal(15,2) NOT NULL DEFAULT 0.00,
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `tracking_notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `rejection_reason` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `approved_by` bigint(20) UNSIGNED DEFAULT NULL,
  `approved_at` datetime DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `sales_orders`
--

INSERT INTO `sales_orders` (`id`, `number`, `quotation_id`, `company_id`, `contact_id`, `order_date`, `required_date`, `status`, `subtotal`, `tax_amount`, `total`, `notes`, `tracking_notes`, `rejection_reason`, `approved_by`, `approved_at`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'SO-DEMO-001', 1, 3, NULL, '2026-06-26', '2026-07-26', 'confirmed', 2550.00, 0.00, 2550.00, NULL, NULL, NULL, NULL, NULL, 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `sales_order_lines`
--

CREATE TABLE `sales_order_lines` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `sales_order_id` bigint(20) UNSIGNED NOT NULL,
  `item_code` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `item_name` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `quantity` decimal(12,3) NOT NULL DEFAULT 1.000,
  `unit` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT 'pcs',
  `unit_price` decimal(15,2) NOT NULL DEFAULT 0.00,
  `line_total` decimal(15,2) NOT NULL DEFAULT 0.00,
  `sort_order` int(11) NOT NULL DEFAULT 0,
  `created_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `sales_order_lines`
--

INSERT INTO `sales_order_lines` (`id`, `sales_order_id`, `item_code`, `item_name`, `description`, `quantity`, `unit`, `unit_price`, `line_total`, `sort_order`, `created_at`) VALUES
(1, 1, 'SVC-CLEAN', 'Cleaning Service (month)', NULL, 3.000, 'month', 850.00, 2550.00, 1, '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `sales_representatives`
--

CREATE TABLE `sales_representatives` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `name` varchar(150) COLLATE utf8mb4_unicode_ci NOT NULL,
  `code` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `employee_id` bigint(20) UNSIGNED DEFAULT NULL,
  `territory_id` bigint(20) UNSIGNED DEFAULT NULL,
  `email` varchar(150) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `phone` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `status` enum('active','inactive') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'active',
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `sales_representatives`
--

INSERT INTO `sales_representatives` (`id`, `name`, `code`, `employee_id`, `territory_id`, `email`, `phone`, `status`, `notes`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'Noor Ibrahim', 'REP-NOOR', 5, 1, 'noor.ibrahim@demo.local', NULL, 'active', NULL, 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `sales_returns`
--

CREATE TABLE `sales_returns` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `company_id` bigint(20) UNSIGNED NOT NULL,
  `invoice_id` bigint(20) UNSIGNED DEFAULT NULL,
  `sales_order_id` bigint(20) UNSIGNED DEFAULT NULL,
  `return_date` date NOT NULL,
  `status` enum('draft','submitted','approved','completed','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft',
  `subtotal` decimal(15,2) NOT NULL DEFAULT 0.00,
  `tax_amount` decimal(15,2) NOT NULL DEFAULT 0.00,
  `total` decimal(15,2) NOT NULL DEFAULT 0.00,
  `reason` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `approved_by` bigint(20) UNSIGNED DEFAULT NULL,
  `approved_at` datetime DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `sales_return_lines`
--

CREATE TABLE `sales_return_lines` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `sales_return_id` bigint(20) UNSIGNED NOT NULL,
  `item_code` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `item_name` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `quantity` decimal(12,3) NOT NULL DEFAULT 1.000,
  `unit` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT 'pcs',
  `unit_price` decimal(15,2) NOT NULL DEFAULT 0.00,
  `line_total` decimal(15,2) NOT NULL DEFAULT 0.00,
  `sort_order` int(11) NOT NULL DEFAULT 0,
  `created_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `sales_stages`
--

CREATE TABLE `sales_stages` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL,
  `code` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL,
  `sort_order` int(11) NOT NULL DEFAULT 0,
  `default_probability` tinyint(3) UNSIGNED NOT NULL DEFAULT 0,
  `is_won` tinyint(1) NOT NULL DEFAULT 0,
  `is_lost` tinyint(1) NOT NULL DEFAULT 0,
  `status` enum('active','inactive') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'active',
  `description` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `sales_stages`
--

INSERT INTO `sales_stages` (`id`, `name`, `code`, `sort_order`, `default_probability`, `is_won`, `is_lost`, `status`, `description`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'Qualification', 'QUAL', 10, 10, 0, 0, 'active', NULL, NULL, NULL, '2026-07-10 17:01:04', NULL),
(2, 'Needs Analysis', 'NEED', 20, 25, 0, 0, 'active', NULL, NULL, NULL, '2026-07-10 17:01:04', NULL),
(3, 'Proposal', 'PROP', 30, 50, 0, 0, 'active', NULL, NULL, NULL, '2026-07-10 17:01:04', NULL),
(4, 'Negotiation', 'NEGO', 40, 75, 0, 0, 'active', NULL, NULL, NULL, '2026-07-10 17:01:04', NULL),
(5, 'Closed Won', 'WON', 50, 100, 1, 0, 'active', NULL, NULL, NULL, '2026-07-10 17:01:04', NULL),
(6, 'Closed Lost', 'LOST', 60, 0, 0, 1, 'active', NULL, NULL, NULL, '2026-07-10 17:01:04', NULL);

-- --------------------------------------------------------

--
-- Table structure for table `sales_targets`
--

CREATE TABLE `sales_targets` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `sales_rep_id` bigint(20) UNSIGNED NOT NULL,
  `territory_id` bigint(20) UNSIGNED DEFAULT NULL,
  `period_start` date NOT NULL,
  `period_end` date NOT NULL,
  `target_amount` decimal(15,2) NOT NULL DEFAULT 0.00,
  `achieved_amount` decimal(15,2) NOT NULL DEFAULT 0.00,
  `status` enum('active','completed','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'active',
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `sales_targets`
--

INSERT INTO `sales_targets` (`id`, `sales_rep_id`, `territory_id`, `period_start`, `period_end`, `target_amount`, `achieved_amount`, `status`, `notes`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 1, 1, '2026-07-01', '2026-07-31', 20000.00, 4500.00, 'active', NULL, 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `sales_territories`
--

CREATE TABLE `sales_territories` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `name` varchar(150) COLLATE utf8mb4_unicode_ci NOT NULL,
  `code` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `region` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `status` enum('active','inactive') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'active',
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `sales_territories`
--

INSERT INTO `sales_territories` (`id`, `name`, `code`, `region`, `status`, `notes`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'Capital Governorate', 'CAP', 'Bahrain', 'active', NULL, 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `stock_adjustments`
--

CREATE TABLE `stock_adjustments` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `adjustment_date` date NOT NULL,
  `product_id` bigint(20) UNSIGNED NOT NULL,
  `warehouse_id` bigint(20) UNSIGNED NOT NULL,
  `quantity_before` decimal(12,3) NOT NULL DEFAULT 0.000,
  `quantity_after` decimal(12,3) NOT NULL DEFAULT 0.000,
  `delta` decimal(12,3) NOT NULL DEFAULT 0.000,
  `mode` enum('set','add') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'set',
  `reason` varchar(150) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `stock_balances`
--

CREATE TABLE `stock_balances` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `product_id` bigint(20) UNSIGNED NOT NULL,
  `warehouse_id` bigint(20) UNSIGNED NOT NULL,
  `quantity` decimal(12,3) NOT NULL DEFAULT 0.000,
  `reserved_qty` decimal(12,3) NOT NULL DEFAULT 0.000,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `stock_balances`
--

INSERT INTO `stock_balances` (`id`, `product_id`, `warehouse_id`, `quantity`, `reserved_qty`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 1, 1, 60.000, 0.000, 2, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(2, 2, 1, 150.000, 0.000, 2, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(3, 3, 1, 90.000, 0.000, 2, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(4, 4, 1, 15.000, 0.000, 2, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(5, 5, 1, 15.000, 0.000, 2, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `stock_counts`
--

CREATE TABLE `stock_counts` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `count_date` date NOT NULL,
  `warehouse_id` bigint(20) UNSIGNED NOT NULL,
  `status` enum('draft','in_progress','completed','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft',
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `completed_at` datetime DEFAULT NULL,
  `completed_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `stock_count_lines`
--

CREATE TABLE `stock_count_lines` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `stock_count_id` bigint(20) UNSIGNED NOT NULL,
  `product_id` bigint(20) UNSIGNED NOT NULL,
  `system_qty` decimal(12,3) NOT NULL DEFAULT 0.000,
  `counted_qty` decimal(12,3) DEFAULT NULL,
  `variance` decimal(12,3) DEFAULT NULL,
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `sort_order` int(11) NOT NULL DEFAULT 0,
  `created_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `stock_transfers`
--

CREATE TABLE `stock_transfers` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `transfer_date` date NOT NULL,
  `from_warehouse_id` bigint(20) UNSIGNED NOT NULL,
  `to_warehouse_id` bigint(20) UNSIGNED NOT NULL,
  `status` enum('draft','completed','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft',
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `completed_at` datetime DEFAULT NULL,
  `completed_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `stock_transfer_lines`
--

CREATE TABLE `stock_transfer_lines` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `stock_transfer_id` bigint(20) UNSIGNED NOT NULL,
  `product_id` bigint(20) UNSIGNED NOT NULL,
  `quantity` decimal(12,3) NOT NULL DEFAULT 1.000,
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `sort_order` int(11) NOT NULL DEFAULT 0,
  `created_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `suppliers`
--

CREATE TABLE `suppliers` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `name` varchar(150) COLLATE utf8mb4_unicode_ci NOT NULL,
  `code` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `email` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `phone` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `website` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `address` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `city` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `country` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `status` enum('active','inactive') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'active',
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `suppliers`
--

INSERT INTO `suppliers` (`id`, `name`, `code`, `email`, `phone`, `website`, `address`, `city`, `country`, `status`, `notes`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'Bahrain Supplies Co', 'SUP-BSC', 'sales@bsc.demo', '+97317550001', NULL, NULL, 'Manama', 'Bahrain', 'active', NULL, 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58'),
(2, 'Gulf Paper Traders', 'SUP-GPT', 'orders@gpt.demo', '+97317550002', NULL, NULL, 'Riffa', 'Bahrain', 'active', NULL, 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `supplier_bills`
--

CREATE TABLE `supplier_bills` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `supplier_id` bigint(20) UNSIGNED NOT NULL,
  `bill_date` date NOT NULL,
  `due_date` date DEFAULT NULL,
  `status` enum('draft','posted','partially_paid','paid','overdue','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft',
  `subtotal` decimal(15,2) NOT NULL DEFAULT 0.00,
  `tax_amount` decimal(15,2) NOT NULL DEFAULT 0.00,
  `total` decimal(15,2) NOT NULL DEFAULT 0.00,
  `amount_paid` decimal(15,2) NOT NULL DEFAULT 0.00,
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `posted_at` datetime DEFAULT NULL,
  `paid_at` datetime DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `supplier_bills`
--

INSERT INTO `supplier_bills` (`id`, `number`, `supplier_id`, `bill_date`, `due_date`, `status`, `subtotal`, `tax_amount`, `total`, `amount_paid`, `notes`, `posted_at`, `paid_at`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'AP-DEMO-001', 1, '2026-07-07', '2026-08-06', 'posted', 125.00, 0.00, 125.00, 0.00, NULL, '2026-07-11 16:01:58', NULL, 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `supplier_bill_lines`
--

CREATE TABLE `supplier_bill_lines` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `supplier_bill_id` bigint(20) UNSIGNED NOT NULL,
  `item_code` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `item_name` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `quantity` decimal(12,3) NOT NULL DEFAULT 1.000,
  `unit` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT 'pcs',
  `unit_price` decimal(15,2) NOT NULL DEFAULT 0.00,
  `line_total` decimal(15,2) NOT NULL DEFAULT 0.00,
  `sort_order` int(11) NOT NULL DEFAULT 0,
  `created_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `supplier_bill_lines`
--

INSERT INTO `supplier_bill_lines` (`id`, `supplier_bill_id`, `item_code`, `item_name`, `description`, `quantity`, `unit`, `unit_price`, `line_total`, `sort_order`, `created_at`) VALUES
(1, 1, 'DET-5L', 'Floor Detergent 5L', NULL, 50.000, 'pcs', 2.50, 125.00, 1, '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `supplier_contacts`
--

CREATE TABLE `supplier_contacts` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `supplier_id` bigint(20) UNSIGNED NOT NULL,
  `first_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL,
  `last_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL,
  `email` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `phone` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `job_title` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `is_primary` tinyint(1) NOT NULL DEFAULT 0,
  `status` enum('active','inactive') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'active',
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `supplier_contacts`
--

INSERT INTO `supplier_contacts` (`id`, `supplier_id`, `first_name`, `last_name`, `email`, `phone`, `job_title`, `is_primary`, `status`, `notes`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 1, 'Tariq', 'Saleem', 'tariq@bsc.demo', NULL, NULL, 1, 'active', NULL, 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `supplier_contracts`
--

CREATE TABLE `supplier_contracts` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `title` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL,
  `supplier_id` bigint(20) UNSIGNED NOT NULL,
  `status` enum('draft','active','expired','terminated','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft',
  `start_date` date DEFAULT NULL,
  `end_date` date DEFAULT NULL,
  `value` decimal(15,2) NOT NULL DEFAULT 0.00,
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `supplier_payments`
--

CREATE TABLE `supplier_payments` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `supplier_id` bigint(20) UNSIGNED NOT NULL,
  `vendor_bill_id` bigint(20) UNSIGNED DEFAULT NULL,
  `payment_date` date NOT NULL,
  `amount` decimal(15,2) NOT NULL DEFAULT 0.00,
  `method` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `status` enum('draft','pending','processed','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft',
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `processed_at` datetime DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `supplier_quotations`
--

CREATE TABLE `supplier_quotations` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `rfq_id` bigint(20) UNSIGNED DEFAULT NULL,
  `supplier_id` bigint(20) UNSIGNED NOT NULL,
  `quotation_date` date NOT NULL,
  `valid_until` date DEFAULT NULL,
  `status` enum('draft','pending_approval','approved','rejected','sent','converted','cancelled') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft',
  `subtotal` decimal(15,2) NOT NULL DEFAULT 0.00,
  `tax_amount` decimal(15,2) NOT NULL DEFAULT 0.00,
  `total` decimal(15,2) NOT NULL DEFAULT 0.00,
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `rejection_reason` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `approved_by` bigint(20) UNSIGNED DEFAULT NULL,
  `approved_at` datetime DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `supplier_quotation_lines`
--

CREATE TABLE `supplier_quotation_lines` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `supplier_quotation_id` bigint(20) UNSIGNED NOT NULL,
  `item_code` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `item_name` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `quantity` decimal(12,3) NOT NULL DEFAULT 1.000,
  `unit` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT 'pcs',
  `unit_price` decimal(15,2) NOT NULL DEFAULT 0.00,
  `line_total` decimal(15,2) NOT NULL DEFAULT 0.00,
  `sort_order` int(11) NOT NULL DEFAULT 0,
  `created_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- --------------------------------------------------------

--
-- Table structure for table `system_modules`
--

CREATE TABLE `system_modules` (
  `id` tinyint(3) UNSIGNED NOT NULL,
  `module_key` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL,
  `is_enabled` tinyint(1) NOT NULL DEFAULT 1,
  `updated_by` int(10) UNSIGNED DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `system_modules`
--

INSERT INTO `system_modules` (`id`, `module_key`, `is_enabled`, `updated_by`, `updated_at`) VALUES
(1, 'hrm', 1, 1, '2026-07-14 12:43:34'),
(2, 'sale', 0, 1, '2026-07-12 07:00:36'),
(3, 'contracts', 1, NULL, '2026-07-12 09:59:48'),
(4, 'procurement', 0, 1, '2026-07-12 07:00:36'),
(5, 'inventory', 0, 1, '2026-07-12 07:00:36'),
(6, 'accounting', 0, 1, '2026-07-12 07:00:36'),
(7, 'operations', 0, 1, '2026-07-12 07:00:36'),
(8, 'transport', 1, NULL, '2026-07-12 09:59:49'),
(9, 'reports', 0, 1, '2026-07-12 07:00:36'),
(10, 'messages', 0, 1, '2026-07-12 07:00:36');

-- --------------------------------------------------------

--
-- Table structure for table `tax_rates`
--

CREATE TABLE `tax_rates` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `code` varchar(30) COLLATE utf8mb4_unicode_ci NOT NULL,
  `name` varchar(150) COLLATE utf8mb4_unicode_ci NOT NULL,
  `rate` decimal(8,4) NOT NULL DEFAULT 0.0000,
  `tax_type` enum('vat','sales','withholding','other') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'vat',
  `account_id` bigint(20) UNSIGNED DEFAULT NULL,
  `is_recoverable` tinyint(1) NOT NULL DEFAULT 1,
  `status` enum('active','inactive') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'active',
  `notes` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `tax_rates`
--

INSERT INTO `tax_rates` (`id`, `code`, `name`, `rate`, `tax_type`, `account_id`, `is_recoverable`, `status`, `notes`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(1, 'VAT15', 'VAT 15%', 15.0000, 'vat', NULL, 1, 'active', NULL, NULL, NULL, '2026-07-11 13:28:55', '2026-07-11 13:28:55'),
(2, 'VAT10', 'VAT 10%', 10.0000, 'vat', NULL, 1, 'active', NULL, 2, NULL, '2026-07-11 16:01:58', '2026-07-11 16:01:58');

-- --------------------------------------------------------

--
-- Table structure for table `transport_ai_plans`
--

CREATE TABLE `transport_ai_plans` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `number` varchar(40) COLLATE utf8mb4_unicode_ci NOT NULL,
  `title` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL,
  `plan_start_date` date NOT NULL,
  `plan_end_date` date NOT NULL,
  `status` enum('draft','pending_approval','approved','rejected') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft',
  `total_routes` int(10) UNSIGNED NOT NULL DEFAULT 0,
  `total_employees` int(10) UNSIGNED NOT NULL DEFAULT 0,
  `total_distance_km` decimal(12,2) NOT NULL DEFAULT 0.00,
  `total_duration_minutes` int(10) UNSIGNED NOT NULL DEFAULT 0,
  `total_fuel_litres` decimal(12,2) NOT NULL DEFAULT 0.00,
  `total_cost` decimal(15,3) NOT NULL DEFAULT 0.000,
  `conflicts_json` longtext COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `fleet_summary_json` longtext COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `optimization_summary` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `rejection_reason` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `generated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `approved_by` bigint(20) UNSIGNED DEFAULT NULL,
  `approved_at` datetime DEFAULT NULL,
  `created_by` bigint(20) UNSIGNED DEFAULT NULL,
  `updated_by` bigint(20) UNSIGNED DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `transport_ai_plans`
--

INSERT INTO `transport_ai_plans` (`id`, `number`, `title`, `plan_start_date`, `plan_end_date`, `status`, `total_routes`, `total_employees`, `total_distance_km`, `total_duration_minutes`, `total_fuel_litres`, `total_cost`, `conflicts_json`, `fleet_summary_json`, `optimization_summary`, `rejection_reason`, `generated_by`, `approved_by`, `approved_at`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(10, 'AIP-260711-0001', 'Transportation plan 2026-07-12 to 2026-07-12', '2026-07-12', '2026-07-12', 'approved', 1, 6, 52.77, 84, 6.07, 3.852, '[]', '{\"inputs\":{\"sites\":1,\"employees\":6,\"vehicles\":2,\"depots\":1,\"dates\":1},\"driver_workloads\":[{\"driver_id\":1,\"driver_name\":\"Khalid Al-Mahmood\",\"routes\":1,\"minutes\":84,\"days\":1}],\"vehicles_used\":1,\"drivers_used\":1}', 'This plan covers 2026-07-12 to 2026-07-12 with 1 optimized route transporting 6 employee pickups using 1 vehicle. Estimated totals: 52.8 km driven, 84 minutes of travel, 6.1 litres of fuel and a transportation cost of 3.852. Average seat utilisation is 43%. No scheduling conflicts were detected; all routes satisfy capacity, licensing, availability and shift-arrival rules. Recommendation: seat utilisation is below 60% — consider merging nearby routes or assigning smaller vehicles to reduce fuel consumption.', NULL, 1, 1, '2026-07-11 22:34:38', 1, 1, '2026-07-11 22:34:21', '2026-07-11 22:34:38');
INSERT INTO `transport_ai_plans` (`id`, `number`, `title`, `plan_start_date`, `plan_end_date`, `status`, `total_routes`, `total_employees`, `total_distance_km`, `total_duration_minutes`, `total_fuel_litres`, `total_cost`, `conflicts_json`, `fleet_summary_json`, `optimization_summary`, `rejection_reason`, `generated_by`, `approved_by`, `approved_at`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES
(11, 'AIP-260711-0002', 'Site-staff plan test', '2026-07-13', '2026-07-13', 'draft', 977, 2856, 8071.97, 15093, 968.79, 597.375, '[{\"severity\":\"warning\",\"type\":\"routing_fallback\",\"service_date\":null,\"route_name\":null,\"message\":\"The road routing provider (OSRM) was unreachable for part of the computation; straight-line estimates with a road factor were used instead.\",\"recommendations\":[]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Aali Site 178 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a truck.\",\"Fatima Hassan: license class \'D\' does not qualify for a truck.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a truck.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a truck.\",\"Sara Hassan: license class \'B\' does not qualify for a truck.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Aali Site 193 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a truck.\",\"Fatima Hassan: license class \'D\' does not qualify for a truck.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a truck.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a truck.\",\"Sara Hassan: license class \'B\' does not qualify for a truck.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Aali Site 208 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a truck.\",\"Fatima Hassan: license class \'D\' does not qualify for a truck.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a truck.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a truck.\",\"Sara Hassan: license class \'B\' does not qualify for a truck.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Aali Site 223 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a truck.\",\"Fatima Hassan: license class \'D\' does not qualify for a truck.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a truck.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a truck.\",\"Sara Hassan: license class \'B\' does not qualify for a truck.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 113 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a bus.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a bus.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a bus.\",\"Sara Hassan: license class \'B\' does not qualify for a bus.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 173 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a bus.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a bus.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a bus.\",\"Sara Hassan: license class \'B\' does not qualify for a bus.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 443 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 503 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 563 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 608 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 668 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 68 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 713 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 773 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 8 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 833 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 878 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 938 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 209 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 374 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a bus.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a bus.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a bus.\",\"Sara Hassan: license class \'B\' does not qualify for a bus.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 44 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a bus.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a bus.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a bus.\",\"Sara Hassan: license class \'B\' does not qualify for a bus.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 479 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a bus.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a bus.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a bus.\",\"Sara Hassan: license class \'B\' does not qualify for a bus.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 644 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a bus.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a bus.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a bus.\",\"Sara Hassan: license class \'B\' does not qualify for a bus.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 809 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a bus.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a bus.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a bus.\",\"Sara Hassan: license class \'B\' does not qualify for a bus.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 128 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a bus.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a bus.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a bus.\",\"Sara Hassan: license class \'B\' does not qualify for a bus.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 143 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a bus.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a bus.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a bus.\",\"Sara Hassan: license class \'B\' does not qualify for a bus.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 188 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a bus.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a bus.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a bus.\",\"Sara Hassan: license class \'B\' does not qualify for a bus.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 23 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a bus.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a bus.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a bus.\",\"Sara Hassan: license class \'B\' does not qualify for a bus.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 248 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a bus.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a bus.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a bus.\",\"Sara Hassan: license class \'B\' does not qualify for a bus.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 293 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a bus.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a bus.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a bus.\",\"Sara Hassan: license class \'B\' does not qualify for a bus.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 308 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a bus.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a bus.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a bus.\",\"Sara Hassan: license class \'B\' does not qualify for a bus.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 353 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a bus.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a bus.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a bus.\",\"Sara Hassan: license class \'B\' does not qualify for a bus.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 413 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a bus.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a bus.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a bus.\",\"Sara Hassan: license class \'B\' does not qualify for a bus.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 458 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a bus.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a bus.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a bus.\",\"Sara Hassan: license class \'B\' does not qualify for a bus.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 518 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a bus.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a bus.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a bus.\",\"Sara Hassan: license class \'B\' does not qualify for a bus.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 578 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a bus.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a bus.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a bus.\",\"Sara Hassan: license class \'B\' does not qualify for a bus.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 623 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a bus.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a bus.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a bus.\",\"Sara Hassan: license class \'B\' does not qualify for a bus.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 683 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a bus.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a bus.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a bus.\",\"Sara Hassan: license class \'B\' does not qualify for a bus.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 728 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a bus.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a bus.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a bus.\",\"Sara Hassan: license class \'B\' does not qualify for a bus.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 743 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 743 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 788 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 788 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 83 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 83 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 848 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 848 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 893 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 893 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 908 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 908 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 149 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 149 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 164 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 164 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 254 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 254 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 314 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 314 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 329 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 329 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 419 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 419 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 494 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 494 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 524 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 524 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 584 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 584 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 599 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 599 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 689 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 689 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 749 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 749 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 764 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 764 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 854 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 854 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 89 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 89 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 914 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 914 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 929 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 929 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 200 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 200 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 800 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 800 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 203 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a bus.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a bus.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a bus.\",\"Sara Hassan: license class \'B\' does not qualify for a bus.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 263 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 263 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 368 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 368 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 38 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 38 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 473 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 473 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 533 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 533 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 638 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 638 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 698 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 698 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 803 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 803 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 863 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 863 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 98 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 98 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 104 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 104 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 134 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 134 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 194 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 194 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 269 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 269 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 29 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 29 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 299 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 299 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 359 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 359 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 434 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 434 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 464 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 464 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 539 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 539 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 629 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 629 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 704 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 704 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 734 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 734 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 794 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 794 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 869 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 869 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 899 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 899 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 260 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 260 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 365 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 365 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 425 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 425 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 530 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 530 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 695 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 695 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 860 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 860 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 95 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 95 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 158 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a bus.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a bus.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a bus.\",\"Sara Hassan: license class \'B\' does not qualify for a bus.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 218 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 218 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 323 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 323 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 383 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 383 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 428 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 428 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 488 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 488 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 53 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 53 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 548 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 548 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 593 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 593 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 653 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 653 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 758 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 758 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 818 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 818 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 923 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Juffair Site 923 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 179 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 179 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 239 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 239 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 344 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 344 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 404 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 404 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 509 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 509 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 569 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 569 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 674 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 674 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 74 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 74 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 779 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 779 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 839 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 839 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 944 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 944 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 110 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 110 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 140 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 140 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 155 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 155 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 215 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 215 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 275 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 275 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 305 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 305 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 320 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 320 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 35 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 35 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 380 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 380 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 440 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 440 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 470 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 470 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 485 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 485 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 50 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 50 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 545 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 545 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 590 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 590 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 635 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 635 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 650 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 650 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 710 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 710 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 740 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 740 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 755 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 755 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 815 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 815 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 875 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 875 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 905 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 905 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 920 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 920 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 152 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 152 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 317 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 317 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 47 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 47 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 482 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 482 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 647 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 647 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 752 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 752 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 917 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 917 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 119 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 119 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 14 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 14 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 224 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 224 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 284 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 284 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 389 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 389 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 449 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 449 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 554 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 554 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 614 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 614 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 719 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 719 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 824 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 824 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 884 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 884 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 125 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 125 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 170 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 170 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 185 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 185 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 20 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 20 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 230 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 230 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 245 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 245 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 290 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 290 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 335 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 335 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 350 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 350 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 395 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 395 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 410 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 410 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 455 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 455 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 5 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 5 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 500 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 500 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 515 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 515 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 560 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 560 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 575 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 575 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 605 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 605 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 620 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 620 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 65 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 65 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 665 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 665 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 680 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 680 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 725 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 725 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 770 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 770 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 785 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 785 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 80 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 80 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 830 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 830 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 845 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 845 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 890 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 890 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 935 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 935 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 950 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Isa Town Site 950 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 137 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 137 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 17 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 17 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 182 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 182 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 197 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 197 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 242 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 242 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 257 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 257 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 302 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 302 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 32 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 32 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 347 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 347 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 362 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 362 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 407 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 407 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 422 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 422 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 452 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 452 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 467 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 467 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 512 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 512 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 527 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 527 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 572 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 572 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 587 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 587 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 617 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 617 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 632 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 632 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 677 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 677 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 692 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 692 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 737 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 737 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 77 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 77 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 782 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 782 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 797 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 797 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 842 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 842 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 857 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 857 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 902 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 902 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 92 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 92 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 947 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 947 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 59 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 59 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 659 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Jidhafs Site 659 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 122 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 122 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 212 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 212 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 227 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 227 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 287 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 287 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 377 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 377 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 392 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 392 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 542 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 542 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 557 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 557 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 62 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 62 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 662 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 662 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 722 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 722 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 812 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 812 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 827 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 827 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 887 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 887 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 107 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 107 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 167 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 167 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 2 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 2 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 272 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 272 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 332 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 332 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 437 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 437 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 497 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 497 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 602 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 602 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 707 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 707 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 767 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 767 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 872 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 872 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 932 – Morning Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Service Contract — Muharraq Site 932 – Morning Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Aali Site 133 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Aali Site 148 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Aali Site 163 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Aali Site 178 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a truck.\",\"Fatima Hassan: license class \'D\' does not qualify for a truck.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a truck.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a truck.\",\"Sara Hassan: license class \'B\' does not qualify for a truck.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Aali Site 193 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a truck.\",\"Fatima Hassan: license class \'D\' does not qualify for a truck.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a truck.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a truck.\",\"Sara Hassan: license class \'B\' does not qualify for a truck.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Aali Site 238 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Aali Site 253 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Aali Site 118 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Aali Site 13 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 184 – General Day Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 184 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 19 – General Day Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 19 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 244 – General Day Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 244 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 349 – General Day Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 349 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 409 – General Day Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 409 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 514 – General Day Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 514 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 574 – General Day Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 574 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 619 – General Day Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 619 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 679 – General Day Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 679 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 784 – General Day Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 784 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 79 – General Day Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 79 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 844 – General Day Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 844 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 949 – General Day Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 949 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Aali Site 103 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Aali Site 208 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a truck.\",\"Fatima Hassan: license class \'D\' does not qualify for a truck.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a truck.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a truck.\",\"Sara Hassan: license class \'B\' does not qualify for a truck.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Aali Site 223 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a truck.\",\"Fatima Hassan: license class \'D\' does not qualify for a truck.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a truck.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a truck.\",\"Sara Hassan: license class \'B\' does not qualify for a truck.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Aali Site 418 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Aali Site 583 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Aali Site 688 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Aali Site 748 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Aali Site 853 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a bus.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a bus.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a bus.\",\"Sara Hassan: license class \'B\' does not qualify for a bus.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Product Contract — Aali Site 88 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: license class \'B\' does not qualify for a bus.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: license class \'B\' does not qualify for a bus.\",\"Hassan Al-Jalahma: license class \'B\' does not qualify for a bus.\",\"Sara Hassan: license class \'B\' does not qualify for a bus.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 109 – General Day Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 109 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 124 – General Day Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 124 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 169 – General Day Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 169 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 229 – General Day Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 229 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 274 – General Day Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 274 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 289 – General Day Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 289 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already scheduled in this time window.\",\"Hassan Al-Jalahma: already scheduled in this time window.\",\"Sara Hassan: already scheduled in this time window.\"]},{\"severity\":\"error\",\"type\":\"no_vehicle\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 334 – General Day Shift – Route 1\",\"message\":\"No available vehicle with capacity for 3 passengers in this time window.\",\"recommendations\":[\"Vehicle BH-1019-T (capacity 15) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1038-M (capacity 18) fits but is under maintenance; expediting its service would resolve this.\",\"Vehicle BH-1057-F (capacity 42) fits but is under maintenance; expediting its service would resolve this.\"]},{\"severity\":\"error\",\"type\":\"no_driver\",\"service_date\":\"2026-07-13\",\"route_name\":\"Project Contract — Hamad Town Site 334 – General Day Shift – Route 1\",\"message\":\"No available driver qualifies for this route.\",\"recommendations\":[\"Khalid Al-Mahmood: already scheduled in this time window.\",\"Fatima Hassan: already scheduled in this time window.\",\"Mohammed Al-Mannai: already schedu