قمت ببناء واجهة برمجة تطبيقات (API) قوية ومتكاملة لنظام تجارة إلكترونية. تم تصميم هذه الـ API لتكون العمود الفقري لأي تطبيق تجارة إلكترونية، سواء كان ويب أو موبايل.
الميزات الرئيسية للـ API:
نظام مصادقة متكامل: يتضمن تسجيل الدخول، التسجيل، تسجيل الخروج، استعادة كلمة المرور، وإعادة تعيين كلمة المرور باستخدام Laravel Passport.
إدارة المنتجات:
- إضافة، تعديل، وحذف المنتجات.
- عرض جميع المنتجات أو منتج معين حسب الـ ID.
- جلب المنتجات حسب الفئة
- البحث عن المنتجات.
إدارة الفئات:
- إضافة، تعديل، وحذف الفئات.
- عرض جميع الفئات أو فئة معينة حسب الـ ID.
- جلب المنتجات المرتبطة بفئة معينة.
سلة التسوق (Cart Management):
- إضافة المنتجات إلى السلة.
- تحديث عدد المنتجات في السلة.
- حذف المنتجات من السلة.
- التحقق من توفر المخزون قبل الإضافة.
- عرض عناصر السلة للمستخدم.
قائمة الأمنيات (Wishlist Management):
- إضافة المنتجات إلى قائمة الأمنيات.
- عرض عناصر قائمة الأمنيات.
- حذف المنتجات من قائمة الأمنيات.
إدارة الطلبات (Order Management):
- إنشاء طلبات جديدة.
- عرض طلبات المستخدمين.
- تحديث حالة الطلب.
- حذف الطلبات.
تقييمات المنتجات (Product Rates):
- إضافة، تعديل، وحذف التقييمات للمنتجات.
- جلب جميع التقييمات لمنتج معين.
إدارة المستخدمين والأدوار:
- عرض جميع المستخدمين والأدوار.
- إضافة، تعديل، وحذف المستخدمين.
- الحصول على معلومات المستخدم الحالي أو مستخدم معين بواسطة الـ ID.
- فحص صلاحيات المستخدم (مثلاً، مدير المنتجات، صلاحيات المشرف).
إدارة أقسام الموقع (Sections & Section Items):
- إنشاء، تعديل، وحذف الأقسام وعناصرها.
- عرض الأقسام وعناصرها.
نظام التواصل (Contact):
- إرسال رسائل التواصل.
- عرض رسائل التواصل.
- وضع علامة "مقروءة" على الرسائل.
- حذف رسائل التواصل.
المدفوعات (Stripe Integration):
- إنشاء نية دفع (Payment Intent) باستخدام Stripe.
- معالجة ردود الـ webhook لمدفوعات Stripe الناجحة.
لوحة تحكم إحصائية (Dashboard Stats): (تتطلب صلاحيات المشرف)
- الحصول على إحصائيات أساسية (عدد الطلبات الكلي، إجمالي الإيرادات، المنتجات الأكثر مبيعًا، المنتجات منخفضة المخزون).
تم اختبار كل الـ Endpoints باستخدام Postman Collection مرفقة.
الكود مكتوب بنظافة ومرتب ومقسم على Controller + Routes + Middleware.
قاعدة البيانات مصممة بشكل سليم وبتراعي العلاقات بين الجداول.
التقنيات المستخدمة:
- اللغة: PHP 8.1+
- الإطار: Laravel 10
- المصادقة: Laravel Passport
- قاعدة البيانات: MySQL
هذا المشروع جاهز للتكامل مع أي واجهة أمامية (Frontend) لتطبيقات الويب أو الموبايل."