-- فئات الفحوصات المخبرية (يتم الإدراج فقط إذا كانت الفئة غير موجودة)
INSERT INTO test_categories (name) SELECT 'تعداد الدم الكامل' WHERE NOT EXISTS (SELECT 1 FROM test_categories WHERE name='تعداد الدم الكامل');
INSERT INTO test_categories (name) SELECT 'كيمياء الدم' WHERE NOT EXISTS (SELECT 1 FROM test_categories WHERE name='كيمياء الدم');
INSERT INTO test_categories (name) SELECT 'وظائف الكبد' WHERE NOT EXISTS (SELECT 1 FROM test_categories WHERE name='وظائف الكبد');
INSERT INTO test_categories (name) SELECT 'وظائف الكلى' WHERE NOT EXISTS (SELECT 1 FROM test_categories WHERE name='وظائف الكلى');
INSERT INTO test_categories (name) SELECT 'سكر الدم والدهون' WHERE NOT EXISTS (SELECT 1 FROM test_categories WHERE name='سكر الدم والدهون');
INSERT INTO test_categories (name) SELECT 'هرمونات' WHERE NOT EXISTS (SELECT 1 FROM test_categories WHERE name='هرمونات');
INSERT INTO test_categories (name) SELECT 'تحليل البول' WHERE NOT EXISTS (SELECT 1 FROM test_categories WHERE name='تحليل البول');
INSERT INTO test_categories (name) SELECT 'تحليل البراز' WHERE NOT EXISTS (SELECT 1 FROM test_categories WHERE name='تحليل البراز');
INSERT INTO test_categories (name) SELECT 'فصيلة الدم والمجموعة' WHERE NOT EXISTS (SELECT 1 FROM test_categories WHERE name='فصيلة الدم والمجموعة');
INSERT INTO test_categories (name) SELECT 'تخثر الدم' WHERE NOT EXISTS (SELECT 1 FROM test_categories WHERE name='تخثر الدم');
INSERT INTO test_categories (name) SELECT 'المناعة والفيروسات' WHERE NOT EXISTS (SELECT 1 FROM test_categories WHERE name='المناعة والفيروسات');
INSERT INTO test_categories (name) SELECT 'زراعة وحساسية' WHERE NOT EXISTS (SELECT 1 FROM test_categories WHERE name='زراعة وحساسية');
INSERT INTO test_categories (name) SELECT 'غازات الدم' WHERE NOT EXISTS (SELECT 1 FROM test_categories WHERE name='غازات الدم');
INSERT INTO test_categories (name) SELECT 'معادن وفيتامينات' WHERE NOT EXISTS (SELECT 1 FROM test_categories WHERE name='معادن وفيتامينات');
INSERT INTO test_categories (name) SELECT 'تحاليل خاصة' WHERE NOT EXISTS (SELECT 1 FROM test_categories WHERE name='تحاليل خاصة');

