# 📋 فهرست وظایف پروژه AMN Marketplace ## 🎯 اولویت بندی وظایف ### ⚠️ **اولویت بالا (حتماً انجام شود)** #### وظیفه ۹: اصلاح خطاهای پرداخت (کاهش خطاهای توکن) - **مسیر**: `code/backend/src/services/payment/` + `amnScannerWebhookRoutes.ts` - **توضیحات**: - اصلاح خطاهای مربوط به توکن در پردازش پرداخت‌ها - بهبود مکانیزم اعتبارسنجی توکن - لاگ‌گیری کامل از تمام خطاهای توکن - بررسی و اصلاح `paymentService.ts` و `amnScannerWebhookRoutes.ts` - **تأثیر**: جلوگیری از از دست رفتن تراکنش‌ها - **برآورد زمان**: 2-3 ساعت --- #### وظیفه ۱: فیلتر و مرتب‌سازی کامل برای فروشندگان + پشتیبانی از دسته‌بندی - **مسیر**: `code/backend/src/services/marketplace/marketplaceController.ts` - **توضیحات**: - اضافه کردن اندپوینت‌های فیلتر پیشرفته برای لیست فروشندگان - پشتیبانی از فیلتر بر اساس: - دسته‌بندی (Category) - رتبه (Rating) - محدوده قیمت - وضعیت آنلاین/آفلاین - منطقه جغرافیایی - مرتب‌سازی بر اساس: - تاریخ ثبت‌نام - امتیاز - تعداد فروش - قیمت - **تغییرات مورد نیاز**: - Backend: `getSellers` endpoint با پارامترهای فیلتر - Frontend: کامپوننت فیلتر در صفحه `/dashboard/shops` - **برآورد زمان**: 4-5 ساعت --- #### وظیفه ۲: انتخاب دسته‌بندی توسط فروشنده در تنظیمات فروشگاه - **مسیر**: `code/backend/src/services/marketplace/shopSettingsStore.ts` + UI - **توضیحات**: - اضافه کردن فیلد `categoryIds` به مدل `ShopSettings` - ایجاد رابط کاربری برای انتخاب چند دسته‌بندی - امکان جستجوی فروشندگان بر اساس دسته‌بندی منتخب - **تغییرات مورد نیاز**: - Schema: اضافه کردن رابطه N:M بین users و categories - Backend: API برای ذخیره و بازیابی دسته‌بندی‌های فروشنده - Frontend: فرم انتخاب دسته‌بندی در `shop-settings/settings` - **برآورد زمان**: 3 ساعت --- #### وظیفه ۴: امکان آرشیو جدول‌ها (دیدن درخواست‌های آرشیو شده) - **مسیر**: `code/backend/src/db/schema/purchaseRequest.ts` - **توضیحات**: - اضافه کردن فیلدهای `isArchived` و `archivedAt` به جدول‌های اصلی - ایجاد اندپوینت‌های جدا برای مدیریت آرشیو - امکان فیلتر کردن آیتم‌های آرشیو شده/نشده - **تغییرات مورد نیاز**: ```typescript // Schema changes isArchived: boolean('is_archived').default(false) archivedAt: timestamp('archived_at', { withTimezone: true }) archivedBy: uuid('archived_by') // کاربری که آرشیو کرده ``` - اندپوینت‌های جدید: - `POST /api/marketplace/purchase-requests/:id/archive` - `GET /api/marketplace/purchase-requests/archived` - `POST /api/marketplace/purchase-requests/bulk-archive` - **برآورد زمان**: 3-4 ساعت --- #### وظیفه ۵: تاریخچه پرداخت در وب‌اپ (برای خریدار و فروشنده) - **مسیر**: `code/backend/src/services/payment/paymentController.ts` - **توضیحات**: - در حال حاضر فقط در مینی‌اپ موجود است - نیاز به ایجاد اندپوینت یکپارچه برای تاریخچه پرداخت‌ها - نمایش برای هر دو نقش خریدار و فروشنده - **تغییرات مورد نیاز**: - Backend: `GET /api/payment/history` با فیلتر role-based - Frontend: صفحه جدید `/dashboard/payment/history` - **برآورد زمان**: 3 ساعت --- #### وظیفه ۶: انتقال خودکار درخواست‌های تکمیل شده به آرشیو - **مسیر**: `code/backend/src/services/marketplace/PurchaseRequestService.ts` - **توضیحات**: - هنگام تغییر وضعیت به `completed`، خودکار به آرشیو منتقل شود - در مینی‌اپ صفحه آرشیو اضافه شود - جلوگیری از شلوغی لیست اصلی - **تغییرات مورد نیاز**: - Hook در `updatePurchaseRequestStatus` برای آرشیو خودکار - اندپوینت مینی‌اپ: `GET /api/telegram/archive` - **برآورد زمان**: 2 ساعت --- ### 📌 **اولویت متوسط** #### وظیفه ۳: اصلاح لینک وب‌اپ به تلگرام - **مسیر**: `code/backend/src/services/telegram/` + Frontend - **توضیحات**: - بررسی و اصلاح لینک‌های تلگرام در وب‌اپ - مطمئن شدن از اتصال صحیح مینی‌اپ به بات تلگرام - تست کامل flow از وب‌اپ به تلگرام - **برآورد زمان**: 1-2 ساعت --- #### وظیفه ۷: ساخت صفحه اصلی مینی‌اپ - **مسیر**: `code/frontend/src/routes/paths.ts` + Telegram UI - **توضیحات**: - طراحی و پیاده‌سازی صفحه اصلی مینی‌اپ - نمایش آیتم‌های کلیدی: - آمار کلی (تعداد درخواست‌ها، پرداخت‌ها، نوتیفیکیشن‌ها) - اقدامات سریع (دکمه‌های دسترسی سریع) - لیست آخرین فعالیت‌ها - اعلان‌ها - **برآورد زمان**: 4 ساعت --- #### وظیفه ۸: جلوگیری از بازگشت دستیار هوشمند به مینی‌اپ - **مسیر**: Navigation guards در Frontend - **توضیحات**: - مهندسی معکوس برای جلوگیری از بازگشت AI Assistant به مینی‌اپ - بررسی جریان ناوبری در تلگرام - اعمال محدودیت‌ها در صورت نیاز - **برآورد زمان**: 2 ساعت --- ### 🎨 **اولویت پایین** #### وظیفه ۱۰: باز شدن اپ مانند ولت + ویدیوهای آموزشی - **توضیحات**: - اصلاح UI برای باز شدن مشابه اپ‌های ولت - تهیه ویدیوهای آموزشی: - کانال فارسی - کانال انگلیسی - مستندات استفاده از اپ - **برآورد زمان**: 5 ساعت (شامل تهیه محتوا) --- ## 📊 خلاصه زمانی و اولویت‌ها | # | وظیفه | اولویت | زمان تخمینی | وضعیت | |---|--------|--------|--------------|--------| | 9 | اصلاح خطاهای پرداخت | ⭐⭐⭐⭐⭐ | 2-3 ساعت | ⏳ | | 1 | فیلتر/مرتب‌سازی فروشندگان | ⭐⭐⭐⭐ | 4-5 ساعت | ⏳ | | 2 | دسته‌بندی فروشندگان | ⭐⭐⭐⭐ | 3 ساعت | ⏳ | | 4 | سیستم آرشیو | ⭐⭐⭐⭐ | 3-4 ساعت | ⏳ | | 5 | تاریخچه پرداخت وب‌اپ | ⭐⭐⭐⭐ | 3 ساعت | ⏳ | | 6 | آرشیو خودکار درخواست‌ها | ⭐⭐⭐⭐ | 2 ساعت | ⏳ | | 3 | لینک تلگرام | ⭐⭐⭐ | 1-2 ساعت | ⏳ | | 7 | صفحه اصلی مینی‌اپ | ⭐⭐⭐ | 4 ساعت | ⏳ | | 8 | مسدود کردن AI Assistant | ⭐⭐⭐ | 2 ساعت | ⏳ | | 10 | UI ولت + ویدیوها | ⭐⭐ | 5 ساعت | ⏳ | ** کل زمان تخمینی: ** ~30 ساعت --- ## 🚀 پیشنهاد ترتیب اجرا ### فاز ۱: اصلاحات بحرانی (2-3 روز) 1. وظیفه ۹: اصلاح خطاهای پرداخت 2. وظیفه ۳: لینک تلگرام ### فاز ۲: ویژگی‌های اصلی (3-4 روز) 3. وظیفه ۱: فیلتر و مرتب‌سازی فروشندگان 4. وظیفه ۲: دسته‌بندی فروشندگان 5. وظیفه ۴: سیستم آرشیو 6. وظیفه ۵: تاریخچه پرداخت 7. وظیفه ۶: آرشیو خودکار ### فاز ۳: تجربه کاربری (2-3 روز) 8. وظیفه ۷: صفحه اصلی مینی‌اپ 9. وظیفه ۸: مسدود کردن AI Assistant ### فاز ۴: مستندات و نهایی‌سازی (1 روز) 10. وظیفه ۱۰: ویدیوها و اصلاحات نهایی --- ## 📁 ساختار فایل‌ها و مسیرها ``` code/ ├── backend/ │ ├── src/ │ │ ├── db/ │ │ │ └── schema/ # Schemaهای PostgreSQL │ │ ├── services/ │ │ │ ├── marketplace/ # کنترلرها و سرویس‌های بازار │ │ │ ├── payment/ # سرویس‌های پرداخت │ │ │ └── telegram/ # سرویس‌های تلگرام │ │ └── routes/ # مسیریابی API │ └── ... └── frontend/ ├── src/ │ ├── routes/ # مسیرهای فرانت‌اند │ ├── sections/ # صفحات و کامپوننت‌ها │ └── ... └── ... ``` --- ## 🔧 دستورالعمل‌های فنی ### برای شروع هر وظیفه: 1. branch جدید از `main` ایجاد کنید: `git checkout -b feature/[task-number]-[description]` 2. تغییرات را در smallest possible unit اعمال کنید 3. تست‌های واحد بنویسید 4. بعد از تکمیل، Pull Request ایجاد کنید ### اسم branchها: - `feature/9-fix-payment-token-errors` - `feature/1-seller-filter-sort-category` - `feature/4-archive-functionality` - و... --- ## 📞 تماس با تیم - برای سوال در مورد هر وظیفه، در کانال تلگرام پروژه مطرح کنید - برای بررسی کد، از Pull Request استفاده کنید - برای تست، از محیط development استفاده کنید --- *تاریخ ایجاد: 2026-06-07* *ونیرد: Mistral Vibe*