-- Seed Data for Blood Bank System
-- Run this after creating the schema to add sample data

USE `blood_bank`;

-- Insert sample users (password for all is: password123)
INSERT INTO `users` (`username`, `password`, `name`, `role`, `status`, `created_at`) VALUES
('admin', '$2y$12$LQv3c1yqBWVHxkd0LHAkCOYz6TtxMQJqhN8/LewY5GyYqJ5q5q5q.', 'مدير النظام', 'admin', 'active', NOW()),
('doctor1', '$2y$12$LQv3c1yqBWVHxkd0LHAkCOYz6TtxMQJqhN8/LewY5GyYqJ5q5q5q.', 'د. أحمد محمد', 'doctor', 'active', NOW()),
('lab1', '$2y$12$LQv3c1yqBWVHxkd0LHAkCOYz6TtxMQJqhN8/LewY5GyYqJ5q5q5q.', 'فني مختبر - سارة', 'lab', 'active', NOW()),
('emergency1', '$2y$12$LQv3c1yqBWVHxkd0LHAkCOYz6TtxMQJqhN8/LewY5GyYqJ5q5q5q.', 'موظف طوارئ - خالد', 'emergency_staff', 'active', NOW())
ON DUPLICATE KEY UPDATE `username` = `username`;

-- Insert sample donors
INSERT INTO `donors` (`name`, `phone`, `phone_secondary`, `email`, `age`, `gender`, `blood_type`, `status`, `emergency_consent`, `city`, `address`, `last_donation_date`, `created_at`) VALUES
('محمد أحمد العلي', '0501234567', '0551234567', 'mohammed.ali@example.com', 28, 'male', 'O+', 'active', 1, 'الرياض', 'حي النرجس، شارع الملك فهد', '2024-01-15', NOW()),
('فاطمة سعد الدوسري', '0502345678', NULL, 'fatima.dosari@example.com', 25, 'female', 'A+', 'active', 1, 'الرياض', 'حي العليا، شارع التحلية', '2024-02-20', NOW()),
('عبدالله خالد المطيري', '0503456789', '0553456789', 'abdullah.mutairi@example.com', 32, 'male', 'B+', 'active', 1, 'جدة', 'حي الزهراء، شارع التحلية', '2023-12-10', NOW()),
('نورة عبدالرحمن القحطاني', '0504567890', NULL, 'nora.qhtani@example.com', 27, 'female', 'AB+', 'active', 0, 'الدمام', 'حي الفيصلية، شارع الملك خالد', NULL, NOW()),
('سالم محمد الحربي', '0505678901', '0555678901', 'salem.harbi@example.com', 35, 'male', 'O-', 'active', 1, 'الرياض', 'حي المطار، شارع العليا', '2024-03-05', NOW()),
('ريم فهد الشمري', '0506789012', NULL, 'reem.shamri@example.com', 23, 'female', 'A-', 'active', 1, 'الرياض', 'حي النخيل، شارع العليا', '2024-01-30', NOW()),
('يوسف عبدالله العتيبي', '0507890123', '0557890123', 'yousef.otaibi@example.com', 29, 'male', 'B-', 'active', 1, 'جدة', 'حي الروابي، شارع التحلية', '2023-11-25', NOW()),
('لينا سامي الغامدي', '0508901234', NULL, 'lina.ghamdi@example.com', 26, 'female', 'AB-', 'active', 1, 'الدمام', 'حي الشاطئ، شارع الكورنيش', '2024-02-10', NOW()),
('خالد إبراهيم الدوسري', '0509012345', '0559012345', 'khalid.dosari@example.com', 31, 'male', 'O+', 'active', 1, 'الرياض', 'حي العليا، شارع التحلية', '2024-03-15', NOW()),
('هند محمد الزهراني', '0500123456', NULL, 'hind.zahrani@example.com', 24, 'female', 'A+', 'active', 1, 'جدة', 'حي الزهراء، شارع التحلية', '2024-02-28', NOW()),
('عمر فهد القحطاني', '0501234501', '0551234501', 'omar.qhtani@example.com', 33, 'male', 'B+', 'active', 1, 'الرياض', 'حي النرجس، شارع الملك فهد', '2023-12-20', NOW()),
('سارة أحمد المطيري', '0502345012', NULL, 'sara.mutairi@example.com', 22, 'female', 'O-', 'active', 1, 'الدمام', 'حي الفيصلية، شارع الملك خالد', NULL, NOW()),
('طارق سعد العتيبي', '0503450123', '0553450123', 'tariq.otaibi@example.com', 30, 'male', 'A-', 'active', 1, 'الرياض', 'حي المطار، شارع العليا', '2024-01-10', NOW()),
('مريم خالد الشمري', '0504501234', NULL, 'mariam.shamri@example.com', 28, 'female', 'B-', 'active', 0, 'جدة', 'حي الروابي، شارع التحلية', '2024-03-01', NOW()),
('نواف عبدالله الغامدي', '0505012345', '0555012345', 'nawaf.ghamdi@example.com', 36, 'male', 'AB+', 'active', 1, 'الرياض', 'حي النخيل، شارع العليا', '2023-11-15', NOW())
ON DUPLICATE KEY UPDATE `name` = `name`;

