Add LogBook model
This commit is contained in:
parent
5891cc2c43
commit
b50dd1a619
3 changed files with 77 additions and 0 deletions
|
|
@ -11,6 +11,7 @@ from django.http import HttpResponse
|
|||
from .models import (
|
||||
Teacher, Option, Student, Section, Level, Klass, Corporation,
|
||||
CorpContact, Domain, Period, Availability, Training, Course,
|
||||
LogBookReason, LogBook,
|
||||
)
|
||||
from .pdf import ChargeSheetPDF
|
||||
|
||||
|
|
@ -261,3 +262,5 @@ admin.site.register(Domain)
|
|||
admin.site.register(Period, PeriodAdmin)
|
||||
admin.site.register(Availability, AvailabilityAdmin)
|
||||
admin.site.register(Training, TrainingAdmin)
|
||||
admin.site.register(LogBookReason)
|
||||
admin.site.register(LogBook)
|
||||
|
|
|
|||
47
stages/migrations/0008_add_logbook.py
Normal file
47
stages/migrations/0008_add_logbook.py
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('stages', '0007_add_student_expert'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name='LogBook',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('input_date', models.DateField(auto_now_add=True, verbose_name='Date de saisie')),
|
||||
('start_date', models.DateField(verbose_name='Date de début')),
|
||||
('end_date', models.DateField(verbose_name='Date de fin')),
|
||||
('nb_period', models.IntegerField(verbose_name='Périodes')),
|
||||
('comment', models.CharField(blank=True, max_length=200, verbose_name='Commentaire motif')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': 'Carnet du lait',
|
||||
'verbose_name_plural': 'Carnets du lait',
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='LogBookReason',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('name', models.CharField(max_length=50, unique=True, verbose_name='Motif')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': 'Motif de carnet du lait',
|
||||
},
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='logbook',
|
||||
name='reason',
|
||||
field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='stages.LogBookReason', verbose_name='Catégorie de motif'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='logbook',
|
||||
name='teacher',
|
||||
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='stages.Teacher', verbose_name='Enseignant'),
|
||||
),
|
||||
]
|
||||
|
|
@ -144,6 +144,33 @@ class Teacher(models.Model):
|
|||
return (self.calc_activity(), imputations)
|
||||
|
||||
|
||||
class LogBookReason(models.Model):
|
||||
name = models.CharField('Motif', max_length=50, unique=True)
|
||||
|
||||
def __str__(self):
|
||||
return self.name
|
||||
|
||||
class Meta:
|
||||
verbose_name = 'Motif de carnet du lait'
|
||||
|
||||
|
||||
class LogBook(models.Model):
|
||||
teacher = models.ForeignKey(Teacher, on_delete=models.CASCADE, verbose_name='Enseignant')
|
||||
reason = models.ForeignKey(LogBookReason, on_delete=models.PROTECT, verbose_name='Catégorie de motif')
|
||||
input_date = models.DateField('Date de saisie', auto_now_add=True)
|
||||
start_date = models.DateField('Date de début')
|
||||
end_date = models.DateField('Date de fin')
|
||||
nb_period = models.IntegerField('Périodes')
|
||||
comment = models.CharField('Commentaire motif', max_length=200, blank=True)
|
||||
|
||||
def __str__(self):
|
||||
return '{} : {} pér. - {}'.format(self.teacher, self.nb_period, self.comment)
|
||||
|
||||
class Meta:
|
||||
verbose_name = 'Carnet du lait'
|
||||
verbose_name_plural = 'Carnets du lait'
|
||||
|
||||
|
||||
class Option(models.Model):
|
||||
name = models.CharField("Nom", max_length=100, unique=True)
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue