A Comprehensive Django-based Smart Warehouse & Inventory Management System
This project is a modular, web-based system designed to accurately manage goods, construction materials, and tools in construction sites. Built with the powerful Django framework, it resolves challenges related to receipts, remittances, contractor lending, and transparency in workshop purchasing processes.
- 📦 Smart Inventory Management: Define and categorize construction materials and workshop tools with technical specifications. Ability to temporarily activate/deactivate items.
- 🔄 Advanced Transaction System: Log all goods movements, including purchases, tool deliveries to contractors (lending), and returns.
- 👷 Entity Management: Manage contractors and purchasing agents with dedicated IDs, addresses, and tracking details to ensure supply chain transparency.
- 🏢 Multi-Warehouse Support: Define multiple warehouses within a project, each with specific access scopes and customizable logos.
- 📅 Jalali Calendar Integration: Fully localized with Jalali (Shamsi) calendar support using custom Django template tags and processors for accurate date rendering.
- 📊 Excel Export & Reporting: Dedicated, optimized modules to quickly extract inventory reports and transaction histories into standard Excel files.
- ⚙️ Management Commands: Custom CLI tools (e.g., automated recalculation of inventory) to ensure data integrity and fix discrepancies in real-time.
- 🧪 High Stability: Comprehensive suite of automated tests (unit & integration) verifying critical processes like inventory updates and report accuracy.
- Backend: Python, Django
- Database: PostgreSQL (recommended) / SQLite
- Infrastructure: Docker & Docker Compose
- Other: Jalali Calendar Utilities, Excel Data Exporters
Using Docker (Recommended):
# 1. Clone the repository
git clone https://github.com/the-mmdsys/django-warehouse-panel.git
cd django-warehouse-panel
# 2. Build and run the containers
docker-compose up --build -d
# 3. Run database migrations
docker-compose exec backend python manage.py migrate
# 4. Create a superuser
docker-compose exec backend python manage.py createsuperuserManual Installation:
git clone https://github.com/the-mmdsys/django-warehouse-panel.git
cd django-warehouse-panel
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txt
python manage.py migrate
python manage.py runserverاین پروژه یک سیستم جامع، ماژولار و تحت وب برای مدیریت دقیق موجودی کالاها، مصالح ساختمانی و ابزارآلات در کارگاههای عمرانی و ساختمانی است که با فریمورک قدرتمند جنگو (Django) توسعه یافته است.
- 📦 مدیریت هوشمند موجودی: تعریف و دستهبندی مصالح و ابزارآلات با مشخصات فنی و قابلیت فعال/غیرفعالسازی برای کنترل چرخه مصرف.
- 🔄 سیستم پیشرفته تراکنشها: ثبت دقیق ورود و خروج کالا، خریدهای کارگاهی، تحویل امانی ابزار به پیمانکاران و بازگشت آنها.
- 👷 مدیریت نهادها: ثبت اطلاعات پیمانکاران و ماموران خرید جهت شفافسازی کامل زنجیره تامین.
- 🏢 پشتیبانی از چند انبار: قابلیت تعریف چندین انبار با محدوده دسترسی (Scope) مجزا و لوگوی اختصاصی.
- 📅 تقویم شمسی (جلالی): بومیسازی کامل تاریخها با استفاده از پردازشگرها و تمپلیتتگهای اختصاصی تقویم جلالی.
- 📊 گزارشگیری و خروجی اکسل: استخراج سریع گزارشهای موجودی و تاریخچه تراکنشها در قالب فایلهای استاندارد اکسل.
- ⚙️ دستورات مدیریتی (CLI): دارای کامندهای اختصاصی جنگو برای بازسازی و محاسبه مجدد خودکار موجودی انبارها.
- 🧪 پایداری بالا: پوشش کامل با تستهای خودکار (Unit & Integration Tests) برای تضمین صحت عملکرد سیستم.
- بکاند: پایتون (Python)، جنگو (Django)
- پایگاه داده: PostgreSQL (پیشنهادی) / SQLite
- زیرساخت: داکر (Docker)
- سایر ابزارها: کتابخانههای تقویم جلالی و تولید فایل اکسل
با استفاده از داکر (پیشنهاد میشود):
# ۱. دریافت کدها
git clone https://github.com/the-mmdsys/django-warehouse-panel.git
cd django-warehouse-panel
# ۲. ساخت و اجرای کانتینرها
docker-compose up --build -d
# ۳. اعمال مایگریشنهای دیتابیس
docker-compose exec backend python manage.py migrate
# ۴. ساخت کاربر ارشد (ادمین)
docker-compose exec backend python manage.py createsuperuserنصب دستی (بدون داکر):
git clone https://github.com/the-mmdsys/django-warehouse-panel.git
cd django-warehouse-panel
python -m venv venv
source venv/bin/activate # در ویندوز: venv\Scripts\activate
pip install -r requirements.txt
python manage.py migrate
python manage.py runserver