Ticket 5638
authorBenoit C. Sirois <benoit.clennett-sirois@auf.org>
Tue, 12 Mar 2013 14:14:48 +0000 (10:14 -0400)
committerBenoit C. Sirois <benoit.clennett-sirois@auf.org>
Tue, 12 Mar 2013 14:14:48 +0000 (10:14 -0400)
project/dae/templates/dae/poste_resume.html
project/dae/templatetags/dae.py

index 2573967..0b5387e 100644 (file)
   <thead>
     <tr>
       <th></th>
-      <th>Min.</th>
-      <th>Max.</th>
+      <th>Min. annuel ({{ poste.devise_min.code }})</th>
+      <th>Min. annuel (€, taux: {{ poste.show_taux_minimum }})</th>
+      <th>Max. annuel ({{ poste.devise_max.code }})</th>
+      <th>Max. annuel (€, taux: {{ poste.show_taux_maximum }})</th>
     </tr>
   </thead>
   <tbody>
     <tr>
       <th>Échelon AUF</th>
-      <td>{{ poste.classement_min }}</td>
-      <td>{{ poste.classement_max }}</td>
+      <td colspan="2">{{ poste.classement_min }}</td>
+      <td colspan="2">{{ poste.classement_max }}</td>
     </tr>
     <tr>
       <td class="spaced" >Salaire de base</td>
       <td class="montant">
-        {{ poste.salaire_min|floatformat:0 }} {{ poste.devise_min.code }}
+        {{ poste.salaire_min|floatformat:0 }}
       </td>
       <td class="montant">
-        {{ poste.salaire_max|floatformat:0 }} {{ poste.devise_max.code }}
+        {{ poste.salaire_min|euros:poste.devise_min|floatformat:0 }}
+      </td>
+      <td class="montant">
+        {{ poste.salaire_max|floatformat:0 }}
+      </td>
+      <td class="montant">
+        {{ poste.salaire_max|euros:poste.devise_max|floatformat:0 }}
       </td>
     </tr>
     <tr>
       <td class="spaced">Indem. d'expatriation</td>
-      <td class="montant">{{ poste.indemn_expat_min|floatformat:0 }} {{ poste.devise_min.code }}</td>
-      <td class="montant">{{ poste.indemn_expat_max|floatformat:0 }} {{ poste.devise_max.code }}</td>
+      <td class="montant">{{ poste.indemn_expat_min|floatformat:0 }}</td>
+      <td class="montant">{{ poste.indemn_expat_min|euros:poste.devise_min|floatformat:0 }}</td>
+      <td class="montant">{{ poste.indemn_expat_max|floatformat:0 }}</td>
+      <td class="montant">{{ poste.indemn_expat_max|euros:poste.devise_max|floatformat:0 }}</td>
     </tr>
     <tr>
       <td class="spaced">Indem. de fonction</td>
-      <td class="montant">{{ poste.indemn_fct_min|floatformat:0 }} {{ poste.devise_min.code }}</td>
-      <td class="montant">{{ poste.indemn_fct_max|floatformat:0 }} {{ poste.devise_max.code }}</td>
+      <td class="montant">{{ poste.indemn_fct_min|floatformat:0 }}</td>
+      <td class="montant">{{ poste.indemn_fct_min|euros:poste.devise_min|floatformat:0 }}</td>
+      <td class="montant">{{ poste.indemn_fct_max|floatformat:0 }}</td>
+      <td class="montant">{{ poste.indemn_fct_max|euros:poste.devise_max|floatformat:0 }}</td>
     </tr>
     <tr>
       <td class="spaced">Charges patronales</td>
-      <td class="montant">{{ poste.charges_patronales_min|floatformat:0 }} {{ poste.devise_min.code }}</td>
-      <td class="montant">{{ poste.charges_patronales_max|floatformat:0 }} {{ poste.devise_max.code }}</td>
+      <td class="montant">{{ poste.charges_patronales_min|floatformat:0 }}</td>
+      <td class="montant">{{ poste.charges_patronales_min|euros:poste.devise_min|floatformat:0 }}</td>
+      <td class="montant">{{ poste.charges_patronales_max|floatformat:0 }}</td>
+      <td class="montant">{{ poste.charges_patronales_max|euros:poste.devise_max|floatformat:0 }}</td>
     </tr>
     <tr>
       <td class="spaced">Autres</td>
