Rapport des postes hiérarchique: WIP, pas terminé encore
authorJean-Philippe Caissy <jpcaissy@piji.ca>
Wed, 22 Feb 2012 16:58:17 +0000 (10:58 -0600)
committerJean-Philippe Caissy <jpcaissy@piji.ca>
Wed, 22 Feb 2012 16:58:17 +0000 (10:58 -0600)
project/menu.py
project/rh/templates/rh/rapports/poste_hierarchie_include.html [new file with mode: 0644]
project/rh/templates/rh/rapports/postes_hierarchie.html [new file with mode: 0644]
project/rh/urls.py
project/rh/views.py

index 57399bd..96572e8 100644 (file)
@@ -49,6 +49,7 @@ class CustomMenu(Menu):
                                    items.MenuItem('Rapport des postes par service', reverse('rhr_postes_service')),
                                    items.MenuItem('Rapport des postes par implantation', reverse('rhr_postes_implantation')),
                                    items.MenuItem('Modelisation des postes', reverse('rhr_postes_modelisation')),
+                                   #items.MenuItem('Rapport hiérarchique des postes', reverse('rhr_postes_hierarchie')),
                                ]
                               ),
             ]
diff --git a/project/rh/templates/rh/rapports/poste_hierarchie_include.html b/project/rh/templates/rh/rapports/poste_hierarchie_include.html
new file mode 100644 (file)
index 0000000..bc052b4
--- /dev/null
@@ -0,0 +1,11 @@
+{% load rapports %}
+<ul>
+    {% for k, v in postes.items %}
+    <li>{{ k }}
+    {% if v|length > 0 %}
+        {% include "rh/rapports/poste_hierarchie_include.html" with postes=v %}
+    {% endif %}
+    </li>
+    {% endfor %}
+</ul>
+
diff --git a/project/rh/templates/rh/rapports/postes_hierarchie.html b/project/rh/templates/rh/rapports/postes_hierarchie.html
new file mode 100644 (file)
index 0000000..36d32b8
--- /dev/null
@@ -0,0 +1,11 @@
+{% extends 'rh/rapports/base.html' %}
+{% load adminmedia rapports i18n %}
+
+{% block nomrapport %}Rapport postes par implantation{% endblock %}
+{% block count_elements %}{% endblock %}
+
+{% block contentrapport %}
+
+{{ postes|unordered_list }}
+
+{% endblock %}
index 8d1654b..3125524 100644 (file)
@@ -11,6 +11,7 @@ urlpatterns = patterns(
     url(r'^admin/rh/rapports/postes_par_service$', 'rapports_postes_service', name='rhr_postes_service'),
     url(r'^admin/rh/rapports/postes_par_implantation$', 'rapports_postes_implantation', name='rhr_postes_implantation'),
     url(r'^admin/rh/rapports/postes_modelisation$', 'rapports_postes_modelisation', name='rhr_postes_modelisation'),
+    url(r'^admin/rh/rapports/postes_hierarchie$', 'rapports_postes_hierarchie', name='rhr_postes_hierarchie'),
     url(r'^admin/rh/dossier/(\d+)/apercu/$', 'dossier_apercu', name='dossier_apercu'),
     url(r'^admin/rh/employe/(\d+)/apercu/$', 'employe_apercu', name='employe_apercu'),
     url(r'^admin/rh/poste/(\d+)/apercu/$', 'poste_apercu', name='poste_apercu'),
index c7e2192..bbb58fb 100644 (file)
@@ -96,6 +96,24 @@ def employe(request, id):
 
 @login_required
 @drh_or_admin_required
+def rapports_postes_hierarchie(request):
+
+    c = {}
+
+    postes = {}
+    for p in rh.Poste.objects.all():
+        if p.responsable_id not in postes:
+            postes[p.responsable_id] = []
+        else:
+            postes[p.responsable_id].append(p.responsable_id)
+
+    c['postes'] = postes
+
+
+    return render_to_response('rh/rapports/postes_hierarchie.html', c, RequestContext(request))
+
+@login_required
+@drh_or_admin_required
 def rapports_poste(request):
 
     lookup_params = dict(request.GET.items())