X-Git-Url: http://git.auf.org/?p=auf_rh_dae.git;a=blobdiff_plain;f=project%2Frh%2Fmodels.py;h=96ae6d19da6098158aba0faea610919391bbeee3;hp=243b4bff2689545005d88d9ded0deadf510513d4;hb=952ecb37c78ab6eb54aca28ed8818404e438cd87;hpb=a2459daf44192a3bcdb9ebe6ec3a48b5ec9772d5 diff --git a/project/rh/models.py b/project/rh/models.py index 243b4bf..96ae6d1 100644 --- a/project/rh/models.py +++ b/project/rh/models.py @@ -1053,6 +1053,16 @@ TYPE_CLASSEMENT_CHOICES = ( ('HG', 'HG - Hors grille [direction]'), ) +class ClassementManager(models.Manager): + """ + Ordonner les spcéfiquement les classements. + """ + def get_query_set(self): + qs = super(self.__class__, self).get_query_set() + qs = qs.extra(select={'ponderation': 'FIND_IN_SET(type,"SO,HG,S,T,P,C,D")'}) + qs = qs.extra(order_by=('ponderation', )) + return qs.all() + class Classement_(AUFMetadata): """Éléments de classement de la @@ -1063,6 +1073,8 @@ class Classement_(AUFMetadata): salaire de base = coefficient * valeur du point de l'Implantation du Poste """ + objects = ClassementManager() + # Identification type = models.CharField(max_length=10, choices=TYPE_CLASSEMENT_CHOICES) echelon = models.IntegerField(verbose_name=u"Échelon", blank=True, default=0)