-      <td class="montant">{{ poste.autre_min|floatformat:0 }} {{ poste.devise_min.code }}</td>
-      <td class="montant">{{ poste.autre_max|floatformat:0 }} {{ poste.devise_max.code }}</td>
+      <td class="montant">{{ poste.autre_min|floatformat:0 }}</td>
+      <td class="montant">{{ poste.autre_min|euros:poste.devise_min|floatformat:0 }}</td>
+      <td class="montant">{{ poste.autre_max|floatformat:0 }}</td>
+      <td class="montant">{{ poste.autre_max|euros:poste.devise_max|floatformat:0 }}</td>
     </tr>
     <tr class="total-row" >
       <th>TOTAL</th>
-      <td class="montant">{{ poste.get_couts_minimum|floatformat:0 }} {{ poste.devise_min.code }}</td>
-      <td class="montant">{{ poste.get_couts_maximum|floatformat:0 }} {{ poste.devise_max.code }}</td>
+      <td class="montant">{{ poste.get_couts_minimum|floatformat:0 }}</td>
+      <td class="montant">{{ poste.get_couts_minimum_euros|floatformat:0 }}</td>
+      <td class="montant">{{ poste.get_couts_maximum|floatformat:0 }}</td>
+      <td class="montant">{{ poste.get_couts_maximum_euros|floatformat:0 }}</td>
     </tr>
     <tr class="total-row" >
       <th>TOTAL sans charges patronales</th>
-      <td class="montant">{{ poste.get_salaire_minimum|floatformat:0 }} {{ poste.devise_min.code }}</td>
-      <td class="montant">{{ poste.get_salaire_maximum|floatformat:0 }} {{ poste.devise_max.code }}</td>
-    </tr>
-    <tr>
-      <td class="spaced">Taux&nbsp;&gt;&nbsp;€</td>
-      <td>{{ poste.show_taux_minimum }}</td>
-      <td>{{ poste.show_taux_maximum }}</td>
-    </tr>
-    <tr class="total-row" >
-      <th>TOTAL (EUR)</th>
-      <td class="montant">{{ poste.show_couts_minimum_euros|floatformat:0 }} €</td>
-      <td class="montant">{{ poste.show_couts_maximum_euros|floatformat:0 }} €</td>
-    </tr>
-    <tr class="total-row" >
-      <th>TOTAL (EUR) sans charges patronales</th>
-      <td class="montant">{{ poste.show_salaire_minimum_euros|floatformat:0 }} €</td>
-      <td class="montant">{{ poste.show_salaire_maximum_euros|floatformat:0 }} €</td>
+      <td class="montant">{{ poste.get_salaire_minimum|floatformat:0 }}</td>
+      <td class="montant">{{ poste.get_salaire_minimum_euros|floatformat:0 }}</td>
+      <td class="montant">{{ poste.get_salaire_maximum|floatformat:0 }}</td>
+      <td class="montant">{{ poste.get_salaire_maximum_euros|floatformat:0 }}</td>
     </tr>
   </tbody>
 </table>
index 54eef89..08088b3 100644 (file)
@@ -2,6 +2,7 @@
 
 import os
 import datetime
+from decimal import Decimal
 
 from django import template
 from django.db.models import Q
@@ -162,3 +163,21 @@ def rh_remun_form_for_year(context, dossier, year):
 @register.simple_tag
 def remun_ajuste(remun, annee=None):
     return '%.2f' % remun.montant_ajuste_euros(annee)
+
+
+@register.filter
+def euros(montant, devise):
+    """
+    Template tag pour convertir en euros.
+    """
+    taux = 1
+    if devise.code != 'EUR':
+        liste_taux = devise.tauxchange_set.order_by('-annee')
+        if liste_taux.count() == 0:
+            taux = 0
+        else:
+            taux = liste_taux[0].taux
+
+    return montant * Decimal(str(taux))
+    
+