{% extends 'base.html' %} {% block content %}

Recruitment Dashboard

{% if is_hr_admin %} HR / Admin View {% else %} My Requisitions {% endif %}
Open Requisitions
{{ metrics.open_reqs or 0 }}
Candidates in Pipeline
{{ metrics.pipeline or 0 }}
Interviews Today
{{ metrics.interviews_today or 0 }}
Requisitions Closed (30 days)
{{ metrics.closed_recent or 0 }}
{% if metrics.on_hold is defined %}
On Hold
{{ metrics.on_hold or 0 }}
{% endif %}
Open Requisitions View All
{% if open_reqs %} {% for r in open_reqs %} {% endfor %} {% else %} {% endif %}
Code Job Title Dept Location Positions Applications Status
{{ r.code or ('REQ-' ~ r.id) }} {{ r.designation.title if r.designation else '-' }} {{ r.department.name if r.department else '-' }} {{ r.location or '-' }} {{ r.positions or 1 }} {% set cnt = apps_counts.get(r.id, 0) %} {% if cnt %} {{ cnt }} {% else %} 0 {% endif %} {{ r.status|replace('_',' ')|title }}
No open requisitions.
Upcoming Interviews (7 days)
{% if upcoming_interviews %}
{% for iv in upcoming_interviews %}
{{ iv.application.candidate.full_name if iv.application and iv.application.candidate else 'Candidate' }}
Stage: {{ iv.stage.name if iv.stage else '-' }} • Interviewer: {{ iv.interviewer.full_name if iv.interviewer else '-' }}
{% if iv.scheduled_at %}
{{ iv.scheduled_at.strftime('%d-%b-%Y') }}
{{ iv.scheduled_at.strftime('%H:%M') }}
{% else %} TBD {% endif %}
{% endfor %}
{% else %}

No interviews scheduled for the next 7 days.

{% endif %}
Recent Hires (last 30 days)
{% if recent_hires %}
{% for app in recent_hires %}
{{ app.candidate.full_name if app.candidate else 'Candidate' }} Selected
{{ app.requisition.designation.title if app.requisition and app.requisition.designation else '-' }} • {{ app.requisition.location if app.requisition else '' }}
{% endfor %}
{% else %}

No hires recorded in the last 30 days.

{% endif %}
{% endblock %}