mirror of
https://github.com/azaion/admin.git
synced 2026-04-22 21:56:34 +00:00
d320d6dd59
Made-with: Cursor
76 lines
1.9 KiB
Markdown
76 lines
1.9 KiB
Markdown
# Component Diagram
|
|
|
|
```mermaid
|
|
graph TD
|
|
subgraph "Common Helpers"
|
|
EXT["Extensions<br/>(Enum, String, Stream, Queryable)"]
|
|
BEX["BusinessException<br/>(ExceptionEnum)"]
|
|
end
|
|
|
|
subgraph "01 Data Layer"
|
|
DB["AzaionDb + SchemaHolder"]
|
|
DBF["DbFactory<br/>(IDbFactory)"]
|
|
CACHE["MemoryCache<br/>(ICache)"]
|
|
ENT["User, RoleEnum"]
|
|
CFG["Configs<br/>(ConnectionStrings, JwtConfig, ResourcesConfig)"]
|
|
end
|
|
|
|
subgraph "02 User Management"
|
|
US["UserService<br/>(IUserService)"]
|
|
REQ["Request DTOs<br/>+ Validators"]
|
|
end
|
|
|
|
subgraph "03 Auth & Security"
|
|
AUTH["AuthService<br/>(IAuthService)"]
|
|
SEC["Security<br/>(static: hash, encrypt, decrypt)"]
|
|
end
|
|
|
|
subgraph "04 Resource Management"
|
|
RES["ResourcesService<br/>(IResourcesService)"]
|
|
end
|
|
|
|
subgraph "05 Admin API"
|
|
API["Program.cs<br/>(Minimal API endpoints)"]
|
|
EXH["BusinessExceptionHandler"]
|
|
end
|
|
|
|
DB --> ENT
|
|
DB --> EXT
|
|
DBF --> DB
|
|
DBF --> CFG
|
|
|
|
US --> DBF
|
|
US --> CACHE
|
|
US --> SEC
|
|
US --> BEX
|
|
US --> EXT
|
|
|
|
AUTH --> US
|
|
AUTH --> CFG
|
|
|
|
RES --> CFG
|
|
RES --> SEC
|
|
RES --> BEX
|
|
|
|
API --> US
|
|
API --> AUTH
|
|
API --> RES
|
|
API --> DBF
|
|
API --> CACHE
|
|
EXH --> BEX
|
|
```
|
|
|
|
## Component Summary
|
|
|
|
| # | Component | Modules | Purpose |
|
|
|---|-----------|---------|---------|
|
|
| 01 | Data Layer | 9 | DB access, entities, configs, caching |
|
|
| 02 | User Management | 5 | User CRUD, hardware binding, role management |
|
|
| 03 | Auth & Security | 2 | JWT tokens, cryptographic utilities |
|
|
| 04 | Resource Management | 3 | File upload/download/encryption |
|
|
| 05 | Admin API | 2 | HTTP endpoints, middleware, DI composition |
|
|
| — | Common Helpers | 6 | Extensions, BusinessException |
|
|
| — | Tests | 2 | SecurityTest, UserServiceTest |
|
|
|
|
**Total**: 27 modules across 5 components + common helpers + tests.
|