# Implementazione Modulo Personale ## Obiettivo Implementare il modulo "Personale" per la gestione delle risorse umane, come richiesto nelle specifiche di posizionamento di mercato. ## Funzionalità Richieste - **Gestione Personale (Dipendenti)**: Anagrafica dipendenti. - **Contratti**: Gestione dei contratti di lavoro (tipo, date, livello, retribuzione). - **Assenze**: Tracciamento ferie, malattie, permessi. - **Pagamenti**: Registro dei pagamenti stipendi. - **Rimborsi**: Gestione note spese e rimborsi. - **Analisi**: Dashboard statistiche (da implementare successivamente). ## Piano di Lavoro ### Backend (.NET) 1. [ ] Creare cartella `src/backend/Zentral.Domain/Entities/Personale`. 2. [ ] Definire le entità: * `Dipendente` * `Contratto` * `Assenza` * `Pagamento` * `Rimborso` 3. [ ] Aggiornare `ZentralDbContext` aggiungendo i `DbSet`. 4. [ ] Creare la migrazione EF Core. 5. [ ] Creare i Controller API in `src/backend/Zentral.API/Controllers/Personale`. ### Frontend (React) 1. [ ] Strutturare `src/frontend/src/modules/personale`. 2. [ ] Implementare le pagine CRUD: * `DipendentiPage` * `ContrattiPage` * `AssenzePage` * `PagamentiPage` (include Rimborsi per ora o separato). 3. [ ] Configurare il routing del modulo. 4. [ ] Aggiungere il modulo alla configurazione `AppModule` (se non presente) e verificare l'attivazione. ### Integrazione 1. [ ] Verificare che il modulo appaia nel menu solo se attivo. 2. [ ] Testare il flusso completo (creazione dipendente -> contratto -> assenza).