refactor: modularize frontend pages into feature-specific modules, update routing, and related documentation.
This commit is contained in:
@@ -16,3 +16,7 @@ File riassuntivo dello stato di sviluppo di Zentral.
|
||||
- Spostamento voce menu Report sotto Amministrazione.
|
||||
- [2025-12-03 Report Designer Theme](./devlog/2025-12-03_report_designer_theme.md) - **Completato**
|
||||
- Allineamento completo del Report Designer al tema scuro (Canvas, Toolbar, Dialogs).
|
||||
- [2025-12-04 Event Management Module](./devlog/2025-12-04_event_management_plan.md) - **Completato**
|
||||
- Implementazione modulo Gestione Eventi: strutturazione frontend, integrazione funzionalità e attivazione store.
|
||||
- [Event Module Development](./devlog/event-module.md) - Implementazione modulo eventi
|
||||
- [Menu Refactoring](./devlog/menu-refactoring.md) - Riorganizzazione menu e moduli (Dashboard, Clienti, Articoli, Risorse)
|
||||
|
||||
36
docs/development/devlog/2025-12-04_event_management_plan.md
Normal file
36
docs/development/devlog/2025-12-04_event_management_plan.md
Normal file
@@ -0,0 +1,36 @@
|
||||
# Piano di Sviluppo Modulo Gestione Eventi
|
||||
|
||||
## Obiettivo
|
||||
Implementare il modulo "Gestione Eventi" integrando le funzionalità esistenti (Dashboard, Calendario, Eventi, Clienti, Location, Articoli, Risorse) e rendendolo acquistabile nello store.
|
||||
|
||||
## Stato Attuale
|
||||
- Esistono già pagine frontend: `EventiPage`, `EventoDetailPage`, `CalendarioPage`, `ClientiPage`, `LocationPage`, `ArticoliPage`, `RisorsePage`.
|
||||
- Esiste già backend: `EventiController`, `Evento` entity, e relative entità collegate.
|
||||
- Il modulo non è ancora strutturato come "AppModule" formale nel sistema (non c'è cartella `modules/events` nel frontend, non c'è guard).
|
||||
|
||||
## Piano di Lavoro
|
||||
|
||||
### 1. Strutturazione Modulo Frontend
|
||||
- [x] Creare cartella `src/frontend/src/modules/events`.
|
||||
- [x] Spostare le pagine specifiche degli eventi (`EventiPage`, `EventoDetailPage`, `CalendarioPage`, `LocationPage`) dentro `src/frontend/src/modules/events/pages`.
|
||||
- [x] Creare `src/frontend/src/modules/events/routes.tsx` per gestire le rotte del modulo.
|
||||
- [x] Aggiornare `App.tsx` per includere le rotte del modulo eventi sotto `ModuleGuard`.
|
||||
|
||||
### 2. Integrazione Funzionalità Esistenti
|
||||
- [x] Verificare che `ClientiPage`, `ArticoliPage`, `RisorsePage` siano accessibili e integrate correttamente. (Sono rimaste nel menu Core come previsto).
|
||||
- [x] Assicurarsi che il menu laterale mostri le voci corrette quando il modulo è attivo.
|
||||
|
||||
### 3. Backend & Database
|
||||
- [x] Verificare l'esistenza del modulo "events" nella tabella `AppModules` (o crearlo tramite migrazione/seed).
|
||||
- [x] Assicurarsi che le API esistenti siano protette o accessibili correttamente.
|
||||
|
||||
### 4. Store & Attivazione
|
||||
- [x] Verificare che il modulo appaia nella pagina di acquisto moduli.
|
||||
- [x] Testare l'attivazione/disattivazione del modulo.
|
||||
|
||||
### 5. Refactoring & Pulizia
|
||||
- [x] Aggiornare gli import nei file spostati.
|
||||
- [x] Rimuovere le rotte vecchie da `App.tsx`.
|
||||
|
||||
## Note
|
||||
- I moduli `Clienti`, `Articoli`, `Risorse` sembrano essere entità "core" o condivise. Per ora le manterremo accessibili, valutando se spostarle in moduli specifici (es. `crm`, `catalog`, `resources`) in futuro, o se lasciarle globali. Dato che la richiesta è specifica sugli eventi, ci concentreremo sul raggruppare le funzioni eventi.
|
||||
25
docs/development/devlog/2025-12-04_menu_refactoring.md
Normal file
25
docs/development/devlog/2025-12-04_menu_refactoring.md
Normal file
@@ -0,0 +1,25 @@
|
||||
# Refactoring Menu and Modules
|
||||
|
||||
## Objective
|
||||
Restructure the navigation menu and organize existing functionalities into specific modules as requested:
|
||||
- Dashboard -> Gestione Eventi
|
||||
- Clienti -> Vendite
|
||||
- Articoli -> Magazzino
|
||||
- Risorse -> Personale (New Module)
|
||||
|
||||
## Plan
|
||||
1. **Create "Personale" module**: Create directory structure `src/frontend/src/modules/personale`.
|
||||
2. **Move Files**:
|
||||
- `src/frontend/src/pages/Dashboard.tsx` -> `src/frontend/src/modules/events/pages/DashboardPage.tsx`
|
||||
- `src/frontend/src/pages/ClientiPage.tsx` -> `src/frontend/src/modules/sales/pages/ClientiPage.tsx`
|
||||
- `src/frontend/src/pages/ArticoliPage.tsx` -> `src/frontend/src/modules/warehouse/pages/ArticoliPage.tsx`
|
||||
- `src/frontend/src/pages/RisorsePage.tsx` -> `src/frontend/src/modules/personale/pages/RisorsePage.tsx`
|
||||
3. **Update Routes**:
|
||||
- Update `src/frontend/src/App.tsx` to remove old routes and add `PersonaleRoutes`.
|
||||
- Update `src/frontend/src/modules/events/routes.tsx` to include Dashboard.
|
||||
- Update `src/frontend/src/modules/sales/routes.tsx` to include Clienti.
|
||||
- Update `src/frontend/src/modules/warehouse/routes.tsx` to include Articoli.
|
||||
- Create `src/frontend/src/modules/personale/routes.tsx`.
|
||||
4. **Update Sidebar**:
|
||||
- Update `src/frontend/src/components/Sidebar.tsx` to reflect the new menu structure.
|
||||
5. **Verify**: Ensure all links work and the application runs correctly.
|
||||
Reference in New Issue
Block a user