docs(roadmap): introduce phase 3.5 and future commercialization plans
Update project documentation to reflect the transition from Phase 3 to a new critical refinement phase (Phase 3.5) and outline long-term strategic goals. Key documentation updates: - Added Phase 3.5 (Essential Refinements) to the roadmap and checklist, focusing on multi-package support, parcel invoice forms, and internationalization (i18n). - Defined Phase 5 (Commercialization) including tiered subscription models (Starter, Business, Enterprise) and premium features. - Created `IFNEX_Commercial_Model.md` to detail monetization strategies. - Created `IFNEX_I18N_Strategy.md` to outline the multi-language implementation approach using Polylang. - Updated `README.md` with the revised project lifecycle and new documentation references.
This commit is contained in:
parent
a1a6dbdd8a
commit
b5e136a76d
270
01_Documents/IFNEX_Commercial_Model.md
Normal file
270
01_Documents/IFNEX_Commercial_Model.md
Normal file
@ -0,0 +1,270 @@
|
|||||||
|
# مدل تجاری IFNEX — پلنهای فروش
|
||||||
|
|
||||||
|
> **سند مطالعاتی** — برای فاز ۵
|
||||||
|
> **آخرین بروزرسانی:** 2026-08-29
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🎯 استراتژی کلی
|
||||||
|
|
||||||
|
بهجای نسخه رایگان، یه **مدل پولی چندلایهای** ارائه میشه. دلیل:
|
||||||
|
- بازار هدف (شرکتهای لجستیک بینالمللی) محدود اما پرداختکننده هست
|
||||||
|
- نیاز به پشتیبانی و نگهداری مستمر
|
||||||
|
- جلوگیری از سوءاستفاده از کد
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 💰 پلنهای پیشنهادی
|
||||||
|
|
||||||
|
### ۱. IFNEX Starter (پایه)
|
||||||
|
|
||||||
|
**هدف:** شرکتهای کوچک لجستیک که نیاز اساسی دارن
|
||||||
|
|
||||||
|
| ویژگی | توضیح |
|
||||||
|
|------|--------|
|
||||||
|
| **قیمت پیشنهادی** | $299 / سال (یا معادل ریالی) |
|
||||||
|
| **کاربران ادمین** | تا ۳ کاربر |
|
||||||
|
| **مشتریان** | نامحدود |
|
||||||
|
| **سفارشات ماهانه** | تا ۵۰۰ سفارش |
|
||||||
|
| **پشتیبانی** | ایمیل (۴۸ ساعت پاسخ) |
|
||||||
|
|
||||||
|
**امکانات:**
|
||||||
|
- ✅ پنل مشتری پایه (وردپرس)
|
||||||
|
- ✅ فرم سفارش ساده (تک بسته)
|
||||||
|
- ✅ پنل ادمین Filament
|
||||||
|
- ✅ PDF استاندارد (AWB, Invoice, Label)
|
||||||
|
- ✅ کیف پول + درگاه پرداخت
|
||||||
|
- ✅ اکسپورت اکسل پایه (لیست سفارشات)
|
||||||
|
- ✅ ترکینگ دستی
|
||||||
|
- ✅ یک زبان (فارسی یا انگلیسی)
|
||||||
|
|
||||||
|
**محدودیتها:**
|
||||||
|
- ❌ Multi-Package
|
||||||
|
- ❌ سیستم نمایندگی
|
||||||
|
- ❌ API ترکینگ زنده
|
||||||
|
- ❌ گزارشهای پیشرفته
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### ۲. IFNEX Business (متوسط)
|
||||||
|
|
||||||
|
**هدف:** شرکتهای متوسط با حجم بالاتر
|
||||||
|
|
||||||
|
| ویژگی | توضیح |
|
||||||
|
|------|--------|
|
||||||
|
| **قیمت پیشنهادی** | $899 / سال |
|
||||||
|
| **کاربران ادمین** | تا ۱۰ کاربر |
|
||||||
|
| **مشتریان** | نامحدود |
|
||||||
|
| **سفارشات ماهانه** | تا ۵۰۰۰ سفارش |
|
||||||
|
| **پشتیبانی** | ایمیل + تلفن (۲۴ ساعت پاسخ) |
|
||||||
|
|
||||||
|
**امکانات (تمام امکانات Starter +):**
|
||||||
|
- ✅ Multi-Package (چند بسته در یک سفارش)
|
||||||
|
- ✅ فرم Invoice کامل (برای PARCEL)
|
||||||
|
- ✅ سیستم نمایندگی (فاز ۴)
|
||||||
|
- ✅ گزارشهای مالی پیشرفته
|
||||||
|
- ✅ اکسپورت اکسل کامل (تمام فیلدها)
|
||||||
|
- ✅ API ترکینگ زنده (TrackingMore)
|
||||||
|
- ✅ دو زبان (فارسی + انگلیسی)
|
||||||
|
- ✅ نوتیفیکیشن SMS (محدود)
|
||||||
|
- ✅ تاریخچه کامل تغییرات
|
||||||
|
- ✅ کدهای تخفیف پیشرفته
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### ۳. IFNEX Enterprise (کامل)
|
||||||
|
|
||||||
|
**هدف:** شرکتهای بزرگ و سازمانی
|
||||||
|
|
||||||
|
| ویژگی | توضیح |
|
||||||
|
|------|--------|
|
||||||
|
| **قیمت پیشنهادی** | $1999 / سال (یا قراردادی) |
|
||||||
|
| **کاربران ادمین** | نامحدود |
|
||||||
|
| **مشتریان** | نامحدود |
|
||||||
|
| **سفارشات ماهانه** | نامحدود |
|
||||||
|
| **پشتیبانی** | اختصاصی ۲۴/۷ + Slack |
|
||||||
|
|
||||||
|
**امکانات (تمام امکانات Business +):**
|
||||||
|
- ✅ فرمساز Drag & Drop (Custom Fields)
|
||||||
|
- ✅ White-label branding (لوگو و رنگ اختصاصی)
|
||||||
|
- ✅ API Gateway برای توسعهدهندگان
|
||||||
|
- ✅ چند زبانه (نامحدود)
|
||||||
|
- ✅ پلاگین SMS نامحدود
|
||||||
|
- ✅ آموزش تیمی (On-site)
|
||||||
|
- ✅ SLA تضمینشده (Uptime 99.9%)
|
||||||
|
- ✅ بکاپ روزانه
|
||||||
|
- ✅ سرور اختصاصی
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📊 مقایسه پلنها
|
||||||
|
|
||||||
|
| ویژگی | Starter | Business | Enterprise |
|
||||||
|
|------|---------|----------|------------|
|
||||||
|
| **قیمت سالانه** | $299 | $899 | $1999 |
|
||||||
|
| **کاربران ادمین** | ۳ | ۱۰ | نامحدود |
|
||||||
|
| **سفارشات/ماه** | ۵۰۰ | ۵۰۰۰ | نامحدود |
|
||||||
|
| پنل مشتری | ✅ | ✅ | ✅ |
|
||||||
|
| فرم سفارش ساده | ✅ | ✅ | ✅ |
|
||||||
|
| Multi-Package | ❌ | ✅ | ✅ |
|
||||||
|
| فرم Invoice | ❌ | ✅ | ✅ |
|
||||||
|
| سیستم نمایندگی | ❌ | ✅ | ✅ |
|
||||||
|
| PDF استاندارد | ✅ | ✅ | ✅ |
|
||||||
|
| اکسپورت اکسل پایه | ✅ | ✅ | ✅ |
|
||||||
|
| اکسپورت اکسل کامل | ❌ | ✅ | ✅ |
|
||||||
|
| API ترکینگ زنده | ❌ | ✅ | ✅ |
|
||||||
|
| گزارشهای پیشرفته | ❌ | ✅ | ✅ |
|
||||||
|
| فرمساز Drag & Drop | ❌ | ❌ | ✅ |
|
||||||
|
| White-label | ❌ | ❌ | ✅ |
|
||||||
|
| API Gateway | ❌ | ❌ | ✅ |
|
||||||
|
| چند زبانه | ۱ زبان | ۲ زبان | نامحدود |
|
||||||
|
| پشتیبانی | ایمیل | ایمیل+تلفن | ۲۴/۷ |
|
||||||
|
| SLA | ❌ | ❌ | ✅ 99.9% |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🚀 برنامه عرضه به بازار
|
||||||
|
|
||||||
|
### مرحله ۱: آمادهسازی (فاز ۳.۵)
|
||||||
|
- تکمیل Multi-Package
|
||||||
|
- تکمیل فرم Invoice
|
||||||
|
- تکمیل چندزبانه
|
||||||
|
- تست کامل
|
||||||
|
- مستندسازی
|
||||||
|
|
||||||
|
### مرحله ۲: عرضه Starter (فاز ۵ - Q1 2027)
|
||||||
|
- راهاندازی سایت فروش
|
||||||
|
- صفحه قیمتگذاری
|
||||||
|
- دمو آنلاین
|
||||||
|
- سیستم لایسنس
|
||||||
|
- مستندات نصب
|
||||||
|
|
||||||
|
### مرحله ۳: عرضه Business (فاز ۵ - Q2 2027)
|
||||||
|
- تکمیل سیستم نمایندگی (فاز ۴)
|
||||||
|
- گزارشهای پیشرفته
|
||||||
|
- API ترکینگ زنده
|
||||||
|
|
||||||
|
### مرحله ۴: عرضه Enterprise (فاز ۵ - Q3 2027)
|
||||||
|
- فرمساز Drag & Drop
|
||||||
|
- White-label
|
||||||
|
- API Gateway
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 💡 مدلهای درآمدی مکمل
|
||||||
|
|
||||||
|
### ۱. سفارشیسازی
|
||||||
|
- سفارشیسازی برند و رنگ: $499 یکبار
|
||||||
|
- توسعه فیچر اختصاصی: $50-100 / ساعت
|
||||||
|
|
||||||
|
### ۲. آموزش
|
||||||
|
- آموزش آنلاین (گروهی): $99 / نفر
|
||||||
|
- آموزش On-site (۳ روز): $1500
|
||||||
|
|
||||||
|
### ۳. مهاجرت داده
|
||||||
|
- از سیستم قدیمی به IFNEX: $299-999 (بسته به حجم)
|
||||||
|
|
||||||
|
### ۴. پشتیبانی ماهانه
|
||||||
|
- پشتیبانی ماهانه Starter: $29 / ماه
|
||||||
|
- پشتیبانی ماهانه Business: $79 / ماه
|
||||||
|
- پشتیبانی ماهانه Enterprise: $199 / ماه
|
||||||
|
|
||||||
|
### ۵. افزونهها (Add-ons)
|
||||||
|
- پلاگین SMS: $99 / سال
|
||||||
|
- API ترکینگ زنده: $199 / سال
|
||||||
|
- گزارشهای پیشرفته: $149 / سال
|
||||||
|
- اکسپورت اکسل کامل: $99 / سال
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🔐 سیستم لایسنس
|
||||||
|
|
||||||
|
### مدل پیشنهادی: License Key + Domain Lock
|
||||||
|
|
||||||
|
```php
|
||||||
|
// در بکاند IFNEX (سرور لایسنس):
|
||||||
|
License::create([
|
||||||
|
'key' => Str::uuid(),
|
||||||
|
'plan' => 'business',
|
||||||
|
'domain' => 'customer-domain.com',
|
||||||
|
'expires_at' => now()->addYear(),
|
||||||
|
'features' => ['multi_package', 'agency_system', ...],
|
||||||
|
]);
|
||||||
|
|
||||||
|
// در پلاگین مشتری (ولیدیشن):
|
||||||
|
$response = Http::post('https://license.ifnex.net/validate', [
|
||||||
|
'key' => $license_key,
|
||||||
|
'domain' => $_SERVER['HTTP_HOST'],
|
||||||
|
]);
|
||||||
|
```
|
||||||
|
|
||||||
|
### ویژگیها:
|
||||||
|
- **Domain Lock:** لایسنس فقط برای یه دامنه کار میکنه
|
||||||
|
- **Feature Flags:** فعالسازی فیچرها بر اساس پلن
|
||||||
|
- **Auto-renew:** تمدید خودکار با پرداخت
|
||||||
|
- **Grace Period:** ۷ روز پس از انقضا
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📈 برآورد درآمد
|
||||||
|
|
||||||
|
### سال اول (2027):
|
||||||
|
| پلن | تعداد مشتریان | درآمد |
|
||||||
|
|------|--------------|-------|
|
||||||
|
| Starter | ۲۰ | $5,980 |
|
||||||
|
| Business | ۸ | $7,192 |
|
||||||
|
| Enterprise | ۲ | $3,998 |
|
||||||
|
| **مجموع** | **۳۰** | **$17,170** |
|
||||||
|
|
||||||
|
### سال دوم (2028):
|
||||||
|
| پلن | تعداد مشتریان | درآمد |
|
||||||
|
|------|--------------|-------|
|
||||||
|
| Starter | ۵۰ | $14,950 |
|
||||||
|
| Business | ۲۰ | $17,980 |
|
||||||
|
| Enterprise | ۵ | $9,995 |
|
||||||
|
| **مجموع** | **۷۵** | **$42,925** |
|
||||||
|
|
||||||
|
### سال سوم (2029):
|
||||||
|
| پلن | تعداد مشتریان | درآمد |
|
||||||
|
|------|--------------|-------|
|
||||||
|
| Starter | ۱۰۰ | $29,900 |
|
||||||
|
| Business | ۴۰ | $35,960 |
|
||||||
|
| Enterprise | ۱۰ | $19,990 |
|
||||||
|
| **مجموع** | **۱۵۰** | **$85,850** |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ⚠️ ریسکها و چالشها
|
||||||
|
|
||||||
|
### ریسکهای فنی:
|
||||||
|
1. **پیچیدگی لایسنس:** امکان دور زدن لایسنس در پروژههای open-source
|
||||||
|
2. **پشتیبانی چند نسخه:** نگهداری کد برای پلنهای مختلف
|
||||||
|
3. **آپدیتها:** هماهنگسازی آپدیتها بین پلنها
|
||||||
|
|
||||||
|
### ریسکهای تجاری:
|
||||||
|
1. **رقابت:** سیستمهای مشابه (DHL, FedEx) امکانات رایگان دارن
|
||||||
|
2. **قیمت:** ممکنه برای شرکتهای کوچک گرون باشه
|
||||||
|
3. **اعتماد:** برند جدید، نیاز به زمان برای جلب اعتماد
|
||||||
|
|
||||||
|
### راهکارها:
|
||||||
|
- **ارائه آزمایشی:** ۱۴ روز رایگان (Trial)
|
||||||
|
- **پشتیبانی قوی:** تمایز با پشتیبانی عالی
|
||||||
|
- **جامعه کاربران:** ساخت انجمن و اشتراک تجربه
|
||||||
|
- **آپدیت منظم:** آپدیتهای ماهانه با فیچرهای جدید
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📋 کارهای آینده (فاز ۵)
|
||||||
|
|
||||||
|
- [ ] طراحی سایت فروش (landing page + pricing)
|
||||||
|
- [ ] سیستم لایسنس سرور
|
||||||
|
- [ ] پنل مدیریت مشتریان
|
||||||
|
- [ ] سیستم پرداخت اشتراکی
|
||||||
|
- [ ] مستندات نصب و راهاندازی
|
||||||
|
- [ ] ویدیوهای آموزشی
|
||||||
|
- [ ] دمو آنلاین
|
||||||
|
- [ ] سیستم تیکت پشتیبانی
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
> 2026 VernaSoft Group. Internal use only.
|
||||||
218
01_Documents/IFNEX_I18N_Strategy.md
Normal file
218
01_Documents/IFNEX_I18N_Strategy.md
Normal file
@ -0,0 +1,218 @@
|
|||||||
|
# استراتژی چندزبانه IFNEX (i18n)
|
||||||
|
|
||||||
|
> **سند مطالعاتی** — برای فاز ۳.۵ و فاز ۵
|
||||||
|
> **آخرین بروزرسانی:** 2026-08-29
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🎯 هدف
|
||||||
|
|
||||||
|
پشتیبانی کامل از چند زبان در فرانتاند وردپرس و بکاند لاراول، با:
|
||||||
|
- زبان فارسی (پیشفرض، RTL)
|
||||||
|
- زبان انگلیسی (LTR)
|
||||||
|
- آماده برای افزودن زبانهای دیگر در آینده (عربی، چینی، و...)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🏗️ معماری فعلی
|
||||||
|
|
||||||
|
### وردپرس
|
||||||
|
- **پلاگین:** Polylang (نصبشده)
|
||||||
|
- **قالب IFNEX:** فقط فارسی
|
||||||
|
- **پلاگین IFNEX Bridge:** فقط فارسی (hard-coded)
|
||||||
|
- **زبانهای فعال:** فارسی (پیشفرض) + انگلیسی
|
||||||
|
|
||||||
|
### لاراول
|
||||||
|
- **APP_LOCALE:** fa
|
||||||
|
- **APP_FALLBACK_LOCALE:** fa
|
||||||
|
- **فایلهای زبان:** موجود در `lang/fa/` و `lang/en/`
|
||||||
|
- **تاریخ:** morilog/jalali (فارسی) + Carbon (انگلیسی)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📋 برنامه پیادهسازی فاز ۳.۵
|
||||||
|
|
||||||
|
### ۱. وردپرس — استخراج رشتهها
|
||||||
|
|
||||||
|
#### ۱.۱ فایلهای PHP پلاگین
|
||||||
|
تمام رشتههای hard-coded فارسی باید با توابع ترجمه جایگزین شوند:
|
||||||
|
|
||||||
|
```php
|
||||||
|
// ❌ قبل:
|
||||||
|
return '<p class="ifnex-error">برای مشاهده پروفایل، باید وارد شوید.</p>';
|
||||||
|
|
||||||
|
// ✅ بعد:
|
||||||
|
return '<p class="ifnex-error">' . __('برای مشاهده پروفایل، باید وارد شوید.', 'ifnex-bridge') . '</p>';
|
||||||
|
```
|
||||||
|
|
||||||
|
#### فایلهای موردنیاز برای اصلاح:
|
||||||
|
- [ ] `ifnex-bridge.php`
|
||||||
|
- [ ] `includes/api-client.php`
|
||||||
|
- [ ] `includes/user-bridge.php`
|
||||||
|
- [ ] `includes/shortcodes.php` (بزرگترین فایل)
|
||||||
|
- [ ] `includes/tracking-form.php`
|
||||||
|
|
||||||
|
#### ۱.۲ فایلهای JS
|
||||||
|
استفاده از `wp_localize_script` برای ارسال ترجمهها:
|
||||||
|
|
||||||
|
```php
|
||||||
|
// در PHP:
|
||||||
|
wp_localize_script('ifnex-order-form-js', 'ifnex_i18n', [
|
||||||
|
'loading' => __('در حال بارگذاری...', 'ifnex-bridge'),
|
||||||
|
'error_required' => __('لطفاً همه فیلدها را تکمیل کنید.', 'ifnex-bridge'),
|
||||||
|
'select_country' => __('انتخاب کشور...', 'ifnex-bridge'),
|
||||||
|
// ...
|
||||||
|
]);
|
||||||
|
```
|
||||||
|
|
||||||
|
```javascript
|
||||||
|
// در JS:
|
||||||
|
$('#ifnex-from-country').empty().append(
|
||||||
|
'<option value="">' + ifnex_i18n.select_country + '</option>'
|
||||||
|
);
|
||||||
|
```
|
||||||
|
|
||||||
|
### ۲. ساخت فایلهای ترجمه
|
||||||
|
|
||||||
|
#### ۲.۱ ساختار پوشه
|
||||||
|
```
|
||||||
|
ifnex-bridge/
|
||||||
|
└── languages/
|
||||||
|
├── ifnex-bridge-fa_IR.po
|
||||||
|
├── ifnex-bridge-fa_IR.mo
|
||||||
|
├── ifnex-bridge-en_US.po
|
||||||
|
└── ifnex-bridge-en_US.mo
|
||||||
|
```
|
||||||
|
|
||||||
|
#### ۲.۲ ابزارها
|
||||||
|
- **Poedit** — برای ویرایش فایلهای `.po`
|
||||||
|
- **WP-CLI** — برای استخراج خودکار: `wp i18n make-pot ifnex-bridge/ languages/ifnex-bridge.pot`
|
||||||
|
|
||||||
|
### ۳. اصلاح CSS برای RTL/LTR
|
||||||
|
|
||||||
|
```css
|
||||||
|
/* پیشفرض RTL (فارسی) */
|
||||||
|
.ifnex-form-grid {
|
||||||
|
direction: rtl;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* LTR برای انگلیسی */
|
||||||
|
html[lang="en"] .ifnex-form-grid {
|
||||||
|
direction: ltr;
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
### ۴. اصلاح قالب IFNEX
|
||||||
|
|
||||||
|
- [ ] استخراج رشتههای قالب
|
||||||
|
- [ ] افزودن فایلهای ترجمه قالب
|
||||||
|
- [ ] اصلاح CSS برای پشتیبانی RTL/LTR
|
||||||
|
|
||||||
|
### ۵. لاراول
|
||||||
|
|
||||||
|
#### ۵.۱ فایلهای زبان
|
||||||
|
```
|
||||||
|
lang/
|
||||||
|
├── fa/
|
||||||
|
│ ├── messages.php
|
||||||
|
│ ├── validation.php
|
||||||
|
│ └── ...
|
||||||
|
└── en/
|
||||||
|
├── messages.php
|
||||||
|
├── validation.php
|
||||||
|
└── ...
|
||||||
|
```
|
||||||
|
|
||||||
|
#### ۵.۲ API پاسخها
|
||||||
|
```php
|
||||||
|
// در Controller:
|
||||||
|
return response()->json([
|
||||||
|
'message' => __('messages.order_created'),
|
||||||
|
], 201);
|
||||||
|
```
|
||||||
|
|
||||||
|
#### ۵.۳ هدر Accept-Language
|
||||||
|
- اضافهکردن middleware برای تشخیص زبان از هدر `Accept-Language`
|
||||||
|
- تنظیم `App::setLocale()` بر اساس هدر
|
||||||
|
|
||||||
|
```php
|
||||||
|
// middleware:
|
||||||
|
public function handle($request, Closure $next)
|
||||||
|
{
|
||||||
|
$locale = $request->header('Accept-Language', 'fa');
|
||||||
|
App::setLocale(substr($locale, 0, 2));
|
||||||
|
return $next($request);
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
### ۶. وردپرس Polylang Integration
|
||||||
|
|
||||||
|
#### ۶.۱ ثبت strings در Polylang
|
||||||
|
```php
|
||||||
|
// در functions.php قالب:
|
||||||
|
pll_register_string('ifnex-bridge', 'برای مشاهده پروفایل، باید وارد شوید.');
|
||||||
|
```
|
||||||
|
|
||||||
|
#### ۶.۲ استفاده در شورتکدها
|
||||||
|
```php
|
||||||
|
$login_prompt = pll__('برای مشاهده پروفایل، باید وارد شوید.');
|
||||||
|
```
|
||||||
|
|
||||||
|
#### ۶.۳ ترجمه صفحات
|
||||||
|
- ساخت نسخه انگلیسی برای صفحات: `/en/my-account/`, `/en/wallet/`, و...
|
||||||
|
- اتصال صفحات فارسی و انگلیسی در Polylang
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🎯 معیارهای پذیرش (Acceptance Criteria)
|
||||||
|
|
||||||
|
### فاز ۳.۵:
|
||||||
|
- [ ] تمام رشتههای پلاگین IFNEX Bridge قابل ترجمه هستند
|
||||||
|
- [ ] فایلهای `.po/.mo` برای fa_IR و en_US موجود است
|
||||||
|
- [ ] سایت در زبان انگلیسی بهدرستی نمایش داده میشود
|
||||||
|
- [ ] فرم سفارش در زبان انگلیسی کار میکند
|
||||||
|
- [ ] پیامهای خطا در زبان انگلیسی نمایش داده میشوند
|
||||||
|
- [ ] CSS در هر دو حالت RTL و LTR درست است
|
||||||
|
- [ ] API لاراول بر اساس هدر `Accept-Language` پاسخ میدهد
|
||||||
|
|
||||||
|
### فاز ۵ (آینده):
|
||||||
|
- [ ] افزودن زبان عربی
|
||||||
|
- [ ] افزودن زبان چینی
|
||||||
|
- [ ] ترجمه خودکار با API (Google Translate)
|
||||||
|
- [ ] انتخاب زبان در فرم سفارش
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📊 برآورد زمان
|
||||||
|
|
||||||
|
| بخش | زمان تخمینی |
|
||||||
|
|------|-------------|
|
||||||
|
| استخراج رشتهها (PHP) | ۱ روز |
|
||||||
|
| استخراج رشتهها (JS) | نصف روز |
|
||||||
|
| ساخت فایلهای ترجمه | ۱ روز |
|
||||||
|
| اصلاح CSS RTL/LTR | نصف روز |
|
||||||
|
| تست و رفع اشکال | ۱ روز |
|
||||||
|
| **مجموع** | **۴ روز** |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ⚠️ نکات مهم
|
||||||
|
|
||||||
|
1. **هماهنگی با کارفرما:** قبل از شروع، باید تأیید بشه که ترجمه انگلیسی رو کارفرما تأمین میکنه یا خودمون انجام میدیم.
|
||||||
|
2. **تاریخ:** برای زبان انگلیسی، تاریخ میلادی نمایش داده بشه (نه شمسی).
|
||||||
|
3. **اعداد:** برای زبان انگلیسی، اعداد لاتین نمایش داده بشه.
|
||||||
|
4. **جهت:** RTL برای فارسی/عربی، LTR برای انگلیسی/چینی.
|
||||||
|
5. **فونت:** برای زبان انگلیسی از فونت مناسب (مثل Inter یا Roboto) استفاده بشه.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📚 منابع
|
||||||
|
|
||||||
|
- [Polylang Documentation](https://polylang.pro/doc/)
|
||||||
|
- [WordPress Internationalization](https://developer.wordpress.org/plugins/internationalization/)
|
||||||
|
- [Laravel Localization](https://laravel.com/docs/localization)
|
||||||
|
- [WP-CLI i18n](https://developer.wordpress.org/cli/commands/i18n/)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
> 2026 VernaSoft Group. Internal use only.
|
||||||
@ -16,9 +16,11 @@
|
|||||||
| فاز ۱ (پنل مشتری) | ✅ تکمیل شده | 100% |
|
| فاز ۱ (پنل مشتری) | ✅ تکمیل شده | 100% |
|
||||||
| فاز ۲ (پرداخت و کیف پول) | ✅ تکمیل شده | 100% |
|
| فاز ۲ (پرداخت و کیف پول) | ✅ تکمیل شده | 100% |
|
||||||
| فاز ۳ (یکپارچهسازی) | ✅ تکمیل شده | 100% |
|
| فاز ۳ (یکپارچهسازی) | ✅ تکمیل شده | 100% |
|
||||||
|
| **فاز ۳.۵ (اصلاحات اساسی)** | 🔄 در دست اقدام | 0% |
|
||||||
| فاز ۴ (سیستم نمایندگی) | 📋 مطالعاتی | 0% |
|
| فاز ۴ (سیستم نمایندگی) | 📋 مطالعاتی | 0% |
|
||||||
|
| فاز ۵ (تجاریسازی) | 📋 مطالعاتی | 0% |
|
||||||
|
|
||||||
> **نکته:** مورد ۱۹ (سیستم نمایندگی) به فاز ۴ منتقل شد. ۱۸ مورد کارفرما + تستهای لوکال تکمیل شد.
|
> **نکته:** فاز ۳.۵ شامل اصلاحات اساسی است که پس از تست لوکال شناسایی شد. این فاز قبل از ارائه نهایی به کارفرما باید تکمیل شود.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@ -285,9 +287,87 @@
|
|||||||
- [x] اصلاح `.env` و `ZARINPAL_FRONTEND_SUCCESS_URL` / `FAILURE_URL`
|
- [x] اصلاح `.env` و `ZARINPAL_FRONTEND_SUCCESS_URL` / `FAILURE_URL`
|
||||||
- [x] تست موفق تمام جریانها: لاگین → سفارش → پرداخت → شارژ کیف پول → نوتیفیکیشن
|
- [x] تست موفق تمام جریانها: لاگین → سفارش → پرداخت → شارژ کیف پول → نوتیفیکیشن
|
||||||
|
|
||||||
|
### بازطراحی PDFها:
|
||||||
|
- [x] نصب `picqer/php-barcode-generator`
|
||||||
|
- [x] بازطراحی AWB با بارکد، From/To کامل، Value، Service، Type
|
||||||
|
- [x] بازطراحی Invoice با جدول ۹ ردیفه، اعلان قانونی، بارکد پایین
|
||||||
|
- [x] بازطراحی Label با اندازه ۱۰۰×۱۵۰mm و بارکد بزرگ
|
||||||
|
- [x] اضافهشدن شرط DOC/PARCEL برای Invoice (فقط PARCEL فاکتور داره)
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## بخش ۱۱: مستندات
|
## بخش ۱۱: فاز ۳.۵ — اصلاحات اساسی 🔄
|
||||||
|
|
||||||
|
> ⚠️ **این بخش قبل از ارائه نهایی به کارفرما باید تکمیل شود.**
|
||||||
|
|
||||||
|
### ۱۱.۱ — Multi-Package در فرم سفارش مشتری 🔴 ضروری
|
||||||
|
|
||||||
|
**مشکل:** بکاند و پنل ادمین از چند بسته پشتیبانی میکنند، ولی فرم سفارش مشتری فقط یه بسته میگیره.
|
||||||
|
|
||||||
|
- [ ] اصلاح `ifnex-order-form.js` — افزودن قابلیت "افزودن بسته دیگر"
|
||||||
|
- [ ] اصلاح HTML فرم — نمایش لیست بستههای اضافهشده
|
||||||
|
- [ ] محاسبه مجموع وزنها و قیمت نهایی
|
||||||
|
- [ ] اصلاح `buildOrderData()` — ارسال آرایه `packages[]`
|
||||||
|
- [ ] اصلاح API `POST /customer/orders` — پذیرش `packages[]`
|
||||||
|
- [ ] ایجاد خودکار `ShipmentPackage` هنگام ثبت سفارش
|
||||||
|
- [ ] تست با چند بسته
|
||||||
|
|
||||||
|
### ۱۱.۲ — فرم Invoice برای محمولههای PARCEL 🔴 ضروری
|
||||||
|
|
||||||
|
**مشکل:** وقتی مشتری نوع PARCEL رو انتخاب میکنه، باید فرم اقلام گمرکی (Invoice) رو پر کنه.
|
||||||
|
|
||||||
|
- [ ] اضافهکردن مرحله جدید به فرم سفارش (مرحله ۲.۵)
|
||||||
|
- [ ] نمایش این مرحله فقط وقتی نوع = PARCEL
|
||||||
|
- [ ] فیلدهای هر آیتم: Description, HS Code, Quantity, Unit Price, Total
|
||||||
|
- [ ] امکان افزودن چندین آیتم (تا ۹ ردیف)
|
||||||
|
- [ ] محاسبه خودکار Total و نمایش مجموع
|
||||||
|
- [ ] ارسال `items[]` به API
|
||||||
|
- [ ] ایجاد خودکار `ShipmentItem` هنگام ثبت سفارش
|
||||||
|
- [ ] تست با چند آیتم
|
||||||
|
|
||||||
|
### ۱۱.۳ — پشتیبانی چندزبانه (i18n) 🟡 مهم
|
||||||
|
|
||||||
|
**مشکل:** سایت ۲ زبانه (فارسی + انگلیسی) هست با Polylang، ولی:
|
||||||
|
- تمام شورتکدها و فرمها فقط فارسی هستن
|
||||||
|
- پیامهای خطا و موفقیت فقط فارسی هستن
|
||||||
|
|
||||||
|
- [ ] استخراج تمام رشتههای متنی به فایلهای ترجمه
|
||||||
|
- [ ] استفاده از `__()` و `_e()` در وردپرس
|
||||||
|
- [ ] استفاده از `wp_localize_script` برای ارسال ترجمهها به JS
|
||||||
|
- [ ] افزودن فایلهای `.po/.mo` برای زبانهای فارسی و انگلیسی
|
||||||
|
- [ ] اصلاح تمام فایلهای `ifnex-bridge/includes/*.php`
|
||||||
|
- [ ] اصلاح `ifnex-order-form.js` (استفاده از متغیرهای ترجمه)
|
||||||
|
- [ ] اصلاح CSS برای پشتیبانی RTL/LTR
|
||||||
|
- [ ] تست زبان انگلیسی
|
||||||
|
|
||||||
|
### ۱۱.۴ — تست و نهاییسازی 🟡 مهم
|
||||||
|
|
||||||
|
- [ ] تست تولید PDF با بارکد روی سرور
|
||||||
|
- [ ] تست Multi-Package
|
||||||
|
- [ ] تست Invoice Form برای PARCEL
|
||||||
|
- [ ] تست زبان انگلیسی
|
||||||
|
- [ ] دیپلوی نهایی روی سرور
|
||||||
|
- [ ] تست نهایی روی سرور
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## بخش ۱۲: فاز ۵ — تجاریسازی 📋
|
||||||
|
|
||||||
|
> طرح مطالعاتی — مدل پولی چندلایهای
|
||||||
|
|
||||||
|
### پلنهای پیشنهادی:
|
||||||
|
- [ ] **IFNEX Starter** — پلن پایه پرداختشده
|
||||||
|
- [ ] **IFNEX Business** — پلن متوسط
|
||||||
|
- [ ] **IFNEX Enterprise** — پلن کامل
|
||||||
|
|
||||||
|
### فیچرهای Premium:
|
||||||
|
- [ ] فرمساز Drag & Drop
|
||||||
|
- [ ] White-label branding
|
||||||
|
- [ ] API Gateway برای توسعهدهندگان
|
||||||
|
- [ ] اکسپورت اکسل کامل (تمام فیلدها)
|
||||||
|
- [ ] API ترکینگ زنده (TrackingMore/17track)
|
||||||
|
- [ ] پلاگین SMS
|
||||||
|
- [ ] گزارشهای مالی پیشرفته
|
||||||
|
|
||||||
- [x] IFNEX_Phase0_Checklist.md (همین فایل)
|
- [x] IFNEX_Phase0_Checklist.md (همین فایل)
|
||||||
- [x] IFNEX_File_Map.md — نقشه فایلهای پروژه
|
- [x] IFNEX_File_Map.md — نقشه فایلهای پروژه
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
> **آخرین بروزرسانی:** 2026-08-29
|
> **آخرین بروزرسانی:** 2026-08-29
|
||||||
> **توسعهدهنده:** VernaSoft Group — Kazem Alghasi
|
> **توسعهدهنده:** VernaSoft Group — Kazem Alghasi
|
||||||
> **وضعیت کلی:** فاز ۰، ۱، ۲ و ۳ تکمیل شد ✅
|
> **وضعیت کلی:** فاز ۰، ۱، ۲، ۳ تکمیل شد ✅ — فاز ۳.۵ در دست اقدام 🔄
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@ -14,7 +14,9 @@
|
|||||||
| فاز ۱ | پنل مشتری وردپرس | ✅ تکمیل شده | 100% |
|
| فاز ۱ | پنل مشتری وردپرس | ✅ تکمیل شده | 100% |
|
||||||
| فاز ۲ | پرداخت و کیف پول | ✅ تکمیل شده | 100% |
|
| فاز ۲ | پرداخت و کیف پول | ✅ تکمیل شده | 100% |
|
||||||
| فاز ۳ | یکپارچهسازی و بهبود | ✅ تکمیل شده | 100% |
|
| فاز ۳ | یکپارچهسازی و بهبود | ✅ تکمیل شده | 100% |
|
||||||
| فاز ۴ (آینده) | سیستم نمایندگی | 📋 مطالعاتی | 0% |
|
| **فاز ۳.۵** | **اصلاحات اساسی** | 🔄 در دست اقدام | 0% |
|
||||||
|
| فاز ۴ | سیستم نمایندگی | 📋 مطالعاتی | 0% |
|
||||||
|
| فاز ۵ | تجاریسازی و Premium | 📋 مطالعاتی | 0% |
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@ -24,7 +26,7 @@
|
|||||||
|
|
||||||
### انجام شده:
|
### انجام شده:
|
||||||
- دیتابیس کامل با ۴ زون مجزا (Export/Import × Parcel/Doc) + ۳ نوع سرویس
|
- دیتابیس کامل با ۴ زون مجزا (Export/Import × Parcel/Doc) + ۳ نوع سرویس
|
||||||
- ۱۳ مدل Eloquent با Enum casts و روابط کامل
|
- ۱۷ مدل Eloquent با Enum casts و روابط کامل
|
||||||
- Seeders کشورها (۲۳۳ کشور) و تنظیمات سیستم
|
- Seeders کشورها (۲۳۳ کشور) و تنظیمات سیستم
|
||||||
- API ترکینگ (`GET /api/v1/track/{awb}`) با API Key + Rate Limiting
|
- API ترکینگ (`GET /api/v1/track/{awb}`) با API Key + Rate Limiting
|
||||||
- API قیمتگذاری (`POST /api/v1/calculate`)
|
- API قیمتگذاری (`POST /api/v1/calculate`)
|
||||||
@ -42,16 +44,8 @@
|
|||||||
|
|
||||||
### انجام شده:
|
### انجام شده:
|
||||||
- **Bridge Auth** (وردپرس → لاراول بدون رمز عبور) با API Key مشترک
|
- **Bridge Auth** (وردپرس → لاراول بدون رمز عبور) با API Key مشترک
|
||||||
- شورتکدهای وردپرس: فرم سفارش چند مرحلهای، لیست سفارشات، جزئیات، پرداخت
|
- شورتکدهای وردپرس: ۱۰+ شورتکد برای تمام صفحات
|
||||||
- دشبورد جامع مشتری شامل ۸ تب:
|
- دشبورد جامع مشتری شامل ۸ تب
|
||||||
- 📊 داشبورد (آمار + موجودی)
|
|
||||||
- 📦 سفارشات من (با فیلتر وضعیت)
|
|
||||||
- ➕ ثبت سفارش جدید (Wizard ۴ مرحلهای)
|
|
||||||
- 💰 کیف پول + شارژ آنلاین
|
|
||||||
- 📊 تراکنشها
|
|
||||||
- 🚚 رهگیری مرسوله
|
|
||||||
- 🔔 اعلانها (با badge unread)
|
|
||||||
- 👤 پروفایل
|
|
||||||
- API مشتری: پروفایل، کشورها، سفارشات، لغو، نوتیفیکیشن
|
- API مشتری: پروفایل، کشورها، سفارشات، لغو، نوتیفیکیشن
|
||||||
- قالب سفارشی IFNEX برای وردپرس
|
- قالب سفارشی IFNEX برای وردپرس
|
||||||
|
|
||||||
@ -67,7 +61,7 @@
|
|||||||
- پرداخت از کیف پول و درگاه بانکی (Zarinpal)
|
- پرداخت از کیف پول و درگاه بانکی (Zarinpal)
|
||||||
- Mock Gateway (شبیهسازی درگاه برای تست لوکال)
|
- Mock Gateway (شبیهسازی درگاه برای تست لوکال)
|
||||||
- سیستم ارز (Currency CRUD + بروزرسانی خودکار نرخ از API)
|
- سیستم ارز (Currency CRUD + بروزرسانی خودکار نرخ از API)
|
||||||
- Multi-package (بستههای چندگانه مرسوله)
|
- Multi-package (بستههای چندگانه مرسوله — در پنل ادمین)
|
||||||
- تاریخچه تغییرات وضعیت (ShipmentStatusHistory)
|
- تاریخچه تغییرات وضعیت (ShipmentStatusHistory)
|
||||||
- نوتیفیکیشن دیتابیس (ادمین و مشتری)
|
- نوتیفیکیشن دیتابیس (ادمین و مشتری)
|
||||||
- تولید PDF حرفهای (AWB, Invoice, Label) با بارکد
|
- تولید PDF حرفهای (AWB, Invoice, Label) با بارکد
|
||||||
@ -116,10 +110,91 @@
|
|||||||
- ✅ اصلاح ارور "[object Object]" در پاسخهای AJAX
|
- ✅ اصلاح ارور "[object Object]" در پاسخهای AJAX
|
||||||
- ✅ اصلاح `ifnex_enqueue_order_assets` برای لود صحیح JS
|
- ✅ اصلاح `ifnex_enqueue_order_assets` برای لود صحیح JS
|
||||||
|
|
||||||
|
#### بازطراحی PDFها (فاز ۳ نهایی):
|
||||||
|
- ✅ نصب `picqer/php-barcode-generator`
|
||||||
|
- ✅ بازطراحی AWB با بارکد، From/To کامل، Value، Service، Type
|
||||||
|
- ✅ بازطراحی Invoice با جدول ۹ ردیفه، اعلان قانونی، بارکد پایین
|
||||||
|
- ✅ بازطراحی Label با اندازه ۱۰۰×۱۵۰mm و بارکد بزرگ
|
||||||
|
- ✅ اضافهشدن شرط DOC/PARCEL برای Invoice (فقط PARCEL فاکتور داره)
|
||||||
|
|
||||||
### مورد ۱۹ (نمایندگی) به فاز ۴ منتقل شد:
|
### مورد ۱۹ (نمایندگی) به فاز ۴ منتقل شد:
|
||||||
- طرح مطالعاتی آماده است
|
- طرح مطالعاتی آماده است
|
||||||
- منتظر تأیید و تسویه کارفرما برای فاز ۳
|
- منتظر تأیید و تسویه کارفرما برای فاز ۳
|
||||||
- فاز ۴ جداگانه اجرا خواهد شد
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## فاز ۳.۵ — اصلاحات اساسی 🔄
|
||||||
|
|
||||||
|
**هدف:** رفع نواقص شناساییشده پس از تست لوکال + افزودن قابلیتهای ضروری
|
||||||
|
|
||||||
|
> ⚠️ **این فاز قبل از ارائه نهایی به کارفرما باید تکمیل شود.**
|
||||||
|
|
||||||
|
### ۳.۵.۱ — Multi-Package در فرم سفارش مشتری 🔴 ضروری
|
||||||
|
|
||||||
|
**مشکل:** در حال حاضر، مشتری میتونه فقط یه بسته ثبت کنه. در صورتی که:
|
||||||
|
- بکاند پشتیبانی از چند بسته (ShipmentPackage) رو داره ✅
|
||||||
|
- پنل ادمین Filament هم Repeater برای بستهها داره ✅
|
||||||
|
- ولی فرم سفارش مشتری (وردپرس) فقط یه بسته میگیره ❌
|
||||||
|
|
||||||
|
**راه حل:**
|
||||||
|
- اضافهکردن قابلیت "افزودن بسته دیگر" در مرحله ۱ فرم سفارش
|
||||||
|
- هر بسته شامل: وزن واقعی، وزن حجمی، ابعاد، تعداد
|
||||||
|
- محاسبه مجموع وزنها و قیمت نهایی
|
||||||
|
- نمایش لیست بستههای اضافهشده قبل از تأیید نهایی
|
||||||
|
|
||||||
|
**تأثیرات:**
|
||||||
|
- اصلاح `ifnex-order-form.js` (افزودن Repeater UI)
|
||||||
|
- اصلاح `buildOrderData()` (ارسال آرایه packages)
|
||||||
|
- اصلاح API `POST /customer/orders` (پذیرش packages[])
|
||||||
|
- اصلاح مدل Shipment (ایجاد خودکار ShipmentPackage)
|
||||||
|
|
||||||
|
### ۳.۵.۲ — فرم Invoice برای محمولههای PARCEL 🔴 ضروری
|
||||||
|
|
||||||
|
**مشکل:** وقتی مشتری نوع محموله رو PARCEL انتخاب میکنه، باید فرم Invoice (اقلام گمرکی) رو پر کنه. در حال حاضر این فرم وجود نداره.
|
||||||
|
|
||||||
|
**راه حل:**
|
||||||
|
- اضافهکردن مرحله جدید به فرم سفارش (مرحله ۲.۵)
|
||||||
|
- نمایش این مرحله فقط وقتی نوع = PARCEL
|
||||||
|
- فیلدهای هر آیتم: Description, HS Code, Quantity, Unit Price (USD), Total (USD)
|
||||||
|
- امکان افزودن چندین آیتم (تا ۹ ردیف)
|
||||||
|
- محاسبه خودکار Total و نمایش مجموع
|
||||||
|
- ارسال items[] به API
|
||||||
|
|
||||||
|
**تأثیرات:**
|
||||||
|
- اصلاح `ifnex-order-form.js` (مرحله ۲.۵ با Repeater)
|
||||||
|
- اصلاح `ifnex-order-form.blade.php` (HTML مرحله جدید)
|
||||||
|
- اصلاح API `POST /customer/orders` (پذیرش items[])
|
||||||
|
|
||||||
|
### ۳.۵.۳ — پشتیبانی چندزبانه (i18n) 🟡 مهم
|
||||||
|
|
||||||
|
**مشکل:** سایت ۲ زبانه (فارسی + انگلیسی) هست با Polylang، ولی:
|
||||||
|
- تمام شورتکدها و فرمها فقط فارسی هستن
|
||||||
|
- پیامهای خطا و موفقیت فقط فارسی هستن
|
||||||
|
- فایلهای JS پیامهای hard-coded فارسی دارن
|
||||||
|
- فایلهای PHP رشتههای hard-coded فارسی دارن
|
||||||
|
|
||||||
|
**راه حل:**
|
||||||
|
- استخراج تمام رشتههای متنی به فایلهای ترجمه
|
||||||
|
- استفاده از `__()` و `_e()` در وردپرس
|
||||||
|
- استفاده از `__('text', 'ifnex-bridge')` در فایلهای PHP پلاگین
|
||||||
|
- استفاده از `wp_localize_script` برای ارسال ترجمهها به JS
|
||||||
|
- افزودن فایلهای `.po/.mo` برای زبانهای فارسی و انگلیسی
|
||||||
|
- پشتیبانی از RTL/LTR بهصورت خودکار بر اساس زبان فعال
|
||||||
|
|
||||||
|
**تأثیرات:**
|
||||||
|
- اصلاح تمام فایلهای `ifnex-bridge/includes/*.php`
|
||||||
|
- اصلاح `ifnex-order-form.js` (استفاده از متغیرهای ترجمه)
|
||||||
|
- ساخت فایلهای ترجمه در `ifnex-bridge/languages/`
|
||||||
|
- اصلاح CSS برای پشتیبانی RTL/LTR
|
||||||
|
|
||||||
|
### ۳.۵.۴ — تست و نهاییسازی 🟡 مهم
|
||||||
|
|
||||||
|
- [ ] تست تولید PDF با بارکد
|
||||||
|
- [ ] تست Multi-Package
|
||||||
|
- [ ] تست Invoice Form برای PARCEL
|
||||||
|
- [ ] تست زبان انگلیسی
|
||||||
|
- [ ] دیپلوی روی سرور
|
||||||
|
- [ ] تست نهایی روی سرور
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@ -148,9 +223,68 @@
|
|||||||
3. پنل نماینده در Filament (گزارشها + تسویه)
|
3. پنل نماینده در Filament (گزارشها + تسویه)
|
||||||
4. لینک معرف اختصاصی + صفحه لندینگ ثبتنام
|
4. لینک معرف اختصاصی + صفحه لندینگ ثبتنام
|
||||||
|
|
||||||
### سایر موارد فاز ۴:
|
---
|
||||||
- [ ] ویرایش پروفایل مشتری (نام، تلفن، آدرس)
|
|
||||||
- [ ] استان/شهر بر اساس کشور (Dynamic dropdowns)
|
## فاز ۵ (آینده) — تجاریسازی و Premium 📋
|
||||||
|
|
||||||
|
**وضعیت:** طرح مطالعاتی آماده
|
||||||
|
|
||||||
|
### 🎯 مدل تجاری پیشنهادی
|
||||||
|
|
||||||
|
بهجای نسخه رایگان، یه **مدل پولی چندلایهای** پیشنهاد میشه (چون بازار هدف محدود هست):
|
||||||
|
|
||||||
|
```
|
||||||
|
┌─────────────────────────────────────────┐
|
||||||
|
│ IFNEX Starter (پرداخت یکبار/ماهانه) │
|
||||||
|
│ ├── پنل مشتری پایه │
|
||||||
|
│ ├── فرم سفارش ساده │
|
||||||
|
│ ├── PDF استاندارد (AWB/Invoice/Label) │
|
||||||
|
│ ├── اکسپورت اکسل پایه │
|
||||||
|
│ └── پشتیبانی ایمیل │
|
||||||
|
└─────────────────────────────────────────┘
|
||||||
|
↓ (ارتقا)
|
||||||
|
┌─────────────────────────────────────────┐
|
||||||
|
│ IFNEX Business │
|
||||||
|
│ ├── تمام امکانات Starter │
|
||||||
|
│ ├── Multi-Package │
|
||||||
|
│ ├── سیستم نمایندگی (فاز ۴) │
|
||||||
|
│ ├── گزارشهای مالی پیشرفته │
|
||||||
|
│ ├── اکسپورت اکسل کامل │
|
||||||
|
│ ├── API ترکینگ زنده (TrackingMore) │
|
||||||
|
│ └── پشتیبانی اولویتدار │
|
||||||
|
└─────────────────────────────────────────┘
|
||||||
|
↓ (ارتقا)
|
||||||
|
┌─────────────────────────────────────────┐
|
||||||
|
│ IFNEX Enterprise │
|
||||||
|
│ ├── تمام امکانات Business │
|
||||||
|
│ ├── فرمساز Drag & Drop │
|
||||||
|
│ ├── White-label branding │
|
||||||
|
│ ├── API Gateway برای توسعهدهندگان │
|
||||||
|
│ ├── پلاگین SMS │
|
||||||
|
│ ├── Multi-language │
|
||||||
|
│ ├── پشتیبانی اختصاصی ۲۴/۷ │
|
||||||
|
│ └── آموزش تیمی │
|
||||||
|
└─────────────────────────────────────────┘
|
||||||
|
```
|
||||||
|
|
||||||
|
### قابلیتهای Premium برای فاز ۵:
|
||||||
|
|
||||||
|
| فیچر | Starter | Business | Enterprise |
|
||||||
|
|------|---------|----------|------------|
|
||||||
|
| پنل مشتری | ✅ | ✅ | ✅ |
|
||||||
|
| فرم سفارش ساده | ✅ | ✅ | ✅ |
|
||||||
|
| PDF استاندارد | ✅ | ✅ | ✅ |
|
||||||
|
| اکسپورت اکسل پایه | ✅ | ✅ | ✅ |
|
||||||
|
| Multi-Package | ❌ | ✅ | ✅ |
|
||||||
|
| سیستم نمایندگی | ❌ | ✅ | ✅ |
|
||||||
|
| گزارشهای پیشرفته | ❌ | ✅ | ✅ |
|
||||||
|
| API ترکینگ زنده | ❌ | ✅ | ✅ |
|
||||||
|
| فرمساز Drag & Drop | ❌ | ❌ | ✅ |
|
||||||
|
| White-label | ❌ | ❌ | ✅ |
|
||||||
|
| API Gateway | ❌ | ❌ | ✅ |
|
||||||
|
| پشتیبانی ۲۴/۷ | ❌ | ❌ | ✅ |
|
||||||
|
|
||||||
|
### سایر موارد فاز ۵:
|
||||||
- [ ] اتصال به APIهای ترکینگ زنده (TrackingMore/17track)
|
- [ ] اتصال به APIهای ترکینگ زنده (TrackingMore/17track)
|
||||||
- [ ] پلاگین SMS برای اطلاعرسانی خودکار
|
- [ ] پلاگین SMS برای اطلاعرسانی خودکار
|
||||||
- [ ] مستندات API (OpenAPI/Swagger)
|
- [ ] مستندات API (OpenAPI/Swagger)
|
||||||
@ -158,6 +292,8 @@
|
|||||||
- [ ] تستهای واحد و Integration
|
- [ ] تستهای واحد و Integration
|
||||||
- [ ] اپلیکیشن موبایل (احتمالی)
|
- [ ] اپلیکیشن موبایل (احتمالی)
|
||||||
- [ ] بهبود سئو وبسایت وردپرس
|
- [ ] بهبود سئو وبسایت وردپرس
|
||||||
|
- [ ] ویرایش پروفایل مشتری
|
||||||
|
- [ ] استان/شهر بر اساس کشور
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@ -167,6 +303,8 @@
|
|||||||
┌─────────────────────────────────────────────────┐
|
┌─────────────────────────────────────────────────┐
|
||||||
│ کاربر نهایی │
|
│ کاربر نهایی │
|
||||||
│ (مرورگر وب / موبایل) │
|
│ (مرورگر وب / موبایل) │
|
||||||
|
│ ─ زبان فارسی (پیشفرض) │
|
||||||
|
│ ─ زبان انگلیسی (Polylang) │
|
||||||
└──────────────────┬──────────────────────────────┘
|
└──────────────────┬──────────────────────────────┘
|
||||||
│
|
│
|
||||||
┌──────────▼──────────┐
|
┌──────────▼──────────┐
|
||||||
@ -176,8 +314,10 @@
|
|||||||
│ ─ قالب IFNEX │
|
│ ─ قالب IFNEX │
|
||||||
│ ─ پلاگین IFNEX │
|
│ ─ پلاگین IFNEX │
|
||||||
│ Bridge │
|
│ Bridge │
|
||||||
|
│ ─ Polylang (i18n) │
|
||||||
│ ─ دشبورد مشتری │
|
│ ─ دشبورد مشتری │
|
||||||
│ ─ فرم سفارش │
|
│ ─ فرم سفارش │
|
||||||
|
│ (Multi-Package) │
|
||||||
│ ─ صفحه پرداخت │
|
│ ─ صفحه پرداخت │
|
||||||
└──────────┬──────────┘
|
└──────────┬──────────┘
|
||||||
│ API (Sanctum/Bridge)
|
│ API (Sanctum/Bridge)
|
||||||
@ -190,6 +330,7 @@
|
|||||||
│ ─ کیف پول │
|
│ ─ کیف پول │
|
||||||
│ ─ پرداخت │
|
│ ─ پرداخت │
|
||||||
│ ─ نوتیفیکیشن │
|
│ ─ نوتیفیکیشن │
|
||||||
|
│ ─ PDF با بارکد │
|
||||||
└──────────┬──────────┘
|
└──────────┬──────────┘
|
||||||
│
|
│
|
||||||
┌──────────▼──────────┐
|
┌──────────▼──────────┐
|
||||||
@ -233,6 +374,7 @@
|
|||||||
| بکاند | Laravel 11 + PHP 8.2 |
|
| بکاند | Laravel 11 + PHP 8.2 |
|
||||||
| پنل ادمین | Filament 3.3.x |
|
| پنل ادمین | Filament 3.3.x |
|
||||||
| فرانتاند | WordPress 7.0.3 + قالب سفارشی |
|
| فرانتاند | WordPress 7.0.3 + قالب سفارشی |
|
||||||
|
| چندزبانه | Polylang (وردپرس) |
|
||||||
| پرداخت | Zarinpal + Mock Gateway (تست) |
|
| پرداخت | Zarinpal + Mock Gateway (تست) |
|
||||||
| PDF | Dompdf + picqer/php-barcode |
|
| PDF | Dompdf + picqer/php-barcode |
|
||||||
| Excel | maatwebsite/excel |
|
| Excel | maatwebsite/excel |
|
||||||
@ -260,14 +402,15 @@
|
|||||||
|
|
||||||
| معیار | مقدار |
|
| معیار | مقدار |
|
||||||
|-------|-------|
|
|-------|-------|
|
||||||
| تعداد مایگریشنها | ۲۳ |
|
| تعداد مایگریشنها | ۲۸ |
|
||||||
| تعداد API endpoints | ۳۰+ |
|
| تعداد API endpoints | ۳۰+ |
|
||||||
| تعداد Filament Resources | ۱۰+ |
|
| تعداد Filament Resources | ۱۰+ |
|
||||||
| تعداد مدلها | ۱۳ |
|
| تعداد مدلها | ۱۷ |
|
||||||
| تعداد شورتکدهای وردپرس | ۱۰+ |
|
| تعداد شورتکدهای وردپرس | ۱۰+ |
|
||||||
| تعداد کشورها با پیششماره | ۱۹۲ |
|
| تعداد کشورها با پیششماره | ۱۹۲ |
|
||||||
| رکوردهای تاریخی مهاجرتشده | ۳۹۵۰ |
|
| رکوردهای تاریخی مهاجرتشده | ۳۹۵۰ |
|
||||||
| تعداد موارد کارفرما (فاز ۳) | ۱۸ مورد ✅ |
|
| تعداد موارد کارفرما (فاز ۳) | ۱۸ مورد ✅ |
|
||||||
|
| زبانهای پشتیبانیشده | ۲ (فارسی، انگلیسی) |
|
||||||
| خطوط کد (تخمینی) | ۱۵۰۰۰+ |
|
| خطوط کد (تخمینی) | ۱۵۰۰۰+ |
|
||||||
|
|
||||||
---
|
---
|
||||||
@ -278,16 +421,22 @@
|
|||||||
- معماری Headless مقیاسپذیر
|
- معماری Headless مقیاسپذیر
|
||||||
- امنیت چندلایه (API Key + Sanctum + Bridge Key)
|
- امنیت چندلایه (API Key + Sanctum + Bridge Key)
|
||||||
- پشتیبانی از ۱۹۲ کشور با پیششماره استاندارد
|
- پشتیبانی از ۱۹۲ کشور با پیششماره استاندارد
|
||||||
- تولید PDF حرفهای با بارکد
|
- تولید PDF حرفهای با بارکد (مطابق نمونه کارفرما)
|
||||||
- Mock Gateway برای تست بدون درگاه واقعی
|
- Mock Gateway برای تست بدون درگاه واقعی
|
||||||
- سیستم نوتیفیکیشن دیتابیس برای ادمین و مشتری
|
- سیستم نوتیفیکیشن دیتابیس برای ادمین و مشتری
|
||||||
- رابط کاربری مدرن و واکنشگرا
|
- رابط کاربری مدرن و واکنشگرا
|
||||||
|
|
||||||
### ⚠️ نکات قابل توجه
|
### ⚠️ نواقص باقیمانده (فاز ۳.۵)
|
||||||
- تست لوکال نیازمند XAMPP و فعالسازی Bridge API Key
|
- Multi-Package در فرم سفارش مشتری
|
||||||
- Mock Gateway فقط زمانی فعال میشه که `ZARINPAL_MERCHANT_ID=fake-merchant-id-for-testing`
|
- فرم Invoice برای محمولههای PARCEL
|
||||||
- توکن Bridge ۳۰ روز اعتبار دارد و سپس باید تمدید شود
|
- پشتیبانی کامل چندزبانه (i18n)
|
||||||
- فایلهای PDF باید انگلیسی باشند (برای حمل بینالمللی)
|
- تست نهایی روی سرور
|
||||||
|
|
||||||
|
### 📋 برای آینده
|
||||||
|
- تجاریسازی با مدل پولی چندلایهای
|
||||||
|
- سیستم نمایندگی کامل
|
||||||
|
- فرمساز پیشرفته
|
||||||
|
- API Gateway برای توسعهدهندگان
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
32
README.md
32
README.md
@ -175,13 +175,26 @@ IFNEX-Logistics/
|
|||||||
- اعتبارسنجی تلفن (فقط اعداد، +، فاصله)
|
- اعتبارسنجی تلفن (فقط اعداد، +، فاصله)
|
||||||
- استایل مدرن تراکنشها و دشبورد مشتری
|
- استایل مدرن تراکنشها و دشبورد مشتری
|
||||||
- صفحه شارژ کیف پول با مبالغ آماده
|
- صفحه شارژ کیف پول با مبالغ آماده
|
||||||
|
- بازطراحی PDFها (AWB, Invoice, Label) با بارکد مطابق نمونه کارفرما
|
||||||
- اصلاح متدهای Enum (isPaid, canBeCancelledByCustomer)
|
- اصلاح متدهای Enum (isPaid, canBeCancelledByCustomer)
|
||||||
- میدلور API برای بازگرداندن JSON 401 به جای redirect
|
- میدلور API برای بازگرداندن JSON 401 به جای redirect
|
||||||
|
|
||||||
|
### فاز ۳.۵ — اصلاحات اساسی 🔄 (در دست اقدام)
|
||||||
|
- Multi-Package در فرم سفارش مشتری (چند بسته در یک سفارش)
|
||||||
|
- فرم Invoice برای محمولههای PARCEL (اقلام گمرکی)
|
||||||
|
- پشتیبانی کامل چندزبانه (i18n) با Polylang
|
||||||
|
- تست و نهاییسازی
|
||||||
|
|
||||||
### فاز ۴ (آینده) — سیستم نمایندگی 📋
|
### فاز ۴ (آینده) — سیستم نمایندگی 📋
|
||||||
- مدل نمایندگی کامل با کمیسیون و پنل جداگانه
|
- مدل نمایندگی کامل با کمیسیون و پنل جداگانه
|
||||||
- طرح مطالعاتی آماده — منتظر تأیید کارفرما
|
- طرح مطالعاتی آماده — منتظر تأیید کارفرما
|
||||||
|
|
||||||
|
### فاز ۵ (آینده) — تجاریسازی 📋
|
||||||
|
- مدل پولی چندلایهای: Starter / Business / Enterprise
|
||||||
|
- فرمساز Drag & Drop
|
||||||
|
- White-label branding
|
||||||
|
- API Gateway برای توسعهدهندگان
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## ⚡ شروع سریع
|
## ⚡ شروع سریع
|
||||||
@ -309,24 +322,37 @@ php artisan serve
|
|||||||
| فایل | محتوا | اولویت |
|
| فایل | محتوا | اولویت |
|
||||||
|------|-------|--------|
|
|------|-------|--------|
|
||||||
| [IFNEX_Phase0_Checklist.md](01_Documents/IFNEX_Phase0_Checklist.md) | چکلیست کامل فازها | ⭐⭐⭐ |
|
| [IFNEX_Phase0_Checklist.md](01_Documents/IFNEX_Phase0_Checklist.md) | چکلیست کامل فازها | ⭐⭐⭐ |
|
||||||
| [IFNEX_Roadmap.md](01_Documents/IFNEX_Roadmap.md) | نقشه راه آینده | ⭐⭐⭐ |
|
| [IFNEX_Roadmap.md](01_Documents/IFNEX_Roadmap.md) | نقشه راه آینده (فاز ۳.۵، ۴، ۵) | ⭐⭐⭐ |
|
||||||
| [IFNEX_File_Map.md](01_Documents/IFNEX_File_Map.md) | نقشه ۱۰۰+ فایل پروژه | ⭐⭐⭐ |
|
| [IFNEX_File_Map.md](01_Documents/IFNEX_File_Map.md) | نقشه ۱۰۰+ فایل پروژه | ⭐⭐⭐ |
|
||||||
|
| [IFNEX_I18N_Strategy.md](01_Documents/IFNEX_I18N_Strategy.md) | استراتژی چندزبانه (Polylang) | ⭐⭐ |
|
||||||
|
| [IFNEX_Commercial_Model.md](01_Documents/IFNEX_Commercial_Model.md) | مدل تجاری و پلنهای فروش | ⭐⭐ |
|
||||||
| [DEPLOYMENT.md](DEPLOYMENT.md) | راهنمای استقرار Production | ⭐⭐ |
|
| [DEPLOYMENT.md](DEPLOYMENT.md) | راهنمای استقرار Production | ⭐⭐ |
|
||||||
| [04_Laravel/README.md](04_Laravel/README.md) | راهنمای بکاند | ⭐⭐ |
|
| [04_Laravel/README.md](04_Laravel/README.md) | راهنمای بکاند | ⭐⭐ |
|
||||||
| [IFNEX_DEPRECATED_FILES_NOTICE.md](01_Documents/IFNEX_DEPRECATED_FILES_NOTICE.md) | فایلهای منسوخ | ⭐ |
|
| [IFNEX_DEPRECATED_FILES_NOTICE.md](01_Documents/IFNEX_DEPRECATED_FILES_NOTICE.md) | فایلهای منسوخ | ⭐ |
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 🚀 مراحل بعدی (فاز ۴)
|
## 🚀 مراحل بعدی
|
||||||
|
|
||||||
|
### فاز ۳.۵ (فوری — قبل از ارائه به کارفرما)
|
||||||
|
- Multi-Package در فرم سفارش مشتری
|
||||||
|
- فرم Invoice برای محمولههای PARCEL
|
||||||
|
- پشتیبانی کامل چندزبانه (i18n) با Polylang
|
||||||
|
|
||||||
|
### فاز ۴ (آینده)
|
||||||
- سیستم نمایندگی کامل با کمیسیون و پنل جداگانه
|
- سیستم نمایندگی کامل با کمیسیون و پنل جداگانه
|
||||||
|
|
||||||
|
### فاز ۵ (آینده — تجاریسازی)
|
||||||
|
- مدل پولی چندلایهای: Starter / Business / Enterprise
|
||||||
- اتصال به APIهای ترکینگ زنده (TrackingMore/17track)
|
- اتصال به APIهای ترکینگ زنده (TrackingMore/17track)
|
||||||
- پلاگین SMS برای اطلاعرسانی خودکار
|
- پلاگین SMS برای اطلاعرسانی خودکار
|
||||||
- مستندات API (OpenAPI/Swagger)
|
- مستندات API (OpenAPI/Swagger)
|
||||||
- راهنمای اپراتور (Operator Manual)
|
- راهنمای اپراتور (Operator Manual)
|
||||||
- تستهای واحد و Integration
|
- تستهای واحد و Integration
|
||||||
- اپلیکیشن موبایل (احتمالی)
|
- اپلیکیشن موبایل (احتمالی)
|
||||||
- ویرایش پروفایل مشتری + استان/شهر بر اساس کشور
|
- فرمساز Drag & Drop
|
||||||
|
- White-label branding
|
||||||
|
- API Gateway برای توسعهدهندگان
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user