Bridge Application
Bridge هو تطبيق تجارة إلكترونية (E-Commerce Platform) مطوّر باستخدام Spring Boot، يهدف إلى إنشاء بيئة متكاملة تربط بين البائعين والمشترين من خلال نظام آمن وقابل للتوسع.
يوفر النظام مجموعة متكاملة من الخصائص التي تغطي دورة الشراء بالكامل، بدءًا من تسجيل المستخدمين وإدارة المنتجات، وحتى الطلبات والمراجعات وسلة المشتريات.
أهم المميزات
? نظام المصادقة والصلاحيات
تسجيل الدخول والتسجيل باستخدام JWT Authentication.
نظام صلاحيات مبني على الأدوار (Buyer – Seller – Admin).
إعادة تعيين كلمة المرور عبر البريد الإلكتروني.
?️ إدارة المنتجات
إضافة، تعديل، حذف، واسترجاع المنتجات.
تصفية المنتجات حسب الفئة أو البائع أو العلامة التجارية.
دعم رفع صور المنتجات (Multipart File Upload).
⭐ إدارة التقييمات
إمكانية إضافة، تعديل، وحذف تقييمات المنتجات.
السماح بتقييم واحد فقط لكل مستخدم على المنتج.
عرض التقييمات بنظام Pagination.
?️ إدارة التصنيفات
إنشاء وتصنيف الفئات (Categories).
دعم العلاقة بين الفئة الرئيسية والفئات الفرعية (Parent-Child Relationship).
? سلة المشتريات
إضافة منتجات إلى السلة.
تعديل الكميات أو حذف العناصر.
عرض جميع عناصر السلة الخاصة بالمستخدم.
? إدارة الطلبات
إنشاء وإدارة الطلبات.
تتبع حالة الطلب (Pending – Shipped – Delivered).
❤️ قائمة المفضلة (Wishlist)
إضافة المنتجات للمفضلة.
حذف منتج أو مسح القائمة بالكامل.
عرض المنتجات المضافة بنظام Pagination.
? الإشعارات البريدية
إرسال رابط إعادة تعيين كلمة المرور عبر البريد الإلكتروني باستخدام SMTP.
التقنيات المستخدمة
Backend
Java
Spring Boot
Spring Security
Hibernate (JPA)
قاعدة البيانات
MySQL
أدوات إضافية
JWT للمصادقة
JavaMailSender لإرسال البريد
Maven لإدارة الاعتمادات
بنية المشروع
تم اتباع معمارية منظمة تعتمد على فصل المسؤوليات:
Controller Layer لمعالجة الطلبات
Service Layer لتطبيق منطق الأعمال
Repository Layer للتعامل مع قاعدة البيانات
Security Layer لإدارة الأمان والمصادقة
DTO & Mapper لفصل الكيانات عن نماذج الطلب والاستجابة
الهدف من المشروع
يهدف المشروع إلى تطبيق أفضل ممارسات تطوير تطبيقات الويب باستخدام Spring Boot، مع التركيز على:
تصميم RESTful APIs احترافية
تطبيق الأمان باستخدام JWT وRole-Based Access Control
تنظيم الكود وفق معمارية نظيفة وقابلة للتوسع
التعامل مع السيناريوهات الواقعية لأنظمة التجارة الإلكترونية