Introduces a new work schedule feature for managing employee shifts and schedules Implements interactive schedule view with: - Week-based schedule grid - Shift status tracking (work, vacation, sick, off) - Editable time ranges - Repeat shift functionality Enhances employee management with dynamic scheduling capabilities
79 lines
2.8 KiB
JSON
79 lines
2.8 KiB
JSON
{
|
|
"weekNumber": 52,
|
|
"year": 2025,
|
|
"startDate": "2025-12-23",
|
|
"endDate": "2025-12-29",
|
|
"closedDays": ["2025-12-25"],
|
|
"employees": [
|
|
{
|
|
"employeeId": "emp-1",
|
|
"name": "Anna Sørensen",
|
|
"weeklyHours": 32,
|
|
"schedule": {
|
|
"2025-12-23": { "status": "work", "start": "09:00", "end": "17:00" },
|
|
"2025-12-24": { "status": "work", "start": "09:00", "end": "13:00" },
|
|
"2025-12-25": { "status": "off" },
|
|
"2025-12-26": { "status": "off" },
|
|
"2025-12-27": { "status": "work", "start": "09:00", "end": "17:00" },
|
|
"2025-12-28": { "status": "work", "start": "10:00", "end": "14:00" },
|
|
"2025-12-29": { "status": "off" }
|
|
}
|
|
},
|
|
{
|
|
"employeeId": "emp-2",
|
|
"name": "Mette Jensen",
|
|
"weeklyHours": 40,
|
|
"schedule": {
|
|
"2025-12-23": { "status": "work", "start": "10:00", "end": "18:00" },
|
|
"2025-12-24": { "status": "work", "start": "10:00", "end": "18:00" },
|
|
"2025-12-25": { "status": "vacation" },
|
|
"2025-12-26": { "status": "vacation" },
|
|
"2025-12-27": { "status": "vacation" },
|
|
"2025-12-28": { "status": "off" },
|
|
"2025-12-29": { "status": "off" }
|
|
}
|
|
},
|
|
{
|
|
"employeeId": "emp-3",
|
|
"name": "Louise Nielsen",
|
|
"weeklyHours": 37,
|
|
"schedule": {
|
|
"2025-12-23": { "status": "work", "start": "09:00", "end": "17:00" },
|
|
"2025-12-24": { "status": "work", "start": "09:00", "end": "17:00" },
|
|
"2025-12-25": { "status": "off" },
|
|
"2025-12-26": { "status": "off" },
|
|
"2025-12-27": { "status": "work", "start": "09:00", "end": "17:00" },
|
|
"2025-12-28": { "status": "work", "start": "09:00", "end": "14:00" },
|
|
"2025-12-29": { "status": "off" }
|
|
}
|
|
},
|
|
{
|
|
"employeeId": "emp-4",
|
|
"name": "Katrine Pedersen",
|
|
"weeklyHours": 24,
|
|
"schedule": {
|
|
"2025-12-23": { "status": "work", "start": "12:00", "end": "20:00" },
|
|
"2025-12-24": { "status": "off" },
|
|
"2025-12-25": { "status": "off" },
|
|
"2025-12-26": { "status": "off" },
|
|
"2025-12-27": { "status": "work", "start": "12:00", "end": "20:00" },
|
|
"2025-12-28": { "status": "work", "start": "10:00", "end": "18:00" },
|
|
"2025-12-29": { "status": "off" }
|
|
}
|
|
},
|
|
{
|
|
"employeeId": "emp-5",
|
|
"name": "Sofie Andersen",
|
|
"weeklyHours": 20,
|
|
"schedule": {
|
|
"2025-12-23": { "status": "sick" },
|
|
"2025-12-24": { "status": "work", "start": "09:00", "end": "15:00" },
|
|
"2025-12-25": { "status": "off" },
|
|
"2025-12-26": { "status": "off" },
|
|
"2025-12-27": { "status": "work", "start": "09:00", "end": "15:00" },
|
|
"2025-12-28": { "status": "off" },
|
|
"2025-12-29": { "status": "off" }
|
|
}
|
|
}
|
|
]
|
|
}
|