-- فحوصات تعداد الدم الكامل (category_id من أول فئة مضافة)
INSERT INTO tests (test_code, name, category_id, default_price, unit, reference_range, method, tat_hours)
SELECT 'CBC-HB','هيموجلوبين',id,0,'g/dL','12-16','Automated',2 FROM test_categories WHERE name='تعداد الدم الكامل' LIMIT 1
ON DUPLICATE KEY UPDATE name=VALUES(name);
INSERT INTO tests (test_code, name, category_id, default_price, unit, reference_range, method, tat_hours)
SELECT 'CBC-RBC','عدد كريات الدم الحمراء',id,0,'million/µL','4-6','Automated',2 FROM test_categories WHERE name='تعداد الدم الكامل' LIMIT 1
ON DUPLICATE KEY UPDATE name=VALUES(name);
INSERT INTO tests (test_code, name, category_id, default_price, unit, reference_range, method, tat_hours)
SELECT 'CBC-WBC','عدد كريات الدم البيضاء',id,0,'/µL','4000-11000','Automated',2 FROM test_categories WHERE name='تعداد الدم الكامل' LIMIT 1
ON DUPLICATE KEY UPDATE name=VALUES(name);
INSERT INTO tests (test_code, name, category_id, default_price, unit, reference_range, method, tat_hours)
SELECT 'CBC-PLT','الصفائح الدموية',id,0,'/µL','150000-400000','Automated',2 FROM test_categories WHERE name='تعداد الدم الكامل' LIMIT 1
ON DUPLICATE KEY UPDATE name=VALUES(name);
INSERT INTO tests (test_code, name, category_id, default_price, unit, reference_range, method, tat_hours)
SELECT 'CBC-HCT','الهيماتوكريت',id,0,'%','36-48','Automated',2 FROM test_categories WHERE name='تعداد الدم الكامل' LIMIT 1
ON DUPLICATE KEY UPDATE name=VALUES(name);
INSERT INTO tests (test_code, name, category_id, default_price, unit, reference_range, method, tat_hours)
SELECT 'CBC-MCV','متوسط حجم كرية الدم',id,0,'fL','80-100','Automated',2 FROM test_categories WHERE name='تعداد الدم الكامل' LIMIT 1
ON DUPLICATE KEY UPDATE name=VALUES(name);
INSERT INTO tests (test_code, name, category_id, default_price, unit, reference_range, method, tat_hours)
SELECT 'CBC-MCH','متوسط هيموجلوبين الكرية',id,0,'pg','27-32','Automated',2 FROM test_categories WHERE name='تعداد الدم الكامل' LIMIT 1
ON DUPLICATE KEY UPDATE name=VALUES(name);
INSERT INTO tests (test_code, name, category_id, default_price, unit, reference_range, method, tat_hours)
SELECT 'CBC-MCHC','تركيز هيموجلوبين الكرية',id,0,'g/dL','32-36','Automated',2 FROM test_categories WHERE name='تعداد الدم الكامل' LIMIT 1
ON DUPLICATE KEY UPDATE name=VALUES(name);
INSERT INTO tests (test_code, name, category_id, default_price, unit, reference_range, method, tat_hours)
SELECT 'CBC-RDW','توزيع كريات الدم الحمراء',id,0,'%','11.5-14.5','Automated',2 FROM test_categories WHERE name='تعداد الدم الكامل' LIMIT 1
ON DUPLICATE KEY UPDATE name=VALUES(name);
INSERT INTO tests (test_code, name, category_id, default_price, unit, reference_range, method, tat_hours)
SELECT 'CBC-DIFF','المفصّل التفريقي للدم',id,0,NULL,NULL,'Manual/Automated',2 FROM test_categories WHERE name='تعداد الدم الكامل' LIMIT 1
ON DUPLICATE KEY UPDATE name=VALUES(name);
INSERT INTO tests (test_code, name, category_id, default_price, unit, reference_range, method, tat_hours)
SELECT 'CBC-ESR','معدل sediment الخلايا',id,0,'mm/hr','0-20','Westergren',2 FROM test_categories WHERE name='تعداد الدم الكامل' LIMIT 1
ON DUPLICATE KEY UPDATE name=VALUES(name);

