Back to projects
System .NET C# PHP SQL Server 2024

Shift Management System

A robust tool designed for planning, assigning, and controlling staff shifts and schedules. It automatically calculates worked hours and overtime, integrating seamlessly with payroll.

Platform

Web Application

Role

Full Stack Developer

Architecture

MVC

Status

Completed / Active

Shift Management System

Overview

The Shift Management System (located in the P&S - Programming and Services menu) is a robust tool designed for the planning, assignment, and control of staff work schedules and shifts. This module is highly integrated with payroll settlement, automatically calculating hours worked, surcharges, and overtime.

Key Features

1. Base Shift Management & Configuration

Allows the parameterization of the different types of shifts the company handles, facilitating their later assignment:

  • Shift Creation & Editing: Definition of the shift name, location, start time, and end time.
  • Surcharges and Hours Management: Detailed configuration of how the shift affects payroll, assigning default amounts for:
    • HO: Ordinary Hours.
    • HED / HEN: Daytime and Nighttime Overtime.
    • HEDF / HENF: Daytime and Nighttime Holiday Overtime.
    • RN / RNF: Nighttime and Nighttime Holiday Surcharges.
    • RF: Holiday Surcharges.
  • Coverage Control: Definition of minimum and maximum required amounts of personnel (shifts) per day.
  • Visual Interface: Color assignment to facilitate visual reading in the shift matrix.
  • Costs and Percentages: Configuration of base costs and percentages for overtime payment.
Shift Assignment Matrix

Programming matrix for assigning shifts to workers on specific days.

2. Shift Plan Administration

This is the core component of the module, where the operational programming of workers for a specific period (usually monthly or bi-weekly) is carried out.

  • Plan Creation: Generation of a scheduling plan for a location and company within a date range.
  • Personnel Assignment: Ability to add, remove, and list workers who will be part of the plan. Their classification can be configured, and roles such as "Coordinator" can be assigned.
  • Programming Matrix: Interface to assign pre-configured shifts to each worker on specific days.
  • Copy and Paste Plans: Functionality to duplicate schedules from previous periods to optimize monthly planning time.
  • Audit & Log: Registration and tracking of changes and assignments made in the shift plans.
  • Equipment Assignment: Specific controls to mark the assignment of operational elements like Radios, Tags, or Oxygen to workers.

3. Overtime Calculation & Payroll Integration

The module acts as a bridge between operational programming and payment:

  • Automatic Calculation: Processing the matrix to total the hours, extra shifts, and surcharges earned by each worker during the plan period.
  • Manual Modification: Possibility to manually adjust or recalculate overtime in case of operational contingencies.
  • Payroll Export: Generation of reports and direct export of consolidated shift data to the payroll module for settlement.
Payroll Integration and Reports

Automatic calculation of worked hours and overtime, ready for payroll export.

Technology Stack

The application is built on a classic client-server architecture, using a customized MVC (Model-View-Controller) pattern.

Backend

  • Language: PHP and .NET C# for integration.
  • Architecture: MVC (Model-View-Controller).
  • Key Libraries: TCPDF (PDF generation), PHPMailer, PhpSpreadsheet (Excel data manipulation), and Guzzle (HTTP Client for external APIs).

Frontend

  • Core Languages: HTML5, CSS3, JavaScript.
  • UI Framework: Based on the AdminLTE and Bootstrap ecosystem.
  • Interactive Libraries: jQuery, DataTables for advanced data grids, Select2 for dynamic dropdowns, Chart.js/Morris.js for visual reporting, and FullCalendar for schedules.

Database

  • Engine: Microsoft SQL Server.

Interested in learning more about this project? Get in touch with me to discuss custom system development.

Ready to start?

Got a similar project?

I'm available for new projects. Tell me about what you're building and let's see if we're a good fit.

Start a project →