-- Insert sample donations
INSERT INTO `donations` (`donor_id`, `donation_date`, `blood_group`, `volume`, `created_at`, `created_by`) VALUES
(1, '2024-01-15', 'whole', 450.00, '2024-01-15 10:30:00', 3),
(2, '2024-02-20', 'whole', 450.00, '2024-02-20 11:00:00', 3),
(3, '2023-12-10', 'whole', 450.00, '2023-12-10 09:45:00', 3),
(5, '2024-03-05', 'whole', 450.00, '2024-03-05 14:20:00', 3),
(6, '2024-01-30', 'whole', 450.00, '2024-01-30 10:15:00', 3),
(7, '2023-11-25', 'whole', 450.00, '2023-11-25 13:30:00', 3),
(8, '2024-02-10', 'whole', 450.00, '2024-02-10 11:45:00', 3),
(9, '2024-03-15', 'whole', 450.00, '2024-03-15 15:00:00', 3),
(10, '2024-02-28', 'whole', 450.00, '2024-02-28 10:30:00', 3),
(11, '2023-12-20', 'whole', 450.00, '2023-12-20 12:00:00', 3),
(13, '2024-01-10', 'whole', 450.00, '2024-01-10 09:30:00', 3),
(14, '2024-03-01', 'whole', 450.00, '2024-03-01 14:00:00', 3),
(15, '2023-11-15', 'whole', 450.00, '2023-11-15 11:15:00', 3)
ON DUPLICATE KEY UPDATE `donor_id` = `donor_id`;

-- Insert sample blood units
INSERT INTO `blood_units` (`unit_number`, `donation_id`, `blood_type`, `blood_group`, `status`, `expiry_date`, `created_at`) VALUES
('BB20240115001', 1, 'O+', 'whole', 'available', DATE_ADD('2024-01-15', INTERVAL 42 DAY), '2024-01-15 10:35:00'),
('BB20240220001', 2, 'A+', 'whole', 'available', DATE_ADD('2024-02-20', INTERVAL 42 DAY), '2024-02-20 11:05:00'),
('BB20231210001', 3, 'B+', 'whole', 'used', DATE_ADD('2023-12-10', INTERVAL 42 DAY), '2023-12-10 09:50:00'),
('BB20240305001', 5, 'O-', 'whole', 'available', DATE_ADD('2024-03-05', INTERVAL 42 DAY), '2024-03-05 14:25:00'),
('BB20240130001', 6, 'A-', 'whole', 'available', DATE_ADD('2024-01-30', INTERVAL 42 DAY), '2024-01-30 10:20:00'),
('BB20231125001', 7, 'B-', 'whole', 'discarded', DATE_ADD('2023-11-25', INTERVAL 42 DAY), '2023-11-25 13:35:00'),
('BB20240210001', 8, 'AB-', 'whole', 'available', DATE_ADD('2024-02-10', INTERVAL 42 DAY), '2024-02-10 11:50:00'),
('BB20240315001', 9, 'O+', 'whole', 'reserved', DATE_ADD('2024-03-15', INTERVAL 42 DAY), '2024-03-15 15:05:00'),
('BB20240228001', 10, 'A+', 'whole', 'available', DATE_ADD('2024-02-28', INTERVAL 42 DAY), '2024-02-28 10:35:00'),
('BB20231220001', 11, 'B+', 'whole', 'available', DATE_ADD('2023-12-20', INTERVAL 42 DAY), '2023-12-20 12:05:00'),
('BB20240110001', 13, 'A-', 'whole', 'available', DATE_ADD('2024-01-10', INTERVAL 42 DAY), '2024-01-10 09:35:00'),
('BB20240301001', 14, 'B-', 'whole', 'available', DATE_ADD('2024-03-01', INTERVAL 42 DAY), '2024-03-01 14:05:00'),
('BB20231115001', 15, 'AB+', 'whole', 'used', DATE_ADD('2023-11-15', INTERVAL 42 DAY), '2023-11-15 11:20:00'),
('BB20240115002', 1, 'O+', 'whole', 'available', DATE_ADD('2024-01-15', INTERVAL 42 DAY), '2024-01-15 10:40:00'),
('BB20240220002', 2, 'A+', 'whole', 'available', DATE_ADD('2024-02-20', INTERVAL 42 DAY), '2024-02-20 11:10:00'),
('BB20240305002', 5, 'O-', 'whole', 'available', DATE_ADD('2024-03-05', INTERVAL 42 DAY), '2024-03-05 14:30:00'),
('BB20240130002', 6, 'A-', 'whole', 'available', DATE_ADD('2024-01-30', INTERVAL 42 DAY), '2024-01-30 10:25:00'),
('BB20240210002', 8, 'AB-', 'whole', 'available', DATE_ADD('2024-02-10', INTERVAL 42 DAY), '2024-02-10 11:55:00'),
('BB20240228002', 10, 'A+', 'whole', 'available', DATE_ADD('2024-02-28', INTERVAL 42 DAY), '2024-02-28 10:40:00'),
('BB20231220002', 11, 'B+', 'whole', 'available', DATE_ADD('2023-12-20', INTERVAL 42 DAY), '2023-12-20 12:10:00')
ON DUPLICATE KEY UPDATE `unit_number` = `unit_number`;