-- كيمياء الدم
INSERT INTO tests (test_code, name, category_id, default_price, unit, reference_range, method, tat_hours) VALUES
('CHEM-GLU', 'سكر الدم الصائم', 2, 0, 'mg/dL', '70-100', 'Enzymatic', 2),
('CHEM-GLU-R', 'سكر الدم العشوائي', 2, 0, 'mg/dL', '70-140', 'Enzymatic', 2),
('CHEM-GTT', 'اختبار تحمّل الجلوكوز', 2, 0, 'mg/dL', NULL, 'Enzymatic', 4),
('CHEM-HBA1C', 'الهيموجلوبين السكري', 2, 0, '%', '4-6', 'HPLC/Immunoassay', 24),
('CHEM-UREA', 'اليوريا', 2, 0, 'mg/dL', '15-45', 'Enzymatic', 2),
('CHEM-CREAT', 'الكرياتينين', 2, 0, 'mg/dL', '0.7-1.3', 'Jaffe/Enzymatic', 2),
('CHEM-URIC', 'حمض اليوريك', 2, 0, 'mg/dL', '3-7', 'Enzymatic', 2),
('CHEM-BIL-T', 'البيليروبين الكلي', 2, 0, 'mg/dL', '0.2-1.2', 'Diazo', 2),
('CHEM-BIL-D', 'البيليروبين المباشر', 2, 0, 'mg/dL', '0-0.3', 'Diazo', 2),
('CHEM-AST', 'أنزيم AST', 2, 0, 'U/L', '10-40', 'Enzymatic', 2),
('CHEM-ALT', 'أنزيم ALT', 2, 0, 'U/L', '7-56', 'Enzymatic', 2),
('CHEM-ALP', 'الفوسفاتاز القلوي', 2, 0, 'U/L', '44-147', 'Enzymatic', 2),
('CHEM-ALB', 'الألبومين', 2, 0, 'g/dL', '3.5-5', 'BCG', 2),
('CHEM-TP', 'البروتين الكلي', 2, 0, 'g/dL', '6-8', 'Biuret', 2),
('CHEM-CHOL', 'الكوليسترول الكلي', 2, 0, 'mg/dL', '<200', 'Enzymatic', 2),
('CHEM-TG', 'الدهون الثلاثية', 2, 0, 'mg/dL', '<150', 'Enzymatic', 2),
('CHEM-HDL', 'الكوليسترول الحميد HDL', 2, 0, 'mg/dL', '>40', 'Enzymatic', 2),
('CHEM-LDL', 'الكوليسترول الضار LDL', 2, 0, 'mg/dL', '<100', 'Calculated', 2),
('CHEM-CK', 'كيناز الكرياتين', 2, 0, 'U/L', '25-200', 'Enzymatic', 2),
('CHEM-LDH', 'لاكتات ديهيدروجيناز', 2, 0, 'U/L', '140-280', 'Enzymatic', 2),
('CHEM-AMYL', 'الأميلاز', 2, 0, 'U/L', '28-100', 'Enzymatic', 2),
('CHEM-LIP', 'الليباز', 2, 0, 'U/L', '0-160', 'Enzymatic', 2)
ON DUPLICATE KEY UPDATE name=VALUES(name), category_id=VALUES(category_id);

-- وظائف الكبد
INSERT INTO tests (test_code, name, category_id, default_price, unit, reference_range, method, tat_hours) VALUES
('LFT-BIL-T', 'البيليروبين الكلي', 3, 0, 'mg/dL', '0.2-1.2', 'Diazo', 2),
('LFT-BIL-D', 'البيليروبين المباشر', 3, 0, 'mg/dL', '0-0.3', 'Diazo', 2),
('LFT-AST', 'أنزيم AST', 3, 0, 'U/L', '10-40', 'Enzymatic', 2),
('LFT-ALT', 'أنزيم ALT', 3, 0, 'U/L', '7-56', 'Enzymatic', 2),
('LFT-ALP', 'الفوسفاتاز القلوي', 3, 0, 'U/L', '44-147', 'Enzymatic', 2),
('LFT-ALB', 'الألبومين', 3, 0, 'g/dL', '3.5-5', 'BCG', 2),
('LFT-GGT', 'جاما غلوتاميل ترانسفيراز', 3, 0, 'U/L', '9-48', 'Enzymatic', 2)
ON DUPLICATE KEY UPDATE name=VALUES(name), category_id=VALUES(category_id);

-- وظائف الكلى
INSERT INTO tests (test_code, name, category_id, default_price, unit, reference_range, method, tat_hours) VALUES
('RFT-UREA', 'اليوريا', 4, 0, 'mg/dL', '15-45', 'Enzymatic', 2),
('RFT-CREAT', 'الكرياتينين', 4, 0, 'mg/dL', '0.7-1.3', 'Jaffe', 2),
('RFT-EGFR', 'معدل الترشيح الكبيبي', 4, 0, 'mL/min', '>90', 'Calculated', 2),
('RFT-ELECT', 'الشوارد (صوديوم، بوتاسيوم، كلوريد)', 4, 0, NULL, NULL, 'ISE', 2)
ON DUPLICATE KEY UPDATE name=VALUES(name), category_id=VALUES(category_id);

