Merge branch 'dae' into dev
[auf_rh_dae.git] / project / rh_v1 / models.py
index df0d804..f0424ca 100644 (file)
@@ -4,8 +4,8 @@ from django.db import models
 from datamaster_modeles.models import Pays, Implantation
 
 GENRE_CHOICES = (
-    ('M', 'Homme'),
-    ('F', 'Femme'),
+    ('m', 'Homme'),
+    ('f', 'Femme'),
 )
 SITUATION_CHOICES = (
     ('C', 'Célibataire'),
@@ -37,7 +37,11 @@ class Employe(models.Model):
     date_creation = models.DateField(auto_now_add=True)
     date_maj = models.DateField(auto_now=True)
     commentaire = models.TextField(null=True, blank=True)
-    
+
+    def __unicode__(self):
+        return u'%s %s' % (self.prenom, self.nom)
+
+
 TYPE_DOSSIER_CHOICES = (
     ('2', 'Local'),
     ('1', 'Expatrié'),
@@ -71,30 +75,30 @@ class Dossier(models.Model):
     employe = models.ForeignKey('Employe', db_column='employe')
     #Postes
     poste1 = models.ForeignKey('Poste', db_column='poste1', related_name='poste1')
-    implantation1 = models.ForeignKey('datamaster_modeles.Implantation', db_column='implantation1', related_name='implantation1')
+    implantation1 = models.ForeignKey('datamaster_modeles.Implantation', db_column='implantation1', related_name='implantation1', blank=True, null=True)
     complement1 = models.TextField(null=True, blank=True)
     responsable_implantation1 = models.IntegerField()
     poste2 = models.ForeignKey('Poste', db_column='poste2', related_name='poste2', blank=True, null=True)
-    implantation2 = models.ForeignKey('datamaster_modeles.Implantation', db_column='implantation2', related_name='implantation2')
+    implantation2 = models.ForeignKey('datamaster_modeles.Implantation', db_column='implantation2', related_name='implantation2', null=True, blank=True)
     complement2 = models.TextField(null=True, blank=True)
     responsable_implantation2 = models.IntegerField() 
     #Relations
-    service = models.ForeignKey('Service', db_column='service')
-    responsable = models.ForeignKey('Employe', db_column='responsable', related_name='responsable')
-    remplacement_de = models.ForeignKey('Employe', db_column='remplacement_de', related_name='remplacement_de')
+    service = models.ForeignKey('Service', db_column='service', blank=True, null=True)
+    responsable = models.ForeignKey('Employe', db_column='responsable', related_name='responsable', blank=True, null=True)
+    remplacement_de = models.ForeignKey('Employe', db_column='remplacement_de', related_name='remplacement_de', blank=True, null=True)
     type = models.CharField(max_length=1, choices=TYPE_DOSSIER_CHOICES)
-    statut = models.ForeignKey('Statut', db_column='statut')
-    organisme_bstg = models.ForeignKey('OrganismeBstg', db_column='organisme_bstg')
+    statut = models.ForeignKey('Statut', db_column='statut', blank=True, null=True)
+    organisme_bstg = models.ForeignKey('OrganismeBstg', db_column='organisme_bstg', blank=True, null=True)
     #Rémunération
-    classement = models.ForeignKey('Classement', db_column='classement')
+    classement = models.ForeignKey('Classement', db_column='classement', blank=True, null=True)
     regime_travail = models.IntegerField()
     #Mandat
     mandat_date_debut = models.DateField()
-    mandat_date_fin = models.DateField()
+    mandat_date_fin = models.DateField(null=True, blank=True)
     #Contrat
     contrat_date_debut = models.DateField()
     contrat_date_fin = models.DateField()
-    type_contrat = models.ForeignKey('TypeContrat', db_column='type_contrat')
+    type_contrat = models.ForeignKey('TypeContrat', db_column='type_contrat', blank=True, null=True)
     #Meta
     date_creation = models.DateField(auto_now_add=True)
     date_maj = models.DateField(auto_now=True)
@@ -128,20 +132,20 @@ class Remuneration(models.Model):
     id = models.IntegerField(primary_key=True)
     dossier = models.ForeignKey('Dossier', db_column='dossier')
     type = models.ForeignKey('TypeRemuneration', db_column='type')
-    type_revalorisation = models.ForeignKey('TypeRevalorisation', db_column='type_revalorisation')
-    montant = models.FloatField()
-    devise = models.ForeignKey('Devise', to_field='code', db_column='devise')
-    date_effective = models.DateField()
-    pourcentage = models.IntegerField()
+    type_revalorisation = models.ForeignKey('TypeRevalorisation', db_column='type_revalorisation', null=True, blank=True)
+    montant = models.FloatField(null=True, blank=True)
+    devise = models.ForeignKey('Devise', to_field='code', db_column='devise', null=True, blank=True)
+    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() #User ou employé
-    desactivation = models.BooleanField() #
-    date_desactivation = models.DateField()
-    user_desactivation = models.IntegerField() #User ou employé
-    annule = models.BooleanField()
-    date_annule = models.DateField()
-    user_annule = models.IntegerField() #User ou employé
+    user_creation = models.IntegerField(null=True, blank=True) #User ou employé
+    desactivation = models.NullBooleanField(null=True, blank=True) #
+    date_desactivation = models.DateField(null=True, blank=True)
+    user_desactivation = models.IntegerField(null=True, blank=True) #User ou employé
+    annulation = models.NullBooleanField(null=True, blank=True)
+    date_annulation = models.DateField(null=True, blank=True)
+    user_annulation = models.IntegerField(null=True, blank=True) #User ou employé
     
 class FamilleEmploi(models.Model):
     #Identification
@@ -164,6 +168,9 @@ class TypePoste(models.Model):
 
     def __unicode__(self):
         return u'%s' % self.nom
+        
+    class Meta:
+        ordering = ['nom']
 
 
 TYPE_PAIEMENT_CHOICES = (
@@ -227,7 +234,7 @@ class Poste(models.Model):
     objects = PosteManager()
 
     def __unicode__(self):
-        return u'%s - %s' % (self.implantation, self.type_poste.nom)
+        return u'%s - %s [%s]' % (self.implantation, self.type_poste.nom, self.id)
 
 
 class Service(models.Model):
@@ -239,6 +246,9 @@ class Service(models.Model):
 
     def __unicode__(self):
         return u'%s' % self.nom
+        
+    class Meta:
+        ordering = ['nom']
 
 
 TYPE_ORGANISME_CHOICES = (
@@ -254,6 +264,10 @@ class OrganismeBstg(models.Model):
     #Méta
     actif = models.BooleanField()
 
+    def __unicode__(self):
+        return u'%s (%s)' % (self.nom, self.type)
+
+
 CONTRAT_CATEGORIE_CHOICES= (
     ('A', 'A'),
     ('C', 'C'),
@@ -268,6 +282,9 @@ class Statut(models.Model):
     #Méta
     actif = models.BooleanField()
 
+    def __unicode__(self):
+        return u'%s' % self.nom
+
 TYPE_CLASSEMENT_CHOICES = (
     ('S', 'S'),
     ('T', 'T'),
@@ -299,12 +316,15 @@ class ValeurPoint(models.Model):
 
     def __unicode__(self):
         return u'%s (%s-%s)' % (self.valeur, self.implantation_id, self.annee)
+        
+    class Meta:
+        ordering = ['valeur']
 
 
 class TauxChange(models.Model):
     #Identification
     id = models.IntegerField(primary_key=True)
-    devise = models.ForeignKey('Devise', to_field='code', db_column='devise')
+    devise = models.ForeignKey('Devise', db_column='devise')
     annee = models.IntegerField()
     taux = models.FloatField()
     #Relations
@@ -329,3 +349,5 @@ class TypeContrat(models.Model):
     #Méta
     actif = models.BooleanField()
 
+    def __unicode__(self):
+        return u'%s - %s' % (self.categorie, self.nom)