cipo.dev logo
Torna ai Progetti
C#.NETBlazor

ShiftManager (Gestore Turni PWA)

Piattaforma PWA enterprise per la pianificazione e gestione semplificata dei turni del personale in aziende con orari flessibili ed elevati requisiti di compliance.

ShiftManager (Gestore Turni PWA)

Situazione Iniziale e Problema

Contesto: Molte PMI o strutture nel settore dei servizi gestiscono la pianificazione dei turni del personale tramite tabelloni cartacei o fogli Excel inviati su WhatsApp. Una gestione inefficiente che rende complesso tracciare ore lavorate, ferie e reperibilità.

Problema: Oltre alla perdita di tempo nel coordinamento, la pianificazione manuale non previene la violazione involontaria delle norme contrattuali sull'orario massimo di lavoro e sul riposo obbligatorio (11 ore consecutive), esponendo l'azienda a sanzioni e malcontento dei dipendenti.

Soluzione e Risultato

Tecnologia: Architettura decoupled con un frontend PWA (Progressive Web App) sviluppato in Blazor WebAssembly, che permette di avere un'interfaccia interattiva drag-and-drop fluida e installabile su qualsiasi dispositivo. Backend in .NET Core (C#) per la gestione sicura del database relazionale PostgreSQL tramite Entity Framework Core.

Risultato Ottenuto: Implementazione di un motore di regole contrattuali che valida i turni in tempo reale prima del salvataggio. Il tempo necessario alla pianificazione settimanale è passato da 4 ore a 20 minuti, con una riduzione del 100% dei problemi di conformità contrattuale e dei conflitti di disponibilità del personale.

Regola di Validazione Compliance in C#

csharp
public bool ValidateRestPeriod(Shift newShift, List<Shift> existingShifts)
{
    const double MinRestHours = 11.0;
    return existingShifts.All(existing => 
        (newShift.StartTime - existing.EndTime).TotalHours >= MinRestHours ||
        (existing.StartTime - newShift.EndTime).TotalHours >= MinRestHours
    );
}

Vuoi realizzare un progetto simile?

Posso aiutarti ad analizzare la tua idea e scegliere lo stack tecnologico perfetto per scalare.

Parliamo del tuo progetto