[#2190] N'afficher que les comparaisons internes que l'utilisateur a le droit de...
[auf_rh_dae.git] / project / dae / models.py
index 1e83eb7..ebfbc50 100644 (file)
@@ -8,7 +8,7 @@ import reversion
 from workflow import PosteWorkflow, DossierWorkflow
 from workflow import DOSSIER_ETAT_DRH_FINALISATION, DOSSIER_ETAT_REGION_FINALISATION, \
                      DOSSIER_ETAT_FINALISE
-from managers import DossierManager, PosteManager
+from managers import DossierManager, PosteManager, PosteComparaisonManager
 import datamaster_modeles.models as ref
 from rh_v1 import models as rh
 
@@ -57,8 +57,8 @@ class Poste(PosteWorkflow, models.Model):
 
     # Contrat
     regime_travail = models.DecimalField(max_digits=12, decimal_places=2,
-                            default=REGIME_TRAVAIL_DEFAULT, 
-                            verbose_name="Temps de travail", 
+                            default=REGIME_TRAVAIL_DEFAULT,
+                            verbose_name="Temps de travail",
                             help_text="% du temps complet")
     regime_travail_nb_heure_semaine = models.DecimalField(max_digits=12,
                             decimal_places=2,
@@ -67,7 +67,7 @@ class Poste(PosteWorkflow, models.Model):
 
     # Recrutement
     local = models.BooleanField(verbose_name="Local", default=True, blank=True)
-    expatrie = models.BooleanField(verbose_name="Expatrié", default=False, 
+    expatrie = models.BooleanField(verbose_name="Expatrié", default=False,
                             blank=True)
     mise_a_disposition = models.BooleanField(verbose_name="Mise à disposition")
     appel = models.CharField(max_length=10, default='interne',
@@ -140,9 +140,9 @@ class Poste(PosteWorkflow, models.Model):
 
     def _get_key(self):
         """
-        Les vues sont montées selon une clef spéciale 
+        Les vues sont montées selon une clef spéciale
         pour identifier la provenance du poste.
-        Cette méthode fournit un moyen de reconstruire cette clef 
+        Cette méthode fournit un moyen de reconstruire cette clef
         afin de générer les URLs.
         """
         return "dae-%s" % self.id
@@ -151,11 +151,11 @@ class Poste(PosteWorkflow, models.Model):
     def get_dossiers(self):
         """
         Liste tous les anciens dossiers liés à ce poste.
-        (Le nom de la relation sur le rh.Poste est mal choisi 
+        (Le nom de la relation sur le rh.Poste est mal choisi
         poste1 au lieu de dossier1)
         Note1 : seulement le dosssier principal fait l'objet de la recherche.
-        Note2 : les dossiers sont retournés du plus récent au plus vieux. 
-        (Ce test est fait en fonction du id, 
+        Note2 : les dossiers sont retournés du plus récent au plus vieux.
+        (Ce test est fait en fonction du id,
         car les dates de création sont absentes de rh v1).
         """
         if self.id_rh is None:
@@ -165,7 +165,7 @@ class Poste(PosteWorkflow, models.Model):
 
     def get_complement_nom(self):
         """
-        Inspecte les modèles rh v1 pour trouver dans le dernier dossier 
+        Inspecte les modèles rh v1 pour trouver dans le dernier dossier
         un complément de titre de poste.
         """
         dossiers = self.get_dossiers()
@@ -186,7 +186,7 @@ class Poste(PosteWorkflow, models.Model):
             return None
 
     def get_default_devise(self):
-        """Récupère la devise par défaut en fonction de l'implantation 
+        """Récupère la devise par défaut en fonction de l'implantation
         (EUR autrement)
         """
         try:
@@ -301,7 +301,7 @@ class Poste(PosteWorkflow, models.Model):
             return False
         else:
             return True
-    
+
 
     def get_taux_comparaison(self):
         try:
@@ -342,7 +342,7 @@ class Poste(PosteWorkflow, models.Model):
 
     def __unicode__(self):
         """
-        Cette fonction est consommatrice SQL car elle cherche les dossiers 
+        Cette fonction est consommatrice SQL car elle cherche les dossiers
         qui ont été liés à celui-ci.
         """
         complement_nom_poste = self.get_complement_nom()
@@ -399,6 +399,8 @@ class PosteComparaison(models.Model):
     montant = models.IntegerField(null=True)
     devise = models.ForeignKey(rh.Devise, default=5, related_name='+', null=True, blank=True)
 
+    objects = PosteComparaisonManager()
+
     def taux_devise(self):
         if self.devise.code == 'EUR':
           return 1
@@ -675,7 +677,7 @@ class Dossier(DossierWorkflow, models.Model):
 
     def get_total_remunerations_tierces(self):
         total = 0.0
-        for r in self.get_remunerations_tierces():    
+        for r in self.get_remunerations_tierces():
             total += r.montant_euro()
         return total