Implement Persian Date Conversion and Enhance User Network Information Service

- Added PersianDateTimeService for converting Gregorian dates to Persian format in the BackOffice frontend.
- Updated multiple frontend pages (Dashboard, UserPayouts, WorkerControl, UserNetworkInfo) to utilize the new Persian date service.
- Enhanced GetUserNetworkPositionDto with 28+ new fields for comprehensive user network data.
- Updated GetUserNetworkPositionQueryHandler to include new methods for calculating network statistics.
- Modified Protobuf messages to accommodate the new fields, increasing from 14 to 42.
- Refined week number calculation algorithm to ensure consistency across C# and SQL implementations.
- Created new CSV and Excel files for binary plan calculations.
- Ensured all changes are tested and validated for accuracy and performance.
This commit is contained in:
masoodafar-web
2025-12-20 06:15:59 +03:30
parent 13a3489765
commit 002e99f6bf
32 changed files with 10263 additions and 106 deletions
+27 -5
View File
@@ -1,16 +1,16 @@
# 🎉 وضعیت نهایی پروژه - FourSat
**تاریخ تکمیل**: ۱۵ آذر ۱۴۰۴ (December 6, 2025)
**نسخه**: 3.0 - PRODUCTION READY ✅
**تاریخ تکمیل**: ۱۷ آذر ۱۴۰۴ (December 8, 2025)
**نسخه**: 3.1 - PRODUCTION READY ✅
**وضعیت**: 100% COMPLETE - ALL SYSTEMS OPERATIONAL 🚀
---
## 🏆 پروژه 100% تکمیل شد!
### آخرین دستاوردها (December 6, 2025):
-**BackOffice UI**: 100% Complete - 0 Build Errors
-**BackOffice.BFF**: 100% Complete - All handlers implemented
### آخرین دستاوردها (December 8, 2025):
-**BackOffice UI**: 97% Complete (65+ pages) - Advanced features added
-**BackOffice.BFF**: 100% Complete - Architecture refactored
-**Daya Loan Integration**: 100% Complete - Real API Fully Implemented
- DayaLoanApiService: Complete HTTP client integration
- API Endpoint: POST /api/merchant/contracts
@@ -28,6 +28,28 @@
-**14 Proto Projects**: All compiled successfully
-**0 Excluded Files**: Everything enabled!
### تغییرات اخیر (۱۷ آذر ۱۴۰۴):
-**رفع Anti-Pattern معماری**: BackOffice.BFF حالا از Protobuf اختصاصی خودش استفاده می‌کند
- 4 پروژه Protobuf جدید: ClubMembership, Commission, Configuration, NetworkMembership
- Namespace: `Foursat.BackOffice.BFF.{Module}.Protos`
- Version: 0.0.6 منتشر شد در GitLab registry
-**HTTP Annotations برای Swagger**: 33 endpoint با HTTP annotations
- Package: Google.Api.CommonProtos v2.10.0
- Import: google/api/annotations.proto
-**Mapster Immutable Types**: رفع خطای runtime
- NetworkMembershipProfile با MapWith() پیاده‌سازی شد
- RepeatedField و Timestamp mapping دستی
-**Multi-Role Authorization**: پشتیبانی از JWT آرایه‌ای
- GetUserRolesAsync() برای خواندن همه نقش‌ها
- AuthorizationService با roles.Any() بروز شد
-**Network Tree Visualization**: نمایش درختی تعاملی شبکه
- D3.js v7 با zoom/pan
- رنگ‌بندی: سبز (فعال)، قرمز (غیرفعال)، نارنجی/سبز (چپ/راست)
- کلیک روی نود برای بارگذاری مجدد درخت
-**User AutoComplete**: جستجوی چند فیلدی کاربران
- جستجو در: Mobile, FirstName, LastName, NationalCode
- Debounce: 500ms
---
## ⚠️ ملاحظات بحرانی - Proto Package Management