مستر پای وب

توسعه وب‌سایت، وب‌اپلیکیشن و سیستم‌های سازمانی
بازگشت به نمونه‌کارها
فایل‌شاپ - سامانه آموزش آنلاین و فروش فایل

فایل‌شاپ - سامانه آموزش آنلاین و فروش فایل

فایل‌شاپ یک پلتفرم جامع آموزشی و فروشگاهی تحت وب است که با استفاده از فریم‌ورک جنگو (Django) و پایگاه داده MySQL طراحی و پیاده‌سازی شده است. این سامانه امکان فروش فایل‌های آموزشی، برگزاری کلاس‌های آنلاین، انتشار مقالات …

Overview

درباره پروژه

فایل‌شاپ یک پلتفرم جامع آموزشی و فروشگاهی تحت وب است که با استفاده از فریم‌ورک جنگو (Django) و پایگاه داده MySQL طراحی و پیاده‌سازی شده است. این سامانه امکان فروش فایل‌های آموزشی، برگزاری کلاس‌های آنلاین، انتشار مقالات تخصصی و مدیریت پروفایل اساتید را فراهم می‌کند. سیستم دارای درگاه پرداخت زرین‌پال، سبد خرید هوشمند، سیستم حسابداری و تسویه با اساتید، سیستم پشتیبانی تیکتی، اطلاع‌رسانی و احراز هویت از طریق پیامک می‌باشد. اساتید می‌توانند فایل‌ها، کلاس‌ها و مقالات خود را بارگذاری کنند و پس از تایید مدیر، منتشر شوند.

Case Study

مطالعه موردی پروژه

چالش‌ها، راهکارها، دستاوردها، نکات فنی، معماری و مقیاس پروژه

⚡

چالش‌ها

- نیاز به سیستم فروش فایل با آپلود امن و محافظت از فایل‌های zip
- مدیریت همزمان کلاس‌های آنلاین و فایل‌های دانلودی در یک سبد خرید واحد
- محاسبه خودکار سهم اساتید از فروش فایل و ثبت‌نام کلاس
- نیاز به سیستم حسابداری و درخواست تسویه با حداقل مبلغ
- مدیریت ظرفیت کلاس‌ها و جلوگیری از ثبت‌نام بیش از حد
- سیستم پشتیبانی تیکتی با امکان پاسخ‌دهی و پیگیری
- یکپارچه‌سازی درگاه پرداخت زرین‌پال
- مدیریت سطوح دسترسی (کاربر، استاد، مدیر) و دسترسی ویژه مقالات

💡

راه‌حل‌ها

- طراحی مدل‌های Product، Classes و Article برای مدیریت محتوا
- پیاده‌سازی سیستم سبد خرید یکپارچه با مدل‌های Cart و Class_student
- محاسبه خودکار سهم اساتید با درصد قابل تنظیم (professor_class_percent, professor_product_percent)
- استفاده از درگاه پرداخت زرین‌پال برای تراکنش‌های امن
- طراحی سیستم حسابداری با مدل Accounting و امکان درخواست تسویه
- پیاده‌سازی سیستم پشتیبانی با مدل Support_table و قابلیت پاسخ‌دهی
- استفاده از sorl-thumbnail برای بهینه‌سازی تصاویر
- استفاده از jdatetime و persiantools برای تبدیل تاریخ شمسی
- سیستم احراز هویت با پیامک از طریق API غدیر
- استفاده از pymysql برای اتصال به MySQL

📚

دستاوردها

- پلتفرم آموزشی کامل با فروش فایل و برگزاری کلاس
- سیستم پرداخت امن با درگاه زرین‌پال
- سیستم حسابداری خودکار برای اساتید
- سیستم پشتیبانی تیکتی حرفه‌ای
- مدیریت سطوح دسترسی و مقالات ویژه
- پشتیبانی کامل از تاریخ شمسی
- طراحی واکنش‌گرا و کاربرپسند
- یکپارچه‌سازی با تلگرام بات

