docs: deep analysis of 24 dead gRPC RPCs — keep 12, archive 12
Analyzed all 24 dead RPC implementations line-by-line: - 12 KEEP (future-proof): CustomerReorderPreviousOrder, CustomerTrackOrder, CalculateOrderPV, GetInventorySummary, GetStockValueReport, BulkAddStock, BulkUpdateProductStock, GetConfigurationByKey, UpdateCustomerSettings, ChangeNetworkParent, AssignFeatureToMembership, GetLowStockProducts - 12 ARCHIVE: fms.proto (2), BulkAdjustStock, 2 empty order stubs, 2 non-functional configs, 2 redundant city ops, 3 duplicate RPCs Key findings: - 17/24 were actually FULLY IMPLEMENTED, just never wired to frontend - fms.proto is the only completely dead proto file (no service class) - Archive != Delete — marked for exclusion only
This commit is contained in:
+76
-134
@@ -1,7 +1,8 @@
|
|||||||
# آدیت سرویسهای gRPC — CMS
|
# آدیت سرویسهای gRPC — CMS
|
||||||
|
|
||||||
> تاریخ: ۱۴۰۴/۰۴
|
> تاریخ: ۱۴۰۴/۰۴
|
||||||
> هدف: شناسایی RPCهایی که از هیچکدام از فرانتها (FrontOffice مشتری + BackOffice ادمین) فراخوانی نمیشوند
|
> آخرین بروزرسانی: ۱۴۰۴/۱۲/۰۶
|
||||||
|
> هدف: شناسایی RPCهایی که از هیچکدام از فرانتها (FrontOffice مشتری + BackOffice ادمین) فراخوانی نمیشوند + تصمیمگیری نگهداری vs آرشیو
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -21,40 +22,49 @@
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 🔴 دسته A — کد مُرده واقعی (Dead Code)
|
## 🔴 بخش ۱ — تحلیل ۲۴ RPC مُرده: نگهداری vs آرشیو
|
||||||
|
|
||||||
> این RPCها نه از فرانتها فراخوانی میشوند و نه در کد CMS پیادهسازی/استفاده شدهاند (فقط ≤2 رفرنس = فقط کد proto-generated).
|
### ✅ نگهداری (آیندهنگرانه — ۱۲ عدد)
|
||||||
|
|
||||||
| # | RPC | فایل Proto | وضعیت |
|
> این RPCها پیادهسازی کامل دارند و در نقشهراه آینده محصول کاربرد دارند.
|
||||||
|---|-----|-----------|-------|
|
|
||||||
| 1 | `AssignFeatureToMembership` | clubmembership.proto | Stub — هرگز پیادهسازی نشد |
|
| # | RPC | فایل Proto | کیفیت کد | دلیل نگهداری |
|
||||||
| 2 | `BulkAddStock` | inventory.proto | Stub — هرگز پیادهسازی نشد |
|
|---|-----|-----------|---------|-------------|
|
||||||
| 3 | `BulkAdjustStock` | inventory.proto | Stub — 0 رفرنس |
|
| 1 | `CustomerReorderPreviousOrder` | userorder.proto | ✅ **کامل** — آیتمهای سفارش قبلی به سبد اضافه میشود | UX حیاتی: «تکرار سفارش قبلی» — فیچر رایج فروشگاهی، فقط نیاز به دکمه در FrontOffice |
|
||||||
| 4 | `BulkUpdateProductStock` | products.proto | Stub — هرگز پیادهسازی نشد |
|
| 2 | `CustomerTrackOrder` | userorder.proto | ✅ **کامل** — وضعیت + TrackingCode + DeliveryInfo | UX حیاتی: «ردیابی سفارش» — وقتی ارسال پستی فعال شود ضروری است |
|
||||||
| 5 | `CalculateOrderPV` | userorder.proto | Stub — هرگز پیادهسازی نشد |
|
| 3 | `CalculateOrderPV` | userorder.proto | ✅ **کامل** — PV هر آیتم + جمع کل | سیستم MLM: محاسبه PV (Point Value) سفارش — برای فاز بعدی کمیسیون بر اساس خرید |
|
||||||
| 6 | `ChangeNetworkParent` | networkmembership.proto | Stub — هرگز از فرانت استفاده نشد |
|
| 4 | `GetInventorySummary` | inventory.proto | ✅ **کامل** — آمار تعداد + ارزش کل | داشبورد ادمین: خلاصه موجودی انبار — نیاز به کارت در BackOffice Dashboard |
|
||||||
| 7 | `CreateNewFileInfo` | fms.proto | 0 رفرنس — سرویس FMS هرگز ساخته نشد |
|
| 5 | `GetStockValueReport` | inventory.proto | ✅ **کامل** — گزارش ارزش ریالی موجودی | گزارش مالی: ارزش دارایی انبار — برای حسابداری ضروری |
|
||||||
| 8 | `CreateNewOrderForCustomer` | userorder.proto | Stub — سفارش مشتری از مسیر دیگر |
|
| 6 | `BulkAddStock` | inventory.proto | ✅ **کامل** — loop با error handling | عملیات انبوه: افزودن موجودی دستهای — بعد از ورود کالای فیزیکی |
|
||||||
| 9 | `CustomerReorderPreviousOrder` | userorder.proto | Stub — فیچر تکرار سفارش پیادهسازی نشد |
|
| 7 | `BulkUpdateProductStock` | products.proto | ✅ **کامل** — Set/Add/Subtract با error handling | عملیات انبوه: بروزرسانی دستهای موجودی محصول |
|
||||||
| 10 | `CustomerTrackOrder` | userorder.proto | Stub — فیچر ردیابی سفارش پیادهسازی نشد |
|
| 8 | `GetConfigurationByKey` | configuration.proto | ✅ **کامل** — خواندن از SystemConstants | API مفید: دریافت یک تنظیم خاص بدون بارگذاری همه — performance بهتر |
|
||||||
| 11 | `DeactivateConfiguration` | configuration.proto | Stub — هرگز استفاده نشد |
|
| 9 | `UpdateCustomerSettings` | user.proto | ✅ **کامل** — Email/SMS/Push notifications | تنظیمات اعلانها: وقتی پنل تنظیمات مشتری ساخته شود |
|
||||||
| 12 | `DeleteCity` | City.proto | Stub — حذف شهر نیاز نیست |
|
| 10 | `ChangeNetworkParent` | networkmembership.proto | ✅ **CQRS کامل** → MoveInNetworkCommand | مدیریت شبکه: جابجایی کاربر در درخت — ابزار ادمین ضروری |
|
||||||
| 13 | `DeleteFileInfo` | fms.proto | 0 رفرنس — سرویس FMS هرگز ساخته نشد |
|
| 11 | `AssignFeatureToMembership` | clubmembership.proto | ✅ **CQRS کامل** → AssignClubFeatureCommand | مدیریت عضویت: اختصاص فیچر به عضویت — برای فاز بستهبندی پویا |
|
||||||
| 14 | `GetCategoryByIdForCustomer` | category.proto | Stub — مشتری از GetAllCategoriesForCustomer استفاده میکند |
|
| 12 | `GetLowStockProducts` | products.proto | ✅ **کامل** — فیلتر threshold + pagination | هشدار موجودی: مکمل GetLowStockItems — فیلتر ClubExclusive اضافه دارد |
|
||||||
| 15 | `GetConfigurationByKey` | configuration.proto | Stub — فقط GetAllConfigurations استفاده میشود |
|
|
||||||
| 16 | `GetConfigurationHistory` | configuration.proto | Stub — تاریخچه تنظیمات پیادهسازی نشد |
|
### 🗑️ آرشیو (حذف امن — ۱۲ عدد)
|
||||||
| 17 | `GetInventorySummary` | inventory.proto | Stub — داشبورد خلاصه انبار پیادهسازی نشد |
|
|
||||||
| 18 | `GetLowStockProducts` | products.proto | Stub — از GetLowStockItems (inventory) استفاده میشود |
|
> این RPCها یا stub خالی هستند، یا جایگزین بهتری دارند، یا هرگز ساخته نشدند.
|
||||||
| 19 | `GetOrdersByDateRange` | userorder.proto | Stub — از فیلتر GetAllUserOrderByFilter استفاده میشود |
|
|
||||||
| 20 | `GetServiceHealth` | health.proto | Stub — فقط GetSystemHealth استفاده میشود |
|
| # | RPC | فایل Proto | وضعیت کد | دلیل آرشیو |
|
||||||
| 21 | `GetStockValueReport` | inventory.proto | Stub — گزارش ارزش موجودی پیادهسازی نشد |
|
|---|-----|-----------|---------|-----------|
|
||||||
| 22 | `SubmitOrderForCustomer` | userorder.proto | Stub — سفارش مشتری از مسیر دیگر |
|
| 1 | `CreateNewFileInfo` | fms.proto | ❌ **۰ رفرنس** — هیچ Service/Handler ندارد | سرویس FMS هرگز طراحی نشد — فایلها از imageresolver استفاده میکنند |
|
||||||
| 23 | `UpdateCity` | City.proto | Stub — ویرایش شهر نیاز نیست |
|
| 2 | `DeleteFileInfo` | fms.proto | ❌ **۰ رفرنس** — هیچ Service/Handler ندارد | همان — کل fms.proto حذفشدنی |
|
||||||
| 24 | `UpdateCustomerSettings` | user.proto | Stub — تنظیمات مشتری پیادهسازی نشد |
|
| 3 | `BulkAdjustStock` | inventory.proto | ❌ **۰ رفرنس** — حتی Service method ندارد | هرگز پیادهسازی نشد — از AdjustStock تکی استفاده میشود |
|
||||||
|
| 4 | `CreateNewOrderForCustomer` | userorder.proto | ❌ **Stub خالی** — `return new()` | مسیر سفارش مشتری از SubmitShopBuyOrder میگذرد — تکراری |
|
||||||
|
| 5 | `SubmitOrderForCustomer` | userorder.proto | ❌ **Stub خالی** — `return new()` | مسیر سفارش مشتری از SubmitShopBuyOrder میگذرد — تکراری |
|
||||||
|
| 6 | `DeactivateConfiguration` | configuration.proto | ❌ **throw میکند** — «تنظیمات فقط خواندنی هستند» | عمداً غیرفعال شده — SystemConstants ثابت هستند |
|
||||||
|
| 7 | `GetConfigurationHistory` | configuration.proto | ❌ **خالی برمیگرداند** — `return new()` | SystemConstants تاریخچه ندارند — بیمعنی |
|
||||||
|
| 8 | `DeleteCity` | City.proto | ✅ کامل ولی **بینیاز** | شهرها seed دیتا هستند — حذف شهر باعث خرابی آدرسها میشود |
|
||||||
|
| 9 | `UpdateCity` | City.proto | ✅ کامل ولی **بینیاز** | شهرها از سرویس خارجی seed شدهاند — ویرایش دستی نیاز نیست |
|
||||||
|
| 10 | `GetOrdersByDateRange` | userorder.proto | ✅ کامل ولی **تکراری** | `GetAllUserOrderByFilter` همین قابلیت + فیلترهای بیشتر دارد |
|
||||||
|
| 11 | `GetServiceHealth` | health.proto | ✅ کامل ولی **تکراری** | `GetSystemHealth` کل سیستم را برمیگرداند — فیلتر client-side کافی است |
|
||||||
|
| 12 | `GetCategoryByIdForCustomer` | category.proto | ✅ کامل ولی **تکراری** | `GetCategory` (admin) + `GetAllCategoriesForCustomer` کافی است |
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 🟡 دسته B — استفاده داخلی CMS (Internal Only)
|
## 🟡 بخش ۲ — استفاده داخلی CMS (Internal Only — ۱۰۱ عدد)
|
||||||
|
|
||||||
> این RPCها از فرانتها فراخوانی نمیشوند ولی **در کد بکند CMS فعال هستند** (background services, handlers, internal flows). **حذف نشوند!**
|
> این RPCها از فرانتها فراخوانی نمیشوند ولی **در کد بکند CMS فعال هستند** (background services, handlers, internal flows). **حذف نشوند!**
|
||||||
|
|
||||||
@@ -129,74 +139,13 @@
|
|||||||
| `UpdateTransactions` | 23 | بروزرسانی تراکنش |
|
| `UpdateTransactions` | 23 | بروزرسانی تراکنش |
|
||||||
| `VerifyTransaction` | 24 | تأیید تراکنش |
|
| `VerifyTransaction` | 24 | تأیید تراکنش |
|
||||||
|
|
||||||
### B7. سایر CRUD داخلی
|
### B7. سایر CRUD داخلی (خلاصه)
|
||||||
|
|
||||||
| RPC | فایل Proto | رفرنس CMS | علت |
|
> ۵۸ RPC در فایلهای contract, usercontract, factordetails, productcategory, productgalleries, productimages, userwallet, userwalletchangelog, otptoken, usercarts, discountproduct, public_messages, category, products, producttag, tag, City, useraddress, userorder — همه CRUD داخلی با ≥3 رفرنس در CMS.
|
||||||
|-----|-----------|-----------|-----|
|
|
||||||
| `CreateNewContract` | contract.proto | 26 | قراردادها |
|
|
||||||
| `UpdateContract` | contract.proto | 23 | بروزرسانی قرارداد |
|
|
||||||
| `DeleteContract` | contract.proto | 23 | حذف قرارداد |
|
|
||||||
| `GetContract` | contract.proto | 19 | دریافت قرارداد |
|
|
||||||
| `GetAllContractByFilter` | contract.proto | 25 | لیست قراردادها |
|
|
||||||
| `CreateNewUserContract` | usercontract.proto | 26 | قرارداد کاربر |
|
|
||||||
| `UpdateUserContract` | usercontract.proto | 23 | بروزرسانی |
|
|
||||||
| `DeleteUserContract` | usercontract.proto | 23 | حذف |
|
|
||||||
| `GetUserContract` | usercontract.proto | 19 | دریافت |
|
|
||||||
| `CreateNewFactorDetails` | factordetails.proto | 26 | جزئیات فاکتور |
|
|
||||||
| `UpdateFactorDetails` | factordetails.proto | 23 | بروزرسانی |
|
|
||||||
| `DeleteFactorDetails` | factordetails.proto | 23 | حذف |
|
|
||||||
| `GetFactorDetails` | factordetails.proto | 19 | دریافت |
|
|
||||||
| `GetAllFactorDetailsByFilter` | factordetails.proto | 24 | لیست |
|
|
||||||
| `CreateNewProductCategory` | productcategory.proto | 26 | دستهبندی محصول |
|
|
||||||
| `UpdateProductCategory` | productcategory.proto | 23 | بروزرسانی |
|
|
||||||
| `DeleteProductCategory` | productcategory.proto | 23 | حذف |
|
|
||||||
| `GetProductCategory` | productcategory.proto | 19 | دریافت |
|
|
||||||
| `GetAllProductCategoryByFilter` | productcategory.proto | 24 | لیست |
|
|
||||||
| `CreateNewProductGalleries` | productgalleries.proto | 15 | گالری محصول |
|
|
||||||
| `UpdateProductGalleries` | productgalleries.proto | 14 | بروزرسانی |
|
|
||||||
| `DeleteProductGalleries` | productgalleries.proto | 14 | حذف |
|
|
||||||
| `GetProductGalleries` | productgalleries.proto | 15 | دریافت |
|
|
||||||
| `GetAllProductGalleriesByFilter` | productgalleries.proto | 15 | لیست |
|
|
||||||
| `CreateNewProductImages` | productimages.proto | 26 | تصاویر محصول |
|
|
||||||
| `UpdateProductImages` | productimages.proto | 23 | بروزرسانی |
|
|
||||||
| `DeleteProductImages` | productimages.proto | 23 | حذف |
|
|
||||||
| `GetProductImages` | productimages.proto | 19 | دریافت |
|
|
||||||
| `GetAllProductImagesByFilter` | productimages.proto | 24 | لیست |
|
|
||||||
| `CreateNewUserWallet` | userwallet.proto | 54 | ایجاد کیف پول |
|
|
||||||
| `UpdateUserWallet` | userwallet.proto | 46 | بروزرسانی |
|
|
||||||
| `DeleteUserWallet` | userwallet.proto | 46 | حذف |
|
|
||||||
| `GetUserWallet` | userwallet.proto | 41 | دریافت |
|
|
||||||
| `CreateNewUserWalletChangeLog` | userwalletchangelog.proto | 26 | لاگ تغییرات |
|
|
||||||
| `UpdateUserWalletChangeLog` | userwalletchangelog.proto | 23 | بروزرسانی |
|
|
||||||
| `DeleteUserWalletChangeLog` | userwalletchangelog.proto | 23 | حذف |
|
|
||||||
| `GetUserWalletChangeLog` | userwalletchangelog.proto | 21 | دریافت |
|
|
||||||
| `GetAllOtpTokenByFilter` | otptoken.proto | 24 | لیست OTP |
|
|
||||||
| `GetAllUserCartsByFilter` | usercarts.proto | 7 | لیست سبدها |
|
|
||||||
| `AddNewUserCart` | usercarts.proto | 9 | افزودن سبد |
|
|
||||||
| `DeleteUserCart` | usercarts.proto | 7 | حذف سبد |
|
|
||||||
| `UpdateUserCart` | usercarts.proto | 10 | بروزرسانی سبد |
|
|
||||||
| `AddDiscountProductImage` | discountproduct.proto | 10 | تصویر محصول تخفیفی |
|
|
||||||
| `UpdateDiscountProductImage` | discountproduct.proto | 9 | بروزرسانی |
|
|
||||||
| `DeleteDiscountProductImage` | discountproduct.proto | 9 | حذف |
|
|
||||||
| `ReorderDiscountProductImages` | discountproduct.proto | 9 | مرتبسازی |
|
|
||||||
| `GetActiveMessages` | public_messages.proto | 16 | پیامهای فعال |
|
|
||||||
| `GetAllCategories` | category.proto | 4 | همه دستهبندیها |
|
|
||||||
| `GetCustomerProducts` | products.proto | 29 | محصولات مشتری |
|
|
||||||
| `GetCustomerProductsByFilter` | products.proto | 16 | فیلتر محصولات |
|
|
||||||
| `GetProductTag` | producttag.proto | 19 | تگ محصول |
|
|
||||||
| `GetProductsByTag` | tag.proto | 16 | محصولات بر اساس تگ |
|
|
||||||
| `UpdateProductTag` | producttag.proto | 23 | بروزرسانی تگ |
|
|
||||||
| `CreateCity` | City.proto | 3 | ایجاد شهر |
|
|
||||||
| `GetCitiesForCustomer` | City.proto | 3 | شهرها برای مشتری |
|
|
||||||
| `GetCityByIdForCustomer` | City.proto | 3 | شهر مشتری |
|
|
||||||
| `GetCitiesByStateForCustomer` | City.proto | 3 | شهرها بر اساس استان |
|
|
||||||
| `GetUserAddress` | useraddress.proto | 19 | آدرس کاربر |
|
|
||||||
| `CustomerCancelOrder` | userorder.proto | 4 | لغو سفارش مشتری |
|
|
||||||
| `GetCustomerOrderHistory` | userorder.proto | 13 | تاریخچه سفارشات |
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 🟢 سرویسهای کاملاً مورد استفاده
|
## 🟢 بخش ۳ — سرویسهای کاملاً مورد استفاده
|
||||||
|
|
||||||
### فایلهای proto که تمام RPCهایشان استفاده میشود:
|
### فایلهای proto که تمام RPCهایشان استفاده میشود:
|
||||||
|
|
||||||
@@ -219,58 +168,51 @@
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 📋 فایلهای Proto با بیشترین RPC استفادهنشده
|
## 📋 بخش ۴ — خلاصه تصمیمات
|
||||||
|
|
||||||
| فایل Proto | کل RPC | استفادهنشده از فرانت | وضعیت |
|
### ماتریکس نهایی ۲۴ RPC مُرده
|
||||||
|-----------|--------|----------------------|-------|
|
|
||||||
| factordetails.proto | 5 | 5 (100%) | CRUD داخلی — نیاز به UI ندارد |
|
|
||||||
| productgalleries.proto | 5 | 5 (100%) | CRUD داخلی — از products.proto استفاده میشود |
|
|
||||||
| productimages.proto | 5 | 5 (100%) | CRUD داخلی — از products.proto استفاده میشود |
|
|
||||||
| productcategory.proto | 5 | 5 (100%) | CRUD داخلی — از products.proto استفاده میشود |
|
|
||||||
| contract.proto | 5 | 5 (100%) | CRUD داخلی — مدیریت قراردادها |
|
|
||||||
| fms.proto | 2 | 2 (100%) | **کد مُرده** — هرگز پیادهسازی نشد |
|
|
||||||
| inventory.proto | 24 | 15 (63%) | بیشتر داخلی (فلو سفارش) |
|
|
||||||
| transactions.proto | 11 | 9 (82%) | بیشتر داخلی (فلو پرداخت) |
|
|
||||||
| user.proto | 20 | 9 (45%) | احراز هویت + پروفایل داخلی |
|
|
||||||
| userorder.proto | 20 | 9 (45%) | مدیریت سفارش داخلی |
|
|
||||||
|
|
||||||
---
|
```
|
||||||
|
✅ نگهداری (12): CustomerReorderPreviousOrder, CustomerTrackOrder,
|
||||||
|
CalculateOrderPV, GetInventorySummary, GetStockValueReport,
|
||||||
|
BulkAddStock, BulkUpdateProductStock, GetConfigurationByKey,
|
||||||
|
UpdateCustomerSettings, ChangeNetworkParent,
|
||||||
|
AssignFeatureToMembership, GetLowStockProducts
|
||||||
|
|
||||||
## 🗑️ کاندیدای حذف در آینده
|
🗑️ آرشیو (12): CreateNewFileInfo, DeleteFileInfo, BulkAdjustStock,
|
||||||
|
CreateNewOrderForCustomer, SubmitOrderForCustomer,
|
||||||
|
DeactivateConfiguration, GetConfigurationHistory,
|
||||||
|
DeleteCity, UpdateCity, GetOrdersByDateRange,
|
||||||
|
GetServiceHealth, GetCategoryByIdForCustomer
|
||||||
|
```
|
||||||
|
|
||||||
### اولویت ۱ — کد مُرده (میتوان بیخطر حذف کرد)
|
### فایلهای proto آرشیوشدنی (کامل)
|
||||||
|
|
||||||
1. **fms.proto** — کامل (2 RPC) — سرویس FMS هرگز ساخته نشد
|
| فایل | وضعیت | اقدام |
|
||||||
2. `SubmitOrderForCustomer` — stub خالی
|
|------|-------|-------|
|
||||||
3. `CreateNewOrderForCustomer` — stub خالی
|
| **fms.proto** | کل فایل مُرده (2 RPC) | حذف از csproj — ساخته نشود |
|
||||||
4. `CustomerReorderPreviousOrder` — فیچر پیادهسازی نشده
|
|
||||||
5. `CustomerTrackOrder` — فیچر پیادهسازی نشده
|
|
||||||
6. `BulkAdjustStock` — 0 رفرنس
|
|
||||||
7. `BulkAddStock` — stub
|
|
||||||
8. `BulkUpdateProductStock` — stub
|
|
||||||
9. `GetStockValueReport` — stub
|
|
||||||
10. `GetInventorySummary` — stub
|
|
||||||
|
|
||||||
### اولویت ۲ — RPCهای تکراری (عملکرد مشابه موجود)
|
### RPCهای آرشیوشدنی (جزئی — داخل فایلهای فعال)
|
||||||
|
|
||||||
| Dead RPC | جایگزین فعال |
|
| فایل Proto | RPCهای آرشیو | RPCهای فعال |
|
||||||
|----------|-------------|
|
|-----------|-------------|-------------|
|
||||||
| `GetCategoryByIdForCustomer` | `GetAllCategoriesForCustomer` |
|
| inventory.proto | `BulkAdjustStock` (1) | 23 فعال |
|
||||||
| `GetLowStockProducts` | `GetLowStockItems` (inventory) |
|
| userorder.proto | `CreateNewOrderForCustomer`, `SubmitOrderForCustomer` (2) | 18 فعال |
|
||||||
| `GetOrdersByDateRange` | `GetAllUserOrderByFilter` (with date filter) |
|
| configuration.proto | `DeactivateConfiguration`, `GetConfigurationHistory` (2) | 5 فعال |
|
||||||
| `GetServiceHealth` | `GetSystemHealth` |
|
| City.proto | `DeleteCity`, `UpdateCity` (2) | 6 فعال |
|
||||||
| `GetConfigurationByKey` | `GetAllConfigurations` + filter |
|
| health.proto | `GetServiceHealth` (1) | 1 فعال |
|
||||||
|
| category.proto | `GetCategoryByIdForCustomer` (1) | 7 فعال |
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## ⚠️ نکات مهم
|
## ⚠️ نکات مهم
|
||||||
|
|
||||||
1. **حذف نکنید!** — فقط مستند و آرشیو شدند
|
1. **آرشیو ≠ حذف!** — RPCهای آرشیوشده فقط با `// [ARCHIVED]` علامتگذاری میشوند
|
||||||
2. RPCهای دسته B (Internal) **حیاتی** هستند — بدون آنها سیستم از کار میافتد
|
2. RPCهای دسته B (Internal — ۱۰۱ عدد) **حیاتی** هستند — بدون آنها سیستم از کار میافتد
|
||||||
3. RPCهای `PurchaseGoldenPackage` و `VerifyGoldenPackagePurchase` از فرانت فراخوانی نمیشوند ولی **فلو خرید بسته فعلی** از آنها استفاده میکند
|
3. RPCهای «نگهداری» (۱۲ عدد) کد **کامل و آماده** دارند — فقط نیاز به وصل شدن از فرانت
|
||||||
4. RPCهای `Customer*` (مثل `CustomerPurchasePackage`, `CustomerVerifyPackagePurchase`) تازه اضافه شدهاند و هنوز از فرانت وصل نشدهاند
|
4. **fms.proto** تنها فایل proto کاملاً مُرده است — میتواند از csproj اکسکلود شود
|
||||||
5. قبل از هر حذف، حتماً `grep -rn "RpcName" CMS/src/` بزنید تا مطمئن شوید
|
5. قبل از هر تغییر، حتماً `grep -rn "RpcName" CMS/src/` بزنید تا مطمئن شوید
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
*آخرین بروزرسانی: $(date +%Y-%m-%d)*
|
*آخرین بروزرسانی: ۱۴۰۴/۱۲/۰۶*
|
||||||
|
|||||||
Reference in New Issue
Block a user