حسابي

بحث

القائمة

تفاصيل العمل

هذا النظام يمثل منصة لحجز المواعيد الطبية بين المرضى والأطباء، وهو مشابه لمنصة Vezeeta. النظام يسمح للمستخدمين بالتسجيل كأطباء أو مرضى، مع إمكانية إدارة الحجوزات والمواعيد، واستخدام القسائم (الكوبونات) للحصول على خصومات.

تحليل الكيانات (Entities) والعلاقات بينها

1- AppUser (المستخدمون الأساسيون):

-يمثل جميع المستخدمين في النظام (سواء أطباء أو مرضى).

-يحتوي على معلومات مثل الاسم، البريد الإلكتروني، الجنس، تاريخ الميلاد، وكلمة المرور.

-يتضمن حقل IsDoctor لمعرفة ما إذا كان المستخدم طبيبًا أم مريضًا.

2- Doctors: AppUser (الأطباء):

يتم اشتقاق الأطباء من جدول المستخدمين الأساسي AppUser.

يحتوي على ImageUrl لصورة الطبيب، وSpecializationId الذي يربطه بتخصصه.

3- Specializations (التخصصات الطبية):

يحتوي على قائمة بجميع التخصصات الطبية المتاحة.

كل طبيب مرتبط بتخصص معين من خلال SpecializationId.

4- Patients: AppUser (المرضى):

المرضى أيضًا جزء من AppUser، حيث يتم تحديدهم بناءً على أن IsDoctor = false.

5- DoctorPlacement (أماكن عمل الأطباء):

يحدد الأماكن التي يعمل فيها الطبيب، حيث يرتبط كل طبيب بعدة مواقع Placements.

6-Placements (المراكز الطبية/العيادات):

يحتوي على بيانات العيادات أو المستشفيات التي يعمل فيها الأطباء، مثل الاسم، الشارع، المدينة، الدولة.

7- DoctorVisitTypes (أنواع الزيارات الطبية):

يحدد أنواع الزيارات المتاحة لكل طبيب والتكلفة المرتبطة بها.

يرتبط بالأطباء وجدول VisitTypes الذي يحتوي على تصنيفات الزيارات مثل "استشارة، متابعة، فحص عام،...".

8- Coupons (الكوبونات والخصومات):

يحتوي على أكواد الخصم المتاحة، ونسبة الخصم، والطبيب الذي يمكن استخدام الكوبون عنده.

9- Bookings (الحجوزات الطبية):

يمثل مواعيد الحجز التي يقوم بها المرضى.

يحتوي على معلومات مثل المريض، الطبيب، نوع الزيارة، السعر النهائي، حالة المريض، وصورة الطبيب والمريض.

يمكن أن يكون هناك كوبون مرتبط بالحجز لتخفيض السعر.

يتم تعيين وقت محدد للحجز من خلال TimeSlotId.

10- TimeSlots (المواعيد الزمنية المتاحة):

يحدد الأوقات المتاحة للحجز، مثل "10:00 صباحًا، 11:00 صباحًا...".

يرتبط بالجدول Appointments الذي يحدد اليوم الذي يكون فيه هذا الموعد متاحًا.

11- Appointments (جدولة المواعيد):

يحدد الأيام التي يكون فيها الطبيب متاحًا لاستقبال المرضى.

يرتبط بالجدول DoctorPlacement لتحديد العيادة أو المستشفى التي يكون الطبيب متواجدًا فيها في هذا اليوم.

=======================================================================================

**تحليل مسار البيانات في النظام:

\تسجيل المستخدمين\

يقوم المستخدم (سواء طبيب أو مريض) بالتسجيل عبر جدول AppUser.

إذا كان المستخدم طبيبًا، يتم ربطه بتخصصه من خلال SpecializationId.

إدارة أماكن العمل

يتم تسجيل الأماكن التي يعمل فيها الطبيب عبر DoctorPlacement، والتي ترتبط بجدول Placements.

إدارة أنواع الزيارات الطبية

يتم تحديد أنواع الزيارات الطبية التي يقدمها كل طبيب عبر DoctorVisitTypes، والتي تحدد التكلفة لكل نوع.

\إدارة الحجوزات\

يقوم المريض بحجز موعد من خلال Bookings، حيث يحدد الطبيب، نوع الزيارة، الوقت، والتاريخ.

يمكن أن يستخدم كوبون للحصول على خصم على السعر النهائي.

إدارة المواعيد الزمنية

الأطباء يحددون الأيام المتاحة لهم من خلال Appointments.

يتم تحديد الأوقات المتاحة للحجز من خلال TimeSlots، والتي ترتبط بالمواعيد المحجوزة.

\الوظائف الأساسية للنظام\

تسجيل المستخدمين: الأطباء والمرضى يمكنهم إنشاء حساباتهم.

إدارة الأطباء والتخصصات: الطبيب يحدد تخصصه والمريض يمكنه البحث عن أطباء حسب التخصص.

إدارة المواعيد: الأطباء يمكنهم تحديد مواعيد متاحة، والمرضى يمكنهم حجزها.

إدارة أماكن العمل: الطبيب يمكنه تحديد الأماكن التي يعمل فيها (عيادات، مستشفيات).

استخدام القسائم (الكوبونات): يمكن للمرضى استخدام كوبونات الخصم عند الحجز.

إدارة المدفوعات: الحساب النهائي يتم تحديده بناءً على الحجز والكوبونات المستخدمة.

بطاقة العمل

اسم المستقل Aya A.
عدد الإعجابات 0
عدد المشاهدات 1
تاريخ الإضافة

المهارات المستخدمة