98 lines
3.2 KiB
Markdown
98 lines
3.2 KiB
Markdown
|
|
# راهنمای ادامه کار - BackOffice Build Fix
|
|||
|
|
|
|||
|
|
> این فایل برای شروع چت جدید طراحی شده است
|
|||
|
|
|
|||
|
|
## وضعیت فعلی
|
|||
|
|
|
|||
|
|
**تاریخ**: 5 دسامبر 2025
|
|||
|
|
**Build Status**: ❌ FAILING (~12 خطا)
|
|||
|
|
**پیشرفت**: از 60+ خطا به ~12 خطا رسیدیم
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## دستور شروع کار
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# 1. وضعیت فعلی build
|
|||
|
|
cd /home/masoud/Apps/project/FourSat/BackOffice/src/BackOffice
|
|||
|
|
dotnet build 2>&1 | grep -E "error CS|Error"
|
|||
|
|
|
|||
|
|
# 2. خواندن داکیومنتها
|
|||
|
|
cat /home/masoud/Apps/project/FourSat/BackOffice/docs/BUILD-FIX-STATUS.md
|
|||
|
|
cat /home/masoud/Apps/project/FourSat/BackOffice/docs/EXCLUDED-FILES.md
|
|||
|
|
cat /home/masoud/Apps/project/FourSat/BackOffice/docs/PROTO-DEPENDENCIES.md
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## خطاهای باقیمانده (تقریبی)
|
|||
|
|
|
|||
|
|
### 1. PaginationState Namespace
|
|||
|
|
**فایل**: `ProductsAutoComplete.razor.cs`
|
|||
|
|
**خطا**: `PaginationState` پیدا نمیشه
|
|||
|
|
**فیکس**: تغییر using به `BackOffice.BFF.Products.Protobuf.Protos.Products`
|
|||
|
|
|
|||
|
|
### 2. Int32Value/Int64Value Binding
|
|||
|
|
**فایل**: `WithdrawalReports.razor`
|
|||
|
|
**خطا**: `@bind-Value` روی `Int32Value` کار نمیکنه
|
|||
|
|
**فیکس**: استفاده از conversion یا wrapper
|
|||
|
|
|
|||
|
|
### 3. GalleryDialog Reference
|
|||
|
|
**فایل**: `ProductsMainPage.razor.cs`
|
|||
|
|
**خطا**: `GalleryDialog` exclude شده ولی متد `OpenGalleryDialog` هنوز هست
|
|||
|
|
**فیکس**: comment کردن متد
|
|||
|
|
|
|||
|
|
### 4. DiscountShopWidget Reference
|
|||
|
|
**فایل**: `SystemOverview.razor`
|
|||
|
|
**خطا**: component exclude شده ولی استفاده میشه
|
|||
|
|
**فیکس**: حذف یا comment کردن component از صفحه
|
|||
|
|
|
|||
|
|
### 5. ClubMembers Bool Binding
|
|||
|
|
**فایل**: `ClubMembers.razor`
|
|||
|
|
**خطا**: `bool?` به `MudSwitch T="bool"` bind نمیشه
|
|||
|
|
**فیکس**: تغییر نوع متغیر یا استفاده از converter
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## فایلهای کلیدی
|
|||
|
|
|
|||
|
|
| فایل | هدف |
|
|||
|
|
|------|-----|
|
|||
|
|
| `BackOffice.csproj` | لیست exclude ها و references |
|
|||
|
|
| `ConfigureService.cs` | DI registrations |
|
|||
|
|
| `_Imports.razor` | global using و inject ها |
|
|||
|
|
| `BackOffice/docs/BUILD-FIX-STATUS.md` | وضعیت کامل خطاها |
|
|||
|
|
| `BackOffice/docs/EXCLUDED-FILES.md` | فایلهای exclude شده |
|
|||
|
|
| `BackOffice/docs/PROTO-DEPENDENCIES.md` | وابستگیهای proto |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## نکات مهم
|
|||
|
|
|
|||
|
|
1. **هیچ فایلی حذف نشده** - فقط از build exclude شدند
|
|||
|
|
2. **Products.Protobuf** از ProjectReference استفاده میکند (نه NuGet)
|
|||
|
|
3. **MudBlazor 8.14.0** نیاز به `T` parameter دارد
|
|||
|
|
4. **Snackbar** در `_Imports.razor` inject شده
|
|||
|
|
5. **.NET 9** target framework هست
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## چکلیست برای تکمیل
|
|||
|
|
|
|||
|
|
- [ ] فیکس PaginationState namespace
|
|||
|
|
- [ ] فیکس WithdrawalReports binding
|
|||
|
|
- [ ] Comment کردن OpenGalleryDialog
|
|||
|
|
- [ ] حذف DiscountShopWidget از SystemOverview
|
|||
|
|
- [ ] فیکس ClubMembers bool binding
|
|||
|
|
- [ ] ✅ Build موفق
|
|||
|
|
- [ ] تست صفحات اصلی
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## پس از Build موفق
|
|||
|
|
|
|||
|
|
1. Proto های جدید بسازید (DiscountProduct, Tag, etc.)
|
|||
|
|
2. فایلهای exclude شده رو برگردونید
|
|||
|
|
3. متدهای جدید به UserOrder.Protobuf اضافه کنید
|
|||
|
|
4. تستهای integration بنویسید
|