-- Update some blood units with used_at and discarded_at dates
UPDATE `blood_units` SET `used_at` = '2024-01-20 10:00:00' WHERE `unit_number` = 'BB20231210001';
UPDATE `blood_units` SET `discarded_at` = '2024-01-10 14:00:00', `discard_reason` = 'انتهت الصلاحية' WHERE `unit_number` = 'BB20231125001';
UPDATE `blood_units` SET `reserved_at` = '2024-03-20 09:00:00' WHERE `unit_number` = 'BB20240315001';
UPDATE `blood_units` SET `used_at` = '2024-01-05 11:00:00' WHERE `unit_number` = 'BB20231115001';

-- Insert sample emergency requests
INSERT INTO `emergency_requests` (`blood_type`, `quantity`, `blood_group`, `latitude`, `longitude`, `search_radius`, `status`, `notes`, `created_by`, `created_at`, `activated_at`) VALUES
('O+', 2, 'whole', 24.7136, 46.6753, 3.00, 'closed', 'حالة طوارئ - حادث مروري', 2, '2024-03-10 08:30:00', '2024-03-10 08:35:00'),
('A+', 1, 'whole', 24.7136, 46.6753, 5.00, 'active', 'عملية جراحية عاجلة', 2, '2024-03-20 14:00:00', '2024-03-20 14:05:00'),
('B+', 3, 'whole', 21.4858, 39.1925, 3.00, 'open', 'حالة نزيف حاد', 2, '2024-03-22 10:15:00', NULL),
('O-', 1, 'whole', 24.7136, 46.6753, 4.00, 'closed', 'حالة طوارئ - تم الحل', 2, '2024-03-15 16:20:00', '2024-03-15 16:25:00'),
('AB+', 2, 'whole', 21.4858, 39.1925, 3.00, 'active', 'عملية قلب مفتوح', 2, '2024-03-21 09:00:00', '2024-03-21 09:05:00')
ON DUPLICATE KEY UPDATE `id` = `id`;

-- Update closed emergency requests
UPDATE `emergency_requests` SET `closed_at` = '2024-03-10 10:00:00' WHERE `id` = 1;
UPDATE `emergency_requests` SET `closed_at` = '2024-03-15 18:00:00' WHERE `id` = 4;

-- Insert sample emergency responses
INSERT INTO `emergency_responses` (`request_id`, `donor_id`, `status`, `response_time`, `accepted_at`, `rejected_at`) VALUES
(1, 1, 'accepted', '2024-03-10 08:40:00', '2024-03-10 08:40:00', NULL),
(1, 5, 'accepted', '2024-03-10 08:45:00', '2024-03-10 08:45:00', NULL),
(2, 2, 'accepted', '2024-03-20 14:10:00', '2024-03-20 14:10:00', NULL),
(3, 3, 'pending', '2024-03-22 10:30:00', NULL, NULL),
(4, 5, 'accepted', '2024-03-15 16:30:00', '2024-03-15 16:30:00', NULL),
(5, 8, 'accepted', '2024-03-21 09:15:00', '2024-03-21 09:15:00', NULL),
(5, 15, 'accepted', '2024-03-21 09:20:00', '2024-03-21 09:20:00', NULL),
(2, 6, 'rejected', '2024-03-20 14:15:00', NULL, '2024-03-20 14:15:00'),
(5, 10, 'pending', '2024-03-21 09:25:00', NULL, NULL)
ON DUPLICATE KEY UPDATE `request_id` = `request_id`;