-- سكر الدم والدهون
INSERT INTO tests (test_code, name, category_id, default_price, unit, reference_range, method, tat_hours) VALUES
('GLU-F', 'سكر الدم الصائم', 5, 0, 'mg/dL', '70-100', 'Enzymatic', 2),
('GLU-R', 'سكر الدم العشوائي', 5, 0, 'mg/dL', '70-140', 'Enzymatic', 2),
('GLU-HBA1C', 'الهيموجلوبين السكري', 5, 0, '%', '4-6', 'HPLC', 24),
('LIP-CHOL', 'الكوليسترول الكلي', 5, 0, 'mg/dL', '<200', 'Enzymatic', 2),
('LIP-TG', 'الدهون الثلاثية', 5, 0, 'mg/dL', '<150', 'Enzymatic', 2),
('LIP-HDL', 'الكوليسترول الحميد', 5, 0, 'mg/dL', '>40', 'Enzymatic', 2),
('LIP-LDL', 'الكوليسترول الضار', 5, 0, 'mg/dL', '<100', 'Calculated', 2)
ON DUPLICATE KEY UPDATE name=VALUES(name), category_id=VALUES(category_id);

-- هرمونات
INSERT INTO tests (test_code, name, category_id, default_price, unit, reference_range, method, tat_hours) VALUES
('HORM-TSH', 'هرمون TSH', 6, 0, 'mIU/L', '0.4-4', 'ECLIA', 4),
('HORM-T3', 'ثلاثي يود الثيرونين', 6, 0, 'ng/dL', '80-200', 'ECLIA', 4),
('HORM-T4', 'ثيروكسين T4', 6, 0, 'µg/dL', '5-12', 'ECLIA', 4),
('HORM-FT3', 'T3 الحر', 6, 0, 'pg/mL', '2.3-4.2', 'ECLIA', 4),
('HORM-FT4', 'T4 الحر', 6, 0, 'ng/dL', '0.9-1.7', 'ECLIA', 4),
('HORM-CORT', 'الكورتيزول', 6, 0, 'µg/dL', '6-23', 'ECLIA', 4),
('HORM-PROL', 'البرولاكتين', 6, 0, 'ng/mL', '2-18', 'ECLIA', 4),
('HORM-FSH', 'الهرمون المنبه للحوصلة', 6, 0, 'mIU/mL', 'Varies', 'ECLIA', 4),
('HORM-LH', 'الهرمون اللوتيني', 6, 0, 'mIU/mL', 'Varies', 'ECLIA', 4),
('HORM-INS', 'الأنسولين', 6, 0, 'µIU/mL', '2-25', 'ECLIA', 4),
('HORM-VD', 'فيتامين د', 6, 0, 'ng/mL', '30-100', 'ECLIA', 4),
('HORM-B12', 'فيتامين ب12', 6, 0, 'pg/mL', '200-900', 'ECLIA', 4),
('HORM-FER', 'الفيريتين', 6, 0, 'ng/mL', '30-400', 'ECLIA', 4)
ON DUPLICATE KEY UPDATE name=VALUES(name), category_id=VALUES(category_id);

-- تحليل البول
INSERT INTO tests (test_code, name, category_id, default_price, unit, reference_range, method, tat_hours) VALUES
('UA-COMP', 'تحليل البول الكامل', 7, 0, NULL, NULL, 'Dipstick/Microscopy', 2),
('UA-COLOR', 'لون البول', 7, 0, NULL, 'أصفر فاتح', 'Visual', 2),
('UA-PH', 'حموضة البول', 7, 0, NULL, '4.5-8', 'Dipstick', 2),
('UA-SG', 'الثقل النوعي', 7, 0, NULL, '1.010-1.030', 'Refractometer', 2),
('UA-PROT', 'البروتين في البول', 7, 0, NULL, 'سالب', 'Dipstick', 2),
('UA-GLU', 'السكر في البول', 7, 0, NULL, 'سالب', 'Dipstick', 2),
('UA-BIL', 'البيليروبين في البول', 7, 0, NULL, 'سالب', 'Dipstick', 2),
('UA-WBC', 'كريات بيضاء في البول', 7, 0, '/HPF', '0-5', 'Microscopy', 2),
('UA-RBC', 'كريات حمراء في البول', 7, 0, '/HPF', '0-3', 'Microscopy', 2),
('UA-BAC', 'زراعة البول', 7, 0, NULL, 'بدون نمو', 'Culture', 48)
ON DUPLICATE KEY UPDATE name=VALUES(name), category_id=VALUES(category_id);

