# 🚀 IFNEX Logistics Management System > Replacing Manual Excel Workflows with a Modern Headless Architecture ![Laravel](https://img.shields.io/badge/Laravel-12-FF2D20?style=for-the-badge&logo=laravel&logoColor=white) ![WordPress](https://img.shields.io/badge/WordPress-6.x-21759B?style=for-the-badge&logo=wordpress&logoColor=white) ![PHP](https://img.shields.io/badge/PHP-8.2+-777BB4?style=for-the-badge&logo=php&logoColor=white) ![MySQL](https://img.shields.io/badge/MySQL-8.0-4479A1?style=for-the-badge&logo=mysql&logoColor=white) **Author:** VernaSoft Group (Kazem Alghasi) --- ## 📖 درباره پروژه سیستم مدیریت لجستیک ایف‌نکس (IFNEX) یک راه‌حل جامع برای جایگزینی فرآیندهای مبتنی بر فایل‌های اکسل در شرکت‌های حمل و نقل بین‌المللی است. این سیستم با استفاده از معماری هدلس (Headless)، وردپرس را برای ظاهر سایت و سئو، و لاراول را به عنوان قلب تپنده و موتور محاسباتی به کار می‌گیرد. ### چرا این پروژه متفاوت است؟ به جای اینکه اپراتورها وزن حجمی را محاسبه کنند، زون‌ها را در ۴ شیت مختلف جستجو کنند و با ماشین حساب قیمت نهایی را حساب کنند، اکنون تمام این فرآیند در کسر از ثانیه و بدون هیچ خطای انسانی انجام می‌شود. --- ## 🏗️ معماری سیستم (Tech Architecture) سیستم بر اساس الگوی Headless توسعه یافته است. این یعنی فرانت‌اند (وردپرس) و بک‌اند (لاراول) کاملاً از هم جدا شده‌اند و فقط از طریق REST API با هم ارتباط دارند. - **فرانت‌اند (WordPress):** وظیفه مدیریت ظاهر، منوها، لندینگ پیج‌ها (طراحی شده مشابه DHL) و سئو. - **بک‌اند (Laravel 12):** وظیفه مدیریت دیتابیس، پنل ادمین (Filament)، موتور فرمول‌نویسی قیمت، و ارائه API ها. - **پل ارتباطی (Custom WP Plugin):** یک پلاگین اختصاصی برای وردپرس که درخواست‌های کاربران را به لاراول ارسال می‌کند. --- ## ✨ ویژگی‌های کلیدی (فاز ۱ - تکمیل شده) ### ۱. موتور قیمت‌گذاری هوشمند (Pricing Engine) محاسبه دقیق هزینه ارسال بر اساس فرمول‌های استاندارد جهانی: - محاسبه خودکار وزن حجمی `(طول × عرض × ارتفاع / 5000)`. - استخراج خودکار زون مقصد بر اساس جدول کشورها و نوع ارسال (صادرات/واردات). - اعمال نرخ لحظه‌ای ارز (درهم/دلار/یوان/یورو) و ضریب سود شرکت. ### ۲. پنل مدیریت اختصاصی (Laravel Filament) - مدیریت کامل ۲۳۳ کشور با زون‌های صادرات و واردات. - ماژول ایمپورت اکسل: آپلود مستقیم فایل‌های اکسل تعرفه‌ها توسط ادمین (خواندن خودکار شیت‌های Import/Export). - فرم تنظیمات سیستم: تغییر سریع ارزها و ضریب سود بدون دستکاری در کد. ### ۳. ارتباطات API و فرانت‌اند - **API استعلام قیمت:** ایجاد `POST /api/calculate-price` برای دریافت اطلاعات وردپرس. - **پلاگین وردپرس (IFNEX Bridge):** توسعه یک افزونه مستقل از قالب وردپرس. - **شورت‌کد استعلام قیمت:** فرم مدرن با جاوااسکریپت برای دریافت و نمایش آنی شمارش (ریال/درهم) در سایت. --- ## 📁 ساختار پروژه (Project Structure) ```text IFNEX-Logistics/ ├── 01_Documents/ # مستندات و اسناد فنی پروژه │ ├── PRD_v2.md # سند نیازمندی‌ها (توضیح دیتابیس، منطق فرمول‌ها و فازبندی‌ها) │ └── Project_Roadmap.md # نقشه راه و چک‌لیست کارهای انجام شده و در دست اقدام │ ├── 02_Design/ # فایل‌های مربوط به رابط کاربری (UI/UX و فیگما) │ └── Assets/ # لوگوها، آیکون‌ها و... │ ├── 03_WordPress/ # سیستم مدیریت محتوای سایت (فرانت‌اند) │ └── wp-content/ │ └── plugins/ │ └── ifnex-bridge/ # پلاگین اختصاصی ما برای ارتباط با لاراول │ └── 04_Laravel/ # هسته مرکزی سیستم (بک‌اند) ├── app/ │ ├── Models/ # مدل‌های دیتابیس (Country, ShippingRate, Shipment, SystemSetting) │ ├── Services/ # کلاس‌های منطقی تجاری (مثل PriceCalculatorService) │ ├── Http/Controllers/Api/ # کنترلرهای API │ ├── Imports/ # کلاس‌های خواندن فایل‌های اکسل (ShippingRatesImport) │ └── Filament/ # پنل مدیریت ادمین (Resources و Pages) ├── database/ │ ├── migrations/ # فایل‌های ساخت جداول دیتابیس │ └── seeders/ # داده‌های اولیه (کشورها) ├── config/ # تنظیمات سیستم (فایل‌های .php) └── resources/ # فایل‌های ویو (Blade) برای پنل و ایمپورتورها --- 🚀 راه‌اندازی و اجرای پروژه (Localhost) پیش‌نیازها XAMPP (شامل PHP 8.2+ و MySQL) Composer Node.js و NPM (برای ابزارهای پیش‌فرض وردپرس/المنتور) مراحل نصب مخزن کد را کلون کنید و وارد پوشه 04_Laravel شوید. دستور composer install را برای نصب پکیج‌های لاراول اجرا کنید. فایل .env.example را به .env کپی کرده و اطلاعات دیتابیس XAMPP را وارد کنید. دستور php artisan key:generate را برای ایجاد کلید اپلیکیشن اجرا کنید. دستور php artisan migrate را برای ساخت جداول اجرا کنید. دستور php artisan db:seed را برای درج داده‌های اولیه (کشورها و تنظیمات ارز) بزنید. برای پنل ادمین دستور php artisan serve و برای وردپرس از لوکال هاست وردپرس استفاده کنید. ⚠️ نکات امنیتی و تولید (Production) هرگز فایل .env را در مخزن کد (Git) کامیت نکنید. در محیط سرور واقعی، حتماً APP_DEBUG=false را در .env تنظیم کنید. برای محیط سرور واقعی، نیاز به پیکربندی وب‌سرور (Nginx/Apache) و تنظیمات CORS برای ارتباط WP و Laravel دارید. 📜 مستندات بیشتر برای مطالعه دقیق منطق‌های سیستم، حتماً فایل‌های داخل پوشه 01_Documents را مطالعه کنید: PRD_v2.md: شامل معماری دقیق دیتابیس (Schema) استخراج شده از فایل اکسل عملیاتی شرکت. Project_Roadmap.md: شامل لیست کارهای انجام شده و کارهای در دست اقدام (Checklist) بر اساس فازبندی پروژه. © 2024 Vernasoft Group (Kazem Alghasi). All rights reserved.