docs: update for Phase 8e — per-package commission reports
- PACKAGE-TRANSFORMATION-TASKS: mark T4.8-T4.12 completed, add Phase 8e section, update tree diagram, bump to NuGet v0.0.187 - OVERVIEW-03-CHANGELOG: add Phase 8e entry, mark commission per-package items done, update timeline & summary table
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
# 📜 تاریخچه کارهای انجامشده
|
||||
|
||||
> **همه فعالیتهای پروژه به صورت بولت با توضیح یکخطی و درصد تکمیل**
|
||||
> **آخرین بروزرسانی:** اسفند ۱۴۰۴ (بروزرسانی: فاز ۸b-۸d — BO CRUD + FO Customer RPCs + Proto cleanup | NuGet v0.0.186)
|
||||
> **آخرین بروزرسانی:** اسفند ۱۴۰۴ (بروزرسانی: فاز ۸e — Per-Package Commission Reports | NuGet v0.0.187)
|
||||
|
||||
---
|
||||
|
||||
@@ -12,10 +12,10 @@
|
||||
| **BackOffice** | 61 | 61 | **100%** |
|
||||
| **FrontOffice** | 40 | 40 | **100%** |
|
||||
| **CMS Core** | 72 | 72 | **100%** |
|
||||
| **Package-Based System** | 30 | 30 | **100%** |
|
||||
| **Package-Based System** | 35 | 35 | **100%** |
|
||||
| **Deployment** | 22 | 21 | **95%** |
|
||||
| **Migration** | 16 | 16 | **100%** |
|
||||
| **مجموع** | **241** | **240** | **99%** |
|
||||
| **مجموع** | **246** | **245** | **99%** |
|
||||
|
||||
---
|
||||
|
||||
@@ -307,12 +307,19 @@
|
||||
- ✅ Add MagicWallet per-package values to ConfigurationService (Multiplier, MaxDeposit, MaxCredit)
|
||||
- ✅ تأیید: صفر رفرنس فعال به ۹ SystemConstants منسوخ — dead code آماده حذف
|
||||
|
||||
### Phase 7 — UI ⬜ (در انتظار)
|
||||
### Phase 7 — UI ✅ (گزارش per-package)
|
||||
- ⬜ FrontOffice: کاشیهای داینامیک پکیج
|
||||
- ⬜ FrontOffice: MyPackages + re-purchase
|
||||
- ⬜ FrontOffice: Commission Dashboard per-package
|
||||
- ⬜ BackOffice: Package CRUD UI
|
||||
- ⬜ BackOffice: فیلتر پکیج در گزارشها
|
||||
- ✅ FrontOffice: Commission Dashboard per-package — فیلتر dropdown پکیج + ستون پکیج + MudChip (دسکتاپ + موبایل)
|
||||
- ✅ FrontOffice: WeeklyBalance per-package — فیلتر MudSelect پکیج + MudChip اطلاعات هفته
|
||||
- ✅ BackOffice: فیلتر پکیج در گزارشها — PackageSelect component + UserPayouts + BalancesReport
|
||||
|
||||
### Phase 8e — Per-Package Commission Reports ✅ (CMS:`aaaf7fc` FO:`a956cb9` BO:`8be98ae`)
|
||||
- ✅ Proto: اضافه `package_id` فیلتر به ۴ request + `package_id`/`package_title` به ۴ response model
|
||||
- ✅ CMS: اضافه PackageId فیلتر به ۴ query + handler + ۳ DTO + CommissionProfile mapping
|
||||
- ✅ BO: کامپوننت PackageSelect + فیلتر و ستون پکیج در UserPayouts + BalancesReport
|
||||
- ✅ FO: فیلتر و ستون پکیج در CommissionDashboard + WeeklyBalance
|
||||
- ✅ NuGet: `0.0.186` → `0.0.187`
|
||||
|
||||
---
|
||||
|
||||
@@ -332,3 +339,4 @@
|
||||
| اسفند ۱۴۰۴ (هفته ۱-۲) | 🪄 کیفپول جادویی (فاز 1-6) + اصلاح VAT 10% | 96% |
|
||||
| اسفند ۱۴۰۴ (هفته ۳) | 🚀 فعالسازی درگاه + بهبود UI ادمین + مرج پروداکشن | 97% |
|
||||
| اسفند ۱۴۰۴ (هفته ۴) | 📦 تحول پکیجبیس فاز ۰-۶ (Domain → Migration → Business → Package → CRUD → Commission per-pkg → Deprecation) | 97% |
|
||||
| اسفند ۱۴۰۴ (هفته ۵) | 📦 فاز 8e: گزارشهای پورسانت per-package (Proto + CMS + BO + FO) | 98% |
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
# 🔄 نقشهراه تحول پکیجبیس — تسکهای گامبهگام
|
||||
|
||||
> **وضعیت:** در حال اجرا — **فاز ۰-۸d تکمیل ✅** | NuGet v0.0.186 | UI باقیمانده
|
||||
> **تاریخ:** ۱۴۰۴/۱۲/۰۸
|
||||
> **وضعیت:** در حال اجرا — **فاز ۰-۹ (per-package reports) تکمیل ✅** | NuGet v0.0.187 | تست باقیمانده
|
||||
> **تاریخ:** ۱۴۰۴/۱۲/۰۹
|
||||
> **پیشنیاز:** [BIZ-PACKAGE-BASED-SYSTEM.md](../business/BIZ-PACKAGE-BASED-SYSTEM.md) **v3** (تکمیل پورسانت per-package)
|
||||
> **هدف:** شکستن **۴۸+ تغییر** به تسکهای اتمیک با ترتیب اجرا و وابستگیها
|
||||
> **کامیتها:**
|
||||
> CMS: `8b9c317`→`fe3edd1`→`ae92ab8`→`a9cd2fd`→`8e5c7c5`→`ccb938e`→`0002a5a`→`607f791`→`7176fe4`→`d19c569`→`469d97b`→`161f796`→`8446e0e`→`ce8e248`→`7554d70`
|
||||
> FrontOffice: `b82cac4`→`71f391a`→`0bbc11e`→`d71d463`→`40882c8`
|
||||
> BackOffice: `f1b0085`→`89f5241`→`c96377a`
|
||||
> CMS: `8b9c317`→`fe3edd1`→`ae92ab8`→`a9cd2fd`→`8e5c7c5`→`ccb938e`→`0002a5a`→`607f791`→`7176fe4`→`d19c569`→`469d97b`→`161f796`→`8446e0e`→`ce8e248`→`7554d70`→`aaaf7fc`
|
||||
> FrontOffice: `b82cac4`→`71f391a`→`0bbc11e`→`d71d463`→`40882c8`→`a956cb9`
|
||||
> BackOffice: `f1b0085`→`89f5241`→`c96377a`→`8be98ae`
|
||||
|
||||
> ⚠️ **تغییرات v3:** پورسانت per-package، carryover مجزا، SP parameters داینامیک، گزارشدهی FO/BO per-package
|
||||
|
||||
@@ -34,9 +34,10 @@
|
||||
├─→ 8b: BO CRUD expansion ✅ CMS:`ce8e248` BO:`89f5241`
|
||||
├─→ 8c: FO Package pages ✅ FO:`d71d463`
|
||||
└─→ 8d: Proto cleanup ✅ CMS:`7554d70` FO:`40882c8` BO:`c96377a`
|
||||
└─→ مرحله ۵: تست + استقرار (۳ روز) ⬜
|
||||
└─→ 8e: Per-package reports ✅ CMS:`aaaf7fc` FO:`a956cb9` BO:`8be98ae`
|
||||
└─→ مرحله ۵: تست + استقرار (۳ روز) ⬜
|
||||
|
||||
مسیر بحرانی: ۰→۱→۱.۵→۲→۳→۴→UI→۵ = ~۱۷ روز | انجامشده: ۰→8d (~۱۵ روز)
|
||||
مسیر بحرانی: ۰→۱→۱.۵→۲→۳→۴→UI→۵ = ~۱۷ روز | انجامشده: ۰→8e (~۱۶ روز)
|
||||
```
|
||||
|
||||
---
|
||||
@@ -583,6 +584,33 @@ await connection.ExecuteAsync("CMS.sp_CalculateWeeklyBalances",
|
||||
|
||||
**NuGet:** `0.0.185` → `0.0.186` (همه ریپوها)
|
||||
|
||||
### فاز 8e — Per-Package Commission Reports ✅
|
||||
|
||||
> کامیت: CMS `aaaf7fc` | FO `a956cb9` | BO `8be98ae`
|
||||
|
||||
**Proto (commission.proto):**
|
||||
- اضافه `package_id` فیلتر به ۴ request message: `GetUserCommissionPayoutsRequest`, `GetUserWeeklyBalancesRequest`, `GetMyCommissionPayoutsRequest`, `GetMyWeeklyBalancesRequest`
|
||||
- اضافه `package_id` + `package_title` به ۴ response model: `UserCommissionPayoutModel`, `UserWeeklyBalanceModel`, `CustomerCommissionPayoutModel`, `CustomerWeeklyBalanceModel`
|
||||
|
||||
**CMS (12 فایل):**
|
||||
- ۴ Query record: اضافه `public long? PackageId { get; init; }`
|
||||
- ۴ Handler: اضافه `.Include(x => x.Package)` + فیلتر `Where(x => x.PackageId == request.PackageId.Value)` + map `PackageId`/`PackageTitle`
|
||||
- ۳ Response DTO: اضافه `PackageId` + `PackageTitle`
|
||||
- `CommissionProfile.cs`: تنظیم mappingهای Mapster برای admin + customer
|
||||
|
||||
**BackOffice (6 فایل):**
|
||||
- کامپوننت جدید `PackageSelect.razor/.cs`: dropdown قابل استفاده مجدد با بارگذاری پکیجها از `PackageContract`
|
||||
- `UserPayouts.razor/.cs`: فیلتر PackageSelect + ستون پکیج با MudChip
|
||||
- `BalancesReport.razor`: فیلتر PackageSelect + ستون پکیج با MudChip + mapping PackageTitle
|
||||
|
||||
**FrontOffice (7 فایل):**
|
||||
- `CommissionDtos.cs`: اضافه `PackageId` + `PackageTitle` به `CommissionPayoutDto` و `WeeklyBalanceDto`
|
||||
- `CommissionService.cs`: اضافه پارامتر `packageId` به `GetMyCommissionPayoutsAsync` و `GetMyWeeklyBalanceAsync`
|
||||
- `CommissionDashboardPage.razor/.cs`: فیلتر dropdown پکیج + ستون «پکیج» با MudChip (دسکتاپ + موبایل)
|
||||
- `WeeklyBalancePage.razor/.cs`: فیلتر MudSelect پکیج + نمایش MudChip پکیج در بخش اطلاعات هفته
|
||||
|
||||
**NuGet:** `0.0.186` → `0.0.187` (همه ریپوها)
|
||||
|
||||
---
|
||||
|
||||
## مرحله ۴ — UI (FrontOffice + BackOffice)
|
||||
@@ -634,48 +662,26 @@ else
|
||||
}
|
||||
```
|
||||
|
||||
### T4.8 — FrontOffice: CommissionDashboard per-package (🆕 v3)
|
||||
### T4.8 — FrontOffice: CommissionDashboard per-package (🆕 v3) ✅ FO:`a956cb9`
|
||||
|
||||
**فایل:** `FrontOffice/src/.../Pages/Commission/CommissionDashboardPage.razor`
|
||||
**پیادهسازی:**
|
||||
- `CommissionDtos.cs`: اضافه `PackageId` + `PackageTitle` به `CommissionPayoutDto` و `WeeklyBalanceDto`
|
||||
- `CommissionService.cs`: اضافه پارامتر `packageId` به `GetMyCommissionPayoutsAsync` و `GetMyWeeklyBalanceAsync`
|
||||
- `CommissionDashboardPage.razor`: اضافه dropdown فیلتر پکیج + ستون «پکیج» با MudChip + نمایش پکیج در card موبایل
|
||||
- `CommissionDashboardPage.razor.cs`: inject `PackageService`، فیلد `_filterPackageId`، بارگذاری لیست پکیجها
|
||||
|
||||
```razor
|
||||
@* v3: کارتهای خلاصه بر اساس پکیج *@
|
||||
<MudGrid>
|
||||
@foreach (var summary in _packageSummaries)
|
||||
{
|
||||
<MudItem xs="12" md="6">
|
||||
<MudCard>
|
||||
<MudCardHeader>@summary.PackageTitle</MudCardHeader>
|
||||
<MudCardContent>
|
||||
<p>زیرمجموعه: @summary.DownlineCount نفر</p>
|
||||
<p>تیم اول: @summary.LeftLegMembers | تیم دوم: @summary.RightLegMembers</p>
|
||||
<p>تعادل: @summary.TotalBalances</p>
|
||||
<p>💰 پاداش: @summary.CommissionFormatted</p>
|
||||
</MudCardContent>
|
||||
</MudCard>
|
||||
</MudItem>
|
||||
}
|
||||
</MudGrid>
|
||||
<MudAlert>📦 مجموع پاداش هفته: @_totalCommission</MudAlert>
|
||||
```
|
||||
### T4.9 — FrontOffice: WeeklyBalance per-package (🆕 v3) ✅ FO:`a956cb9`
|
||||
|
||||
### T4.9 — FrontOffice: WeeklyBalance per-package (🆕 v3)
|
||||
**پیادهسازی:**
|
||||
- `WeeklyBalancePage.razor`: اضافه MudSelect فیلتر پکیج کنار WeekSelector + نمایش MudChip پکیج در بخش اطلاعات هفته
|
||||
- `WeeklyBalancePage.razor.cs`: inject `PackageService`، فیلد `_filterPackageId`، ارسال به `CommissionService.GetMyWeeklyBalanceAsync`
|
||||
|
||||
> تعادل تیم اول/دوم به تفکیک هر پکیج نمایش داده شود
|
||||
### T4.10-T4.12 — BackOffice: گزارشهای پورسانت per-package (🆕 v3) ✅ BO:`8be98ae`
|
||||
|
||||
### T4.10-T4.12 — BackOffice: گزارشهای پورسانت per-package (🆕 v3)
|
||||
|
||||
**تغییرات مشترک:**
|
||||
- اضافه dropdown فیلتر پکیج (همه / پایه / نقرهای / ...)
|
||||
- اضافه ستون پکیج در جدولها
|
||||
- CSV export شامل ستون پکیج
|
||||
|
||||
| صفحه | تغییر |
|
||||
|------|-------|
|
||||
| Commission Dashboard | فیلتر + خلاصه per-package |
|
||||
| Weekly Reports | فیلتر + CSV per-package |
|
||||
| Balances Report | فیلتر + ستون پکیج |
|
||||
| User Payouts | ستون پکیج + فیلتر |
|
||||
**پیادهسازی:**
|
||||
- کامپوننت جدید `PackageSelect.razor/.cs`: dropdown قابل استفاده مجدد با بارگذاری پکیجها از `PackageContract`
|
||||
- `UserPayouts.razor/.cs`: فیلتر PackageSelect + ستون پکیج با MudChip
|
||||
- `BalancesReport.razor`: فیلتر PackageSelect + ستون پکیج با MudChip + mapping `PackageTitle`
|
||||
|
||||
### T4.13 — BackOffice: Package CRUD + Quick Access فیچرها (🆕 v3)
|
||||
|
||||
@@ -760,4 +766,4 @@ else
|
||||
|
||||
---
|
||||
|
||||
*آخرین بروزرسانی: ۱۴۰۴/۱۲/۰۸ — فاز ۰-۸d تکمیل (۲۰ کامیت: ۱۵ CMS + ۵ FO + ۳ BO) | NuGet v0.0.186 | Proto cleanup: -4 RPCs -8 messages | FO+BO CRUD کامل per-package | باقیمانده: UI per-package reports + تست + deploy*
|
||||
*آخرین بروزرسانی: ۱۴۰۴/۱۲/۰۹ — فاز ۰-۸e تکمیل (۲۴ کامیت: ۱۶ CMS + ۶ FO + ۴ BO) | NuGet v0.0.187 | Proto: +package_id in commission messages | FO+BO per-package commission reports کامل | باقیمانده: تست + deploy*
|
||||
|
||||
Reference in New Issue
Block a user