{% extends 'base.html' %} {% load static %} {% block title %}Schedule Management{% endblock %} {% block content %}

Schedule Management

Employee scheduling and shift management system

{{ total_employees }}

Total Employees

{{ scheduled_today }}

Scheduled Today

{{ open_shifts }}

Open Shifts

{{ coverage_percentage }}%

Coverage Rate

Schedule Controls

Schedule Calendar {{ current_period_display }}

{% for day in week_days %} {% endfor %} {% for employee in employees %} {% for day in week_days %} {% endfor %} {% endfor %} {% for day in week_days %} {% endfor %}
Employee
{{ day.name }}
{{ day.date|date:"M d" }}
Total Hours
{% if employee.photo %} {{ employee.get_full_name }} {% else %}
{{ employee.first_name|first }}{{ employee.last_name|first }}
{% endif %}
{{ employee.get_full_name }}
{{ employee.job_title }}
{% for shift in employee.shifts_for_day %} {% if shift.date == day.date %}
{{ shift.start_time|time:"H:i" }} - {{ shift.end_time|time:"H:i" }}
{{ shift.location|default:"" }}
{% if shift.status == 'open' %} Open {% elif shift.status == 'conflict' %} Conflict {% endif %}
{% endif %} {% endfor %}
{{ employee.total_hours|default:"0" }}h {% if employee.overtime_hours %}
+{{ employee.overtime_hours }}h OT {% endif %}
Daily Totals
{{ day.total_employees }} staff
{{ day.total_hours }}h
{{ week_total_hours }}h
Day Shift (7AM-7PM)
Evening Shift (3PM-11PM)
Night Shift (11PM-7AM)
Weekend Shift
On-Call
{% if conflicts %}

Schedule Conflicts

{% for conflict in conflicts %} {% endfor %}
Employee Date Conflict Type Details Actions
{{ conflict.employee.get_full_name }} {{ conflict.date|date:"M d, Y" }} {{ conflict.get_type_display }} {{ conflict.description }}
{% endif %}
{% endblock %} {% block js %} {% endblock %}