تطوير متجر إلكتروني متكامل (Tasneem Shop) باستخدام ASP.NET Core MVC وبنية N-Tier

تفاصيل العمل

نظرة عامة على المشروع

يعد متجر تسنيم منصة تجارة إلكترونية قوية ومتكاملة الميزات، تم بناؤها باستخدام تقنية ASP.NET Core MVC. تم تصميم المشروع باتباع بنية الطبقات المتعددة (N-Tier Architecture) ونمط المستودع العام (Generic Repository Pattern) لضمان الفصل التام بين المهام، وسهولة الصيانة، وقابلية التوسع. يوفر المتجر تجربة تسوق سلسة للمستخدمين ولوحة تحكم إدارية قوية للمسؤولين.

البنية الهيكلية وأنماط التصميم

تم تقسيم الحل إلى طبقات متخصصة لضمان أقصى درجات التنظيم والكفاءة:

طبقة الكيانات (Tasneem_Shop.Entities - Core Layer):

Domain Models: تشمل الكائنات الأساسية مثل (المنتجات، الفئات، المستخدمين، الطلبات، تفاصيل الطلب، وصور المنتجات).

Interfaces: تحديد العقود الخاصة بعمليات البيانات (مثل IUnitOfWork و IGenericRepository).

ViewModels: نماذج مخصصة لنقل البيانات وعرضها (مثل نماذج السلة، الطلبات، والمستخدمين).

طبقة الوصول إلى البيانات (Tasneem_Shop.DataAccess - Data Layer):

ApplicationDbContext: الجسر الرابط بين التطبيق وقاعدة البيانات.

DbInitializer: تهيئة قاعدة البيانات بالبيانات الأولية عند التشغيل.

Implementation: التطبيق الفعلي للمستودعات (Repositories) ووحدة العمل (Unit of Work).

Migrations: إدارة تزامن قاعدة بيانات SQL Server مع نماذج البيانات برمجياً.

طبقة العرض (Tasneem_Shop.Web - Presentation Layer):

Areas Strategy: تنظيم المشروع إلى مناطق مخصصة (المسؤول، العميل، الهوية).

MVC Logic: معالجة تفاعلات المستخدم مع فصل تام بين المنطق البرمجي والمتحكمات.

Responsive UI: واجهة مستخدم متجاوبة تماماً مع كافة الشاشات والهواتف المحمولة.

الميزات الرئيسية

1. تجربة العميل (Customer Experience)

تسوق الزوار: إمكانية تصفح المنتجات وإدارة سلة التسوق (بناءً على ملفات تعريف الارتباط Cookies) دون الحاجة لتسجيل دخول مسبق.

دفع آمن: تكامل كامل مع بوابة Stripe API لمعالجة المدفوعات بشكل آمن وفوري.

تتبع الطلبات: يمكن للعملاء متابعة حالة طلباتهم مباشرة من مرحلة "قيد الانتظار" إلى "تم الشحن".

2. لوحة تحكم المسؤول (Administrative Dashboard)

إدارة المنتجات والفئات: تحكم كامل (CRUD) مع ميزة إضافة "العروض الساخنة" (Hot Deals) على أي منتج.

صلاحيات المستخدمين: إدارة متقدمة للحسابات تشمل إمكانية (قفل/إلغاء قفل) الحسابات لدواعي أمنية.

إدارة العمليات والطلبات: نظام مخصص لمعالجة الطلبات، إدارة اللوجستيات والشحن، بالإضافة إلى نظام استرداد الأموال التلقائي عبر Stripe في حال إلغاء الطلبات.

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

Backend: .NET 10.0, ASP.NET Core MVC.

Database: SQL Server باستخدام Entity Framework Core (نهج Code First).

Security: نظام ASP.NET Core Identity لتأمين المصادقة والصلاحيات.

Payments: بوابة الدفع Stripe.

Frontend: Bootstrap, JavaScript, Custom CSS.

بطاقة العمل

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