-- ═══════════════════════════════════════════════════════════════════════════
-- ✅ تصحيح شامل لـ Routes نظام Logs - Volt Edition
-- ═══════════════════════════════════════════════════════════════════════════
-- التاريخ: 2025-12-14
-- الغرض: تحويل جميع routes الخاصة بـ Logs إلى نظام Volt بشكل صحيح
-- ═══════════════════════════════════════════════════════════════════════════

PRINT '';
PRINT '════════════════════════════════════════════════════════════════';
PRINT '  تصحيح Routes نظام Logs - Livewire 3 Volt';
PRINT '════════════════════════════════════════════════════════════════';
PRINT '';

-- ─────────────────────────────────────────────────────────────────────────────
-- 1️⃣ التحقق من الوضع الحالي
-- ─────────────────────────────────────────────────────────────────────────────
PRINT '📋 الوضع الحالي:';
PRINT '────────────────────────────────────────────────────────────────';

SELECT
    [name] AS [Route Name],
    [url] AS [URL],
    [type] AS [Type],
    [view_name] AS [View/Controller],
    [constraints] AS [Constraints]
FROM [system_routes]
WHERE [name] LIKE 'admin.logs.%'
ORDER BY [order];

PRINT '';

-- ─────────────────────────────────────────────────────────────────────────────
-- 2️⃣ تصحيح admin.logs.index
-- ─────────────────────────────────────────────────────────────────────────────
PRINT '🔧 تصحيح: admin.logs.index';

UPDATE [system_routes]
SET
    [type] = 'volt',
    [controller] = NULL,
    [view_name] = 'livewire.backend.system.logs-index',
    [prefix] = NULL,
    [url] = '/admin/logs',
    [method] = 'GET',
    [middleware] = '["auth"]',
    [constraints] = NULL,
    [is_active] = 1,
    [auth] = 1
WHERE [name] = 'admin.logs.index';

IF @@ROWCOUNT > 0
    PRINT '   ✓ تم تحديث admin.logs.index';
ELSE
    PRINT '   ⚠ admin.logs.index غير موجود';

PRINT '';

-- ─────────────────────────────────────────────────────────────────────────────
-- 3️⃣ تصحيح admin.logs.show (المشكلة الأساسية)
-- ─────────────────────────────────────────────────────────────────────────────
PRINT '🔧 تصحيح: admin.logs.show';

UPDATE [system_routes]
SET
    [type] = 'volt',
    [controller] = NULL,
    [view_name] = 'livewire.backend.system.logs-show',
    [prefix] = NULL,
    [url] = '/admin/logs/{id}',
    [method] = 'GET',
    [middleware] = '["auth"]',
    [constraints] = '{"id":"[0-9]+"}',
    [is_active] = 1,
    [auth] = 1
WHERE [name] = 'admin.logs.show';

IF @@ROWCOUNT > 0
    PRINT '   ✓ تم تحديث admin.logs.show';
ELSE
    PRINT '   ⚠ admin.logs.show غير موجود';

PRINT '';

-- ─────────────────────────────────────────────────────────────────────────────
-- 4️⃣ تصحيح admin.logs.user
-- ─────────────────────────────────────────────────────────────────────────────
PRINT '🔧 تصحيح: admin.logs.user';

UPDATE [system_routes]
SET
    [type] = 'volt',
    [controller] = NULL,
    [view_name] = 'livewire.backend.system.logs-user',
    [prefix] = NULL,
    [url] = '/admin/logs/user/{userId}',
    [method] = 'GET',
    [middleware] = '["auth"]',
    [constraints] = '{"userId":"[0-9]+"}',
    [is_active] = 1,
    [auth] = 1
WHERE [name] = 'admin.logs.user';

IF @@ROWCOUNT > 0
    PRINT '   ✓ تم تحديث admin.logs.user';
ELSE
    PRINT '   ⚠ admin.logs.user غير موجود';

PRINT '';

-- ─────────────────────────────────────────────────────────────────────────────
-- 5️⃣ التحقق من النتائج النهائية
-- ─────────────────────────────────────────────────────────────────────────────
PRINT '✅ النتائج النهائية:';
PRINT '────────────────────────────────────────────────────────────────';

SELECT
    [name] AS [Route Name],
    [url] AS [URL],
    [type] AS [Type],
    [view_name] AS [View Name],
    [constraints] AS [Constraints],
    [is_active] AS [Active]
FROM [system_routes]
WHERE [name] LIKE 'admin.logs.%'
ORDER BY [order];

PRINT '';
PRINT '════════════════════════════════════════════════════════════════';
PRINT '  ✓ تم التصحيح بنجاح!';
PRINT '════════════════════════════════════════════════════════════════';
PRINT '';
PRINT '📌 الخطوات التالية:';
PRINT '   1. امسح الـ cache: php artisan route:clear';
PRINT '   2. تحقق من Routes: php artisan route:list --name=admin.logs';
PRINT '   3. افتح المتصفح: /admin/logs';
PRINT '';
