Changements apportés lors de la réunion de mardi
authorNicolas Cadou <ncadou@cadou.ca>
Sun, 3 Apr 2011 16:39:22 +0000 (12:39 -0400)
committerNicolas Cadou <ncadou@cadou.ca>
Sun, 3 Apr 2011 16:39:22 +0000 (12:39 -0400)
project/dae/forms.py
project/dae/models.py

index 215c809..2d1f292 100644 (file)
@@ -59,6 +59,15 @@ class PosteForm(forms.ModelForm):
                       [('rh-%s' % p.id, unicode(p)) for p in rhv1],
                       key=lambda t: t[1])
 
+    def save(self, *args, **kwargs):
+        kwargs2 = kwargs.copy()
+        kwargs2['commit'] = False
+        poste = super(PosteForm, self).save(*args, **kwargs2)
+        # id_rh
+        if 'commit' not in kwargs or kwargs['commit']:
+            poste.save()
+        return poste
+
 
 class PosteFinancementForm(forms.ModelForm):
     """ Formulaire des sources de financement pour un poste. """
index 3018f50..177207b 100644 (file)
@@ -141,42 +141,45 @@ class Employe(models.Model):
     id_rh = models.ForeignKey(rh.Employe, null=True, related_name='+')
     nom = models.CharField(max_length=255)
     prenom = models.CharField(max_length=255)
-    genre = models.CharField(max_length=1,
-                             choices=GENRE_CHOICES,
-                             null=True,
-                             blank=True)
+    genre = models.CharField(max_length=1, choices=GENRE_CHOICES,
+                             null=True, blank=True)
 
 
 COMPTE_COMPTA_CHOICES = (
-    ('coda', 'coda'),
-    ('scs', 'scs'),
-    ('aucun', 'aucun'),
+    ('coda', 'CODA'),
+    ('scs', 'SCS'),
+    ('aucun', 'Aucun'),
 )
 
 
 class Dossier(models.Model):
-    statut_anterieur = models.ForeignKey(rh.Statut, related_name='+')
 
     # Modèle existant
-    poste = models.ForeignKey('Poste')
+    employe = models.ForeignKey('Employe', related_name='+')
+    poste = models.ForeignKey('Poste', related_name='+')
     statut = models.ForeignKey(rh.Statut, related_name='+')
     organisme_bstg = models.ForeignKey(rh.OrganismeBstg, related_name='+')
 
+    # Données antérieures
+    employe_anterieur = models.ForeignKey('Employe', related_name='+')
+    statut_anterieur = models.ForeignKey(rh.Statut, related_name='+')
+    classement_anterieur = models.ForeignKey(rh.Classement, related_name='+',
+                                             verbose_name='Classement proposé')
+    salaire_anterieur = models.DecimalField(max_digits=12, decimal_places=2,
+                                            verbose_name='Salaire de base',
+                                            null=True, default=None)
+
     # Recrutement
     remplacement = models.BooleanField()
-    mobilite_interne = models.BooleanField()
     statut_residence = models.CharField(max_length=10,
                                         choices=STATUT_RESIDENCE_CHOICES)
 
     # Rémunération
-    classement = models.ForeignKey(rh.Classement,
-                                   verbose_name='Classement proposé',
-                                   related_name='+')
-    salaire = models.DecimalField(max_digits=12,
-                                  decimal_places=2,
+    classement = models.ForeignKey(rh.Classement, related_name='+',
+                                   verbose_name='Classement proposé')
+    salaire = models.DecimalField(max_digits=12, decimal_places=2,
                                   verbose_name='Salaire de base',
-                                  null=True,
-                                  default=None)
+                                  null=True, default=None)
     devise = models.ForeignKey(rh.Devise, related_name='+')
     regime_travail = models.DecimalField(max_digits=12, decimal_places=2)
     regime_travail_nb_heure_semaine = \
@@ -186,7 +189,6 @@ class Dossier(models.Model):
     type_contrat = models.ForeignKey(rh.TypeContrat, related_name='+')
     contrat_date_debut = models.DateField()
     contrat_date_fin = models.DateField()
-    contrat_nb_mois = models.IntegerField()
 
     # Comptes
     compte_compta = models.CharField(max_length=10,
@@ -202,22 +204,21 @@ class Remuneration(models.Model):
     # TODO: what's that?
     # type_revalorisation = models.ForeignKey('TypeRevalorisation',
                                             # db_column='type_revalorisation')
-    montant = models.DecimalField(max_digits=12, decimal_places=2)
-    devise = models.ForeignKey(rh.Devise,
-                               to_field='code',
+    montant = models.DecimalField(max_digits=12, decimal_places=2) # Annuel
+    devise = models.ForeignKey(rh.Devise, to_field='code',
                                db_column='devise', related_name='+')
-    date_effective = models.DateField()
-    pourcentage = models.IntegerField()
+    date_effective = models.DateField(null=True, blank=True)
+    pourcentage = models.IntegerField(null=True, blank=True)
 
     # Méta
     date_creation = models.DateField(auto_now_add=True)
-    user_creation = models.IntegerField()
-    desactivation = models.BooleanField()
-    date_desactivation = models.DateField()
-    user_desactivation = models.IntegerField()
-    annule = models.BooleanField()
-    date_annule = models.DateField()
-    user_annule = models.IntegerField()
+    user_creation = models.IntegerField(null=True, blank=True)
+    desactivation = models.BooleanField(null=True, blank=True)
+    date_desactivation = models.DateField(null=True, blank=True)
+    user_desactivation = models.IntegerField(null=True, blank=True)
+    annule = models.BooleanField(null=True, blank=True)
+    date_annule = models.DateField(null=True, blank=True)
+    user_annule = models.IntegerField(null=True, blank=True)
 
 
 class JustificationPoste(models.Model):