From 196e2d221b363a3d5b795719be56c6b106fd504d Mon Sep 17 00:00:00 2001 From: =?utf8?q?Olivier=20Larchev=C3=AAque?= Date: Mon, 22 Aug 2011 15:04:05 -0400 Subject: [PATCH] fix responsable ajax, le poste qui match, on retrouve le dossier de la personne si la recherche match par nom --- project/dae/catalogues.py | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/project/dae/catalogues.py b/project/dae/catalogues.py index 48a7a22..82621d0 100644 --- a/project/dae/catalogues.py +++ b/project/dae/catalogues.py @@ -6,8 +6,9 @@ from utils import get_employe_from_user, is_user_dans_services_centraux from workflow import grp_drh class Responsable(object): - + q = "" def get_query(self,q,request): + self.q = q return rh.Poste.objects.filter( Q(poste1__complement1__icontains=q) | Q(type_poste__nom__icontains=q) | @@ -16,13 +17,13 @@ class Responsable(object): ).distinct() def format_result(self, poste): - dossiers = poste.poste1.all().order_by("-id") - complement1 = "" - employe = "" - if len(dossiers) > 0: - complement1 = dossiers[0].complement1 - employe = unicode(dossiers[0].employe) - return "[%s] %s %s (%s) (%s)" % (poste.implantation.id, poste.type_poste.nom, complement1, poste.id, employe) + q = self.q + filtre = Q(poste1=poste) & (Q(complement1__icontains=q) | Q(employe__nom__icontains=q) | Q(employe__prenom__icontains=q)) + dossiers = rh.Dossier.objects.filter(filtre) + if len(dossiers) == 1: + dossier = dossiers[0] + return "[%s] %s %s (%s) (%s)" % (poste.implantation.id, poste.type_poste.nom, dossier.complement1, poste.id, dossier.employe) + return "[%s] %s %s" % (poste.implantation.id, poste.type_poste.nom, poste.id) def format_item(self, poste): """ the display of a currently selected object in the area below the search box. html is OK """ -- 1.7.10.4