منصة التدريب والاستشارات التعليمية (EduConsultancy Platform)

تفاصيل العمل

# ? منصة التدريب والاستشارات التعليمية (EduConsultancy Platform)

## ? نظرة عامة (Overview)

هذا المشروع عبارة عن **منصة ويب متكاملة (SaaS-Level)** لشركة استشارات تعليمية، تم بناؤها باستخدام **ASP.NET Core 9.0**. تهدف المنصة إلى تقديم خدمات شراء الكتب، حجز استشارات مع خبراء، وتوليد مسارات تعليمية كاملة باستخدام **الذكاء الاصطناعي الحقيقي (OpenAI)**.

يتميز المشروع بتصميم **Glassmorphism** فاخر، لوحة تحكم إدارية متكاملة، ونظام حماية وأداء عالي الجودة.

---

## ? التقنيات المستخدمة (Tech Stack)

### Core & Backend

- **Framework:** ASP.NET Core 9.0 MVC

- **Data Access:** Entity Framework Core (Code-First)

- **Database:** SQL Server

- **Authentication:** ASP.NET Core Identity (Admin/User Roles)

- **Logging:** Serilog (File & Console)

- **AI Service:** OpenAI API (GPT-3.5 Turbo) with JSON Mode

### Frontend & UI

- **Styling:** Bootstrap 5 + Custom CSS (Glassmorphism Variables)

- **Font:** Inter (Google Fonts)

- **Charts:** Chart.js (Admin Dashboard)

- **Icons:** Bootstrap Icons (BI)

### Infrastructure & Security

- **Caching:** IMemoryCache (Admin Stats)

- **File Handling:** Custom `FileHelper` with Validation (Size/Type)

- **Error Handling:** Global Exception Middleware (Custom 404/500 Pages)

---

## ✅ ما تم إنجازه بالكامل (Completed Features)

### 1️⃣ الهيكل الأساسي والبنية التحتية (Core & Infra)

- [x] **بنية نظيفة (Clean Architecture):** تقسيم المشروع إلى (Domain, Application, Infrastructure, Web).

- [x] **نظام المستخدمين:** تسجيل الدخول، التسجيل، إدارة الأدوار (Admin/User).

- [x] **Logging:** تفعيل Serilog لتسجيل الأخطاء والعمليات.

- [x] **الأمان:** حماية ضد CSRF، تحديد الصلاحيات (Authorize Attributes)، ومعالجة الأخطاء الشاملة.

### 2️⃣ واجهة المستخدم العامة (Public UI)

- [x] **تصميم فاخر:** صفحات (Home, About, Services, Contact) بتصميم زجاجي حديث.

- [x] **متجر الكتب:** عرض الكتب، صفحة تفاصيل، وآلية الشراء (Mock logic connected to Stripe controller).

- [x] **صفحة المستشارين:** عرض الخبراء، التصفية، وحجز المواعيد.

### 3️⃣ الذكاء الاصطناعي (Real AI Integration)

- [x] **توليد الدورات:** الاتصال الفعلي بـ OpenAI API.

- [x] **هيكلة البيانات:** استخدام JSON Prompting لضمان توليد هيكل دورة (Modules/Lessons) دقيق وقابل للعرض.

- [x] **العرض:** تحويل رد الذكاء الاصطناعي إلى كائنات (Course Entities) وعرضها للمستخدم.

### 4️⃣ لوحة تحكم المسؤول (Admin Panel) - ? Major Update

- [x] **لوحة مؤشرات (Dashboard):** عرض إحصائيات حية (المستخدمين، المبيعات، الحجوزات) مع نظام **Caching** لتحسين الأداء.

- [x] **إدارة المحتوى (CRUD):**

- **الدورات:** إضافة/تعديل/حذف مع رفع صور (Validation Real).

- **الكتب:** إدارة كاملة مع رفع أغلفة الكتب والتحقق من الامتداد/الحجم.

- **المستشارين:** إدارة الملفات الشخصية ورفع الصور الشخصية.

- [x] **سجل العمليات (Transactions):** صفحة جديدة تعرض سجل المبيعات (الكتب) والحجوزات (الاستشارات) في مكان واحد.

- [x] **توجيه الروابط:** إصلاح جميع روابط القائمة الجانبية (Sidebar).

### 5️⃣ المدفوعات (Payments)

- [x] **خدمة الدفع:** هيكلة `StripePaymentService`.

- [x] **Webhooks:** إنشاء `WebhookController` لاستقبال إشعارات الدفع من Stripe.

- [x] **سجل الطلبات:** حفظ طلبات الكتب (`BookOrder`) تلقائياً بعد نجاح الدفع.

---

## ? ما هو موجود ولكن يحتاج تحسين (Partial / Needs Polish)

1. **بوابة الدفع (Stripe Key):** الكود جاهز ولكن مفتاح الـ API هو `placeholder`. يحتاج مفتاح حقيقي ليعمل الدفع الفعلي.

2. **ملفات الكتب (PDFs):** يتم رفع "غلاف الكتاب" بنجاح، لكن ملف الكتاب نفسه (PDF) حالياً يستخدم ملف افتراضي `placeholder.pdf`.

3. **التوطين (Localization):** الواجهة "هجينة" (عربي/إنجليزي). النصوص الأساسية مترجمة، لكن رسائل النظام (Identity) بالإنجليزية.

---

## ❌ النواقص النهائية (Missing / Final To-Do List)

هذه هي القائمة النهائية لما ينقص المشروع ليكون منتجاً كاملاً 100% (Production Ready):

### 1. نظام الاختبارات (Quizzes System)

- [ ] إضافة مؤقت (Timer) للاختبار.

- [ ] نظام منع الغش (Anti-Cheat) بسيط (منع تبديل التبويب).

- [ ] صفحة عرض النتائج وتحليل الأداء.

### 2. الشهادات (Certificates)

- [ ] توليد ملف PDF للشهادة عند إتمام الدورة/المسابقة.

- [ ] إضافة QR Code للشهادة للتحقق من صحتها.

### 3. الاشتراكات (Advanced Payments)

- [ ] تفعيل الاشتراكات الشهرية (Recurring Billing) للمستشارين أو المحتوى الحصري.

### 4. الاختبارات البرمجية (Testing)

- [ ] كتابة Unit Tests للخدمات الأساسية.

- [ ] كتابة Integration Tests لدورة حياة الطلب.

---

## ? كيفية الدخول (Admin Credentials)

- **البريد:** `admin@edu.com`

- **كلمة المرور:** `Pa$$w0rd`

بطاقة العمل

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