-- تحليل البراز
INSERT INTO tests (test_code, name, category_id, default_price, unit, reference_range, method, tat_hours) VALUES
('STOOL-OC', 'فحص البراز الكامل', 8, 0, NULL, NULL, 'Macroscopic/Microscopic', 2),
('STOOL-OB', 'الدم الخفي في البراز', 8, 0, NULL, 'سالب', 'Immunochemical', 2),
('STOOL-OVA', 'فحص الطفيليات والبيض', 8, 0, NULL, 'سالب', 'Microscopy', 2),
('STOOL-CUL', 'زراعة البراز', 8, 0, NULL, 'بدون ممرضات', 'Culture', 48)
ON DUPLICATE KEY UPDATE name=VALUES(name), category_id=VALUES(category_id);

-- فصيلة الدم والمجموعة
INSERT INTO tests (test_code, name, category_id, default_price, unit, reference_range, method, tat_hours) VALUES
('BLOOD-ABO', 'فصيلة الدم ABO', 9, 0, NULL, 'A/B/AB/O', 'Agglutination', 1),
('BLOOD-RH', 'عامل ريسس', 9, 0, NULL, 'موجب/سالب', 'Agglutination', 1),
('BLOOD-CROSS', 'التوافق للمتبرع', 9, 0, NULL, 'متوافق', 'Cross-match', 2)
ON DUPLICATE KEY UPDATE name=VALUES(name), category_id=VALUES(category_id);

-- تخثر الدم
INSERT INTO tests (test_code, name, category_id, default_price, unit, reference_range, method, tat_hours) VALUES
('COAG-PT', 'زمن البروثرومبين', 10, 0, 'sec', '11-14', 'Coagulometer', 2),
('COAG-INR', 'نسبة INR', 10, 0, NULL, '0.8-1.2', 'Calculated', 2),
('COAG-APTT', 'زمن الثرومبوبلاستين الجزئي', 10, 0, 'sec', '25-35', 'Coagulometer', 2),
('COAG-FIB', 'الفايبرينوجين', 10, 0, 'mg/dL', '200-400', 'Clauss', 2),
('COAG-DD', 'D-Dimer', 10, 0, 'µg/mL', '<0.5', 'Immunoassay', 4)
ON DUPLICATE KEY UPDATE name=VALUES(name), category_id=VALUES(category_id);

-- المناعة والفيروسات
INSERT INTO tests (test_code, name, category_id, default_price, unit, reference_range, method, tat_hours) VALUES
('VIR-HBSAG', 'سطح فيروس B', 11, 0, NULL, 'سالب', 'ELISA/CLIA', 4),
('VIR-HBAB', 'أضداد فيروس B', 11, 0, NULL, 'سالب/موجب', 'ELISA', 4),
('VIR-HCV', 'فيروس C', 11, 0, NULL, 'سالب', 'ELISA/CLIA', 4),
('VIR-HIV', 'فيروس نقص المناعة', 11, 0, NULL, 'سالب', 'ELISA/CLIA', 4),
('VIR-CMV', 'الفيروس المضخم للخلايا', 11, 0, NULL, 'سالب/موجب', 'ELISA', 4),
('VIR-RUB', 'الحصبة الألمانية', 11, 0, NULL, 'سالب/موجب', 'ELISA', 4),
('IMM-CRP', 'البروتين التفاعلي C', 11, 0, 'mg/L', '<10', 'Turbidimetry', 2),
('IMM-ASO', 'مضادات الستربتولايزين', 11, 0, 'IU/mL', '<200', 'Turbidimetry', 2),
('IMM-RF', 'العامل الروماتويدي', 11, 0, 'IU/mL', '<15', 'Turbidimetry', 2),
('IMM-ANA', 'الأجسام المضادة للنواة', 11, 0, NULL, 'سالب', 'IFA', 24)
ON DUPLICATE KEY UPDATE name=VALUES(name), category_id=VALUES(category_id);

