وصف العمل
يهدف المشروع إلى تطوير نظام إلكتروني متكامل لإدارة وحجز المواعيد الطبية باستخدام Spring Boot، بحيث يتيح للمرضى استعراض الأقسام والأطباء وحجز المواعيد، بينما يوفر للأطباء والإدارة نظامًا منظمًا لإدارة البيانات والحجوزات.
1. قاعدة البيانات
سيتم تصميم قاعدة البيانات لتشمل الجداول الأساسية التالية:
Users: تخزين بيانات المستخدمين، سواء كانوا مرضى أو أطباء أو مسؤولي النظام.
Roles: تحديد صلاحيات المستخدمين مثل المريض والطبيب والمدير.
Departments: تخزين الأقسام والتخصصات الطبية مثل الأسنان والجلدية والباطنة.
Doctors: تخزين بيانات الأطباء وربط كل طبيب بحسابه والقسم الطبي الخاص به.
Appointments: تخزين جميع المواعيد، وربط الموعد بالمريض والطبيب مع تحديد تاريخ ووقت الموعد وحالته.
وسيتم استخدام العلاقات المناسبة بين الجداول من خلال JPA/Hibernate مثل @ManyToOne و@OneToMany.
2. وظائف المريض
يستطيع المريض:
إنشاء حساب وتسجيل الدخول إلى النظام.
استعراض الأقسام والتخصصات الطبية.
عرض قائمة الأطباء وبيانات كل طبيب.
اختيار الطبيب والموعد المناسب.
إرسال طلب حجز موعد.
استعراض جميع مواعيده السابقة والحالية.
متابعة حالة الموعد، سواء كان Pending أو Confirmed أو Cancelled.
3. وظائف الإدارة
يوفر النظام لوحة تحكم خاصة بالـ Admin تمكنه من:
إضافة الأقسام الطبية وتعديلها وحذفها.
إضافة الأطباء وتعديل بياناتهم وحذفهم.
ربط الأطباء بالأقسام والتخصصات المناسبة.
استعراض جميع الحجوزات.
تأكيد أو إلغاء المواعيد.
متابعة إحصائيات النظام، مثل عدد الحجوزات اليومية وعدد الأطباء والمستخدمين والأقسام.
4. التقنيات المستخدمة
سيتم تنفيذ المشروع باستخدام:
Spring Boot
Spring Web
Spring Data JPA / Hibernate
MySQL
Spring Security
Thymeleaf
Lombok
HTML / CSS / Bootstrap لتصميم واجهات المستخدم.
5. مراحل تنفيذ المشروع
سيتم تنفيذ المشروع بشكل تدريجي، بدايةً من إنشاء المشروع وتجهيز إعدادات قاعدة البيانات، ثم بناء الـ Entities وRepositories والعلاقات بينها.
بعد ذلك سيتم تطوير طبقة الخدمات والـ Controllers، ثم إنشاء واجهات المستخدم الخاصة بعرض الأقسام والأطباء وحجز المواعيد.
وفي المرحلة التالية سيتم تنفيذ نظام تسجيل الدخول والصلاحيات بحيث يحصل كل Role على الصلاحيات والواجهات المناسبة له، ثم إنشاء لوحة تحكم الإدارة وإضافة إدارة الحجوزات والإحصائيات.
وفي النهاية سيتم اختبار النظام بالكامل والتأكد من صحة عمليات التسجيل والحجز والتعديل والإلغاء وإدارة المستخدمين والأطباء والأقسام.
الهدف النهائي
الهدف هو بناء نظام طبي سهل الاستخدام وقابل للتطوير، يعمل على تنظيم عملية حجز المواعيد الطبية إلكترونيًا، وتقليل الإجراءات اليدوية، وتوفير لوحة تحكم مركزية تساعد الإدارة على إدارة الأطباء والأقسام والحجوزات بكفاءة.