ifnex/04_Laravel
Kazem Alghasi 67754f3e08 refactor(ui): clean up middleware configuration in AdminPanelProvider
Remove unused Filament middleware components to simplify the panel provider configuration.
2026-08-05 16:57:25 +03:30
..
app refactor(ui): clean up middleware configuration in AdminPanelProvider 2026-08-05 16:57:25 +03:30
bootstrap feat(console): add tracking data import functionality and utility scripts 2026-08-04 05:38:35 +03:30
config ۱۰ مورد کامل شد (دیتابیس، مدل‌ها، API، Filament، Laravel 11، رفع باگ‌ها) 2026-08-04 01:59:08 +03:30
database ۱۰ مورد کامل شد (دیتابیس، مدل‌ها، API، Filament، Laravel 11، رفع باگ‌ها) 2026-08-04 01:59:08 +03:30
public refactor(import): enhance shipping rates import and refine PDF layouts 2026-08-04 09:47:22 +03:30
resources docs(pdf): add technical mapping and implementation notes to templates 2026-08-04 09:50:53 +03:30
routes refactor(import): enhance shipping rates import and refine PDF layouts 2026-08-04 09:47:22 +03:30
storage feat: Complete Phase 1 core logic and WP bridge setup 2026-08-01 04:01:22 +03:30
tests feat: Complete Phase 1 core logic and WP bridge setup 2026-08-01 04:01:22 +03:30
.editorconfig feat: Complete Phase 1 core logic and WP bridge setup 2026-08-01 04:01:22 +03:30
.env.example ۱۰ مورد کامل شد (دیتابیس، مدل‌ها، API، Filament، Laravel 11، رفع باگ‌ها) 2026-08-04 01:59:08 +03:30
artisan feat: Complete Phase 1 core logic and WP bridge setup 2026-08-01 04:01:22 +03:30
check_shipments.php feat(console): add tracking data import functionality and utility scripts 2026-08-04 05:38:35 +03:30
check_tracking.php feat(console): add tracking data import functionality and utility scripts 2026-08-04 05:38:35 +03:30
composer.json feat(shipment): implement PDF generation for AWB, invoice, and labels 2026-08-04 09:20:23 +03:30
composer.lock feat(shipment): implement PDF generation for AWB, invoice, and labels 2026-08-04 09:20:23 +03:30
debug_import2.php feat(console): add tracking data import functionality and utility scripts 2026-08-04 05:38:35 +03:30
debug_import.php feat(console): add tracking data import functionality and utility scripts 2026-08-04 05:38:35 +03:30
inspect_awb.php feat(shipment): implement PDF generation for AWB, invoice, and labels 2026-08-04 09:20:23 +03:30
package.json feat: Complete Phase 1 core logic and WP bridge setup 2026-08-01 04:01:22 +03:30
phpunit.xml feat: Complete Phase 1 core logic and WP bridge setup 2026-08-01 04:01:22 +03:30
README.md docs(project): update documentation and project status for phase 1 2026-08-04 09:58:33 +03:30
test_excel.php feat(console): add tracking data import functionality and utility scripts 2026-08-04 05:38:35 +03:30
test_pricing2.php refactor(api): improve shipping rate import and pricing logic 2026-08-04 07:24:23 +03:30
test_pricing.php refactor(api): improve shipping rate import and pricing logic 2026-08-04 07:24:23 +03:30
vite.config.js feat: Complete Phase 1 core logic and WP bridge setup 2026-08-01 04:01:22 +03:30

IFNEX Logistics — Backend (Laravel 11)

بخش بک‌اند سیستم لجستیک ایف‌نکس. این پوشه به تنهایی یک اپلیکیشن لاراول ۱۱ کامل است.


🚀 راه‌اندازی سریع

composer install
cp .env.example .env
php artisan key:generate
php artisan migrate --force
php artisan db:seed --force
php artisan serve

📦 پکیج‌های اصلی

پکیج نسخه نقش
laravel/framework ^11.0 هسته فریم‌ورک
filament/filament 3.3.* پنل مدیریت ادمین
maatwebsite/excel ^3.1 ایمپورت اکسل
barryvdh/laravel-dompdf ^3.1 تولید PDF
dompdf/dompdf ^3.0 موتور تولید PDF
morilog/jalali ^3.0 تبدیل تاریخ شمسی/میلادی

