feat: introduce HR module and modularize frontend pages into domain-specific modules for events, HR, sales, and warehouse.

This commit is contained in:
2025-12-04 01:59:50 +01:00
parent 4d53c9c427
commit ed2472febc

View File

@@ -9,3 +9,22 @@ usa ./docs/development per tenere un file ZENTRAL.md riassuntivo con link ai fil
usa ./src/backend per tutto quello che riguarda il backend in .NET
usa ./src/frontend per tutto quello che riguarda il frontend in react
## Struttura Modulare del Progetto
Il progetto segue una rigorosa struttura modulare sia per il backend che per il frontend. Ogni nuova funzionalità o dominio di business deve essere incapsulato nel proprio modulo.
### Backend (.NET)
- **API Controllers**: `src/backend/Zentral.API/Modules/[NomeModulo]/Controllers/`
- I controller devono avere il namespace `Zentral.API.Modules.[NomeModulo].Controllers`.
- Le rotte devono seguire il pattern `api/[nome-modulo]/[controller]`.
- **Entities**: `src/backend/Zentral.Domain/Entities/[NomeModulo]/`
- Le entità devono avere il namespace `Zentral.Domain.Entities.[NomeModulo]`.
### Frontend (React)
- **Moduli**: `src/frontend/src/modules/[nome-modulo]/`
- **Pagine**: `src/frontend/src/modules/[nome-modulo]/pages/`
- **Componenti**: `src/frontend/src/modules/[nome-modulo]/components/`
- **Rotte**: `src/frontend/src/modules/[nome-modulo]/routes.tsx`
- Il file `routes.tsx` deve esportare un componente che definisce le rotte figlie del modulo.
- Le rotte devono essere importate e registrate nel router principale (es. `App.tsx`).