# راهنمای ادامه کار - 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 بنویسید