-- زراعة وحساسية
INSERT INTO tests (test_code, name, category_id, default_price, unit, reference_range, method, tat_hours) VALUES
('CULT-BLOOD', 'زراعة الدم', 12, 0, NULL, 'بدون نمو', 'Automated/Manual', 72),
('CULT-URINE', 'زراعة البول', 12, 0, NULL, 'بدون نمو', 'Culture', 48),
('CULT-STOOL', 'زراعة البراز', 12, 0, NULL, 'بدون ممرضات', 'Culture', 48),
('CULT-SENS', 'اختبار الحساسية للمضادات', 12, 0, NULL, NULL, 'Kirby-Bauer', 48),
('CULT-SPUTUM', 'زراعة البلغم', 12, 0, NULL, 'فلورا طبيعية', 'Culture', 48),
('CULT-TB', 'زراعة السل', 12, 0, NULL, 'بدون نمو', 'MGIT', 42)
ON DUPLICATE KEY UPDATE name=VALUES(name), category_id=VALUES(category_id);

-- غازات الدم
INSERT INTO tests (test_code, name, category_id, default_price, unit, reference_range, method, tat_hours) VALUES
('ABG-PH', 'رقم الحموضة', 13, 0, NULL, '7.35-7.45', 'ISE', 1),
('ABG-PCO2', 'ضغط ثاني أكسيد الكربون', 13, 0, 'mmHg', '35-45', 'ISE', 1),
('ABG-PO2', 'ضغط الأكسجين', 13, 0, 'mmHg', '80-100', 'ISE', 1),
('ABG-HCO3', 'البيكربونات', 13, 0, 'mEq/L', '22-26', 'Calculated', 1),
('ABG-BE', 'الفقاعة القاعدية', 13, 0, 'mEq/L', '-2 to +2', 'Calculated', 1),
('ABG-SAT', 'تشبع الأكسجين', 13, 0, '%', '95-100', 'Calculated', 1)
ON DUPLICATE KEY UPDATE name=VALUES(name), category_id=VALUES(category_id);

-- معادن وفيتامينات
INSERT INTO tests (test_code, name, category_id, default_price, unit, reference_range, method, tat_hours) VALUES
('MIN-NA', 'الصوديوم', 14, 0, 'mEq/L', '136-145', 'ISE', 2),
('MIN-K', 'البوتاسيوم', 14, 0, 'mEq/L', '3.5-5', 'ISE', 2),
('MIN-CL', 'الكلوريد', 14, 0, 'mEq/L', '98-106', 'ISE', 2),
('MIN-CA', 'الكالسيوم', 14, 0, 'mg/dL', '8.5-10.5', 'Colorimetric', 2),
('MIN-MG', 'المغنيسيوم', 14, 0, 'mg/dL', '1.7-2.2', 'Colorimetric', 2),
('MIN-P', 'الفوسفات', 14, 0, 'mg/dL', '2.5-4.5', 'Colorimetric', 2),
('MIN-IRON', 'الحديد', 14, 0, 'µg/dL', '60-170', 'Colorimetric', 2),
('MIN-TIBC', 'سعة ربط الحديد', 14, 0, 'µg/dL', '250-370', 'Colorimetric', 2),
('MIN-ZN', 'الزنك', 14, 0, 'µg/dL', '60-120', 'AAS', 24)
ON DUPLICATE KEY UPDATE name=VALUES(name), category_id=VALUES(category_id);

-- تحاليل خاصة
INSERT INTO tests (test_code, name, category_id, default_price, unit, reference_range, method, tat_hours) VALUES
('SPEC-PSA', 'مستضد البروستاتا', 15, 0, 'ng/mL', '<4', 'ECLIA', 4),
('SPEC-AFP', 'ألفا فيتوبروتين', 15, 0, 'ng/mL', '<10', 'ECLIA', 4),
('SPEC-CEA', 'المستضد السرطاني الجنيني', 15, 0, 'ng/mL', '<5', 'ECLIA', 4),
('SPEC-BHCG', 'هرمون الحمل Beta HCG', 15, 0, 'mIU/mL', '<5', 'ECLIA', 4),
('SPEC-TROP', 'التروبونين', 15, 0, 'ng/mL', '<0.04', 'ECLIA', 2),
('SPEC-BNP', 'الببتيد الدماغي المدر للصوديوم', 15, 0, 'pg/mL', '<100', 'ECLIA', 4),
('SPEC-HBA1C', 'الهيموجلوبين السكري', 15, 0, '%', '4-6', 'HPLC', 24),
('SPEC-HOMOC', 'الهوموسيستين', 15, 0, 'µmol/L', '5-15', 'ECLIA', 24)
ON DUPLICATE KEY UPDATE name=VALUES(name), category_id=VALUES(category_id);
