Skip to main content

Weekly employee minutes

Employee-minutes-weekly-check

The Employee-minutes-weekly-check check is useful for determining if the roster is feasible with respect to the required employee minutes in a week.

This check takes into account the following constraints, if they are hard constraints:

  • ShiftLayout (Because some shifts must occur with days in between)
  • ShiftUtilization (Because some shifts can only be used a certain number of times)
  • WeekendDistribution (Because some employees require free neighbouring weekends)

If the MinWeekHours property is not set, then this check is not run on those employees, however, setting MaxWeekHours is generally necessary to get warnings in the first place.

The check is done for each week in the schedule, and the result is returned as a warning if the demand cannot be met.

Warning Response Schema
title
required
string
Enum: "Employee-availability-check" "Demand-weekend-covered-by-employees-check" "Employee-minutes-weekly-check" "Employee-minutes-entire-roster-check" "Demand-covered-by-shift-templates-check" "Shift-is-covered-by-demand-check" "Employee-assigned-to-shift-covers-demand-check" "Shift-Templates-are-demand-relevant-check" "Shift-utilization-minimum-occurrence-check" "Locked-shift-task-requirements-check"
category
required
string

This category is always set to WARNING

description
required
string
required
Array of objects (violation)
{
  • "title": "Employee-availability-check",
  • "category": "string",
  • "description": "string",
  • "violations": [
    ]
}

The following fields are used in the "violation" object:

  • employeeNumber
  • requiredMinutes
  • achievableMinutes

The following payload illustrates how the response looks for a payload with an employee that cannot have her required hours met.

Example

In this example, we illustrate a payload that will cause a warning in the feasibility check. The first employee must work 17 hours a week, whereas the other employee must only work 16 hours a week.

Since there is only 16 hours available to work, the first employee will not be able to work the required hours, which will result in a warning.

Payload example
{
"jobInfo": {
"id": "xxx",
"organisationId": "xxx",
"scheduleType": "RECURRING",
"demandType": "TIME_DEMAND",
"planningHorizon": {
"startDate": "2022-01-01",
"nrOfWeeks": 1,
}
},
"shifts": [
{
"id": "Shift1",
"shiftTypes": [
"DAY_W"
],
"intervals": [
{
"startTime": "08:00",
"endTime": "16:00",
"dayIndicator": 0,
"workTypeId": "1"
}
]
}
],
"employees": [
{
"id": "1",
"workTime": {
"weekHoursRules": {
"minWeekHours": 17,
"maxWeekHours": 17
}
}
},
{
"id": "2",
"workTime": {
"weekHoursRules": {
"minWeekHours": 16,
"maxWeekHours": 16
}
}
}
],
"timeSlots": [
{
"id": "all_day",
"startTime": "00:00",
"endTime": "23:59",
"workTypeId": "1",
}
],
"demands": [
{
"days": {
"dayIndexes": [
0,
1
]
},
"timeDemands": [
{
"timeSlotId": "all_day",
"ideal": 1
}
]
}
],
"configuration": {
"workTypes": [
{
"id": "1",
"name": "WORK",
"factor": 1.0
}
]
}

}