1 # -*- encoding: utf-8 -*-
2 from datetime
import date
4 from django
.contrib
.auth
.decorators
import login_required
5 from django
.shortcuts
import redirect
, render_to_response
, get_object_or_404
6 from django
.template
import RequestContext
8 from datamaster_modeles
import models
as ref
9 from project
.lib
import get_employe_from_id
11 from rh
import models
as rh
16 """Profil personnel de l'employé - éditable"""
17 rc
= RequestContext(request
)
20 employe
= rc
['this_employe']
22 c
['user'] = request
.user
23 c
['employe'] = employe
24 return render_to_response('rh/profil.html', c
, rc
)
28 def employes_liste(request
):
29 """Liste des employés."""
31 employes
= rh
.Employe
.objects \
32 .filter(actif
=True, supprime
=False) \
33 .filter(dossiers__actif
=True, dossiers__supprime
=False) \
34 .exclude(dossiers__date_debut__gt
=today
) \
35 .exclude(dossiers__date_fin__lt
=today
) \
41 return render_to_response('rh/employes_liste.html', c
, RequestContext(request
))
44 def employe(request
, id):
45 """Information publique sur un employé."""
47 employe
= rh
.Employe
.objects
.get(pk
=id)
49 employe
= rh
.Employe
.objects
.none()
54 return render_to_response('rh/employe.html', c
, RequestContext(request
))
60 def rapports_poste(request
):
62 postes
= rh
.Poste
.actifs
.select_related('implantation').all()
63 poste_ids
= set([p
.pk
for p
in postes
])
65 dossiers
= rh
.Dossier
.objects
.select_related('poste', 'employe').filter(poste__in
=poste_ids
)
67 employes
= dict((d
.poste
.id, d
.employe
) for d
in dossiers
)
77 line
['implantation'] = p
.implantation
.nom
78 employe
= employes
.get(p
.id)
80 line
['employe_id'] = employe
.id
81 line
['employe_nom'] = employe
.nom
82 line
['employe_prenom'] = employe
.prenom
85 'title': 'Rapport des postes',
89 return render_to_response('rh/rapports/postes.html', c
, RequestContext(request
))