f5173a4def
- CHANGELOG: اضافه Phase 18 BackOffice + فعالسازی درگاه FO + تنظیمات محیطی CMS + مرج پروداکشن - PAYMENT-FINANCE: MerchantId واقعی + تنظیمات محیطی Staging/Production + Magic فاز 6 کامل - ROADMAP: بروزرسانی درصدها + Magic 100% + Payment 97% + DONE section - TECH-02: ساختار فولدر + UserAutoComplete + WalletManagement + دکمههای درگاه - BUSINESS-01: Magic Wallet فاز 1-6 کامل - TECH-04: Migration پروداکشن ExpandDiscountProductFullInformation + حذف u21 تکراری - TECH-03: جزئیات مرج پروداکشن + تنظیمات appsettings.Production.json - MAGIC-WALLET-PLAN: وضعیت کامل - INDEX: بروزرسانی تاریخ
235 lines
12 KiB
Markdown
235 lines
12 KiB
Markdown
# 📜 تاریخچه کارهای انجامشده
|
||
|
||
> **همه فعالیتهای پروژه به صورت بولت با توضیح یکخطی و درصد تکمیل**
|
||
> **آخرین بروزرسانی:** اسفند ۱۴۰۴ (بروزرسانی: فعالسازی درگاه + مرج پروداکشن + بهبود UI ادمین)
|
||
|
||
---
|
||
|
||
## خلاصه کلی
|
||
|
||
| حوزه | تعداد آیتم | تکمیلشده | درصد کل |
|
||
|------|-----------|----------|---------|
|
||
| **BackOffice** | 61 | 60 | **98%** |
|
||
| **FrontOffice** | 40 | 38 | **95%** |
|
||
| **CMS Core** | 58 | 56 | **97%** |
|
||
| **Deployment** | 22 | 21 | **95%** |
|
||
| **Migration** | 16 | 16 | **100%** |
|
||
| **مجموع** | **197** | **191** | **97%** |
|
||
|
||
---
|
||
|
||
## ۱. BackOffice — فازها (98% کامل)
|
||
|
||
### Phase 1-3: پایه و ساختار
|
||
- ✅ ارتقا به MudBlazor v8 — تغییر تمام کامپوننتها به API جدید
|
||
- ✅ پیادهسازی MainLayout با Drawer و AppBar — RTL support
|
||
- ✅ ایجاد NavMenu با آیکونها و گروهبندی — دستهبندی منطقی
|
||
- ✅ پیادهسازی الگوی Code-behind — جدا کردن logic از markup
|
||
- ✅ اضافه کردن Theme سفارشی — رنگها و فونت Vazirmatn
|
||
|
||
### Phase 4-6: محصولات و فروشگاه
|
||
- ✅ صفحه لیست محصولات — MudDataGrid با pagination
|
||
- ✅ فرم ایجاد/ویرایش محصول — MudForm با FluentValidation
|
||
- ✅ آپلود تصویر محصول — Drag & drop با preview
|
||
- ✅ مدیریت دستهبندیها — CRUD درختی
|
||
- ✅ AppImage کامپوننت — تصاویر مربعی ۱:۱ همهجا
|
||
|
||
### Phase 7-9: سفارشات و مالی
|
||
- ✅ لیست سفارشات — فیلتر وضعیت، تاریخ، مبلغ
|
||
- ✅ جزئیات سفارش — آیتمها + تراکنشها
|
||
- ✅ تغییر وضعیت سفارش — با تأیید دیالوگ
|
||
- ✅ گزارش مالی — خلاصه تراکنشها
|
||
|
||
### Phase 10-12: کاربران و باشگاه
|
||
- ✅ لیست کاربران — جستجو + فیلتر نقش
|
||
- ✅ مدیریت عضویت باشگاه — فعال/غیرفعال
|
||
- ✅ نمای درخت شبکه — نمایش باینری با سطوح
|
||
- ✅ مدیریت کمیسیون — مشاهده Pool هفتگی
|
||
|
||
### Phase 13-15: محتوا و تنظیمات
|
||
- ✅ مدیریت بلاگ — CRUD پستها با ادیتور HTML
|
||
- ✅ مدیریت صفحات سایت — Shopify-style typed editors
|
||
- ✅ HomePageEditor — ویرایش Hero, Featured, Promotion
|
||
- ✅ AboutPageEditor — ویرایش متن دربارهما
|
||
- ✅ ContactPageEditor — اطلاعات تماس
|
||
- ✅ LicensesPageEditor — مجوزها
|
||
- ✅ ادیتور SystemConstants — تنظیمات key-value
|
||
|
||
### Phase 16-17: موجودی و نهاییسازی
|
||
- ✅ صفحه موجودی — با MudAutocomplete برای انتخاب محصول
|
||
- ✅ ایجاد خودکار رکورد موجودی — هنگام ساخت محصول
|
||
- ✅ Hangfire InventorySync — ایجاد رکوردهای گمشده
|
||
- ⬜ Dark Mode — طراحی نشده (Phase آینده)
|
||
|
||
### Phase 18: بهبود UI ادمین (اسفند ۱۴۰۴)
|
||
- ✅ UserAutoComplete در ActivateClubDialog — جایگزین MudNumericField برای انتخاب کاربر
|
||
- ✅ فیلتر کاربر در صفحه ClubMembers — UserAutoComplete در تولبار جستجو
|
||
- ✅ نمایش نام کاربر در WalletManagementPage — TemplateColumn با UserName + ID
|
||
|
||
---
|
||
|
||
## ۲. FrontOffice — فازها (95% کامل)
|
||
|
||
### UI Modernization Phase 1-3
|
||
- ✅ ارتقا به MudBlazor v8 — همه کامپوننتها
|
||
- ✅ MainLayout جدید — Header + Footer + RTL
|
||
- ✅ AuthLayout — صفحات Login/Register
|
||
- ✅ Landing Page — Hero + Features + Counter + CTA
|
||
- ✅ اصلاح انیمیشن Counter — linear interpolation
|
||
|
||
### فروشگاه (Phase 4-5)
|
||
- ✅ Regular Store — لیست محصولات با Lazy Load (12/page)
|
||
- ✅ Discount Store — لیست با Lazy Load + hybrid payment
|
||
- ✅ ProductCard مشترک — تصویر مربعی + قیمت + دکمه
|
||
- ✅ CategoryFilter — فیلتر دستهبندی sidebar
|
||
- ✅ ProductDetail — جزئیات + تصویر بزرگ + سبد
|
||
- ✅ سبد خرید — Regular + Discount جداگانه
|
||
- ✅ Checkout — پرداخت ZarinPal + ترکیبی
|
||
|
||
### باشگاه (Phase 6)
|
||
- ✅ داشبورد باشگاه — ۳ کیفپول + آمار
|
||
- ✅ نمای درخت شبکه — باینری بصری
|
||
- ✅ امضای قرارداد — OTP + scroll-to-bottom
|
||
- ✅ صفحه Chatika — چت AI
|
||
- ✅ کیفپول جادویی — MagicWallet.razor + فرم شارژ + پروگرسبار سقف
|
||
|
||
### فعالسازی درگاه پرداخت (اسفند ۱۴۰۴)
|
||
- ✅ دکمه پرداخت شارژ کیفپول اعتباری — ChargeDiscountWallet.razor فعال شد (حذف «بزودی»)
|
||
- ✅ دکمه پرداخت شارژ کیفپول جادویی — MagicWallet.razor فعال شد (حذف «بزودی»)
|
||
- ✅ دکمههای پرداخت مستقیم خرید پکیج — Index.razor هر دو شاخه فعال شدند (حذف «بزودی»)
|
||
- ✅ فیکس GwUrl پروداکشن — تصحیح از cms.kbs1.ir به cms.kbs2.ir
|
||
|
||
### محتوا و ناوبری
|
||
- ✅ بلاگ — لیست + جزئیات + pagination
|
||
- ✅ صفحات سایت — About, Contact, FAQ, Terms, Privacy, Licenses
|
||
- ✅ ناوبری Auth-Aware — مسیردهی بر اساس نقش
|
||
- ✅ Home → Club Dashboard / Store بر اساس وضعیت
|
||
- ⬜ Mobile Responsive — Phase 7 (برنامهریزیشده)
|
||
- ⬜ PWA — نیاز به Service Worker
|
||
- ⬜ Bottom Navigation (موبایل) — طراحی نشده
|
||
|
||
---
|
||
|
||
## ۳. CMS Core (97% کامل)
|
||
|
||
### ساختار و معماری
|
||
- ✅ CQRS با MediatR — Commands + Queries + Handlers
|
||
- ✅ gRPC Services — ۱۱ سرویس اصلی
|
||
- ✅ EF Core 9 — Migrations + Seeding
|
||
- ✅ Hangfire — ۴ Background Job
|
||
- ✅ JWT Authentication — Claims-based
|
||
- ✅ ICurrentUserService — جداسازی Admin/Customer
|
||
|
||
### محصولات و فروشگاه
|
||
- ✅ Product CRUD — با auto-inventory
|
||
- ✅ Category CRUD — درختی
|
||
- ✅ Inventory management — auto-create + sync job
|
||
- ✅ GetProductsPaged — با PaginationState
|
||
- ✅ File upload/download — streaming gRPC
|
||
|
||
### مالی و پرداخت
|
||
- ✅ ZarinPal Integration — IPG + Verify
|
||
- ✅ PYMS Service — سرویس مرکزی پرداخت
|
||
- ✅ ۳ Wallet System — Balance, Network, Discount
|
||
- ✅ Transaction logging — همه تراکنشها
|
||
|
||
### باشگاه
|
||
- ✅ Binary Tree — SP_GetNetworkTree
|
||
- ✅ Weekly Balance Calculation — sp_CalculateWeeklyBalances
|
||
- ✅ Commission Pool — sp_CalculateWeeklyCommissionPool
|
||
- ✅ Contract System — OTP + acceptance
|
||
- ✅ Club Features — activate/deactivate
|
||
- ✅ DayaLoan Integration — Hangfire + Polly
|
||
|
||
### 🪄 کیفپول جادویی (Magic Wallet) — فاز 1-6 ✅
|
||
- ✅ فاز ۱: WalletMode enum + UserWallet fields + ClubMembershipCycle entity + TransactionType (14,15)
|
||
- ✅ فاز ۲: Trigger ورود/خروج Magic در SubmitShopBuyOrder + ActivateClubMembership Cycle
|
||
- ✅ فاز ۳: ChargeMagicWallet + VerifyMagicWalletCharge + HTTP callback + gRPC RPCs
|
||
- ✅ فاز ۴: فیلتر Magic از کمیسیون (C# + SP) + تاریخ Cycle
|
||
- ✅ فاز ۵: MagicWallet.razor UI + WalletService + تایل داشبورد
|
||
- ✅ فاز ۶: محدودیت دایا بعد از دور اول + محدودیت فعالسازی در حالت Magic
|
||
|
||
### VAT
|
||
- ✅ اصلاح VAT از 9% به 10% در همه فایلها (VatCalculator, UserOrderService, Checkout, VATService)
|
||
|
||
### فعالسازی درگاه و تنظیمات محیطی (اسفند ۱۴۰۴)
|
||
- ✅ تنظیم MerchantId جدید ZarinPal — `4225d555-5fa9-4df0-9b61-1ce152cbbba8`
|
||
- ✅ تنظیمات محیطی — Staging: UseSandbox=true / Production: UseSandbox=false
|
||
- ✅ فعالسازی MagicWalletCycleSeed در Production
|
||
- ✅ تنظیم Kestrel Http2 + Seq logging برای Production
|
||
- ✅ بهبود user_name در proto — فیلد جدید در GetAllUserWalletByFilterResponseModel
|
||
- ✅ اغنای پاسخ UserWalletService — join با جدول Users برای نمایش نام کاربر
|
||
- ✅ ارتقای Proto NuGet به نسخه 0.0.183
|
||
|
||
### محتوا
|
||
- ✅ Blog CRUD — با pagination
|
||
- ✅ SitePage Settings — JSON typed
|
||
- ✅ SystemConfigurations — key-value
|
||
- ⬜ Product Bundle — طراحیشده، پیادهسازی نشده
|
||
- ⬜ Manual Payment — طراحیشده، پیادهسازی نشده
|
||
- ⬜ API Rate Limiting — برنامهریزیشده
|
||
|
||
---
|
||
|
||
## ۴. Deployment و زیرساخت (95% کامل)
|
||
|
||
- ✅ Docker Compose — تمام سرویسها
|
||
- ✅ Dockerfile (CMS) — multi-stage build
|
||
- ✅ K8s Manifests — Deployment + Service + Ingress
|
||
- ✅ CI/CD Pipeline — Gitea Actions
|
||
- ✅ Nexus Repository — NuGet + Docker proxy
|
||
- ✅ Offline Deployment — کامل با اسکریپتها
|
||
- ✅ Proto Package — NuGet packaging + distribution
|
||
- ✅ Health Check scripts — K8s + service
|
||
- ✅ Mirror Configuration — Docker + NuGet
|
||
- ✅ Base Image Caching — pull + save + load
|
||
- ✅ مرج پروداکشن CMS — حل conflict در appsettings.Production.json + حذف migration تکراری u21
|
||
- ✅ مرج پروداکشن FrontOffice — ۲۱ فایل، ۴۰۰ insertion + فیکس GwUrl
|
||
- ✅ مرج پروداکشن BackOffice — ۳۶ فایل، بدون conflict
|
||
- ✅ اجرای Migration روی پروداکشن — ExpandDiscountProductFullInformation روی DB کیبیاس
|
||
- ⬜ Monitoring (Prometheus/Grafana) — برنامهریزیشده
|
||
- ⬜ Log Aggregation (ELK/Seq) — Seq تنظیم شده در Production (http://seq-svc:5341)
|
||
|
||
---
|
||
|
||
## ۵. Migration (100% کامل)
|
||
|
||
- ✅ FrontOffice REST → gRPC — همه سرویسها migrate شدند
|
||
- ✅ BackOffice REST → gRPC — همه سرویسها migrate شدند
|
||
- ✅ BFF حذف — یک لایه کمتر در deployment
|
||
- ✅ API Gateway (Ocelot) حذف — K8s Ingress جایگزین
|
||
- ✅ Data Migration — Users, Products, Orders, Club
|
||
- ✅ Geography Seeder — ۳۱ استان + ۱۲۰۰ شهر
|
||
- ✅ SQL Scripts — ۱۴ اسکریپت مهاجرت اجرا شدند
|
||
- ✅ Proto Package Unification — یک package مشترک
|
||
- ✅ Binary Tree Reconstruction — از سیستم قدیم
|
||
|
||
---
|
||
|
||
## ۶. مستندات (100% کامل)
|
||
|
||
- ✅ ایجاد totalDoc repository — مخزن مرکزی docs
|
||
- ✅ جمعآوری ۵۳ فایل از ۵ مخزن مختلف
|
||
- ✅ تجمیع به ۱۵ فایل ساختارمند — Business + Technical + Overview
|
||
- ✅ Index و Cross-reference — نقشه ارتباطات
|
||
- ✅ واژهنامه و استانداردها
|
||
- ✅ نقشه راه آینده
|
||
|
||
---
|
||
|
||
## ۷. Timeline (جدول زمانی)
|
||
|
||
| زمان | رویداد | درصد پروژه |
|
||
|------|--------|-----------|
|
||
| مهر ۱۴۰۳ | شروع پروژه، معماری CMS | 10% |
|
||
| آبان ۱۴۰۳ | CQRS + gRPC + EF Core | 20% |
|
||
| آذر ۱۴۰۳ | باشگاه + درخت باینری + کمیسیون | 35% |
|
||
| دی ۱۴۰۳ | فروشگاه عادی + پرداخت از کیفپول | 45% |
|
||
| بهمن ۱۴۰۳ | فروشگاه اعتباری + وام دایا | 55% |
|
||
| اسفند ۱۴۰۳ (هفته ۱) | UI Modernization Phase 1-3 | 65% |
|
||
| اسفند ۱۴۰۳ (هفته ۲) | Site Pages + BackOffice audit | 75% |
|
||
| اسفند ۱۴۰۳ (هفته ۳) | Inventory + Lazy Load + Images | 85% |
|
||
| اسفند ۱۴۰۳ (هفته ۴) | مستندات + نهاییسازی | 95% |
|
||
| اسفند ۱۴۰۴ (هفته ۱-۲) | 🪄 کیفپول جادویی (فاز 1-6) + اصلاح VAT 10% | 96% |
|
||
| اسفند ۱۴۰۴ (هفته ۳) | 🚀 فعالسازی درگاه + بهبود UI ادمین + مرج پروداکشن | 97% |
|