fix #1466
authorOlivier Larchevêque <olivier.larcheveque@auf.org>
Mon, 16 May 2011 18:30:06 +0000 (14:30 -0400)
committerOlivier Larchevêque <olivier.larcheveque@auf.org>
Mon, 16 May 2011 18:30:06 +0000 (14:30 -0400)
project/dae/admin.py
project/dae/forms.py
project/dae/migrations/0036_auto__del_justificationquestion__del_justificationnouvelemploye__del_j.py [new file with mode: 0644]
project/dae/models.py
project/dae/templates/dae/embauche.html
project/dae/templates/dae/embauche_consulter.html
project/dae/templates/dae/embauche_pdf.html
project/dae/views.py

index efaac95..e452dc2 100644 (file)
@@ -2,7 +2,7 @@
 
 from django.contrib import admin
 from reversion.admin import VersionAdmin
-from models import Poste, JustificationQuestion
+from models import Poste
 
 class PosteAdmin(VersionAdmin):
     list_display = ('_titre', 'pourvu', 'actif', )
@@ -10,11 +10,4 @@ class PosteAdmin(VersionAdmin):
     def _titre(self, obj):
         return unicode(obj)
 
-class JustificationQuestionAdmin(admin.ModelAdmin):
-    pass
-
 admin.site.register(Poste, PosteAdmin)
-admin.site.register(JustificationQuestion, JustificationQuestionAdmin)
-
-
-
index 793cf80..e028a2a 100644 (file)
@@ -97,50 +97,6 @@ class FlexibleRemunForm(forms.ModelForm):
 class RemunForm(inlineformset_factory(dae.Dossier, dae.Remuneration, extra=5, form=FlexibleRemunForm)):
     pass
 
-class JustificationNouvelEmployeForm(inlineformset_factory(dae.Dossier,
-                                                           dae.JustificationNouvelEmploye,
-                                                           extra=0,
-                                                           can_delete=False,
-                                                           exclude=('question',))):
-    """
-    Formulaire de justification d'un nouvel employé.
-    Le dossier a besoin d'être enregistré une première fois afin de prépopuler les questions.
-    """
-    def __init__(self, *args, **kwargs):
-        instance = kwargs['instance']
-        if instance.id:
-            q_ids = [j.question.id for j in instance.justificationnouvelemploye_set.filter(dossier=instance)]
-            for q in dae.JustificationQuestion.objects.filter(type="N"):
-                if q.id in q_ids:
-                    continue
-                j = dae.JustificationNouvelEmploye()
-                j.dossier = instance
-                j.question = q
-                j.save()
-        super(self.__class__, self).__init__(*args, **kwargs)
-
-class JustificationAutreEmployeForm(inlineformset_factory(dae.Dossier,
-                                                           dae.JustificationAutreEmploye,
-                                                           extra=0,
-                                                           can_delete=False,
-                                                           exclude=('question',))):
-    """
-    Formulaire de justification d'un nouvel employé.
-    Le dossier a besoin d'être enregistré une première fois afin de prépopuler les questions.
-    """
-    def __init__(self, *args, **kwargs):
-        instance = kwargs['instance']
-        if instance.id:
-            q_ids = [j.question.id for j in instance.justificationautreemploye_set.filter(dossier=instance)]
-            for q in dae.JustificationQuestion.objects.filter(type="R"):
-                if q.id in q_ids:
-                    continue
-                j = dae.JustificationAutreEmploye()
-                j.dossier = instance
-                j.question = q
-                j.save()
-        super(self.__class__, self).__init__(*args, **kwargs)
-
 class PosteForm(forms.ModelForm):
     """ Formulaire des postes. """
 
