Rapport masse salariale: ajout de formattage pour les chiffres
authorJean-Philippe Caissy <jpcaissy@piji.ca>
Wed, 28 Mar 2012 15:33:59 +0000 (10:33 -0500)
committerJean-Philippe Caissy <jpcaissy@piji.ca>
Wed, 28 Mar 2012 15:33:59 +0000 (10:33 -0500)
project/rh/masse_salariale.py
project/rh/templates/rh/rapports/masse_salariale.html
project/rh/templatetags/rapports.py

index 46223be..a0bda97 100644 (file)
@@ -355,9 +355,9 @@ class MasseSalariale():
                     dossier.poste.implantation_id
                 ) or ""
 
-            salaire_theorique = "%s" % (
+            salaire_theorique = (
                     round(valeur_point.valeur * int(coefficient) * regime, 2) \
-                    if valeur_point and coefficient and regime else "")
+                    if valeur_point and coefficient and regime else None)
 
             rapport_nombre_jours = (float(date_delta.days)
                     / rapport_date_delta.days)
@@ -436,10 +436,6 @@ class MasseSalariale():
                             rapport_nombre_jours,
             }
 
-            for key in item_rapport.keys():
-                if type(item_rapport[key]) == type(float()):
-                    item_rapport[key] = round(item_rapport[key], 2)
-
             grand_total += round(masse_salariale, 2)
             grand_total_euro += round(masse_salariale_euro.montant * regime
                             * (
index e3f9e6b..694bf4d 100644 (file)
@@ -1,5 +1,5 @@
 {% extends 'rh/rapports/base.html' %}
-{% load adminmedia rapports i18n %}
+{% load adminmedia rapports i18n l10n %}
 
 {% block nomrapport %}Rapport de masse salariale{% endblock %}
 {% block count_elements %}<h2>Rapport du {{ request.GET.date_debut }} au {{ request.GET.date_fin }}</h2>{% endblock %}
     {% table_header headers %}
 </tr>
 </thead>
+{% localize on %}
 {% spaceless %}
 {% for row in rapport %}
     <tr class="{% cycle 'row1' 'row2' %}">
         {% for column in header_keys %}
-            <td>{{ row|hash:column }}</td>
+            {% if row|hash:column|is_float %}
+                <td>{{ row|hash:column|floatformat:2|localize }}</td>
+            {% else %}
+                <td>{{ row|hash:column|default:"" }}</td>
+            {% endif %}
         {% endfor %}
     </tr>
 {% endfor %}{% endspaceless %}
@@ -62,4 +67,5 @@
         <td>{{ total_euro }}</td>
     </tr>
 </table>
+{% endlocalize %}
 {% endblock %}
index 218a8b0..72f3ccc 100644 (file)
@@ -226,8 +226,13 @@ def split(str, splitter):
     return str.split(splitter)
 
 @register.filter
-def hash(h,key):
+def hash(h, key):
     if key in h:
         return h[key]
     else:
         raise Exception("%s does not exist" % key)
+
+@register.filter
+def is_float(v):
+    if type(v) == type(float()):
+        return True