Files
docs/04-FRONTEND/BackOffice/README.md
T

142 lines
3.9 KiB
Markdown

# BackOffice - Network & Commission Management System
**Version**: 2.2
**Last Updated**: 2025-12-05
**Status**: 🟡 **Build In Progress - ~12 Errors Remaining**
---
## 📋 Overview
BackOffice is a comprehensive Blazor WebAssembly application for managing network marketing operations, commission calculations, club memberships, and system administration.
---
## 🎯 Current Status
### **Build Status: 🔴 FAILING (~12 errors)**
> See `BackOffice/docs/BUILD-FIX-STATUS.md` for detailed error list
### **Recent Changes (2025-12-05)**:
- ⚠️ Migrated from .NET 8 to .NET 9
- ⚠️ Updated MudBlazor to 8.14.0 (requires T parameter for generics)
- ⚠️ Multiple files excluded from build (missing proto dependencies)
- ⚠️ Products.Protobuf switched from NuGet to ProjectReference
### **Known Issues**:
- Missing proto projects: DiscountProduct, DiscountCategory, DiscountOrder, Tag, ProductTag
- Some UserOrder methods missing in proto (CancelOrder, ApplyDiscount, UpdateOrderStatus)
- PaginationState namespace conflicts
- Int32Value/Int64Value binding issues in WithdrawalReports
### **Excluded Files** (see `BackOffice/docs/EXCLUDED-FILES.md`):
- `Pages/DiscountShop/**` - needs new proto projects
- `Pages/Tag/**` - needs Tag.Protobuf
- `Pages/Products/Components/*Dialog*` - needs proto updates
- `Pages/UserOrder/Components/*Dialog*` - needs proto updates
- Several other pages with missing dependencies
---
## 📁 Project Structure
```
BackOffice/
├── docs/
│ ├── development-plan.md # Detailed implementation roadmap
│ ├── BUILD-FIX-STATUS.md # Current build errors and fixes
│ ├── EXCLUDED-FILES.md # List of excluded files
│ └── PROTO-DEPENDENCIES.md # Proto requirements
├── src/
│ ├── BackOffice.sln
│ └── BackOffice/
│ ├── Pages/
│ │ ├── Commission/ # 4 pages (Dashboard, Reports, Payouts, Withdrawals)
│ │ ├── Network/ # 4 pages (Tree, History, Balances, Info)
│ │ ├── Club/ # 3 pages (Members, Statistics)
│ │ ├── SystemManagement/ # 4 pages (Worker, Alerts, Health, Config)
│ │ ├── Dashboard/ # 1 page (SystemOverview)
│ │ └── Settings/ # 1 page (UserSettings)
│ └── Components/ # Reusable dialogs
└── README.md
```
---
## 🚀 Getting Started
### Prerequisites:
- .NET 9.0 SDK
- Running CMS microservice (port 5133)
- Running BFF service (port 5001)
### Run BackOffice:
```bash
cd src/BackOffice
dotnet run
```
Access at: `https://localhost:7001`
---
## 📊 Features
### **1. Commission Management** 💰
- Weekly pool dashboard with statistics
- Commission reports with filtering
- User payouts tracking
- Withdrawal approval/rejection
- Manual calculation trigger
### **2. Network Management** 🌳
- Binary tree visualization (table-based)
- User network information
- Network history tracking
- Weekly balance reports
### **3. Club Management** 🏆
- Active/Inactive club members
- Activation/Deactivation workflows
- Member statistics (mock data)
### **4. System Management** ⚙️
- Worker control panel
- System alerts monitoring
- Health dashboard
- Configuration editor
---
## 🔧 Technical Stack
- **Framework**: Blazor WebAssembly
- **UI Library**: MudBlazor
- **Communication**: gRPC-Web
- **Authentication**: JWT Bearer
- **Build Status**: ✅ 0 errors
---
## 📖 Documentation
See `docs/development-plan.md` for:
- Detailed feature specifications
- Implementation status
- API documentation
- Architecture diagrams
- Testing guidelines
---
## 🎯 Next Steps
1. Implement Statistics APIs with real database queries
2. Frontend integration testing
3. Add audit logging for critical operations
4. Implement caching for performance optimization
---
**For detailed implementation status, see**: [development-plan.md](docs/development-plan.md)