⚡
التحديات
- الحاجة إلى نظام بيع الملفات مع تحميل آمن وحماية ملفات zip
- إدارة الفصول الدراسية عبر الإنترنت والملفات القابلة للتنزيل في وقت واحد في سلة تسوق موحدة
- الحساب التلقائي لحصة الأساتذة من بيع الملفات وتسجيل الفصول
- الحاجة إلى نظام محاسبة وطلبات تسوية بحد أدنى للمبلغ
- إدارة سعة الفصول ومنع التسجيل المفرط
- نظام دعم التذاكر مع إمكانية الرد والمتابعة
- تكامل بوابة الدفع زرينبال
- إدارة مستويات الوصول (مستخدم، أستاذ، مدير) والوصول الخاص للمقالات
💡
الحلول
- تصميم نماذج Product و Classes و Article لإدارة المحتوى
- تنفيذ نظام سلة تسوق موحد مع نماذج Cart و Class_student
- الحساب التلقائي لحصة الأساتذة بنسبة قابلة للتكوين (professor_class_percent, professor_product_percent)
- استخدام بوابة الدفع زرينبال للمعاملات الآمنة
- تصميم نظام محاسبة مع نموذج Accounting وإمكانية طلب التسوية
- تنفيذ نظام الدعم مع نموذج Support_table وقدرة الرد
- استخدام sorl-thumbnail لتحسين الصور
- استخدام jdatetime و persiantools لتحويل التاريخ الجلالي
- نظام مصادقة SMS عبر واجهة غدير
- استخدام pymysql للاتصال بـ MySQL
📚
الإنجازات
- منصة تعليمية كاملة مع بيع الملفات واستضافة الفصول
- نظام دفع آمن مع بوابة زرينبال
- نظام محاسبة تلقائي للأساتذة
- نظام دعم تذاكر احترافي
- إدارة مستويات الوصول والمقالات الخاصة
- دعم كامل للتقويم الجلالي
- تصميم متجاوب وسهل الاستخدام
- تكامل مع بوت تيليجرام
🔧
النقاط الفنية البارزة
- Django 4.2.6 و Python 3
- قاعدة بيانات MySQL مع pymysql
- بوابة الدفع زرينبال
- مصادقة عبر الرسائل النصية باستخدام واجهة غدير (Ghasedak)
- تحويل التاريخ الجلالي باستخدام persiantools و jdatetime
- تحسين الصور باستخدام sorl-thumbnail و python-resize-image
- نظام AJAX واسع مع JSON
- تصميم متعدد التطبيقات (shop_account, shop_profile, zarinpal)
- إدارة مستويات الوصول (مستخدم، أستاذ، مدير)
- بوت تيليجرام مع django-telegrambot و Pyrogram
- إنشاء ملفات Excel باستخدام xlwt
- نظام محاسبة وتسوية مع حساب تلقائي لحصة الأساتذة
- نظام خصم مع رموز خصم الفصول والملفات
🏗️
الهندسة المعمارية
تم بناء فايل شوب على معمارية MVT (Model-View-Template) في دجانغو ويتكون من ثلاثة تطبيقات رئيسية:
1. shop_account: مسؤول عن إدارة المستخدمين والمصادقة والتسجيل
- نموذج User مخصص مع حقول education و property و group_of_user و mobile
- معلومات وسائل التواصل الاجتماعي والمعلومات المصرفية
- نظام تسجيل الدخول عبر الرسائل النصية وكلمة المرور
- نسب حصة الأساتذة (professor_class_percent, professor_product_percent)
2. shop_profile: مسؤول عن إدارة المحتوى والمعاملات
- نموذج Product للملفات التعليمية
- نموذج Classes للفصول عبر الإنترنت
- نموذج Article للمقالات
- نماذج Cart و Class_student لسلة التسوق
- نموذج Accounting للمحاسبة
- نموذج Support_table للدعم
- نموذج News_table للإعلانات
3. zarinpal: مسؤول عن الدفع عبر الإنترنت
- تكامل بوابة الدفع زرينبال
يعمل المشروع في وضع DEBUG ويستخدم SQLite للتطوير و MySQL للإنتاج.
📐
نطاق المشروع
- 3 تطبيقات رئيسية (shop_account, shop_profile, zarinpal)
- أكثر من 15 نموذج بيانات
- 3 أنواع محتوى رئيسية (ملف، فصل، مقالة)
- 3 مستويات وصول (مستخدم، أستاذ، مدير)
- أكثر من 30 صفحة وقالب HTML
- أكثر من 40 عرض ونقطة نهاية
- نظام دفع كامل مع زرينبال
- نظام محاسبة وتسوية
- نظام دعم التذاكر
- نظام الإعلانات
- بوت تيليجرام
- نظام الخصم