Merge branch 'dev' of ssh://git.auf/auf_rh_dae into dev
authorOlivier Larchevêque <olivier.larcheveque@auf.org>
Fri, 13 May 2011 19:01:36 +0000 (15:01 -0400)
committerOlivier Larchevêque <olivier.larcheveque@auf.org>
Fri, 13 May 2011 19:01:36 +0000 (15:01 -0400)
project/dae/models.py
project/dae/templates/dae/embauche-dossier-consulter.html
project/dae/templates/dae/embauche-remun-consulter.html
project/dae/templates/dae/poste_resume.html
project/media/js/dae-poste.js

index e1a2e97..d3aa5e2 100644 (file)
@@ -200,9 +200,13 @@ class Poste(PosteWorkflow, models.Model):
         return (float)(self.salaire_min + self.indemn_min + self.autre_min)
 
     def get_taux_minimum(self):
-        try:
-            return rh.TauxChange.objects.filter(implantation=self.implantation, devise=self.devise_min)[0].taux
-        except:
+        taux_changes = rh.TauxChange.objects.filter(devise=self.devise_min).order_by('annee')
+        for t in taux_changes:
+            if t.implantation == self.implantation:
+                return t.taux
+        if len(taux_changes) > 0:
+            return taux_changes[0].taux
+        else:
             raise Exception('Taux indisponible pour la devise %s (%s)' % (self.devise_min, self.implantation))
 
     def get_couts_minimum_euros(self):
@@ -212,9 +216,13 @@ class Poste(PosteWorkflow, models.Model):
         return (float)(self.salaire_max + self.indemn_max + self.autre_max)
 
     def get_taux_maximum(self):
-        try:
-            return rh.TauxChange.objects.filter(implantation=self.implantation, devise=self.devise_max)[0].taux
-        except:
+        taux_changes = rh.TauxChange.objects.filter(devise=self.devise_max).order_by('annee')
+        for t in taux_changes:
+            if t.implantation == self.implantation:
+                return t.taux
+        if len(taux_changes) > 0:
+            return taux_changes[0].taux
+        else:
             raise Exception('Taux indisponible pour la devise %s (%s)' % (self.devise_max, self.implantation))
 
     def get_couts_maximum_euros(self):
index ffe32dc..f8ab912 100644 (file)
@@ -6,26 +6,28 @@
         <th>Type de contrat</th>
         <td colspan="4">{{ dossier.type_contrat }}</td>
         <th>Remplacement</th>
-        <td>{{ dossier.remplacement }}</td>
+        <td>{%if dossier.remplacement %}oui{% else %}non{%endif %}</td>
     </tr>
     <tr>
         <th rowspan="2">Durée</th>
-        <td>du</td>
-        <td>{{ dossier.contrat_date_debut }}</td>
-        <td>au</td>
-        <td>{{ dossier.contrat_date_fin }}</td>
+        <td colspan=2> du {{ dossier.contrat_date_debut }}</td>
+        <td colspan=2>au {{ dossier.contrat_date_fin }}</td>
         <th>Régime de travail</th>
-        <td>{{ dossier.regime_travail }}</td>
+        <td>{{ dossier.regime_travail }}%</td>
     </tr>
     <tr>
         <th>Nombre d'heure par semaine</th>
-        <td>{{ dossier.regime_travail_nb_heure_semaine }}</td>
+        <td colspan=5>{{ dossier.regime_travail_nb_heure_semaine }}H</td>
     </tr>
     <tr>
         <th>Statut : </th>
         <td colspan="4">{{ dossier.statut }} {{ dossier.statut_residence }}</td>
         <th>Organisme BSTG</th>
-        <td>{{ dossier.organisme_bstg }}{{ dossier.organisme_bstg_autre }}</td>
+        {% if dossier.organisme_bstg or dossier.organisme_bstg_autre %}
+            <td>{% if dossier.organisme_bstg %}{{ dossier.organisme_bstg }}{% endif %} {{ dossier.organisme_bstg_autre }}</td>
+        {% else %}
+            <td>s/o</td>
+        {% endif %}
     </tr>
     </tbody>
 </table>
     </tr>
     <tr>
         <th>Classement proposé</th>
-        <th colspan="6">Salaire proposé <span class="info">(fourchette du poste : {{ dossier.poste.salaire_min }} {{ dossier.poste.devise_min.code }}
-            - {{ dossier.poste.salaire_max }} {{ dossier.poste.devise_max.code }})</span>
+        <th colspan="6">Salaire proposé</span>
 </th>
     </tr>
     <tr>
         <td>{{ dossier.classement }}</td>
