diff --git a/candidats/admin.py b/candidats/admin.py index 7448465..45a2756 100644 --- a/candidats/admin.py +++ b/candidats/admin.py @@ -141,13 +141,15 @@ class CandidateAdmin(admin.ModelAdmin): }), ("EDE/EDS", { 'classes': ('collapse',), - 'fields': (('registration_form', 'certificate_of_payement', 'cv', 'certif_of_cfc', - 'police_record', 'certif_of_800h', 'reflexive_text', 'work_certificate', - 'marks_certificate', 'proc_admin_ext', 'promise', 'contract'), - ('interview',), - ('examination_result', 'interview_result', 'file_result', 'total_result_points', - 'total_result_mark') - ), + 'fields': (('diploma', 'diploma_detail', 'diploma_status'), + ('registration_form', 'certificate_of_payement', 'cv', 'police_record', 'reflexive_text', + 'marks_certificate', 'residence_permits', 'aes_accords'), + ('certif_of_800_childhood', 'certif_800_general', 'work_certificate'), + ('promise', 'contract', 'activity_rate'), + ('interview',), + ('examination_result', 'interview_result', 'file_result', 'total_result_points', + 'total_result_mark') + ), }), ) diff --git a/candidats/migrations/0004_complement_ede_fields.py b/candidats/migrations/0004_complement_ede_fields.py new file mode 100644 index 0000000..8910eff --- /dev/null +++ b/candidats/migrations/0004_complement_ede_fields.py @@ -0,0 +1,85 @@ +# Generated by Django 2.0 on 2018-01-26 16:12 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('candidats', '0003_add_interview_model'), + ] + + operations = [ + migrations.RemoveField( + model_name='candidate', + name='certif_of_800h', + ), + migrations.RemoveField( + model_name='candidate', + name='certif_of_cfc', + ), + migrations.RemoveField( + model_name='candidate', + name='proc_admin_ext', + ), + migrations.AddField( + model_name='candidate', + name='activity_rate', + field=models.CharField(blank=True, default='', max_length=50, verbose_name="Taux d'activité"), + ), + migrations.AddField( + model_name='candidate', + name='aes_accords', + field=models.PositiveSmallIntegerField(choices=[(0, 'OK'), (1, 'Demander accord du canton concerné'), (2, 'Refus du canton concerné')], default=0, verbose_name='Accord AES'), + ), + migrations.AddField( + model_name='candidate', + name='certif_800_general', + field=models.BooleanField(default=False, verbose_name='Attest. 800h. général'), + ), + migrations.AddField( + model_name='candidate', + name='certif_of_800_childhood', + field=models.BooleanField(default=False, verbose_name='Attest. 800h. enfance'), + ), + migrations.AddField( + model_name='candidate', + name='convocation_date', + field=models.DateTimeField(blank=True, default=None, null=True), + ), + migrations.AddField( + model_name='candidate', + name='diploma', + field=models.PositiveSmallIntegerField(choices=[(0, 'Aucun'), (1, "CFC d'ASE"), (2, 'CFC autre domaine'), (3, 'Matu acad./spéc. ou dipl. ECG'), (4, 'Portfolio')], default=0, verbose_name='Titre sec. II'), + ), + migrations.AddField( + model_name='candidate', + name='diploma_detail', + field=models.CharField(blank=True, default='', max_length=30, verbose_name='Détail titre'), + ), + migrations.AddField( + model_name='candidate', + name='diploma_status', + field=models.PositiveSmallIntegerField(choices=[(0, 'Inconnu'), (1, 'En cours'), (2, 'OK')], default=0, verbose_name='Statut titre'), + ), + migrations.AddField( + model_name='candidate', + name='inscr_other_school', + field=models.CharField(default='', max_length=30, verbose_name='Inscr. autre école'), + ), + migrations.AddField( + model_name='candidate', + name='residence_permits', + field=models.PositiveSmallIntegerField(blank=True, choices=[(0, 'Pas nécessaire'), (1, 'Nécessaire - OK'), (2, 'Manquante')], default=0, verbose_name='Autorisation de séjour (pour les personnes étrangères)'), + ), + migrations.AlterField( + model_name='candidate', + name='option', + field=models.CharField(blank=True, choices=[('GEN', 'Généraliste'), ('ENF', 'Enfance'), ('PAG', 'Personnes âgées'), ('HAN', 'Handicap'), ('PE-5400h', 'Parcours Emploi 5400h.'), ('PE-3600h', 'Parcours Emploi 3600h.'), ('PS', 'Parcours stage 5400h.')], max_length=20, verbose_name='Option'), + ), + migrations.AlterField( + model_name='candidate', + name='work_certificate', + field=models.BooleanField(default=False, verbose_name='Bilan act. prof./dernier stage'), + ), + ] diff --git a/candidats/models.py b/candidats/models.py index cbd5f4b..05863c6 100644 --- a/candidats/models.py +++ b/candidats/models.py @@ -24,7 +24,33 @@ OPTION_CHOICES = ( ('HAN', 'Handicap'), ('PE-5400h', 'Parcours Emploi 5400h.'), ('PE-3600h', 'Parcours Emploi 3600h.'), - ('PS', 'Parcours stage'), + ('PS', 'Parcours stage 5400h.'), +) + +DIPLOMA_CHOICES = ( + (0, 'Aucun'), + (1, "CFC d'ASE"), + (2, "CFC autre domaine"), + (3, "Matu acad./spéc. ou dipl. ECG"), + (4, "Portfolio"), +) + +DIPLOMA_STATUS_CHOICES = ( + (0, 'Inconnu'), + (1, 'En cours'), + (2, 'OK'), +) + +RESIDENCE_PERMITS_CHOICES = ( + (0, 'Pas nécessaire'), + (1, 'Nécessaire - OK'), + (2, 'Manquante'), +) + +AES_ACCORDS_CHOICES = ( + (0, 'OK'), + (1, 'Demander accord du canton concerné'), + (2, 'Refus du canton concerné') ) @@ -66,22 +92,35 @@ class Candidate(models.Model): certificate_of_payement = models.BooleanField("Attest. de paiement", default=False) police_record = models.BooleanField("Casier judic.", default=False) cv = models.BooleanField("CV", default=False) - certif_of_cfc = models.BooleanField("Attest. CFC", default=False) - certif_of_800h = models.BooleanField("Attest. 800h.", default=False) reflexive_text = models.BooleanField("Texte réflexif", default=False) promise = models.BooleanField("Promesse d'eng.", default=False) contract = models.BooleanField("Contrat valide", default=False) comment = models.TextField('Remarques', blank=True) - proc_admin_ext = models.BooleanField("Insc. autre école", default=False) - work_certificate = models.BooleanField("Certif. de travail", default=False) + work_certificate = models.BooleanField("Bilan act. prof./dernier stage", default=False) marks_certificate = models.BooleanField("Bull. de notes", default=False) deposite_date = models.DateField('Date dépôt dossier') + examination_result = models.PositiveSmallIntegerField('Points examen', blank=True, null=True) interview_result = models.PositiveSmallIntegerField('Points entretien prof.', blank=True, null=True) file_result = models.PositiveSmallIntegerField('Points dossier', blank=True, null=True) total_result_points = models.PositiveSmallIntegerField('Total points', blank=True, null=True) total_result_mark = models.PositiveSmallIntegerField('Note finale', blank=True, null=True) + + inscr_other_school = models.CharField("Inscr. autre école", max_length=30, default='') + certif_of_800_childhood = models.BooleanField("Attest. 800h. enfance", default=False) + certif_800_general = models.BooleanField("Attest. 800h. général", default=False) + diploma = models.PositiveSmallIntegerField('Titre sec. II', choices=DIPLOMA_CHOICES, default=0) + diploma_detail = models.CharField('Détail titre', max_length=30, blank=True, default='') + diploma_status = models.PositiveSmallIntegerField("Statut titre", choices=DIPLOMA_STATUS_CHOICES, default=0) + activity_rate = models.CharField("Taux d'activité", max_length=50, blank=True, default='') + convocation_date = models.DateTimeField(null=True, blank=True, default=None) + + aes_accords = models.PositiveSmallIntegerField("Accord AES", choices=AES_ACCORDS_CHOICES, default=0) + residence_permits = models.PositiveSmallIntegerField( + "Autorisation de séjour (pour les personnes étrangères)", + choices=RESIDENCE_PERMITS_CHOICES, blank=True, default=0 + ) accepted = models.BooleanField('Admis', default=False) class Meta: