CareLink هي منصة طبية متكاملة صُممت لتسهيل ورقمنة إدارة العيادات الطبية. تربط المنصة بين المرضى، الأطباء، موظفي الاستقبال، والإدارة في بيئة واحدة سلسة، مع التركيز على دقة المواعيد، حماية البيانات الطبية، وتنظيم سير العمل داخل العيادة.
الأدوار والصلاحيات في النظام:
تم بناء نظام صلاحيات دقيق (Role-Based Access Control) لضمان أمان البيانات:
1-المريض (Patient): حجز المواعيد المتاحة، إدارة الملف الشخصي، تتبع سجل الحجوزات، والاطلاع على ملخص الاستشارة الطبية (روشتة، تشخيص، تحاليل).
2-الطبيب (Doctor): إدارة جدول العمل، متابعة طابور المرضى اليومي (Daily Queue)، الموافقة على الحجوزات، وكتابة السجل الطبي الإلكتروني (EMR) بأمان.
3-موظف الاستقبال (Receptionist): إدارة جداول الأطباء، تنظيم طابور الانتظار (Check-in)، جدولة المواعيد للمرضى، دون أي صلاحية للاطلاع على البيانات الطبية للمرضى (حماية للخصوصية).
4-مدير النظام (Admin): لوحة تحكم مخصصة (Custom Dashboard) لإدارة المستخدمين والصلاحيات واستخراج التقارير والتحليلات.
أبرز المميزات (Key Features):
نظام جدولة ذكي: توليد فترات الحجز تلقائياً (Slots) بناءً على مدة الجلسة (15 أو 30 دقيقة)، مع مراعاة أوقات الفراغ والإجازات (Exceptions) وإضافة وقت فاصل (Buffer time) بين المواعيد.
منع التعارض (Conflict Prevention): خوارزميات وقواعد بيانات تمنع الحجز المزدوج لنفس الطبيب أو تداخل مواعيد المريض الواحد.
دورة حياة متكاملة للحجز: تتبع حالة الحجز (مطلوب، مؤكد، تم الدخول، مكتمل، ملغى، أو لم يحضر) مع تطبيق سياسات الإلغاء.
سجل طبي إلكتروني مصغر (EMR Lite): ربط كل حجز مكتمل بتشخيص، ملاحظات طبية، أدوية (الجرعة والمدة)، وتحاليل مطلوبة.
إدارة طابور الانتظار: تتبع لحظي لوقت انتظار المريض منذ وصوله للعيادة (Check-in time) لتنظيم دخول المرضى للطبيب.
نظام تتبع التعديلات (Audit Trail): تسجيل كامل لأي عملية إعادة جدولة (Reschedule) يشمل (التاريخ القديم، الجديد، من قام بالتعديل، السبب، والوقت).
التقنيات والأدوات المستخدمة (Tech Stack):
1. (Backend - Django):
Django REST Framework (DRF): لبناء APIs متطورة ومنظمة تدير كافة عمليات النظام.
Advanced Security & Permissions: استخدام نظام (Django Auth & Groups) لتطبيق صلاحيات دقيقة لكل دور (طبيب، مريض، موظف استقبال).
Data Integrity: الاعتماد على الـ (Database Constraints) والـ (Transactions) لضمان سلامة بيانات الحجوزات ومنع أي تعارض تقني في المواعيد.
Scalable Code: الاعتماد على الـ (Class-Based Views) لضمان كود نظيف وقابل للتطوير مستقبلاً.
2. (Frontend - Angular):
Angular Framework: بناء واجهة مستخدم سريعة وديناميكية بنظام الـ (Single Page Application - SPA).
Component-Based Architecture: تقسيم النظام إلى مكونات مستقلة لكل جزء (لوحة الطبيب، شاشة الحجز، ملف المريض) لسهولة الصيانة والأداء العالي.
Reactive Forms: لضمان التحقق من صحة البيانات (Validation) لحظياً عند حجز المواعيد أو إدخال السجلات الطبية.
State Management: إدارة حالة التطبيق لضمان مزامنة البيانات وتحديث طابور الانتظار (Queue) بشكل سلس.
3. لوحة التحكم والإدارة (Custom Dashboard):
تم بناء لوحة تحكم مخصصة (Custom Admin Dashboard) بالكامل لتناسب احتياجات مديري المنصة، بعيداً عن لوحة الإدارة التقليدية، لتوفر تحليلات وإحصائيات دقيقة حول أداء العيادة.
4. جودة الكود والاختبار (Testing & Quality):
الالتزام بمعايير الـ Clean Code.
تغطية العمليات الأساسية بـ Unit Tests لضمان استقرار النظام تحت ضغط العمل.