Time Recording System

Time recording system

It is a web application to be used by all employees for recording time spent on certain projects during their work week. 
It helps project managers to assess how much time has been put into their projects, who worked for their managed project, on what task and for how long, on which days and between what times. It helps for similar future projects to tell how much time is required and what staff.
It helps administrative staff to manage holidays taken and remaining for each member of staff and it also helps each employee to see how much time off is left from their annual leave allocated.
This system has been deployed currently with four different companies with various little customisations. They contain confidential information, so they are not accessible for demo.

Technical details

It was built on vanilla PHP with PostgreSQL database. It is bilingual in English and French and ready to be translated into other languages.
With customisation Time Recording System can integrate with client's HR database to take employee information and with the Financial database to export the employee/time/project data.

List of time sheets already started and list of managed projects

Here is a print screen from the dashboard displayed after logging in. Regular employees see only the list of time sheets started offering them the option to edit them, delete them or convert them from a 30 minute interval to 15 minute intervals. Additionally, the project managers will see a list of their projects with options to manage the tasks associated with each, to change the name or see reports for them.

Adding a new time sheet

When an employee wants to add a new time sheet, they need to select the week and configure a few parameters. The parameters are stored in their profile so each change becomes the default for the next time. 

Adding in the time worked during the week

It is done by clicking and moving the mouse to select the cells from the table. When time period selection is done for a certain project and task, one needs to add the project code and task code for this entry. Already added entries can be edited to change the project or task, to delete or add time periods. They can also be deleted.
The tool will aid the employee to select the proper project, the correct task from drop down lists. It will prompt to tell them in case they added over time, it will prevent them to submit the week time sheet before the minimum hours have been worked.

All progress is automatically saved to the server periodically or when the user closes the window, so there is no data loss.

Submission status

Administrators can see the submission status of all employees: who hasn't submitted their time sheet, who hasn't added one yet and they have an easy way of sending notifications to these members of staff. 

This list also shows for each person, how much over time or holidays they've declared in their time sheet. Admins can export a CSV report with this list.

Reports over time worked for specific projects over specified time by a specified employee

This calculates time put on time sheets using some filters: invoice/project code, task code, date interval, employee name

Time sheet archive for self or for specified employee

For regular employees this shows all time sheets submitted by themselves with toil and holidays.

For admins, this section allows to select an employee to display the list for.

Editing employee details and access

This is where employee details are managed in case the system is not integrated with an HR database to pull this data from.

Bulk creating same time sheets for many employees at the same time

Time recording system allows creating time sheets for many employees at the same time. This is useful for many employees working all on site for the same project and doing the same task.

Export monthly time report for all employees as CSV

This section allows to export the HR report of all staff per month with how much time they worked on each day, totals, etc. The export follows currently the Romanian format for employee monthly clocking.

About the Author: lucian