🔧

نکات فنی برجسته

- Django 4.2.6 و Python 3
- پایگاه داده MySQL با pymysql
- درگاه پرداخت زرین‌پال (Zarinpal)
- احراز هویت مبتنی بر SMS با API غدیر (Ghasedak)
- تبدیل تاریخ شمسی با persiantools و jdatetime
- بهینه‌سازی تصاویر با sorl-thumbnail و python-resize-image
- سیستم AJAX گسترده با JSON
- طراحی Multi-App (shop_account, shop_profile, zarinpal)
- مدیریت سطوح دسترسی (کاربر، استاد، مدیر)
- تلگرام بات با django-telegrambot و Pyrogram
- تولید فایل اکسل با xlwt
- سیستم حسابداری و تسویه با محاسبه خودکار سهم اساتید
- سیستم تخفیف با کدهای تخفیف کلاس و فایل

🏗️

معماری پروژه

پروژه فایل‌شاپ بر پایه معماری MVT (Model-View-Template) جنگو ساخته شده و از سه اپلیکیشن اصلی تشکیل شده است:

۱. shop_account: مسئول مدیریت کاربران، احراز هویت و ثبت‌نام
- مدل User سفارشی با فیلدهای education, property, group_of_user, mobile
- اطلاعات شبکه‌های اجتماعی و بانکی
- سیستم ورود با پیامک و رمز عبور
- درصد سهم اساتید (professor_class_percent, professor_product_percent)

۲. shop_profile: مسئول مدیریت محتوا و تراکنش‌ها
- مدل Product برای فایل‌های آموزشی
- مدل Classes برای کلاس‌های آنلاین
- مدل Article برای مقالات
- مدل‌های Cart و Class_student برای سبد خرید
- مدل Accounting برای حسابداری
- مدل Support_table برای پشتیبانی
- مدل News_table برای اطلاعیه‌ها

۳. zarinpal: مسئول پرداخت آنلاین
- یکپارچه‌سازی با درگاه پرداخت زرین‌پال

پروژه در حالت DEBUG اجرا می‌شود و از SQLite برای توسعه و MySQL برای تولید استفاده می‌کند.

📐

مقیاس پروژه

- ۳ اپلیکیشن اصلی (shop_account, shop_profile, zarinpal)
- بیش از ۱۵ مدل داده‌ای
- ۳ نوع محتوای اصلی (فایل، کلاس، مقاله)
- ۳ سطح دسترسی (کاربر، استاد، مدیر)
- بیش از ۳۰ صفحه و قالب HTML
- بیش از ۴۰ ویو و endpoint
- سیستم پرداخت کامل با زرین‌پال
- سیستم حسابداری و تسویه
- سیستم پشتیبانی تیکتی
- سیستم اطلاع‌رسانی
- تلگرام بات
- سیستم تخفیف

Stack

تکنولوژی‌ها

Django HTML/CSS JavaScript Python
Categories

دسته‌بندی‌ها

سیستم CRM وب‌سایت فروشگاهی
Industry

حوزه کسب‌وکار

آموزش آنلاین و تجارت الکترونیک
Scope

حوزه فعالیت

توسعه پلتفرم‌های آموزشی و فروشگاهی
Statistics

آمار پروژه

9
👁️ بازدید
0
❤️ لایک
0
⬇️ دانلود
0
⭐ امتیاز
Metrics

آمارهای سفارشی

شاخص‌های کلیدی عملکرد پروژه

15+ تعداد مدل‌های داده
Team

اعضای تیم پروژه

افرادی که در این پروژه همکاری داشته‌اند

حسن کاظمی
حسن کاظمی
توسعه‌دهنده Full Stack

پروژه مشابهی در ذهن دارید؟

اگر برای توسعه یک وب‌سایت، CRM، ERP یا سیستم اختصاصی نیاز به همکاری دارید، خوشحال می‌شوم درباره پروژه شما صحبت کنیم.

شروع یک پروژه