-        <td colspan="2">{{ dossier.salaire }} {{ dossier.devise.code }}         </td>
+        <td colspan="2">{{ dossier.salaire }} {{ dossier.devise.code }}</td>
         <td colspan="4" id="salaire-propose-euros" class="montant">{{ dossier.get_salaire_euros }} €</td>
     </tr>
     </tbody>
index 2119f13..76c7567 100644 (file)
@@ -7,11 +7,14 @@
   <th>Précision</th>
 </tr>
 
+{% if dossier.get_couts_auf %}
 <tr>
     <th colspan="5">Coûts AUF</th>
     <th id="sous-total-cout" class="montant">{{ dossier.get_total_couts_auf|floatformat:0 }}€</th>
     <th></th>
 </tr>
+{% endif %}
+
 
 {% for remun in dossier.get_couts_auf %}
   <tr class="cout">
   </tr>
 {% endfor %}
 
+{% if dossier.get_aides_auf %}
 <tr>
     <th colspan="5">BSTG - Salaire de mise à disposition</th>
     <th id="sous-total-aide" class="montant">{{ dossier.get_total_aides_auf|floatformat:0 }}€</th>
     <th></th>
 </tr>
+{% endif %}
 
 {% for remun in dossier.get_aides_auf %}
   <tr class="aide">
index 6de655f..976b810 100644 (file)
@@ -86,7 +86,7 @@
         <td class="montant">{{ poste.salaire_min|floatformat:0 }} {{ poste.devise_min.code }}</td>
         <td class="montant">{{ poste.indemn_min|floatformat:0 }} {{ poste.devise_min.code }}</td>
         <td class="montant">{{ poste.autre_min|floatformat:0 }} {{ poste.devise_min.code }}</td>
-        <td class="montant">{{ poste.show_couts_minimum|floatformat:0 }} {{ poste.devise_min.code }}</td>
+        <td class="montant">{{ poste.get_couts_minimum|floatformat:0 }} {{ poste.devise_min.code }}</td>
         <td>{{ poste.show_taux_minimum }}</td>
         <td class="montant">{{ poste.show_couts_minimum_euros|floatformat:0 }} EUR</td>
     </tr>
@@ -96,7 +96,7 @@
         <td class="montant">{{ poste.salaire_max|floatformat:0 }} {{ poste.devise_max.code }}</td>
         <td class="montant">{{ poste.indemn_max|floatformat:0 }} {{ poste.devise_max.code }}</td>
         <td class="montant">{{ poste.autre_max|floatformat:0 }} {{ poste.devise_max.code }}</td>
-        <td class="montant">{{ poste.show_couts_maximum|floatformat:0 }} {{ poste.devise_max.code }}</td>
+        <td class="montant">{{ poste.get_couts_maximum|floatformat:0 }} {{ poste.devise_max.code }}</td>
         <td>{{ poste.show_taux_maximum }}</td>
         <td class="montant">{{ poste.show_couts_maximum_euros|floatformat:0 }} EUR</td>
     </tr>
index daa3b52..9ebda6f 100644 (file)
@@ -62,7 +62,6 @@ function charger_valeurs_point(implantation_id) {
 /* Calcul des totaux dans les 2 devises, selon les champs sélectionnés. Cette fonction
 est appelée À chaque modification du formulaire de classement. */
 function recalculer_ligne(element) {
-
     /* on laisse la possibilité de choisir le salaire manuellement,
        la réinitialisation du salaire de base s'opère dès qu'on choisi
        un nouveau classement. */
@@ -126,7 +125,7 @@ function recalculer_ligne(element) {
 
 /* recalcule tout le classement */
 function recalculer_tout() {
-    $("#classement tr *[name*=classement]").each(function() {
+    $("#classement tr *[name*=salaire]").each(function() {
         recalculer_ligne($(this));
     });
 }
@@ -151,6 +150,9 @@ $(document).ready(function() {
 
 
     $('#id_valeur_point_min, #id_valeur_point_max').change(function(e) {
+        // pas de traitement si aucune valeur de point n'est choisie
+        if (this.value == '') return;
+
         var vp_input = $(this);
         var ligne = vp_input.parents("tr").parent(); // en fait on travaille sur tout le tableau dans ce cas!