📁 ساختار کد

04_Laravel/
├── app/
│   ├── Models/              # مدل‌های Eloquent
│   ├── Enums/               # Enumهای سفارشی
│   ├── Services/            # PriceCalculatorService, PdfService, ...
│   ├── Http/
│   │   ├── Controllers/
│   │   │   ├── Api/         # PricingController, TrackController
│   │   │   ├── OrderController.php
│   │   │   ├── PricingPageController.php
│   │   │   └── ShipmentPdfController.php
│   │   ├── Middleware/       # ApiKeyMiddleware
│   │   └── Requests/        # Form Request Validation
│   ├── Imports/             # ShippingRatesImport
│   ├── Console/Commands/    # ImportShippingRates
│   └── Filament/            # پنل مدیریت
│       ├── Resources/       # Country, Shipment, ShippingRate, ShipmentItem
│       └── Pages/           # Settings, Dashboard
├── database/
│   ├── migrations/          # ۷ migration فاز ۰
│   └── seeders/             # seeders داده اولیه
├── routes/
│   ├── web.php              # /order, /pricing, PDF downloads
│   └── api.php              # /api/v1/calculate, /api/v1/track/{awb}
└── config/
    ├── ifnex.php            # تنظیمات اختصاصی
    └── cors.php             # تنظیمات CORS

🔌 API Endpoints

روش مسیر توضیحات
POST /api/v1/calculate محاسبه قیمت حمل (بدون احراز هویت)
GET /api/v1/track/{awb_no} استعلام وضعیت مرسوله با API Key

درخواست نمونه محاسبه قیمت:

curl -X POST http://localhost:8000/api/v1/calculate \
  -H "Content-Type: application/json" \
  -d '{
    "direction": "Outbound",
    "type": "DOC_NORMAL",
    "country_iso": "AE",
    "weight": 1,
    "volumetric_weight": 1
  }'

🛠️ دستورات Artisan سفارشی

# ایمپورت نرخ‌های حمل از اکسل
php artisan ifnex:import:rates {path} [--clear] [--dry-run]

# ایمپورت داده‌های ترکینگ
php artisan ifnex:import:tracking {path}

🌐 صفحات عمومی

مسیر توضیحات
/ صفحه اصلی
/order فرم ثبت سفارش آنلاین
/order/success/{shipment} صفحه تایید سفارش
/pricing صفحه استعلام قیمت
/shipments/{id}/pdf/awb دانلود AWB (نیاز به لاگین)
/shipments/{id}/pdf/invoice دانلود INVOICE (نیاز به لاگین)
/shipments/{id}/pdf/label دانلود LABEL (نیاز به لاگین)

🔐 احراز هویت و دسترسی

نقش دسترسی
super_admin دسترسی کامل به همه بخش‌های Filament
tracking_operator مدیریت ترکینگ و رویدادها
data_entry وارد کردن داده‌های مرسوله
customer دسترسی محدود (در فاز بعدی)

⚠️ نکات مهم

  • Laravel 11 — با سوییچ از v12 انجام شد
  • Livewire 3.8.3 — فرم‌ها با AJAX کار می‌کنند، POST مستقیم به /admin/login ثبت نمی‌شود
  • Filament 3.3.x — پنل مدیریت در مسیر /admin
  • MySQL 8+ — الزام migrations با JSON columns
  • DomPDF — برای تولید PDFهای AWB, INVOICE, LABEL استفاده می‌شود

📚 مستندات بیشتر

برای اطلاعات کامل‌تر به پوشه 01_Documents در ریشه پروژه مراجعه کنید:

  • STATUS.md — وضعیت فعلی و گزارش پیشرفت
  • IFNEX_Phase0_Checklist.md — چک‌لیست دقیق فاز ۰
  • Phase0_Proposal.md — مرجع اصلی پروژه
  • EXCEL_ANALYSIS.md — تحلیل کامل فایل‌های اکسل عملیاتی

📜 لایسنس

© 2026 VernaSoft Group (Kazem Alghasi). All rights reserved.

این پروژه اختصاصی شرکت IFNEX است و کپی یا استفاده‌ی غیرمجاز از آن ممنوع است.