employe = models.ForeignKey('Employe', db_column='employe',
related_name='dossiers',
verbose_name=u"Employé")
- poste = models.ForeignKey('Poste', db_column='poste', related_name='+')
+ # TODO: OneToOne ??
+ poste = models.ForeignKey('Poste', db_column='poste', related_name='dossiers')
statut = models.ForeignKey('Statut', related_name='+', default=3,
null=True)
organisme_bstg = models.ForeignKey('OrganismeBstg',
--- /dev/null
+{% extends 'admin/base_site.html' %}
+{% load i18n %}
+
+{% block breadcrumbs %}{% if not is_popup %}
+<div class="breadcrumbs">
+ <a href="../../../">{% trans "Home" %}</a> ›
+ <a href="../../">Rh</a> ›
+ Rapport Postes
+</div>
+{% endif %}{% endblock %}
+
+{% block content %}
+<div id="content-main">
+
+ <table>
+ <tr>
+ <th># du poste</th>
+ <th>Nom du poste</th>
+ <th>Implantation</th>
+ <th># de l'employé</th>
+ <th>Nom</th>
+ <th>Prénom</th>
+ </tr>
+ {% for poste in postes %}
+ <tr>
+ <td>{{ poste.id }}</td>
+ <td>{{ poste.nom }}</td>
+ <td>{{ poste.implantation }}</td>
+ <td>{{ poste.employe_id }}</td>
+ <td>{{ poste.employe_nom }}</td>
+ <td>{{ poste.employe_prenom }}</td>
+ </tr>
+ {% endfor %}
+ </table>
+
+</div>
+{% endblock %}
'project.rh.api',
url(r'^employes/(?P<id>\d+)/photo$', 'photo', name='rh_photo'),
)
+# Rapports
+urlpatterns += patterns(
+ 'project.rh.views',
+ url(r'^admin/rh/rapports/postes$', 'rapports_poste', name='rhr_postes'),
+)
'employe':employe,
}
return render_to_response('rh/employe.html', c, RequestContext(request))
+
+
+# Rapports
+
+@login_required
+def rapports_poste(request):
+
+ postes = rh.Poste.actifs.select_related('implantation').all()
+ poste_ids = set([p.pk for p in postes])
+
+ dossiers = rh.Dossier.objects.select_related('poste', 'employe').filter(poste__in=poste_ids)
+
+ employes = dict((d.poste.id, d.employe) for d in dossiers)
+
+ out = []
+
+ for p in postes:
+ line = {}
+ out.append(line)
+
+ line['id'] = p.id
+ line['nom'] = p.nom
+ line['implantation'] = p.implantation.nom
+ employe = employes.get(p.id)
+ if employe:
+ line['employe_id'] = employe.id
+ line['employe_nom'] = employe.nom
+ line['employe_prenom'] = employe.prenom
+
+ c = {
+ 'title': 'Rapport des postes',
+ 'postes': out,
+ }
+
+ return render_to_response('rh/rapports/postes.html', c, RequestContext(request))