490 lines
10 KiB
Markdown
490 lines
10 KiB
Markdown
# IFNEX — Client Delivery Checklist
|
||
|
||
> وضعیت تحویل نسخه فعلی IFNEX به مشتری
|
||
> این فایل فقط برای مدیریت تعهدات، تست و تحویل نسخه فعلی مشتری است و جایگزین `AGENT.md` یا `IFNEX_Roadmap.md` نیست.
|
||
|
||
---
|
||
|
||
## 1. Current Delivery Status
|
||
|
||
**Project:** IFNEX Logistics Management System
|
||
**Current Phase:** Phase 3.6 — Client Meeting Adjustments
|
||
**Target:** Production Delivery to Current Client
|
||
|
||
### Status Legend
|
||
|
||
* ✅ Completed
|
||
* 🟡 Implemented — Needs Final Verification
|
||
* ⏳ Pending
|
||
* 🔴 Blocked
|
||
* ❌ Not Implemented
|
||
|
||
---
|
||
|
||
# 2. Client Requested Features
|
||
|
||
## 2.1 Frontend / Landing Page
|
||
|
||
### Hero Tracking Redirect
|
||
|
||
**Requirement:**
|
||
در بخش Hero صفحه اصلی WordPress، گزینه «ردیابی مرسوله» باید کاربر را به صفحه اختصاصی Tracking هدایت کند.
|
||
|
||
**Status:** 🟡 Implemented — Needs Final Verification
|
||
|
||
**Files to Review:**
|
||
|
||
* `03_WordPress/wp-content/themes/ifnex/...`
|
||
* `03_WordPress/wp-content/plugins/ifnex-bridge/...`
|
||
|
||
**Acceptance Test:**
|
||
|
||
* [ ] کلیک روی CTA
|
||
* [ ] Redirect صحیح
|
||
* [ ] URL صحیح
|
||
* [ ] نمایش صحیح صفحه Tracking
|
||
* [ ] تست در حالت Login / Guest در صورت نیاز
|
||
|
||
---
|
||
|
||
## 2.2 New Order — Multi-Step Form
|
||
|
||
### Step 1 → Step 2
|
||
|
||
**Requirement:**
|
||
پس از تکمیل مرحله اول فرم ثبت سفارش، مرحله دوم بدون خطا Load شود.
|
||
|
||
**Status:** 🟡 Implemented — Needs Final Verification
|
||
|
||
**Known Historical Issue:**
|
||
بستهنبودن یک `div` در فایل `shortcodes.php`.
|
||
|
||
**Relevant Files:**
|
||
|
||
* `03_WordPress/wp-content/plugins/ifnex-bridge/includes/shortcodes.php`
|
||
* `03_WordPress/wp-content/plugins/ifnex-bridge/assets/js/ifnex-order-form.js`
|
||
|
||
**Acceptance Test:**
|
||
|
||
* [ ] Export
|
||
* [ ] Import
|
||
* [ ] تغییر بین مراحل
|
||
* [ ] Validation
|
||
* [ ] Browser Console بدون Error
|
||
* [ ] حفظ اطلاعات مراحل قبلی
|
||
|
||
---
|
||
|
||
# 3. Customer Dashboard / Financial Status
|
||
|
||
## 3.1 Customer Balance
|
||
|
||
**Requirement:**
|
||
در Dashboard مشتری، علاوه بر Wallet Balance و Orders، مانده حساب مشتری نیز نمایش داده شود.
|
||
|
||
فرمول مورد انتظار:
|
||
|
||
`Available Balance / Account Balance = Wallet Balance - Outstanding Approved Obligations`
|
||
|
||
**Status:** 🟡 Implemented — Needs Final Verification
|
||
|
||
**Acceptance Test:**
|
||
|
||
* [ ] Wallet مثبت
|
||
* [ ] بدون بدهی
|
||
* [ ] دارای بدهی
|
||
* [ ] دارای چند سفارش تأییدشده ولی پرداختنشده
|
||
* [ ] نمایش صحیح ارز
|
||
* [ ] عدم تبدیل بدهی چندارزی به یک مبلغ ریالی اشتباه
|
||
|
||
---
|
||
|
||
# 4. Order Approval Before Payment
|
||
|
||
## 4.1 General Flow
|
||
|
||
**Required Flow:**
|
||
|
||
`Create Order`
|
||
→ `Pending Approval`
|
||
→ `Staff Review`
|
||
→ `Approved`
|
||
→ `Documents / Commitment Verification`
|
||
→ `Payment Enabled`
|
||
→ `Wallet OR Online Payment`
|
||
→ `Paid`
|
||
→ `Processed`
|
||
|
||
**Requirement:**
|
||
مشتری بلافاصله پس از ثبت سفارش نباید وارد درگاه شود.
|
||
|
||
**Status:** 🟡 Implemented — Needs End-to-End Verification
|
||
|
||
---
|
||
|
||
## 4.2 Export Order
|
||
|
||
**Required Flow:**
|
||
|
||
`Create Export Order`
|
||
→ `Pending Approval`
|
||
→ `Staff Approval`
|
||
→ `Documents Available`
|
||
→ `Customer Downloads Documents`
|
||
→ `Customer Signs / Fingerprints`
|
||
→ `Customer Uploads Signed Documents`
|
||
→ `Staff Verification`
|
||
→ `Payment Enabled`
|
||
→ `Wallet / Online Payment`
|
||
→ `Paid`
|
||
→ `Shipment Processing`
|
||
|
||
**Documents:**
|
||
|
||
* AWB
|
||
* Invoice
|
||
* Label
|
||
* Commitment Forms
|
||
* Other required documents
|
||
|
||
**Status:** 🟡 Implemented — Needs End-to-End Verification
|
||
|
||
---
|
||
|
||
## 4.3 Import Order
|
||
|
||
**Required Flow:**
|
||
|
||
`Create Import Order`
|
||
→ `Pending Approval`
|
||
→ `Staff Review`
|
||
→ `Required Documents`
|
||
→ `Customer Verification / Upload`
|
||
→ `Staff Verification`
|
||
→ `Payment Enabled`
|
||
→ `Wallet / Online Payment`
|
||
→ `Paid`
|
||
→ `Shipment Processing`
|
||
|
||
**Status:** 🟡 Implemented — Needs Final Verification
|
||
|
||
---
|
||
|
||
# 5. Employee Checklist
|
||
|
||
**Requirement:**
|
||
برای هر سفارش یک Checklist عملیاتی وجود داشته باشد.
|
||
|
||
هر Checklist Item باید حداقل شامل موارد زیر باشد:
|
||
|
||
* Item
|
||
* Status
|
||
* Required / Optional
|
||
* Completed By
|
||
* Completed At
|
||
* Note
|
||
* Attachment (when needed)
|
||
|
||
**Manager Requirements:**
|
||
|
||
* مشاهده تمام مراحل
|
||
* مشاهده کارمند انجامدهنده
|
||
* مشاهده تاریخ و ساعت
|
||
* مشاهده موارد ناقص
|
||
* امکان گزارشگیری
|
||
* امکان شناسایی سفارشهای مشکلدار
|
||
|
||
**Status:** ⏳ Pending / Requires Full Workflow Verification
|
||
|
||
---
|
||
|
||
# 6. Shipment History / Timeline
|
||
|
||
**Requirement:**
|
||
مدیر بتواند تاریخچه کامل هر Shipment را از شروع تا پایان مشاهده کند.
|
||
|
||
هر تغییر باید تا حد امکان شامل موارد زیر باشد:
|
||
|
||
* Previous Status
|
||
* New Status
|
||
* User / Employee
|
||
* Date
|
||
* Time
|
||
* Note
|
||
|
||
**Status:** 🟡 Implemented — Needs Final Verification
|
||
|
||
---
|
||
|
||
# 7. PDF Documents
|
||
|
||
## Required Documents
|
||
|
||
* AWB
|
||
* Invoice
|
||
* Label
|
||
* Import Invoice
|
||
* Commitment Documents where applicable
|
||
|
||
**Requirement:**
|
||
طراحی PDFها باید تا حد امکان مطابق نمونههای Excel / Client Documents باشد.
|
||
|
||
**Important:**
|
||
تطبیق 100٪ پیکسلی ممکن است به دلیل تفاوت موتور PDF با Excel امکانپذیر نباشد. هدف، نزدیکترین تطبیق عملی و قابل چاپ است.
|
||
|
||
**Status:** 🟡 Requires Final Client Review
|
||
|
||
### Final PDF Acceptance
|
||
|
||
* [ ] AWB
|
||
* [ ] Export Invoice
|
||
* [ ] Import Invoice
|
||
* [ ] Label
|
||
* [ ] Barcode
|
||
* [ ] Alignment
|
||
* [ ] Typography
|
||
* [ ] Page size
|
||
* [ ] Printable output
|
||
|
||
---
|
||
|
||
# 8. Customer Financial Information — Staff / Manager
|
||
|
||
**Requirement:**
|
||
کارمند یا مدیر بتواند با انتخاب یا جستجوی مشتری، اطلاعات مالی کامل او را مشاهده کند.
|
||
|
||
### Required Information
|
||
|
||
* Current Balance
|
||
* Receivables / Payables
|
||
* Currency
|
||
* Recent Transactions
|
||
* Recent Orders
|
||
* Order Reference
|
||
* Amount
|
||
* Payment Status
|
||
* Dates
|
||
* Notes
|
||
|
||
**Status:** 🟡 Implemented — Needs Final Verification
|
||
|
||
---
|
||
|
||
# 9. Customer Credit
|
||
|
||
**Requirement:**
|
||
فقط مدیر کل بتواند برای مشتری شناختهشده Credit ایجاد یا افزایش دهد.
|
||
|
||
### Important Rule
|
||
|
||
اگر مشتری:
|
||
|
||
`50 EUR`
|
||
|
||
بدهکار است، بدهی باید به صورت:
|
||
|
||
`50 EUR`
|
||
|
||
ثبت شود و نباید به مبلغ ریالی روز تبدیل و جایگزین شود.
|
||
|
||
هنگام تسویه ریالی:
|
||
|
||
* Original Amount
|
||
* Original Currency
|
||
* Settlement Currency
|
||
* Exchange Rate
|
||
* Exchange Rate Date
|
||
* Settlement Amount
|
||
* Reason / Reference
|
||
|
||
باید ثبت شود.
|
||
|
||
**Status:** ⏳ Multi-Currency Credit Requires Redesign / Final Implementation
|
||
|
||
---
|
||
|
||
# 10. Bulk Tracking Import
|
||
|
||
**Requirement:**
|
||
امکان Import گروهی آخرین وضعیت Trackingها در پنل مدیریت.
|
||
|
||
**Expected Input:**
|
||
CSV / approved import format
|
||
|
||
**Expected Result:**
|
||
|
||
* Find Shipment
|
||
* Validate Tracking Number
|
||
* Update Status
|
||
* Register History
|
||
* Record Import Result
|
||
* Report Failed Rows
|
||
|
||
**Status:** 🟡 Implemented — Needs Final Verification
|
||
|
||
---
|
||
|
||
# 11. Admin Editing + Audit Log
|
||
|
||
**Requirement:**
|
||
مدیر بتواند تقریباً همه اطلاعات عملیاتی لازم را ویرایش کند.
|
||
|
||
**Important Rule:**
|
||
تغییرات مدیریتی باید قابل Audit باشند.
|
||
|
||
### Audit Information
|
||
|
||
* User
|
||
* Action
|
||
* Model
|
||
* Record
|
||
* Old Value
|
||
* New Value
|
||
* Date
|
||
* Time
|
||
* IP where applicable
|
||
|
||
**Status:** 🟡 Implemented — Needs Security / Authorization Verification
|
||
|
||
---
|
||
|
||
# 12. SMS Integration
|
||
|
||
**Provider:** Kavenegar
|
||
|
||
### Required Use Cases
|
||
|
||
* Mobile Verification
|
||
* Registration Verification
|
||
* Order Submitted
|
||
* Order Approved
|
||
* Order Rejected
|
||
* Payment Successful
|
||
* Tracking Status Changes
|
||
* Important System Notifications
|
||
|
||
**Status:** 🟡 Implemented — Needs Production Configuration / End-to-End Verification
|
||
|
||
---
|
||
|
||
# 13. Production Hardening
|
||
|
||
این بخش الزاماً درخواست مستقیم مشتری نیست، اما قبل از تحویل Production باید بررسی شود.
|
||
|
||
## Security
|
||
|
||
* [ ] Remove / rotate exposed secrets
|
||
* [ ] Verify Bridge API Key handling
|
||
* [ ] Verify Staff route authorization
|
||
* [ ] Verify Admin-only operations
|
||
* [ ] Verify File Upload validation
|
||
* [ ] Verify document ownership / authorization
|
||
* [ ] Verify payment callback security
|
||
* [ ] Disable Mock Gateway in Production
|
||
|
||
## Financial Integrity
|
||
|
||
* [ ] Wallet concurrency protection
|
||
* [ ] Payment idempotency
|
||
* [ ] Coupon consumption logic
|
||
* [ ] Money / currency precision
|
||
* [ ] Multi-currency debt integrity
|
||
|
||
## Application
|
||
|
||
* [ ] Legacy Order Flow review
|
||
* [ ] Exception handling
|
||
* [ ] Production logging
|
||
* [ ] Cache / OPcache configuration
|
||
* [ ] Asset versioning
|
||
|
||
---
|
||
|
||
# 14. End-to-End Acceptance Testing
|
||
|
||
## Customer
|
||
|
||
* [ ] Register
|
||
* [ ] Mobile Verification
|
||
* [ ] Login
|
||
* [ ] Create Export Order
|
||
* [ ] Create Import Order
|
||
* [ ] View Order
|
||
* [ ] Wait for Approval
|
||
* [ ] Receive Documents
|
||
* [ ] Download Documents
|
||
* [ ] Upload Signed Documents
|
||
* [ ] Receive Approval
|
||
* [ ] Pay with Wallet
|
||
* [ ] Pay Online
|
||
* [ ] View Balance
|
||
* [ ] View Transactions
|
||
* [ ] View Tracking
|
||
* [ ] Receive Notifications
|
||
|
||
## Staff
|
||
|
||
* [ ] View Orders
|
||
* [ ] Approve Order
|
||
* [ ] Reject Order
|
||
* [ ] Upload Commitment
|
||
* [ ] Verify Customer Documents
|
||
* [ ] Complete Checklist
|
||
* [ ] Update Shipment
|
||
* [ ] Import Tracking
|
||
* [ ] View Customer Financial Status
|
||
* [ ] View Customer Orders
|
||
* [ ] Review Audit Log
|
||
|
||
## Manager / Super Admin
|
||
|
||
* [ ] Customer Financial Review
|
||
* [ ] Grant Credit
|
||
* [ ] Modify Credit
|
||
* [ ] Review Audit
|
||
* [ ] View Shipment Timeline
|
||
* [ ] Edit Operational Data
|
||
* [ ] Review Staff Activity
|
||
|
||
---
|
||
|
||
# 15. Final Delivery Gate
|
||
|
||
Before Production:
|
||
|
||
* [ ] All required features implemented
|
||
* [ ] All critical bugs fixed
|
||
* [ ] Security review completed
|
||
* [ ] Payment flow tested
|
||
* [ ] Wallet flow tested
|
||
* [ ] Export flow tested
|
||
* [ ] Import flow tested
|
||
* [ ] PDFs approved
|
||
* [ ] SMS tested
|
||
* [ ] Tracking import tested
|
||
* [ ] Backup verified
|
||
* [ ] Production environment verified
|
||
* [ ] Client UAT completed
|
||
|
||
---
|
||
|
||
# 16. Delivery Status
|
||
|
||
**Current Status:** IN PROGRESS
|
||
|
||
**Next Task:** End-to-End Order Flow Review
|
||
|
||
**Last Reviewed Commit:** `e032fceb34`
|
||
|
||
**Source Repository:**
|
||
|
||
`https://www.git.vernahost.ir/gitmodir110/ifnex`
|
||
|
||
---
|
||
|
||
## Notes
|
||
|
||
این فایل باید در طول تحویل پروژه بهروزرسانی شود.
|
||
|
||
این فایل برای وضعیت تحویل مشتری است و نباید تبدیل به مستندات معماری یا Roadmap محصول شود.
|