مستر پای وب

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

یار کشاورز - فروشگاه آنلاین محصولات کشاورزی

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

Overview

درباره پروژه

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

Case Study

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

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

⚡

چالش‌ها

- نیاز به سیستم فروش مستقیم از کشاورز به مصرف‌کننده بدون واسطه
- مدیریت دو نوع قیمت (خرده فروشی و عمده فروشی) برای هر محصول
- سیستم حمل و نقل پیچیده با سه نوع وسیله نقلیه و قیمت‌های متفاوت برای هر استان
- نیاز به سیستم ثبت‌نام خودکار کاربر در لحظه خرید
- مدیریت بازاریابان و تسویه با آن‌ها
- محاسبه هزینه حمل و نقل بر اساس استان و شهرستان
- نیاز به پنل مدیریتی با سطوح دسترسی مختلف
- مدیریت تاریخ شمسی در کل سیستم

💡

راه‌حل‌ها

- پیاده‌سازی مدل Commodity با دو فیلد قیمت (retail_price, overall_price)
- طراحی مدل Transport با سه فیلد قیمت برای هر نوع وسیله (vanet_price, nasan_price, khavar_price)
- پیاده‌سازی ثبت‌نام خودکار کاربر با random password در لحظه خرید
- طراحی مدل Cart با فیلدهای visitor_id و visitor_paid برای مدیریت بازاریابان
- پیاده‌سازی مدل State_city با رابطه ManyToMany به City
- سیستم احراز هویت با پیامک از طریق API غدیر
- پیاده‌سازی سطوح دسترسی (مدیر، کاربر) با فیلد access_level
- استفاده از persiantools برای تاریخ شمسی
- طراحی صفحات Takestan_us برای معرفی منطقه

📚

دستاوردها

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

🔧

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

- Django 4.2.6 و Python 3
- پایگاه داده MySQL با pymysql
- django-jalali و persiantools برای تاریخ شمسی
- python-telegram-bot برای بات تلگرام
- sorl-thumbnail برای بهینه‌سازی تصاویر
- Pillow برای پردازش تصویر
- xlwt برای خروجی Excel
- Flask برای سرویس‌های جانبی
- سیستم ثبت‌نام خودکار با random password
- مدیریت سطوح دسترسی (مدیر، کاربر)
- سیستم حمل و نقل با سه نوع وسیله
- سیستم بازاریابی و تسویه
- مدیریت State_city با ManyToMany
- API غدیر (Ghasedak) برای پیامک
- مدیریت تاریخ شمسی در کل سیستم

🏗️

معماری پروژه

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

۱. store_account: مسئول مدیریت کاربران و احراز هویت
- مدل User سفارشی با فیلدهای access_level, mobile, bank_card_number, total_income, paid_income
- سیستم ورود با پیامک و رمز عبور
- ثبت‌نام خودکار کاربر در لحظه خرید

۲. store_profile: مسئول مدیریت محصولات، سبد خرید و حمل و نقل
- مدل Commodity برای محصولات کشاورزی
- مدل Cart برای سبد خرید با فیلدهای visitor_id و visitor_paid
- مدل Transport برای مدیریت حمل و نقل
- مدل State_city برای مدیریت استان و شهرستان
- مدل ImageFile و Keyword برای تصاویر و کلمات کلیدی محصولات

ویوهای اصلی پروژه:
- home_page: صفحه اصلی با نمایش محصولات و جدول حمل و نقل
- commodity_details: جزئیات محصول با فرم خرید
- new_home: صفحه اصلی اختصاصی بازاریاب
- new_commodity_details: جزئیات محصول اختصاصی بازاریاب
- transport: لیست حمل و نقل
- about_us: درباره ما
- contact_us: تماس با ما
- takestan_us: درباره شهرستان تاکستان

پنل مدیریتی شامل:
- dashboard: داشبورد
- addcommodity: افزودن محصول
- allcommodity: لیست محصولات
- edit_commodity: ویرایش محصول
- edit_image: ویرایش تصاویر
- admin_cart: پیگیری سفارشات جدید
- follow_user_cart: پیگیری سبد خرید کاربر
- sent_cart: لیست تسویه بازاریابان
- all_visitor_paid_cart: سوابق فروش
- manage_transport: مدیریت حمل و نقل
- state_city: مدیریت استان و شهرستان
- allusers: لیست کاربران
- profile_settings: تنظیمات شخصی
- user_cart: سبد خرید
- user_sent_cart: لیست خریدهای قبل
- visitor_cart: فروش‌های جاری
- visitor_paid_cart: فروش‌های قبل

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

📐

مقیاس پروژه

- ۲ اپلیکیشن اصلی (store_account, store_profile)
- ۵ مدل داده‌ای اصلی (User, Commodity, Cart, Transport, State_city)
- ۳ نوع وسیله نقلیه (وانت، نیسان، خاور)
- ۲ نوع قیمت (خرده فروشی و عمده فروشی)
- ۲ سطح دسترسی (مدیر، کاربر)
- بیش از ۲۰ صفحه و قالب HTML
- سیستم ثبت‌نام خودکار
- سیستم بازاریابی و تسویه
- مدیریت تاریخ شمسی

Stack

تکنولوژی‌ها

Django HTML/CSS JavaScript MySQL Python
Categories

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

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

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

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

حوزه فعالیت

توسعه فروشگاه‌های آنلاین محصولات کشاورزی
Statistics

آمار پروژه

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

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

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

5 تعداد مدل‌های داده
2 سطوح دسترسی
Team

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

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

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

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

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

شروع یک پروژه