#5450
authorBenoit C. Sirois <benoit.clennett-sirois@auf.org>
Tue, 12 Feb 2013 16:04:16 +0000 (11:04 -0500)
committerBenoit C. Sirois <benoit.clennett-sirois@auf.org>
Tue, 12 Feb 2013 16:04:16 +0000 (11:04 -0500)
project/dae/catalogues.py
project/rh/catalogues.py

index 44fe786..d52ad55 100644 (file)
@@ -1,7 +1,8 @@
 # -*- encoding: utf-8 -*-
 
-from django.db.models import Q
+import datetime
 
+from django.db.models import Q
 from project import groups
 from project.rh import models as rh
 
@@ -77,16 +78,19 @@ class Dossier(object):
         employe = groups.get_employe_from_user(request.user)
         prefixe_implantation = 'poste__implantation'
 
-        q_recherche = Q(poste__nom__icontains=q) | \
-            Q(poste__type_poste__nom__icontains=q) | \
-            Q(employe__nom__icontains=q) | \
-            Q(employe__prenom__icontains=q)
+        q_recherche = (
+            (Q(poste__nom__icontains=q) |
+             Q(poste__type_poste__nom__icontains=q) |
+             Q(employe__nom__icontains=q) |
+             Q(employe__prenom__icontains=q))
+            )
 
         q_place = Q(**{
             prefixe_implantation + '__zone_administrative':
             employe.implantation.zone_administrative
         })
 
+
         user_groupes = [g.name for g in request.user.groups.all()]
         if groups.DRH_NIVEAU_1 in user_groupes:
             q_filtre = q_recherche
@@ -119,9 +123,15 @@ class Poste(object):
         employe = groups.get_employe_from_user(request.user)
         prefixe_implantation = 'poste__implantation'
 
-        q_recherche = \
-                Q(poste__nom__icontains=q) | \
-                Q(poste__type_poste__nom__icontains=q)
+        q_recherche = (
+            (Q(poste__nom__icontains=q) |
+             Q(poste__type_poste__nom__icontains=q)) &
+            (Q(date_fin=None) |
+             Q(date_fin__gte=(
+                    datetime.date.today() -
+                    datetime.timedelta(365)
+                    ))
+              ))
 
         if groups.is_user_dans_services_centraux(request.user):
             q_place = Q(**{prefixe_implantation: employe.implantation})
index 96d745e..efb8a03 100644 (file)
@@ -1,5 +1,6 @@
 # -*- encoding: utf-8 -*-
 
+import datetime
 from django.db.models import Q
 
 from auf.django.references import models as ref
@@ -145,9 +146,15 @@ class Dossier(object):
 
     def get_query(self, q, request):
         dossiers = rh.Dossier.objects.filter(
-            Q(poste__nom=q) | Q(poste__type_poste__nom=q) |
-            Q(employe__nom__icontains=q) | Q(employe__prenom__icontains=q) |
-            Q(employe__nom_affichage__icontains=q)
+            (Q(poste__nom=q) | Q(poste__type_poste__nom=q) |
+             Q(employe__nom__icontains=q) | Q(employe__prenom__icontains=q) |
+             Q(employe__nom_affichage__icontains=q)) &
+            (Q(date_fin=None) |
+             Q(date_fin__gte=(
+                        datetime.date.today() -
+                        datetime.timedelta(365)
+                        ))
+             )
         )
         return dossiers