diff --git a/project/dae/migrations/0036_auto__del_justificationquestion__del_justificationnouvelemploye__del_j.py b/project/dae/migrations/0036_auto__del_justificationquestion__del_justificationnouvelemploye__del_j.py
new file mode 100644 (file)
index 0000000..35197a9
--- /dev/null
@@ -0,0 +1,487 @@
+# encoding: utf-8
+import datetime
+from south.db import db
+from south.v2 import SchemaMigration
+from django.db import models
+
+class Migration(SchemaMigration):
+    
+    def forwards(self, orm):
+        
+        # Deleting model 'JustificationQuestion'
+        db.delete_table('dae_justificationquestion')
+
+        # Deleting model 'JustificationNouvelEmploye'
+        db.delete_table('dae_justificationnouvelemploye')
+
+        # Deleting model 'JustificationAutreEmploye'
+        db.delete_table('dae_justificationautreemploye')
+
+        # Adding field 'Dossier.justif_rempl_salaire'
+        db.add_column('dae_dossier', 'justif_rempl_salaire', self.gf('django.db.models.fields.TextField')(null=True, blank=True), keep_default=False)
+
+        # Adding field 'Dossier.justif_rempl_evaluation'
+        db.add_column('dae_dossier', 'justif_rempl_evaluation', self.gf('django.db.models.fields.TextField')(null=True, blank=True), keep_default=False)
+
+        # Adding field 'Dossier.justif_rempl_statut_employe'
+        db.add_column('dae_dossier', 'justif_rempl_statut_employe', self.gf('django.db.models.fields.TextField')(null=True, blank=True), keep_default=False)
+
+        # Adding field 'Dossier.justif_nouveau_tmp_remplacement'
+        db.add_column('dae_dossier', 'justif_nouveau_tmp_remplacement', self.gf('django.db.models.fields.TextField')(null=True, blank=True), keep_default=False)
+
+        # Adding field 'Dossier.justif_rempl_type_contrat'
+        db.add_column('dae_dossier', 'justif_rempl_type_contrat', self.gf('django.db.models.fields.TextField')(null=True, blank=True), keep_default=False)
+
+        # Adding field 'Dossier.justif_nouveau_statut'
+        db.add_column('dae_dossier', 'justif_nouveau_statut', self.gf('django.db.models.fields.TextField')(null=True, blank=True), keep_default=False)
+
+        # Adding field 'Dossier.justif_rempl_commentaire'
+        db.add_column('dae_dossier', 'justif_rempl_commentaire', self.gf('django.db.models.fields.TextField')(null=True, blank=True), keep_default=False)
+
+        # Adding field 'Dossier.justif_nouveau_commentaire'
+        db.add_column('dae_dossier', 'justif_nouveau_commentaire', self.gf('django.db.models.fields.TextField')(null=True, blank=True), keep_default=False)
+
+        # Adding field 'Dossier.justif_nouveau_salaire'
+        db.add_column('dae_dossier', 'justif_nouveau_salaire', self.gf('django.db.models.fields.TextField')(null=True, blank=True), keep_default=False)
+    
+    
+    def backwards(self, orm):
+        
+        # Adding model 'JustificationQuestion'
+        db.create_table('dae_justificationquestion', (
+            ('question', self.gf('django.db.models.fields.CharField')(max_length=255)),
+            ('type', self.gf('django.db.models.fields.CharField')(max_length=255)),
+            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
+        ))
+        db.send_create_signal('dae', ['JustificationQuestion'])
+
+        # Adding model 'JustificationNouvelEmploye'
+        db.create_table('dae_justificationnouvelemploye', (
+            ('dossier', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['dae.Dossier'])),
+            ('question', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['dae.JustificationQuestion'])),
+            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
+            ('reponse', self.gf('django.db.models.fields.TextField')()),
+        ))
+        db.send_create_signal('dae', ['JustificationNouvelEmploye'])
+
+        # Adding model 'JustificationAutreEmploye'
+        db.create_table('dae_justificationautreemploye', (
+            ('dossier', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['dae.Dossier'])),
+            ('question', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['dae.JustificationQuestion'])),
+            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
+            ('reponse', self.gf('django.db.models.fields.TextField')()),
+        ))
+        db.send_create_signal('dae', ['JustificationAutreEmploye'])
+
+        # Deleting field 'Dossier.justif_rempl_salaire'
+        db.delete_column('dae_dossier', 'justif_rempl_salaire')
+
+        # Deleting field 'Dossier.justif_rempl_evaluation'
+        db.delete_column('dae_dossier', 'justif_rempl_evaluation')
+
+        # Deleting field 'Dossier.justif_rempl_statut_employe'
+        db.delete_column('dae_dossier', 'justif_rempl_statut_employe')
+
+        # Deleting field 'Dossier.justif_nouveau_tmp_remplacement'
+        db.delete_column('dae_dossier', 'justif_nouveau_tmp_remplacement')
+
+        # Deleting field 'Dossier.justif_rempl_type_contrat'
+        db.delete_column('dae_dossier', 'justif_rempl_type_contrat')
+
+        # Deleting field 'Dossier.justif_nouveau_statut'
+        db.delete_column('dae_dossier', 'justif_nouveau_statut')
+
+        # Deleting field 'Dossier.justif_rempl_commentaire'
+        db.delete_column('dae_dossier', 'justif_rempl_commentaire')
+
+        # Deleting field 'Dossier.justif_nouveau_commentaire'
+        db.delete_column('dae_dossier', 'justif_nouveau_commentaire')
+
+        # Deleting field 'Dossier.justif_nouveau_salaire'
+        db.delete_column('dae_dossier', 'justif_nouveau_salaire')
+    
+    
+    models = {
+        'auth.group': {
+            'Meta': {'object_name': 'Group'},
+            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'name': ('django.db.models.fields.CharField', [], {'max_length': '80', 'unique': 'True'}),
+            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
+        },
+        'auth.permission': {
+            'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'},
+            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
+            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
+        },
+        'auth.user': {
+            'Meta': {'object_name': 'User'},
+            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
+            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
+            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
+            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
+            'username': ('django.db.models.fields.CharField', [], {'max_length': '30', 'unique': 'True'})
+        },
+        'contenttypes.contenttype': {
+            'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
+            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
+        },
+        'dae.dossier': {
+            'Meta': {'object_name': 'Dossier'},
+            'classement': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.Classement']"}),
+            'classement_anterieur': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.Classement']"}),
+            'classement_titulaire_anterieur': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.Classement']"}),
+            'compte_compta': ('django.db.models.fields.CharField', [], {'default': "'aucun'", 'max_length': '10'}),
+            'compte_courriel': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+            'contrat_date_debut': ('django.db.models.fields.DateField', [], {}),
+            'contrat_date_fin': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+            'date_creation': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+            'devise': ('django.db.models.fields.related.ForeignKey', [], {'default': '5', 'related_name': "'+'", 'to': "orm['rh_v1.Devise']"}),
+            'employe': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to': "orm['dae.Employe']"}),
+            'employe_anterieur': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.Employe']"}),
+            'etat': ('django.db.models.fields.CharField', [], {'default': 'None', 'max_length': '20', 'null': 'True', 'blank': 'True'}),
+            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'justif_nouveau_commentaire': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+            'justif_nouveau_salaire': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+            'justif_nouveau_statut': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+            'justif_nouveau_tmp_remplacement': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+            'justif_rempl_commentaire': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+            'justif_rempl_evaluation': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+            'justif_rempl_salaire': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+            'justif_rempl_statut_employe': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+            'justif_rempl_type_contrat': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+            'organisme_bstg': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.OrganismeBstg']"}),
+            'organisme_bstg_autre': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+            'poste': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to': "orm['dae.Poste']"}),
+            'regime_travail': ('django.db.models.fields.DecimalField', [], {'default': '100.0', 'max_digits': '12', 'decimal_places': '2'}),
+            'regime_travail_nb_heure_semaine': ('django.db.models.fields.DecimalField', [], {'default': '35.0', 'max_digits': '12', 'decimal_places': '2'}),
+            'remplacement': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+            'salaire': ('django.db.models.fields.DecimalField', [], {'default': 'None', 'null': 'True', 'max_digits': '12', 'decimal_places': '2'}),
+            'salaire_anterieur': ('django.db.models.fields.DecimalField', [], {'default': 'None', 'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+            'salaire_titulaire_anterieur': ('django.db.models.fields.DecimalField', [], {'default': 'None', 'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+            'statut': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to': "orm['rh_v1.Statut']"}),
+            'statut_anterieur': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.Statut']"}),
+            'statut_residence': ('django.db.models.fields.CharField', [], {'default': "'local'", 'max_length': '10'}),
+            'statut_titulaire_anterieur': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.Statut']"}),
+            'type_contrat': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to': "orm['rh_v1.TypeContrat']"})
+        },
+        'dae.dossiercomparaison': {
+            'Meta': {'object_name': 'DossierComparaison'},
+            'devise': ('django.db.models.fields.related.ForeignKey', [], {'default': '5', 'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.Devise']"}),
+            'dossier': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comparaisons'", 'to': "orm['dae.Dossier']"}),
+            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'implantation': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Implantation']", 'null': 'True', 'blank': 'True'}),
+            'montant': ('django.db.models.fields.IntegerField', [], {'null': 'True'}),
+            'montant_euros': ('django.db.models.fields.IntegerField', [], {'null': 'True'}),
+            'personne': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+            'poste': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'})
+        },
+        'dae.dossierpiece': {
+            'Meta': {'object_name': 'DossierPiece'},
+            'dossier': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['dae.Dossier']"}),
+            'fichier': ('django.db.models.fields.files.FileField', [], {'max_length': '100'}),
+            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'})
+        },
+        'dae.employe': {
+            'Meta': {'object_name': 'Employe'},
+            'genre': ('django.db.models.fields.CharField', [], {'max_length': '1'}),
+            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'id_rh': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'null': 'True', 'to': "orm['rh_v1.Employe']"}),
+            'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+            'prenom': ('django.db.models.fields.CharField', [], {'max_length': '255'})
+        },
+        'dae.poste': {
+            'Meta': {'object_name': 'Poste'},
+            'actif': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+            'appel': ('django.db.models.fields.CharField', [], {'default': "'interne'", 'max_length': '10'}),
+            'autre_max': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+            'autre_min': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+            'classement_max': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.Classement']"}),
+            'classement_min': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.Classement']"}),
+            'comp_autre_max': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+            'comp_autre_min': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+            'comp_fonctionpub_max': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+            'comp_fonctionpub_min': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+            'comp_locale_max': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+            'comp_locale_min': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+            'comp_ong_max': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+            'comp_ong_min': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+            'comp_universite_max': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+            'comp_universite_min': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+            'date_creation': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+            'date_debut': ('django.db.models.fields.DateField', [], {}),
+            'date_fin': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+            'date_modification': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'blank': 'True'}),
+            'devise_comparaison': ('django.db.models.fields.related.ForeignKey', [], {'default': '5', 'related_name': "'+'", 'to': "orm['rh_v1.Devise']"}),
+            'devise_max': ('django.db.models.fields.related.ForeignKey', [], {'default': '5', 'related_name': "'+'", 'to': "orm['rh_v1.Devise']"}),
+            'devise_min': ('django.db.models.fields.related.ForeignKey', [], {'default': '5', 'related_name': "'+'", 'to': "orm['rh_v1.Devise']"}),
+            'etat': ('django.db.models.fields.CharField', [], {'default': 'None', 'max_length': '20', 'null': 'True', 'blank': 'True'}),
+            'expatrie': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'id_rh': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'null': 'True', 'to': "orm['rh_v1.Poste']"}),
+            'implantation': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Implantation']"}),
+            'indemn_max': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+            'indemn_min': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+            'justification': ('django.db.models.fields.TextField', [], {}),
+            'local': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+            'mise_a_disposition': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+            'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+            'pourvu': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+            'regime_travail': ('django.db.models.fields.DecimalField', [], {'default': '100.0', 'max_digits': '12', 'decimal_places': '2'}),
+            'regime_travail_nb_heure_semaine': ('django.db.models.fields.DecimalField', [], {'default': '35.0', 'max_digits': '12', 'decimal_places': '2'}),
+            'responsable': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to': "orm['rh_v1.Poste']"}),
+            'salaire_max': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+            'salaire_min': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+            'service': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to': "orm['rh_v1.Service']"}),
+            'type_poste': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'null': 'True', 'to': "orm['rh_v1.TypePoste']"}),
+            'valeur_point_max': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.ValeurPoint']"}),
+            'valeur_point_min': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.ValeurPoint']"})
+        },
+        'dae.postefinancement': {
+            'Meta': {'object_name': 'PosteFinancement'},
+            'commentaire': ('django.db.models.fields.TextField', [], {}),
+            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'poste': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'financements'", 'to': "orm['dae.Poste']"}),
+            'pourcentage': ('django.db.models.fields.DecimalField', [], {'max_digits': '12', 'decimal_places': '2'}),
+            'type': ('django.db.models.fields.CharField', [], {'max_length': '1'})
+        },
+        'dae.postepiece': {
+            'Meta': {'object_name': 'PostePiece'},
+            'fichier': ('django.db.models.fields.files.FileField', [], {'max_length': '100'}),
+            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+            'poste': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['dae.Poste']"})
+        },
+        'dae.remuneration': {
+            'Meta': {'object_name': 'Remuneration'},
+            'date_creation': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+            'devise': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to_field': "'code'", 'db_column': "'devise'", 'to': "orm['rh_v1.Devise']"}),
+            'dossier': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['dae.Dossier']", 'db_column': "'dossier'"}),
+            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'montant': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2'}),
+            'precision': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+            'type': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'db_column': "'type'", 'to': "orm['rh_v1.TypeRemuneration']"}),
+            'user_creation': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'})
+        },
+        'datamaster_modeles.bureau': {
+            'Meta': {'object_name': 'Bureau', 'db_table': "u'ref_bureau'"},
+            'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+            'code': ('django.db.models.fields.CharField', [], {'max_length': '255', 'unique': 'True'}),
+            'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+            'implantation': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Implantation']", 'db_column': "'implantation'"}),
+            'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+            'nom_court': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+            'nom_long': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+            'region': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Region']", 'db_column': "'region'"})
+        },
+        'datamaster_modeles.implantation': {
+            'Meta': {'object_name': 'Implantation', 'db_table': "u'ref_implantation'"},
+            'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+            'adresse_physique_bureau': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+            'adresse_physique_code_postal': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+            'adresse_physique_code_postal_avant_ville': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+            'adresse_physique_no': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+            'adresse_physique_pays': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'impl_adresse_physique'", 'to_field': "'code'", 'db_column': "'adresse_physique_pays'", 'to': "orm['datamaster_modeles.Pays']"}),
+            'adresse_physique_precision': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+            'adresse_physique_precision_avant': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+            'adresse_physique_region': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+            'adresse_physique_rue': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+            'adresse_physique_ville': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+            'adresse_postale_boite_postale': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+            'adresse_postale_bureau': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+            'adresse_postale_code_postal': ('django.db.models.fields.CharField', [], {'max_length': '20', 'null': 'True', 'blank': 'True'}),
+            'adresse_postale_code_postal_avant_ville': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+            'adresse_postale_no': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}),
+            'adresse_postale_pays': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'impl_adresse_postale'", 'to_field': "'code'", 'db_column': "'adresse_postale_pays'", 'to': "orm['datamaster_modeles.Pays']"}),
+            'adresse_postale_precision': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+            'adresse_postale_precision_avant': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+            'adresse_postale_region': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+            'adresse_postale_rue': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+            'adresse_postale_ville': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+            'bureau_rattachement': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Implantation']", 'db_column': "'bureau_rattachement'"}),
+            'code': ('django.db.models.fields.CharField', [], {'max_length': '255', 'unique': 'True'}),
+            'code_meteo': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+            'commentaire': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+            'courriel': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
+            'courriel_interne': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
+            'date_extension': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+            'date_fermeture': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+            'date_inauguration': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+            'date_ouverture': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+            'fax': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+            'fax_interne': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+            'fuseau_horaire': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+            'hebergement_convention': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+            'hebergement_convention_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+            'hebergement_etablissement': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+            'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+            'modif_date': ('django.db.models.fields.DateField', [], {}),
+            'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+            'nom_court': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+            'nom_long': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+            'region': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Region']", 'db_column': "'region'"}),
+            'remarque': ('django.db.models.fields.TextField', [], {}),
+            'responsable_implantation': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+            'statut': ('django.db.models.fields.IntegerField', [], {}),
+            'telephone': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+            'telephone_interne': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+            'type': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+            'url': ('django.db.models.fields.URLField', [], {'max_length': '255', 'blank': 'True'})
+        },
+        'datamaster_modeles.pays': {
+            'Meta': {'object_name': 'Pays', 'db_table': "u'ref_pays'"},
+            'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+            'code': ('django.db.models.fields.CharField', [], {'max_length': '2', 'unique': 'True'}),
+            'code_bureau': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Bureau']", 'to_field': "'code'", 'db_column': "'code_bureau'"}),
+            'code_iso3': ('django.db.models.fields.CharField', [], {'max_length': '3', 'unique': 'True', 'blank': 'True'}),
+            'developpement': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+            'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+            'monnaie': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+            'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+            'nord_sud': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+            'region': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Region']", 'db_column': "'region'"})
+        },
+        'datamaster_modeles.region': {
+            'Meta': {'object_name': 'Region', 'db_table': "u'ref_region'"},
+            'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+            'code': ('django.db.models.fields.CharField', [], {'max_length': '255', 'unique': 'True'}),
+            'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+            'implantation_bureau': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'gere_region'", 'db_column': "'implantation_bureau'", 'to': "orm['datamaster_modeles.Implantation']"}),
+            'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'})
+        },
+        'rh_v1.classement': {
+            'Meta': {'object_name': 'Classement'},
+            'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+            'coefficient': ('django.db.models.fields.FloatField', [], {}),
+            'commentaire': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+            'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+            'degre': ('django.db.models.fields.IntegerField', [], {}),
+            'echelon': ('django.db.models.fields.IntegerField', [], {}),
+            'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+            'type': ('django.db.models.fields.CharField', [], {'max_length': '10'})
+        },
+        'rh_v1.devise': {
+            'Meta': {'object_name': 'Devise'},
+            'code': ('django.db.models.fields.CharField', [], {'max_length': '10', 'unique': 'True'}),
+            'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+            'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'})
+        },
+        'rh_v1.employe': {
+            'Meta': {'object_name': 'Employe'},
+            'adresse': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+            'code_postal': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+            'commentaire': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+            'date_creation': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+            'date_entree': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+            'date_maj': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+            'date_naissance': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+            'genre': ('django.db.models.fields.CharField', [], {'max_length': '1', 'null': 'True', 'blank': 'True'}),
+            'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+            'nationalite': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nationalite'", 'to_field': "'code'", 'db_column': "'nationalite'", 'to': "orm['datamaster_modeles.Pays']"}),
+            'no_rue': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+            'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+            'pays': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'pays'", 'db_column': "'pays'", 'to_field': "'code'", 'to': "orm['datamaster_modeles.Pays']", 'blank': 'True', 'null': 'True'}),
+            'prenom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+            'province': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+            'situation_famille': ('django.db.models.fields.CharField', [], {'max_length': '1', 'null': 'True', 'blank': 'True'}),
+            'tel_cellulaire': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+            'tel_domicile': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+            'ville': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'})
+        },
+        'rh_v1.familleemploi': {
+            'Meta': {'object_name': 'FamilleEmploi'},
+            'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+            'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+            'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'})
+        },
+        'rh_v1.organismebstg': {
+            'Meta': {'object_name': 'OrganismeBstg'},
+            'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+            'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+            'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+            'type': ('django.db.models.fields.CharField', [], {'max_length': '10'})
+        },
+        'rh_v1.poste': {
+            'Meta': {'object_name': 'Poste'},
+            'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+            'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+            'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+            'implantation': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'db_column': "'implantation'", 'to': "orm['datamaster_modeles.Implantation']"}),
+            'proportion': ('django.db.models.fields.CharField', [], {'max_length': '10'}),
+            'type_poste': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['rh_v1.TypePoste']", 'db_column': "'type_poste'"})
+        },
+        'rh_v1.service': {
+            'Meta': {'object_name': 'Service'},
+            'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+            'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+            'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'})
+        },
+        'rh_v1.statut': {
+            'Meta': {'object_name': 'Statut'},
+            'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+            'code': ('django.db.models.fields.CharField', [], {'max_length': '25', 'unique': 'True'}),
+            'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+            'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+            'type_contrat_categorie': ('django.db.models.fields.CharField', [], {'max_length': '10'})
+        },
+        'rh_v1.typecontrat': {
+            'Meta': {'object_name': 'TypeContrat'},
+            'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+            'categorie': ('django.db.models.fields.CharField', [], {'max_length': '10'}),
+            'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+            'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+            'nom_long': ('django.db.models.fields.CharField', [], {'max_length': '255'})
+        },
+        'rh_v1.typeposte': {
+            'Meta': {'object_name': 'TypePoste'},
+            'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+            'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+            'description': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+            'famille_emploi': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['rh_v1.FamilleEmploi']", 'db_column': "'famille_emploi'"}),
+            'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+            'is_responsable': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+            'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+            'nom_feminin': ('django.db.models.fields.CharField', [], {'max_length': '255'})
+        },
+        'rh_v1.typeremuneration': {
+            'Meta': {'object_name': 'TypeRemuneration'},
+            'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+            'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+            'nature_remuneration': ('django.db.models.fields.CharField', [], {'max_length': '30'}),
+            'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+            'type_paiement': ('django.db.models.fields.CharField', [], {'max_length': '30'})
+        },
+        'rh_v1.valeurpoint': {
+            'Meta': {'object_name': 'ValeurPoint'},
+            'annee': ('django.db.models.fields.IntegerField', [], {}),
+            'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+            'implantation': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'valeurs_point'", 'db_column': "'implantation'", 'to': "orm['datamaster_modeles.Implantation']"}),
+            'valeur': ('django.db.models.fields.FloatField', [], {})
+        },
+        'workflow.workflowcommentaire': {
+            'Meta': {'object_name': 'WorkflowCommentaire'},
+            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
+            'date': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+            'etat_final': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+            'etat_initial': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}),
+            'owner': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']"}),
+            'texte': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'})
+        }
+    }
+    
+    complete_apps = ['dae']
index bb5caf0..4a1565d 100644 (file)
@@ -477,6 +477,26 @@ class Dossier(DossierWorkflow, models.Model):
     contrat_date_fin = models.DateField(null=True, blank=True,
                                         help_text="format: aaaa-mm-jj")
 
