<?php
require_once 'config/db.php';

try {
    $db = new Database();
    $pdo = $db->getConnection();
    
    // Réinitialiser la base de données
    $db->resetDatabase();
    
    // بدء المعاملة
    $pdo->beginTransaction();
    
    // إضافة مستخدم للنظام
    $password_hash = password_hash('admin123', PASSWORD_DEFAULT);
    $pdo->exec("
        INSERT INTO users (username, password, created_at)
        VALUES ('admin', '$password_hash', CURRENT_TIMESTAMP)
    ");
    
    // إضافة منتجات
    $products = [
        ['حليب كامل الدسم', 7.50, 50, '2025-06-30'],
        ['خبز عربي', 1.50, 100, '2025-02-02'],
        ['أرز بسمتي 5 كجم', 85.00, 30, '2025-12-31'],
        ['زيت زيتون 1 لتر', 120.00, 20, '2025-12-31'],
        ['معجون طماطم', 12.50, 40, '2025-08-15'],
        ['سكر 1 كجم', 15.00, 60, '2025-12-31'],
        ['شاي أحمد', 45.00, 45, '2025-10-20'],
        ['بيض 30 حبة', 48.00, 25, '2025-02-15'],
        ['جبن شيدر 500جم', 65.00, 30, '2025-03-30'],
        ['مياه معدنية 6×1.5 لتر', 25.00, 80, '2025-12-31']
    ];
    
    $stmt = $pdo->prepare("
        INSERT INTO products (name, price, quantity, expiry_date, created_at)
        VALUES (?, ?, ?, ?, CURRENT_TIMESTAMP)
    ");
    
    foreach ($products as $product) {
        $stmt->execute($product);
    }
    
    // إضافة زبائن
    $customers = [
        ['أحمد محمد', '0501234567'],
        ['فاطمة علي', '0507654321'],
        ['محمد عبدالله', '0503456789'],
        ['نورة سعد', '0504567890'],
        ['خالد عمر', '0505678901']
    ];
    
    $stmt = $pdo->prepare("
        INSERT INTO customers (name, phone, created_at)
        VALUES (?, ?, CURRENT_TIMESTAMP)
    ");
    
    foreach ($customers as $customer) {
        $stmt->execute($customer);
    }
    
    // إضافة مبيعات
    $sales_data = [
        [1, 2, 7.50],  // حليب
        [2, 5, 1.50],  // خبز
        [3, 1, 85.00], // أرز
        [4, 2, 120.00], // زيت زيتون
        [5, 3, 12.50]   // معجون طماطم
    ];
    
    $stmt = $pdo->prepare("
        INSERT INTO sales (product_id, quantity, price, sale_date)
        VALUES (?, ?, ?, datetime('now', '-' || ? || ' hours'))
    ");
    
    foreach ($sales_data as $i => $sale) {
        $hours_ago = rand(1, 72); // مبيعات خلال الـ 72 ساعة الماضية
        $sale[] = $hours_ago;
        $stmt->execute($sale);
        
        // تحديث كمية المنتج
        $pdo->prepare("
            UPDATE products 
            SET quantity = quantity - ? 
            WHERE id = ?
        ")->execute([$sale[1], $sale[0]]);
    }
    
    // إضافة ديون
    $debts_data = [
        [1, 500.00, 200.00],  // أحمد محمد
        [2, 300.00, 300.00],   // فاطمة علي
        [3, 1000.00, 300.00],  // محمد عبدالله
        [4, 750.00, 500.00], // نورة سعد
        [5, 1200.00, 400.00]  // خالد عمر
    ];
    
    $stmt = $pdo->prepare("
        INSERT INTO debts (customer_id, amount, paid, date)
        VALUES (?, ?, ?, datetime('now', '-' || ? || ' days'))
    ");
    
    foreach ($debts_data as $debt) {
        $days_ago = rand(1, 30); // ديون خلال الشهر الماضي
        $debt[] = $days_ago;
        $stmt->execute($debt);
    }
    
    // إتمام المعاملة
    $pdo->commit();
    
    echo "تم إضافة بيانات الاختبار بنجاح!\n";
    echo "اسم المستخدم: admin\n";
    echo "كلمة المرور: admin123\n";
    
} catch (Exception $e) {
    $pdo->rollBack();
    echo "حدث خطأ: " . $e->getMessage() . "\n";
}
