كل المشاريع
واجهة خلفية
نظام حجز الجلسات — 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. يدير تتبّع الحالة دورة حياة الحجوزات، وتمنع سعة الجلسة تجاوز الحجز.