diff --git a/CLIENT_DELIVERY.md b/CLIENT_DELIVERY.md new file mode 100644 index 0000000..d39bb0f --- /dev/null +++ b/CLIENT_DELIVERY.md @@ -0,0 +1,489 @@ +# 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 محصول شود.