# 🚀 IFNEX Logistics Management System
##
### پلتفرم جامع مدیریت لجستیک بینالمللی
[](https://laravel.com)
[](https://php.net)
[](https://filamentphp.com)
[](https://wordpress.org)
[](https://mysql.com)
[]()
[]()
[]()
---
*جایگزینی فرآیندهای دستی مبتنی بر اکسل با معماری Headless مدرن*
**[📚 مستندات](#-مستندات)** • **[⚡ شروع سریع](#-شروع-سریع)** • **[🏗️ معماری](#%EF%B8%8F-معماری-سیستم)** • **[📞 تماس](#-تماس)**
---
## 📖 دربارهٔ پروژه
**IFNEX** راهحل جامعی برای شرکتهای حملونقل بینالمللی است که فرآیندهای مبتنی بر فایلهای اکسل را با یک سیستم Headless مدرن جایگزین میکند. این سیستم با تکیه بر **Laravel 11** بهعنوان بکاند، **WordPress** بهعنوان فرانتاند و **Filament 3.3** بهعنوان پنل مدیریت، تجربهای یکپارچه برای اپراتورها و مشتریان فراهم میآورد.
### ✨ امکانات کلیدی
- **معماری ارزی IRR-only** — ارز مبنا = ریال ایران؛ تبدیل ارز در زمان ایمپورت، نه محاسبه
- **موتور قیمتگذاری هوشمند** با ۴-رُبعی (Export/Import × Doc/Parcel) و ایمپورت از اکسل
- **دریافت خودکار نرخ ارز** از Exir.io (USD/AED) + FreeCurrencyAPI (EUR/CNY) با کرون روزانه
- **فاکتورهای دستی مدیر** — صدور فاکتور برای خدمات خارج از سفارش + پرداخت از کیف پول + اعلان خودکار
- **ثبت سفارش آنلاین چندمرحلهای** با Wizard و محاسبهٔ لحظهای قیمت
- **پشتیبانی چندبستهای** (Multi-Package) در یک سفارش با محاسبهٔ خودکار وزن حجمی
- **دفترچه آدرس مشتری** — ذخیره و انتخاب یککلیکی آدرسهای پرتکرار (فرستنده/گیرنده) با سقف ۵۰ رکورد و رکورد تکراری نداشتن
- **تولید خودکار اسناد** (AWB، Invoice، Label، فاکتور واردات) با بارکد Code-128 و پشتیبانی کامل از زبان انگلیسی
- **پورتال مشتری کامل** با کیف پول، پرداخت آنلاین، فاکتورهای دستی، دفترچه آدرس، تراکنشها، اعلانها و رهگیری مرسوله
- **فلوی تأیید سفارش** با مسیر `pending_approval → approved → paid → processed`
- **چرخهٔ تعهدنامه** با فلوی کامل End-to-End (دانلود قالب ← آپلود امضاشده ← تأیید یا رد ادمین ← اعلان مشتری)
- **سیستم اعتبار چندارزی** — بدهی به همان ارز ثبت میشود، تسویه با نرخ روز
- **مانده حساب** با نمایش موجودی کیف پول منهای بدهیهای تأییدشده (سفارشات + فاکتورهای دستی)
- **وضعیت مالی مشتری** — صفحهٔ جامع در پنل ادمین (۴ KPI + بدهیهای ارزی + سفارشها و تراکنشها)
- **ویجت هشدار بدهیهای ارزی** روی داشبورد بههمراه badge روی منو
- **چکلیست خودکار کارمند** — نمونهسازی از قالب پس از تأیید سفارش
- **ایمپورت گروهی وضعیت ترکینگ** با فایل CSV در پنل مدیریت
- **سیستم Audit Log** برای ثبت لاگ تغییرات مدیر
- **پنل مدیریت قدرتمند Filament** شامل مدیریت مرسولهها، نرخها، ارزها، فاکتورهای دستی، کاربران و گزارشها
- **سیستم ترکینگ** با مهاجرت دادههای تاریخی و تایملاین کامل
- **اعلانهای دیتابیس** برای ادمین و مشتری با badge unread در سایدبار
- **Rate Limiting** روی همهٔ APIها (۶ لایه: auth / sms / public / customer / wallet / staff)
- **پشتیبانی از ۱۹۲ کشور** با پیششمارهٔ تلفن استاندارد ISO 3166-1
- **اعتبارسنجی فرمها** با تشخیص خودکار زبان فارسی/انگلیسی و پیششمارهٔ خودکار
- **سرویس پیامک Kavenegar** برای تأیید موبایل و ارسال اعلان وضعیت سفارش
- **دستورات خودکار استقرار** — `ifnex:preflight` (fail-fast)، `ifnex:import-fx-rates` (نرخ ارز)، `ifnex:smoke-test` (E2E post-deploy)
---
## 🏗️ معماری سیستم
این پروژه بر اساس الگوی **Headless** طراحی شده است — فرانتاند (WordPress) و بکاند (Laravel) کاملاً جدا و فقط از طریق REST API با هم ارتباط دارند. این جداسازی امکان مقیاسپذیری مستقل هر لایه، بهبود امنیت و افزودن فرانتاندهای آینده (مثل اپلیکیشن موبایل) را میدهد.
```text
┌──────────────────────────────────────────────────────┐
│ CLIENT BROWSER │
└────────────────────────┬─────────────────────────────┘
│
┌────────────────────────▼─────────────────────────────┐
│ WORDPRESS (Frontend) │
│ ┌───────────────────┐ ┌──────────────────────────┐ │
│ │ IFNEX Theme │ │ IFNEX Bridge Plugin │ │
│ │ (Landing Page) │ │ (REST Client + AJAX) │ │
│ └───────────────────┘ └────────────┬─────────────┘ │
└───────────────────────────────────────┼──────────────┘
│ REST API (Sanctum + Bridge Key)
┌───────────────────────────────────────▼──────────────┐
│ LARAVEL 11 (Backend) │
│ ┌─────────────────┐ ┌──────────────┐ ┌──────────┐ │
│ │ Filament │ │ API │ │ Services │ │
│ │ Admin Panel │ │ Controllers │ │ (Pricing,│ │
│ │ (/panel) │ │ (/api/v1) │ │ PDF, │ │
│ └─────────────────┘ └──────┬───────┘ │ Payment) │ │
└──────────────────────────────┼──────────┴──────────┘
│
┌────────────▼────────────┐
│ MySQL 8 Database │
│ (62 migrations, 31 │
│ models) │
└─────────────────────────┘
```
### جریان احراز هویت
```text
┌──────────┐ ┌─────────────────┐ ┌──────────────┐
│ WordPress│ ──POST /bridge/login──> │ Laravel Bridge │ ──> │ Sanctum Token│
│ Plugin │ <──token + user info── │ Controller │ <── │ (30 days) │
└──────────┘ └─────────────────┘ └──────────────┘
│ │
│ ──────── All subsequent API calls with Bearer Token ──────────────>│
└─────────────────────────────────────────────────────────────────────────┘
```
---
## 📁 ساختار پروژه
```text
IFNEX-Logistics/
├── 📄 01_Documents/ # مستندات فنی پروژه
│ ├── IFNEX_File_Map.md # نقشهٔ کامل فایلهای پروژه
│ ├── IFNEX_Roadmap.md # نقشهٔ راه فازی (۰ تا ۳.۱۱ + آینده ۴/۵)
│ ├── IFNEX_ADR.md # تصمیمات معماری (ADR-001 تا 009)
│ ├── IFNEX_Commercial_Model.md # مدل تجاری (Starter/Business/Enterprise)
│ ├── IFNEX_Pro_Backlog.md # فیچرهای نگهداشتهشده برای نسخه Pro
│ ├── IFNEX_I18N_Strategy.md # استراتژی چندزبانه (موکول به زمان دیپلوی)
│ ├── DESIGN_SYSTEM.md # سیستم طراحی
│ ├── EXCEL_ANALYSIS.md # تحلیل دادههای تاریخی
│ └── archives/ # اسناد منسوخشده (PRD_v2، Project_Roadmap قدیم)
│
├── 🌐 03_WordPress/ # فرانتاند (WordPress 7.1)
│ └── wp-content/
│ ├── themes/ifnex/ # قالب سفارشی IFNEX
│ └── plugins/ifnex-bridge/ # پلاگین ارتباط با لاراول
│ ├── includes/
│ │ ├── api-client.php # ارتباط مستقیم با API
│ │ ├── user-bridge.php # احراز هویت Bridge + AJAX handlers
│ │ ├── shortcodes.php # ۱۰+ شورتکد
│ │ └── tracking-form.php # فرم رهگیری
│ └── assets/
│ ├── css/ # استایل داشبورد + دفترچه آدرس
│ └── js/ # فرم چندمرحلهای + دفترچه آدرس
│
├── ⚙️ 04_Laravel/ # بکاند (Laravel 11)
│ ├── app/
│ │ ├── Console/Commands/ # ifnex:preflight, import-fx-rates, smoke-test + ۶ دستور قدیمی
│ │ ├── Enums/ # ShipmentStatus، Direction، Type
│ │ ├── Filament/
│ │ │ ├── Resources/ # ۱۹ Resource (Shipment، AddressBookEntry و…)
│ │ │ ├── Pages/ # Dashboard، IfnexSettings، ImportRates، CustomerFinancialOverview
│ │ │ └── Widgets/ # داشبورد
│ │ ├── Http/
│ │ │ ├── Controllers/Api/ # Track، Pricing، Auth، Bridge، Customer، Wallet، Payment، AddressBook
│ │ │ └── Middleware/ # ApiKeyMiddleware، StaffApiMiddleware، SetCspHeaders
│ │ ├── Models/ # ۳۱ مدل Eloquent
│ │ ├── Notifications/ # اعلانهای دیتابیسی + SMS
│ │ ├── Services/ # PriceCalculator، Pdf، Tracking، OrderPayment، DiscountCode، CustomerCredit، AddressBook
│ │ └── Imports/ # ایمپورت اکسل (OldShipments، ShippingRates)
│ ├── database/
│ │ ├── migrations/ # ۶۲ migration
│ │ └── seeders/ # Countries، SystemSettings، Currency، RoleAndPermission، DatabaseSeeder
│ ├── scripts/ # deploy.sh + cron-exir-rates.sh + one-off/
│ ├── resources/views/
│ │ ├── pdfs/ # awb، invoice، label، import-invoice
│ │ └── filament/ # Blade views
│ └── routes/
│ ├── api.php # ۵۰+ endpoint
│ └── web.php # روتهای وب + دانلود Template
│
├── 📋 README.md # همین فایل
├── 📋 AGENT.md # راهنمای ایجنت
├── 📋 CLIENT_DELIVERY.md # چکلیست وضعیت تحویل مشتری (منبع اصلی وضعیت)
├── 📋 UAT-3.11.md # چکلیست ۴۳ موردی UAT نهایی کارفرما (فاز ۳.۱۱)
├── 📋 RATE_IMPORTER.md # راهنمای ایمپورت نرخها (سیستم ۴-رُبعی)
└── 📋 DEPLOYMENT_HANDOFF.md # تحویل استقرار به تیم IT کارفرما
```
---
## ✨ ویژگیها بر اساس فازها
### فاز ۰ — بنیان سیستم ✅ (۱۰۰٪)
- اسکیمای دیتابیس مدرن با ۴ زون مجزا (Export/Import × Parcel/Doc)
- مهاجرت ۳۹۵۰ رکورد تاریخی از اکسل به دیتابیس
- پنل مدیریت Filament با UX تخصصی اپراتور
- API ترکینگ با امنیت کلید API و Rate Limiting
- پلاگین WordPress Bridge برای ارتباط با فرانتاند
### فاز ۱ — پورتال مشتری ✅ (۱۰۰٪)
- احراز هویت Laravel Sanctum + Bridge Auth (بدون نیاز به رمز عبور)
- فرم ثبت سفارش چندمرحلهای با Wizard (مسیر، اطلاعات تماس، تخفیف، تأیید)
- داشبورد جامع مشتری: داشبورد، سفارشها، ثبت سفارش، کیف پول، تراکنشها، رهگیری، اعلانها، پروفایل
- سیستم ترکینگ با تایملاین و تاریخچهٔ کامل
### فاز ۲ — مالی و کیف پول ✅ (۱۰۰٪)
- سیستم کیف پول کامل با تراکنشها و تاریخچه
- درگاه پرداخت Zarinpal + Mock Gateway برای تست لوکال
- مدیریت ارزهای چندگانه (IRR، AED، USD، EUR، CNY)
- کدهای تخفیف با اعتبارسنجی و محدودیت مصرف
- تولید PDF حرفهای (AWB، Invoice، Label) با بارکد استاندارد
- پشتیبانی از چند بسته در یک سفارش (Multi-Package)
- تاریخچهٔ تغییرات وضعیت (ShipmentStatusHistory)
### فاز ۳ — بهبود و یکپارچهسازی ✅ (۱۰۰٪)
- ایمپورت/اکسپورت نرخها با دانلود Template اکسل
- سیستم اعلانهای دیتابیس (ادمین + مشتری) با badge unread در سایدبار
- هشدار هوشمند زبان فارسی/انگلیسی در فرم سفارش (نام، شهر، آدرس)
- پیششمارهٔ تلفن خودکار بر اساس کشور انتخابی (۱۹۲ کشور)
- اعتبارسنجی تلفن (فقط اعداد، `+` و فاصله)
- استایل مدرن تراکنشها و داشبورد مشتری
- صفحهٔ شارژ کیف پول با مبالغ آماده
- بازطراحی PDFها (AWB، Invoice، Label) با بارکد مطابق نمونهٔ کارفرما
- اصلاح متدهای Enum (`isPaid`، `canBeCancelledByCustomer`)
- میدلور API برای بازگرداندن JSON 401 بهجای redirect
### فاز ۳.۵ — اصلاحات اساسی ✅ (۱۰۰٪)
- Multi-Package در فرم سفارش مشتری (چند بسته در یک سفارش)
- فرم Invoice برای محمولههای PARCEL (اقلام گمرکی با HS Code)
- بازطراحی PDFها (AWB، Invoice، Label) با بارکد مطابق نمونهٔ کارفرما
- تست کامل ترکینگ با تایملاین چندمرحلهای
- محاسبهٔ خودکار وزن حجمی از ابعاد (فرمول: `L × W × H / 5000`)
- ساختار ۵ مرحلهای فرم سفارش (مسیر ← تماس ← اقلام ← تخفیف ← تأیید)
- اصلاحات فنی (Enum casts، migration، model)
- پشتیبانی چندزبانه (i18n) — موکول به زمان دیپلوی
### فاز ۳.۶ — اصلاحات جلسهٔ کارفرما ✅ (۱۰۰٪)
- [x] فلوی تأیید سفارش `pending_approval → approved → پرداخت → processed` — تست End-to-End
- [x] تعهدنامهها با فلوی کامل (دانلود قالب ← آپلود امضاشده ← تأیید/رد ادمین ← اعلان مشتری)
- [x] دانلود اسناد سفارش (AWB، Invoice، Label، فاکتور واردات) در پورتال مشتری
- [x] صفحهٔ «وضعیت مالی مشتری» در پنل ادمین (۴ KPI + بدهی ارزی + سفارشها و تراکنشها)
- [x] سیستم اعتبار چندارزی کامل (درخواست ۹) — `CustomerCreditService` + نمایش در پورتال مشتری
- [x] ویجت هشدار بدهیهای ارزی روی داشبورد + badge قرمز روی منو
- [x] چکلیست خودکار پس از تأیید سفارش (درخواست ۵) — `instantiateChecklist()`
- [x] Rate Limiting روی همهٔ APIها (۶ لایه throttle)
- [x] ایمپورت گروهی وضعیت ترکینگ با CSV در پنل (`BulkTrackingImport`)
- [x] Audit Log برای مدلهای اصلی + `ShipmentStatusHistory` با `from_status` / `to_status`
- [x] اتصال SMS کاوهنگار: تأیید/رد سفارش، پرداخت موفق، بهروزرسانی ترکینگ + تنظیمات پنل
- [x] فاکتور واردات (Import Invoice) با فیلدهای جدید shipments + قالب PDF
- [x] مانده حساب (موجودی منهای بدهیهای تأییدشده) در پروفایل مشتری
- [x] بازطراحی داشبورد و Login فیلمنت (هویت بصری navy + amber)
- [x] بازطراحی AWB، Invoice و Label (dompdf، چیدمان جدولی، سبک DHL)
- [x] استایلدهی صفحهٔ پروفایل مشتری در وردپرس
- [x] پاکسازی کد — حذف فایلهای تستی، تأیید تمیزی `opcache_reset` / `dd` / `dump`
### فاز ۳.۷ — اصلاحات ارزی و فاکتور دستی ✅ (۱۰۰٪)
- [x] **سیستم ۴-رُبعی نرخها** (Export/Import × Doc/Parcel) با ایمپورت از اکسل
- [x] **معماری IRR-only** — ارز مبنا = ریال ایران، حذف جفتارز و تبدیل در زمان ایمپورت
- [x] **ایمپورت فایل اصلی مشتری** + قالب جدید `IFNEX_Rate_Template.xlsx`
- [x] **حذف تمام «تومان» و «درهم» از نمایش قیمتهای داخلی** در همه UIها
- [x] **فاکتورهای دستی مدیر** — صدور، پرداخت از کیف پول، اعلان خودکار
- [x] **تب «فاکتورهای دستی» در پورتال وردپرس** (لیست + جزئیات + پرداخت)
- [x] **اضافه شدن فاکتورها به وضعیت مالی و داشبورد مشتری**
- [x] **فرمت هزارگان** در فیلدهای عددی فرم فاکتور ادمین
### فاز ۳.۸ — برندینگ و تجربهٔ کاربری ✅ (۱۰۰٪)
- [x] **Favicon حرفهای IFNEX** — هواپیمای کاغذی کهربایی روی سرمهای (مولتیسایز + SVG + webmanifest)
- [x] **صفحهٔ `/` برندشده** — جایگزین welcome پیشفرض لاراول (RTL، وزیرمتن)
- [x] **جمعشدن کارت لاگین فیلمنت** — عرض ۴۴۰←۳۸۰px، موبایل-فرندلی
- [x] **SweetAlert2 برای خطاهای فرم سفارش وردپرس** — باندل محلی بدون CDN
### فاز ۳.۸.۱ — سختسازی Production ✅ (۱۰۰٪)
- [x] **باگ P0 کد تخفیف** — `DiscountCodeService` + جدول `discount_code_usages` (idempotency + قفل رقابتی)
- [x] **گارد Mock Gateway در Production** — `OrderPaymentService` با `Log::critical`
- [x] **حذف هکهای دیباگ** از ۵ فایل پلاگین وردپرس (opcache_reset / header / cache-buster)
- [x] **نسخهبندی سالم assetها** — `filemtime` + ثابت `IFNEX_BRIDGE_VERSION`
- [x] **سختسازی آپلود** — بررسی mimetype واقعی فایل
- [x] **خروج `wp-config.php` از گیت** (saltها لورفته فرض میشوند)
- [x] **چکلیست امنیتی استقرار** در `DEPLOYMENT_HANDOFF.md` (بخش ۴.۴)
### فاز ۳.۹ — دفترچه آدرس ✅ (۱۰۰٪)
- [x] **مدل + جدول `address_book_entries`** — نقش sender/receiver، سقف ۵۰ رکورد
- [x] **CRUD API محافظتشده با Sanctum** — `GET/POST/PUT/DELETE /api/v1/addresses` + `POST /{id}/default`
- [x] **اتصال به ثبت سفارش** — چکباکس «ذخیره این آدرس» + dropdown در فرم
- [x] **تب «دفترچه آدرس» در پنل کاربری وردپرس** — کارتهای آدرس + فیلتر + فرم
- [x] **۴ پروکسی AJAX امن** (nonce + sanitize + توکن Sanctum)
- [x] **۱۸ تست Feature جدید** — مالکیت، سقف، تکراری، پیشفرض
### فاز ۳.۱۰ — استقرار Production ✅ (۱۰۰٪)
- [x] **`ifnex:preflight`** — دستور fail-fast برای ممیزی محیط Production پیش از migrate
- [x] **`ifnex:import-fx-rates`** — جایگزین `ifnex:update-rates` با پشتیبانی از EUR/CNY + `--auto-approve`
- [x] **`CurrencySeeder`** — پنج ارز پایه (USD/AED/EUR/CNY/IRR)، idempotent
- [x] **`scripts/deploy.sh`** — اسکریپت خودکار ۱۳ مرحلهای استقرار با fail-fast
- [x] **`scripts/cron-exir-rates.sh`** — wrapper کرون روزانه
- [x] **سختسازی `.env.example`** — MySQL پیشفرض، EXIR_API_URL، SANCTUM_STATEFUL_DOMAINS
- [x] **رفع باگ latent در `bootstrap/app.php`** — حذف `use ApiKeyAuth` که کلاس وجود نداشت
- [x] **بهبود `DatabaseSeeder`** — حساب super_admin با رمز `password` در Production ساخته نمیشود
### فاز ۳.۱۱ — UAT نهایی ✅ (۱۰۰٪)
- [x] **`ifnex:smoke-test`** — دستور E2E خودکار Post-Deploy (۲۵+ بررسی: DB، دادهها، API endpoints)
- [x] **۹ تست Feature جدید** — حالتهای PASS/FAIL با Http::fake
- [x] **`UAT-3.11.md`** — چکلیست ۴۳ موردی فارسی برای کارفرما + فرم امضای تحویل
- [x] **بهروزرسانی `CLIENT_DELIVERY.md`** — ثبت فازهای ۳.۱۰ و ۳.۱۱
---
> ⚠️ **هشدار دربارهٔ فاز ۴ و ۵:** هیچیک از فیچرهای فاز ۴ (سیستم نمایندگی) و فاز ۵ (تجاریسازی) پیادهسازی نشدهاند. اینها صرفاً طرح آیندهاند و در [بخش مراحل بعدی](#-مراحل-بعدی) آمدهاند. برای ارزیابی آمادگی واقعی پروژه، [UAT-3.11.md](UAT-3.11.md) را ببینید.
---
## ⚡ شروع سریع
### پیشنیازها
- PHP 8.2+ با اکستنشنهای `pdo_mysql`، `mbstring`، `xml`، `gd`، `zip`
- Composer 2.x
- MySQL 8+
- WordPress 7.1+
### نصب بکاند (Laravel)
```bash
# ۱. کلون مخزن
git clone https://www.git.vernahost.ir/gitmodir110/ifnex.git
cd ifnex/04_Laravel
# ۲. نصب وابستگیها
composer install
# ۳. تنظیم فایل محیط
cp .env.example .env
php artisan key:generate
# ۴. ایجاد دیتابیس
mysql -u root -p -e "CREATE DATABASE ifnex_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;"
# ۵. ویرایش .env — مقادیر کلیدی:
# DB_DATABASE=ifnex_db
# DB_USERNAME=root
# DB_PASSWORD=your_password
# IFNEX_BRIDGE_API_KEY=change-this-secret-key # مهم برای وردپرس (پیش از استقرار با
# # openssl rand -hex 32 جایگزین کن)
# ZARINPAL_MERCHANT_ID=fake-merchant-id-for-testing # برای Mock Mode
# ZARINPAL_SANDBOX=true
# CORS_ALLOWED_ORIGINS=http://localhost,http://127.0.0.1
# ۶. اجرای migrations و seeders
php artisan migrate --force
php artisan db:seed --class=CountriesTableSeeder --force
php artisan db:seed --class=SystemSettingSeeder --force
php artisan db:seed --class=CurrencySeeder --force
php artisan db:seed --class=RoleAndPermissionSeeder --force
# ۷. دریافت نرخ ارز اولیه
php artisan ifnex:import-fx-rates --source=all --auto-approve
# ۸. اجرای سرور
php artisan serve
# پنل ادمین: http://127.0.0.1:8000/panel
```
> 💡 **نکته:** برای استقرار Production، بهجای اجرای دستی همهٔ مراحل بالا، از `bash scripts/deploy.sh` استفاده کنید — خودکار و fail-fast.
### نصب فرانتاند (WordPress)
1. پوشهٔ `03_WordPress` را در `htdocs` (XAMPP) یا `public_html` (سرور) کپی کنید.
2. دیتابیس وردپرس را بسازید و نصب را اجرا کنید.
3. قالب IFNEX و پلاگین IFNEX Bridge را فعال کنید.
4. تنظیمات پلاگین را کامل کنید (پنل وردپرس ← منوی IFNEX):
| تنظیم | مقدار |
|--------|--------|
| API URL | `http://localhost:8000/api/v1` |
| API Key (عمومی) | همان مقدار `IFNEX_API_KEY` در `.env` لاراول |
| Bridge API Key | همان مقدار `IFNEX_BRIDGE_API_KEY` در `.env` لاراول |
5. صفحات را با شورتکدها بسازید:
| صفحه | شورتکد |
|------|---------|
| `/my-account/` | `[ifnex_customer_dashboard]` |
| `/my-orders/` | `[ifnex_orders_list]` |
| `/new-order/` | `[ifnex_order_form]` |
| `/wallet/` | `[ifnex_wallet_charge]` |
| `/tracking/` | `[ifnex_tracking_form]` |
> 📖 برای راهنمای کامل استقرار روی سرور، [DEPLOYMENT_HANDOFF.md](DEPLOYMENT_HANDOFF.md) را ببینید. برای راهنمای ایمپورت نرخها، [RATE_IMPORTER.md](RATE_IMPORTER.md) را ببینید.
---
## 🛠️ استک فنی
### بکاند (Laravel)
| تکنولوژی | نسخه | کاربرد |
|-----------|-------|--------|
| Laravel | 11.x | فریمورک اصلی |
| PHP | 8.2+ | زبان برنامهنویسی |
| Filament | 3.3.x | پنل مدیریت ادمین |
| MySQL | 8+ | دیتابیس |
| Dompdf | Latest | تولید PDF |
| Laravel Excel | Latest | Import / Export |
| Sanctum | Latest | احراز هویت API |
| Morilog Jalali | 3.x | تاریخ شمسی |
| picqer/php-barcode | Latest | تولید بارکد |
| Spatie Permission | 6.x | مدیریت نقشها |
### فرانتاند (WordPress)
| تکنولوژی | نسخه | کاربرد |
|-----------|-------|--------|
| WordPress | 7.1 | CMS |
| IFNEX Theme | Custom | قالب سفارشی |
| IFNEX Bridge | 2.1.0 | پلاگین ارتباطی |
| jQuery | 3.x | AJAX + DOM |
### زیرساخت
| سرویس | کاربرد |
|-------|--------|
| HestiaCP | پنل مدیریت سرور |
| Nginx | وبسرور |
| PHP-FPM | پردازش PHP |
| MySQL 8 | دیتابیس |
| Let's Encrypt | SSL رایگان |
| Git (Gitea) | مخزن کد |
---
## 📊 آمار پروژه
| معیار | مقدار |
|-------|-------|
| تعداد مایگریشنها | ۶۲ |
| تعداد API endpoints | ۵۰+ |
| تعداد Filament Resources | ۱۹ |
| تعداد مدلها | ۳۱ |
| تعداد شورتکدهای وردپرس | ۱۰+ |
| تعداد کشورها با پیششماره | ۱۹۲ |
| رکوردهای تاریخی مهاجرتشده | ۳۹۵۰ |
| تعداد تستهای Feature | ۸۲ |
| تعداد assertionها | ۲۲۰+ |
| خطوط کد (تخمینی) | ۲۵۰۰۰+ |
---
## 🧪 تست
### تستهای خودکار (Feature Tests)
```bash
cd 04_Laravel
php artisan test
# انتظار: 82 passed, 220+ assertions
```
### تست E2E Post-Deploy (فاز ۳.۱۱)
```bash
php artisan ifnex:preflight # بررسی سختسازی محیط قبل از migrate
php artisan ifnex:smoke-test # تست E2E بعد از deploy (DB، دادهها، API endpoints)
```
### تست UAT کارفرما
برای چکلیست ۴۳ موردی تست دستی توسط کارفرما، [UAT-3.11.md](UAT-3.11.md) را ببینید.
---
## 📚 مستندات
| فایل | محتوا | اولویت |
|------|-------|---------|
| [CLIENT_DELIVERY.md](CLIENT_DELIVERY.md) | **چکلیست وضعیت تحویل مشتری (منبع اصلی وضعیت)** | ⭐⭐⭐ |
| [UAT-3.11.md](UAT-3.11.md) | چکلیست ۴۳ موردی UAT نهایی کارفرما (فاز ۳.۱۱) + فرم امضای تحویل | ⭐⭐⭐ |
| [DEPLOYMENT_HANDOFF.md](DEPLOYMENT_HANDOFF.md) | راهنمای استقرار برای تیم IT کارفرما | ⭐⭐⭐ |
| [AGENT.md](AGENT.md) | راهنمای ایجنت، مفاهیم کلیدی و خط قرمزها | ⭐⭐⭐ |
| [01_Documents/IFNEX_Roadmap.md](01_Documents/IFNEX_Roadmap.md) | نقشهٔ راه فازی (۰ تا ۳.۱۱ + آینده ۴/۵) | ⭐⭐ |
| [01_Documents/IFNEX_File_Map.md](01_Documents/IFNEX_File_Map.md) | نقشهٔ فایلهای پروژه | ⭐⭐ |
| [01_Documents/IFNEX_Pro_Backlog.md](01_Documents/IFNEX_Pro_Backlog.md) | فیچرهای نگهداشتهشده برای نسخه Pro | ⭐⭐ |
| [RATE_IMPORTER.md](RATE_IMPORTER.md) | راهنمای ایمپورت نرخها (سیستم ۴-رُبعی) | ⭐⭐ |
| [04_Laravel/README.md](04_Laravel/README.md) | راهنمای بکاند | ⭐⭐ |
| [01_Documents/IFNEX_Commercial_Model.md](01_Documents/IFNEX_Commercial_Model.md) | مدل تجاری و پلنهای فروش (آینده) | ⭐ |
| [01_Documents/IFNEX_I18N_Strategy.md](01_Documents/IFNEX_I18N_Strategy.md) | استراتژی چندزبانه (موکول به زمان دیپلوی) | ⭐ |
---
## 🚀 مراحل بعدی
> 📌 **فهرست دقیق و بهروزِ وضعیت تحویل در [CLIENT_DELIVERY.md](CLIENT_DELIVERY.md) و چکلیست UAT در [UAT-3.11.md](UAT-3.11.md) نگهداری میشود** — این بخش فقط نمای کلی است.
### باقیماندهٔ واقعی (post-3.11)
موارد زیر تنهای چیزی هستند که قبل از انتشار رسمی Productization باقیماندهاند:
- ⏳ **i18n (چندزبانه)** — موکول به زمان دیپلوی (Polylang + ترجمههای .po/.mo)
- ⏳ **پلاگین ماژولار SMS** — منتظر تحویل پنل SMS مشتری
- ⏳ **سند پیشنهادی سیستم مالی** (درخواست ۱۳ کارفرما) — موکول به آینده
- ⏳ **تأیید نهایی UAT کارفرما** — چکلیست `UAT-3.11.md` آمادهٔ اجرا
### فاز ۴ (آینده) — سیستم نمایندگی 📋
> ⚠️ هیچکدام از موارد زیر پیادهسازی نشدهاند.
- مدل نمایندگی کامل با کمیسیون و پنل جداگانه
- طرح مطالعاتی آماده — منتظر تأیید کارفرما
### فاز ۵ (آینده) — تجاریسازی 📋
> ⚠️ هیچکدام از موارد زیر پیادهسازی نشدهاند.
- مدل پولی چندلایه: Starter ($299/سال) / Business ($899/سال) / Enterprise ($1999/سال)
- فرمساز Drag & Drop (Enterprise-tier)
- White-label branding (Enterprise-tier)
- API Gateway برای توسعهدهندگان (Enterprise-tier)
- سیستم لایسنس با Domain Lock + Feature Flags
- بروزرسانی خودکار از گیت
- اتصال به APIهای ترکینگ زنده (TrackingMore / 17track)
- مستندات API (OpenAPI / Swagger)
- راهنمای اپراتور (Operator Manual)
- اپلیکیشن موبایل (احتمالی)
- سایت فروش + صفحهٔ قیمتگذاری + دمو آنلاین
---
## 📞 تماس
| مورد | مقدار |
|------|------|
| توسعهدهنده | Kazem Alghasi |
| شرکت | VernaSoft Group |
| ایمیل | kazem@vernasoft.group |
| مخزن | [git.vernahost.ir/gitmodir110/ifnex](https://www.git.vernahost.ir/gitmodir110/ifnex) |
| سرور Laravel | `https://system.ifnex.ir` |
| سرور WordPress | `https://ifnex.ir` |
---
📜 لایسنس
© 2026 VernaSoft Group. تمام حقوق محفوظ است.
این پروژه طبق سفارش IFNEX و مالکیت آن برای گروه ورناسافت است و کپی یا استفادهٔ غیرمجاز ممنوع میباشد.