كل المشاريع
واجهة خلفية

نظام حجز الجلسات — Angular + Spring Boot

تطبيق حجز متكامل: واجهة Angular 17 فوق واجهة REST بـ Spring Boot 3.3 (JPA، MySQL/H2) تدير المستخدمين، والجلسات القابلة للحجز بسعة محددة، والحجوزات مع تتبّع الحالة، وأعضاء لجنة التحكيم المعيَّنين للجلسات.

Angular 17
Frontend
Spring Boot 3.3
Backend
4
Core entities
MySQL / H2
Database
المنهجية

واجهة Angular فوق واجهة REST بـ Spring Boot مع حجوزات متتبَّعة الحالة وجلسات محدودة السعة

المكدس التقني
Angular 17TypeScriptJava 17Spring Boot 3.3Spring Data JPAMySQLH2
الكلمات المفتاحية
AngularSpring BootRESTJPAMySQLFull-StackTypeScript
التعمق

نظام حجز متكامل يجمع واجهة Angular 17 مع خلفية REST بـ Spring Boot 3.3.

الهيكل

frontend/  → واجهة Angular 17 (المستخدمون، الجلسات، الحجوزات، اللجنة)
backend/   → واجهة REST بـ Spring Boot 3.3 (JPA، MySQL في الإنتاج / H2 في الاختبار)

نموذج البيانات

الكيانالوصف
Userالاسم، البريد، الدور
Sessionجلسة قابلة للحجز (التاريخ، الأوقات، السعة)
Reservationتربط مستخدماً بجلسة، مع ReservationStatus
JuryMemberعضو لجنة مرتبط بجلسة

نقاط نهاية REST

GET /users         → قائمة المستخدمين
GET /Sessions      → قائمة الجلسات القابلة للحجز
GET /Reservations  → قائمة الحجوزات
GET /JuryMembers   → قائمة أعضاء اللجنة

تعمل الخلفية على :8087؛ وعميل Angular على :4200. يدير تتبّع الحالة دورة حياة الحجوزات، وتمنع سعة الجلسة تجاوز الحجز.