+    # Justifications
+    justif_nouveau_statut_label = u'Justifier le statut que ce type de poste nécessite (national, expatrié, màd ou détachement)'
+    justif_nouveau_statut = models.TextField(verbose_name=justif_nouveau_statut_label, null=True, blank=True)
+    justif_nouveau_tmp_remplacement_label = u"Si l'employé effectue un remplacement temporaire, préciser le motif"
+    justif_nouveau_tmp_remplacement = models.TextField(verbose_name=justif_nouveau_tmp_remplacement_label, null=True, blank=True)
+    justif_nouveau_salaire_label = u"Si le salaire de l'employé ne correspond pas au classement du poste, ou est différent du salaire antérieur, jusitfier"
+    justif_nouveau_salaire = models.TextField(verbose_name=justif_nouveau_salaire_label, null=True, blank=True)
+    justif_nouveau_commentaire_label = u"Commentaires additionnels"
+    justif_nouveau_commentaire = models.TextField(verbose_name=justif_nouveau_commentaire_label, null=True, blank=True)
+    justif_rempl_type_contrat_label = u"Changement de type de contrat, ex : d'un CDD en CDI"
+    justif_rempl_type_contrat = models.TextField(verbose_name=justif_rempl_type_contrat_label, null=True, blank=True)
+    justif_rempl_statut_employe_label = u"Si le statut de l'employé a été modifié pour ce poste ; ex : national, expatrié, màd, détachement ? si oui, justifier"
+    justif_rempl_statut_employe = models.TextField(verbose_name=justif_rempl_statut_employe_label, null=True, blank=True)
+    justif_rempl_evaluation_label = u"L'évaluation de l'employé est-elle favorable, préciser"
+    justif_rempl_evaluation = models.TextField(verbose_name=justif_rempl_evaluation_label, null=True, blank=True)
+    justif_rempl_salaire_label = u"Si le salaire de l'employé est modifié et/ou ne correspond pas à son classement, justifier"
+    justif_rempl_salaire = models.TextField(verbose_name=justif_rempl_salaire_label, null=True, blank=True)
+    justif_rempl_commentaire_label = u"Commentaires additionnels"
+    justif_rempl_commentaire = models.TextField(verbose_name=justif_rempl_commentaire_label, null=True, blank=True)
+
     # Comptes
     compte_compta = models.CharField(max_length=10, default='aucun',
                                     verbose_name=u'Compte comptabilité',
@@ -582,28 +602,3 @@ class Remuneration(models.Model):
 
     def montant_euro_mois(self):
         return round(self.montant_euro() / 12, 2)
-
-
-### JUSTIFICATIONS
-
-TYPE_JUSTIFICATIONS = (
-    ('N', 'Nouvel employé'),
-    ('R', 'Renouvellement employé'),
-)
-
-class JustificationQuestion(models.Model):
-    question = models.CharField(max_length=255)
-    type = models.CharField(max_length=255, choices=TYPE_JUSTIFICATIONS)
-    
-    def __unicode__(self,):
-        return self.question
-
-class JustificationNouvelEmploye(models.Model):
-    dossier = models.ForeignKey("Dossier")
-    question = models.ForeignKey("JustificationQuestion")
-    reponse = models.TextField()
-
-class JustificationAutreEmploye(models.Model):
-    dossier = models.ForeignKey("Dossier")
-    question = models.ForeignKey("JustificationQuestion")
-    reponse = models.TextField()
index 4467dc8..8d8db95 100644 (file)
       <p>{{ poste.justification }}</p>
 
       <h3>B - Justification de l'employé</h3>
-      <p class="info">Les questions posées pour la justification apparaîtront après avoir enregistré le dossier.</p>
       <table>
       <tr>
-        <th>NOUVEL EMPLOYÉ</th>
-        <th>RENOUVELLEMENT, PROLONGATION, RECLASSEMENT, MOBILITÉ INTERNE</th>
+        <th>Nouvel employé</th>
+        <th>Renouvellement, prolongation, reclassement, mobilité interne</th>
       </tr>
       <tr>
-        <td> 
-        {% with justificationsNouveauForm as form %}
-          {% include "dae/justifications.html" %}
-        {% endwith %}
+        <td>
+          <h4>{{ forms.dossier.justif_nouveau_statut.label }}</h4>
+          {{ forms.dossier.justif_nouveau_statut }}
+          <h4>{{ forms.dossier.justif_nouveau_tmp_remplacement.label }}</h4>
+          {{ forms.dossier.justif_nouveau_tmp_remplacement }}
+          <h4>{{ forms.dossier.justif_nouveau_salaire.label }}</h4>
+          {{ forms.dossier.justif_nouveau_salaire }}
+          <h4>{{ forms.dossier.justif_nouveau_commentaire.label }}</h4>
+          {{ forms.dossier.justif_nouveau_commentaire }}
         </td>
         <td>
-        {% with justificationsAutreForm as form %}
-          {% include "dae/justifications.html" %}
-        {% endwith %}
+          <h4>{{ forms.dossier.justif_rempl_type_contrat.label }}</h4>
+          {{ forms.dossier.justif_rempl_type_contrat}}
+          <h4>{{ forms.dossier.justif_rempl_statut_employe.label }}</h4>
+          {{ forms.dossier.justif_rempl_statut_employe}}
+          <h4>{{ forms.dossier.justif_rempl_evaluation.label }}</h4>
+          {{ forms.dossier.justif_rempl_evaluation}}
+          <h4>{{ forms.dossier.justif_rempl_salaire.label }}</h4>
+          {{ forms.dossier.justif_rempl_salaire }}
+          <h4>{{ forms.dossier.justif_rempl_commentaire.label }}</h4>
+          {{ forms.dossier.justif_rempl_commentaire }}
         </td>
       </tr>
       </table>
index 2047960..6b9de2f 100644 (file)
   <p>{{ poste.justification }}</p>
 
   <h3>B - Justification de l'employé</h3>
-  <p class="info">Les questions posées pour la justification apparaîtront après avoir enregistré le dossier.</p>
   <table>
   <tr>
-    <th>NOUVEL EMPLOYÉ</th>
-    <th>RENOUVELLEMENT, PROLONGATION, RECLASSEMENT, MOBILITÉ INTERNE</th>
+    <th>Nouvel employé</th>
+    <th>Renouvellement, prolongation, reclassement, mobilité interne</th>
   </tr>
   <tr>
-    <td> 
-    {% for j in dossier.justificationnouvelemploye_set.all %}
-        <h4>{{ j.question }}</h4>
-        <p>{{ j.reponse }}</p>
-    {% endfor %}
+    <td>
+      <h4>{{ dossier.justif_nouveau_statut_label }}</h4>
+      {{ dossier.justif_nouveau_statut|default:"∅" }}
+      <h4>{{ dossier.justif_nouveau_tmp_remplacement_label }}</h4>
+      {{ dossier.justif_nouveau_tmp_remplacement|default:"∅" }}
+      <h4>{{ dossier.justif_nouveau_salaire_label }}</h4>
+      {{ dossier.justif_nouveau_salaire|default:"∅" }}
+      <h4>{{ dossier.justif_nouveau_commentaire_label }}</h4>
+      {{ dossier.justif_nouveau_commentaire|default:"∅" }}
     </td>
     <td>
-    {% for j in dossier.justificationautreemploye_set.all %}
-        <h4>{{ j.question }}</h4>
-        <p>{{ j.reponse }}</p>
-    {% endfor %}
+      <h4>{{ dossier.justif_rempl_type_contrat_label }}</h4>
+      {{ dossier.justif_rempl_type_contrat|default:"∅"}}
+      <h4>{{ dossier.justif_rempl_statut_employe_label }}</h4>
+      {{ dossier.justif_rempl_statut_employe|default:"∅"}}
+      <h4>{{ dossier.justif_rempl_evaluation_label }}</h4>
+      {{ dossier.justif_rempl_evaluation|default:"∅"}}
+      <h4>{{ dossier.justif_rempl_salaire_label }}</h4>
+      {{ dossier.justif_rempl_salaire|default:"∅" }}
+      <h4>{{ dossier.justif_rempl_commentaire_label }}</h4>
+      {{ dossier.justif_rempl_commentaire|default:"∅" }}
     </td>
   </tr>
   </table>
index 633bd07..bdbc555 100644 (file)
 <p>{{ poste.justification }}</p>
 
 <h3>B - Justification de l'employé</h3>
-<p class="info">Les questions posées pour la justification apparaîtront après avoir enregistré le dossier.</p>
 <table>
-    <tbody>
-    <tr>
-      <th>NOUVEL EMPLOYÉ</th>
-      <th>RENOUVELLEMENT, PROLONGATION, RECLASSEMENT, MOBILITÉ INTERNE</th>
-    </tr>
-    <tr>
-      <td>&nbsp; 
-      {% for j in dossier.justificationnouvelemploye_set.all %}
-          <h4>{{ j.question }}</h4>
-          <p>{{ j.reponse }}</p>
-      {% endfor %}
-      </td>
-      <td>&nbsp;
-      {% for j in dossier.justificationautreemploye_set.all %}
-          <h4>{{ j.question }}</h4>
-          <p>{{ j.reponse }}</p>
-      {% endfor %}
-      </td>
-    </tr>
-    </tbody>
+<tr>
+  <th>Nouvel employé</th>
+  <th>Renouvellement, prolongation, reclassement, mobilité interne</th>
+</tr>
+<tr>
+  <td>
+    <h4>{{ dossier.justif_nouveau_statut_label }}</h4>
+    {{ dossier.justif_nouveau_statut|default:"∅" }}
+    <h4>{{ dossier.justif_nouveau_tmp_remplacement_label }}</h4>
+    {{ dossier.justif_nouveau_tmp_remplacement|default:"∅" }}
+    <h4>{{ dossier.justif_nouveau_salaire_label }}</h4>
+    {{ dossier.justif_nouveau_salaire|default:"∅" }}
+    <h4>{{ dossier.justif_nouveau_commentaire_label }}</h4>
+    {{ dossier.justif_nouveau_commentaire|default:"∅" }}
+  </td>
+  <td>
+    <h4>{{ dossier.justif_rempl_type_contrat_label }}</h4>
+    {{ dossier.justif_rempl_type_contrat|default:"∅"}}
+    <h4>{{ dossier.justif_rempl_statut_employe_label }}</h4>
+    {{ dossier.justif_rempl_statut_employe|default:"∅"}}
+    <h4>{{ dossier.justif_rempl_evaluation_label }}</h4>
+    {{ dossier.justif_rempl_evaluation|default:"∅"}}
+    <h4>{{ dossier.justif_rempl_salaire_label }}</h4>
+    {{ dossier.justif_rempl_salaire|default:"∅" }}
+    <h4>{{ dossier.justif_rempl_commentaire_label }}</h4>
+    {{ dossier.justif_rempl_commentaire|default:"∅" }}
+  </td>
+</tr>
 </table>
 
 <fieldset>
index 84217ad..a30c6a0 100644 (file)
@@ -248,25 +248,16 @@ def embauche(request, key=None, dossier_id=None):
                     dossier = get_object_or_404(dae.Dossier, pk=dossier_id)
                 dossier_form = DossierForm(request.POST, instance=dossier)
                 piecesForm = DossierPieceForm(request.POST, request.FILES, instance=dossier)
-                justificationsNouveauForm = JustificationNouvelEmployeForm(request.POST, instance=dossier)
-                justificationsAutreForm = JustificationAutreEmployeForm(request.POST, instance=dossier)
                 dossiersComparaisonsForm = DossierComparaisonForm(request.POST, instance=dossier)
                 remunForm = RemunForm(request.POST, instance=dossier)
-                print remunForm.errors
                 if dossier_form.is_valid() and \
                    piecesForm.is_valid() and \
-                   justificationsNouveauForm.is_valid() and \
-                   justificationsAutreForm.is_valid() and \
                    dossiersComparaisonsForm.is_valid() and \
                    remunForm.is_valid():
 
                     dossier = dossier_form.save()
                     piecesForm.instance = dossier
                     piecesForm.save()
-                    justificationsNouveauForm.instance = dossier
-                    justificationsNouveauForm.save()
-                    justificationsAutreForm.instance = dossier
-                    justificationsAutreForm.save()
                     dossiersComparaisonsForm.instance = dossier
                     dossiersComparaisonsForm.save()
                     remunForm.instance = dossier
@@ -309,8 +300,6 @@ def embauche(request, key=None, dossier_id=None):
             else:
                 dossier_form = DossierForm(instance=dossier)
                 piecesForm = DossierPieceForm(instance=dossier)
-                justificationsNouveauForm = JustificationNouvelEmployeForm(instance=dossier)
-                justificationsAutreForm = JustificationAutreEmployeForm(instance=dossier)
                 dossiersComparaisonsForm = DossierComparaisonForm(instance=dossier)
                 remunForm = RemunForm(instance=dossier)
         else:
@@ -328,8 +317,6 @@ def embauche(request, key=None, dossier_id=None):
 
             dossier_form = DossierForm(instance=dossier)
             piecesForm = DossierPieceForm(instance=dossier)
-            justificationsNouveauForm = JustificationNouvelEmployeForm(instance=dossier)
-            justificationsAutreForm = JustificationAutreEmployeForm(instance=dossier)
             dossiersComparaisonsForm = DossierComparaisonForm(instance=dossier)
             remunForm = RemunForm(instance=dossier)
 
@@ -340,8 +327,6 @@ def embauche(request, key=None, dossier_id=None):
                 dossier=dossier,
                 piecesForm=piecesForm,
                 remunForm=remunForm,
-                justificationsNouveauForm=justificationsNouveauForm,
-                justificationsAutreForm=justificationsAutreForm,
                 dossiersComparaisonsForm=dossiersComparaisonsForm,
                 forms=dict(employe=employe_form, dossier=dossier_form, )
                 )