6.9 KiB
6.9 KiB
فایلهای Exclude شده از Build
آخرین بروزرسانی: December 6, 2025
این فایلها از build خارج شدند ولی حذف نشدند
✅ فایلهای برگردانده شده (Enabled)
این فایلها قبلاً exclude بودند و حالا فعال شدند:
DiscountShop Module
- ✅
Pages/DiscountShop/**- تمام صفحات فروشگاه تخفیفی - ✅
Services/DiscountProduct/**- سرویس محصولات تخفیفی - ✅
Services/DiscountCategory/**- سرویس دستهبندیها - ✅
Services/DiscountOrder/**- سرویس سفارشات
Tag Module
- ✅
Pages/Tag/**- صفحات مدیریت تگ - ✅
Services/Tag/**- سرویس تگ
PublicMessages Module
- ✅
Pages/PublicMessages/**- مدیریت پیامهای عمومی - ✅
Services/PublicMessage/**- سرویس پیامها
Payment Module
- ✅
Pages/Payment/ManualPayments.razor*- پرداختهای دستی - ✅
Pages/Payment/Components/ManualPaymentDialog.razor*- دیالوگ پرداخت - ✅
Pages/Payment/Transactions.razor*- صفحه تراکنشها
Dashboard
- ✅
Pages/Dashboard/DiscountShopWidget.razor*- ویجت آمار فروشگاه
DragDrop Pages
- ✅
Pages/Category/CategoryProductsDragDropPage.razor*- مدیریت محصولات دسته - ✅
Pages/Products/ProductCategoriesDragDropPage.razor*- مدیریت دستههای محصول
BulkEdit Module
- ✅
Pages/Products/BulkEdit.razor*- ویرایش گروهی محصولات (ENABLED)
❌ فایلهای هنوز Exclude
گروه 1: نیاز به Proto Methods جدید
| فایل | Proto | متد/Message مورد نیاز |
|---|---|---|
Pages/Products/Components/GalleryDialog.razor* |
Products | AddProductImageAsync, RemoveProductImageAsync, ImageFileModel |
Pages/Products/Components/CreateDialog.razor* |
Products | CreateProductWithImageRequest, ImageFileModel |
Pages/Products/Components/UpdateDialog.razor* |
Products | UpdateProductWithImageRequest, ImageFileModel |
تعداد: 3 فایل
راهحل: افزودن RPCهای زیر به products.proto:
rpc AddProductImage(AddProductImageRequest) returns (AddProductImageResponse);
rpc RemoveProductImage(RemoveProductImageRequest) returns (google.protobuf.Empty);
message ImageFileModel {
bytes file = 1;
string mime = 2;
string file_name = 3;
}
گروه 2: نیاز به Refactoring
| فایل | مشکل | راهحل |
|---|---|---|
Pages/Products/BulkEdit.razor* |
استفاده مستقیم از CMSMicroservice.Protobuf.Protos |
تغییر به BackOffice.BFF + افزودن BulkUpdateProducts RPC |
تعداد: 1 فایل
راهحل:
- حذف dependency به CMSMicroservice
- افزودن bulk update method به products.proto
- پیادهسازی در Backend
آمار
- ✅ فایلهای Enabled: ~30+ صفحه و ~15 سرویس
- ❌ فایلهای Excluded: 4 فایل
- Proto Projects ساخته شده: 14
- Build Errors: 0
Exclude های فعلی در csproj
<ItemGroup>
<!-- BulkEdit - needs refactoring -->
<Compile Remove="Pages\Products\BulkEdit.razor" />
<Content Remove="Pages\Products\BulkEdit.razor" />
<Compile Remove="Pages\Products\BulkEdit.razor.cs" />
<!-- GalleryDialog - needs AddProductImageAsync/RemoveProductImageAsync -->
<Compile Remove="Pages\Products\Components\GalleryDialog.razor" />
<Content Remove="Pages\Products\Components\GalleryDialog.razor" />
<Compile Remove="Pages\Products\Components\GalleryDialog.razor.cs" />
<!-- CreateDialog/UpdateDialog - needs ImageFileModel -->
<Compile Remove="Pages\Products\Components\CreateDialog.razor" />
<Content Remove="Pages\Products\Components\CreateDialog.razor" />
<Compile Remove="Pages\Products\Components\CreateDialog.razor.cs" />
<Compile Remove="Pages\Products\Components\UpdateDialog.razor" />
<Content Remove="Pages\Products\Components\UpdateDialog.razor" />
<Compile Remove="Pages\Products\Components\UpdateDialog.razor.cs" />
</ItemGroup>
نکات مهم
برای فعالسازی فایلهای Exclude:
-
GalleryDialog, CreateDialog, UpdateDialog:
- نیاز به پیادهسازی Image Upload API در Backend
- افزودن
ImageFileModelmessage به proto - افزودن RPC methods برای upload/remove
-
BulkEdit:
- حذف dependency به
CMSMicroservice.Protobuf - استفاده از
BackOffice.BFF.Products.Protobuf - افزودن
BulkUpdateProductsRPC به backend
- حذف dependency به
فایلهای کامل شده که دیگر exclude نیستند:
- ✅ تمام ماژول DiscountShop
- ✅ تمام ماژول Tag
- ✅ تمام ماژول PublicMessages
- ✅ تمام ماژول ManualPayments
- ✅ DiscountShopWidget
- ✅ Transactions
- ✅ DragDrop Pages
<!-- BulkEdit -->
<Compile Remove="Pages\Products\BulkEdit.razor" />
<Content Remove="Pages\Products\BulkEdit.razor" />
<Compile Remove="Pages\Products\BulkEdit.razor.cs" />
<!-- UserOrder Components -->
<Compile Remove="Pages\UserOrder\Components\CancelOrderDialog.razor" />
<Content Remove="Pages\UserOrder\Components\CancelOrderDialog.razor" />
<Compile Remove="Pages\UserOrder\Components\CancelOrderDialog.razor.cs" />
<Compile Remove="Pages\UserOrder\Components\ApplyDiscountDialog.razor" />
<Content Remove="Pages\UserOrder\Components\ApplyDiscountDialog.razor" />
<Compile Remove="Pages\UserOrder\Components\ApplyDiscountDialog.razor.cs" />
<Compile Remove="Pages\UserOrder\Components\ChangeOrderStatusDialog.razor" />
<Content Remove="Pages\UserOrder\Components\ChangeOrderStatusDialog.razor" />
<Compile Remove="Pages\UserOrder\Components\ChangeOrderStatusDialog.razor.cs" />
<!-- Transactions -->
<Compile Remove="Pages\Payment\Transactions.razor" />
<Content Remove="Pages\Payment\Transactions.razor" />
<Compile Remove="Pages\Payment\Transactions.razor.cs" />
<!-- Product Dialogs -->
<Compile Remove="Pages\Products\Components\CreateProductDialog.razor" />
<Content Remove="Pages\Products\Components\CreateProductDialog.razor" />
<Compile Remove="Pages\Products\Components\CreateProductDialog.razor.cs" />
<Compile Remove="Pages\Products\Components\UpdateProductDialog.razor" />
<Content Remove="Pages\Products\Components\UpdateProductDialog.razor" />
<Compile Remove="Pages\Products\Components\UpdateProductDialog.razor.cs" />
<Compile Remove="Pages\Products\Components\GalleryDialog.razor" />
<Content Remove="Pages\Products\Components\GalleryDialog.razor" />
<Compile Remove="Pages\Products\Components\GalleryDialog.razor.cs" />
```