Skip to content
Snippets Groups Projects
Commit 46ef7bfe authored by Piotr Matyjaszyk's avatar Piotr Matyjaszyk
Browse files

Added verbose names as well as default prints

parent 48abfee7
No related branches found
No related tags found
No related merge requests found
......@@ -27,26 +27,52 @@ class Subject(models.Model):
('M','Male'),
('F','Female'),
)
sex = models.CharField(max_length=1,
sex = models.CharField(max_length=1,
choices=SEX_CHOICES,
verbose_name='Sex'
)
firstName = models.CharField(max_length=50,
verbose_name='First name'
)
lastName = models.CharField(max_length=50)
languages = models.ManyToManyField(Language)
phoneNo = models.CharField(max_length=20)
email = models.EmailField()
born = models.DateField()
address = models.CharField(max_length=255)
postalCode = models.CharField(max_length=6)
city = models.CharField(max_length=50)
country = models.CharField(max_length=50)
screeningNo = models.CharField(max_length=50)
ndno = models.CharField(max_length=6)
visitNumber = models.IntegerField()
mpowerId = models.CharField(max_length=20)
lastName = models.CharField(max_length=50,
verbose_name='Last name'
)
languages = models.ManyToManyField(Language,
verbose_name='Known languages'
)
phoneNo = models.CharField(max_length=20,
verbose_name='Phone number'
)
email = models.EmailField(
verbose_name='E-mail'
)
born = models.DateField(
verbose_name='Date born'
)
address = models.CharField(max_length=255,
verbose_name='Address'
)
postalCode = models.CharField(max_length=6,
verbose_name='Postal code'
)
city = models.CharField(max_length=50,
verbose_name='City'
)
country = models.CharField(max_length=50,
verbose_name='Country'
)
screeningNo = models.CharField(max_length=50,
verbose_name='Screening number'
)
ndno = models.CharField(max_length=6,
verbose_name='ND number'
)
visitNumber = models.IntegerField(
verbose_name='Number of visits'
)
mpowerId = models.CharField(max_length=20,
verbose_name='MPower ID'
)
STATUS_CHOICES = (
('INV', 'Invited'),
('OPT', 'Opted out'),
......@@ -54,56 +80,132 @@ class Subject(models.Model):
('TST', 'Test group'),
('DEA', 'Dead')
)
subjectStatus = models.CharField(max_length=3, choices=STATUS_CHOICES)
mainPseudonym = models.CharField(max_length=45)
comments = models.CharField(max_length=2000)
subjectStatus = models.CharField(max_length=3, choices=STATUS_CHOICES,
verbose_name='Status'
)
mainPseudonym = models.CharField(max_length=45,
verbose_name='Pseudonym'
)
comments = models.CharField(max_length=2000,
verbose_name='Comments'
)
def __str__(self):
return "%s %s" % (self.firstName, self.lastName)
class Visit(models.Model):
subject = models.ForeignKey(Subject, on_delete=models.CASCADE)
visitBegin = models.DateTimeField()
visitEnd = models.DateTimeField()
assesmentNo = models.IntegerField()
visitType = models.IntegerField()
visitFinished = models.BooleanField()
subject = models.ForeignKey(Subject, on_delete=models.CASCADE,
verbose_name='Subject'
)
visitBegin = models.DateTimeField(
verbose_name='Visit starts at'
)
visitEnd = models.DateTimeField(
verbose_name='Visit ends at'
)
assesmentNo = models.IntegerField(
verbose_name='Which assesment'
)
visitType = models.IntegerField(
verbose_name='Type of visit'
)
visitFinished = models.BooleanField(
verbose_name='Has ended'
)
def __str__(self):
return "%s %s %d" % (self.subject.firstName, self.subject.lastName, self.assesmentNo)
class Item (models.Model):
isFixed = models.BooleanField
name = models.CharField(max_length=255)
isFixed = models.BooleanField(
default=False,
verbose_name='Is the item fixed?'
)
name = models.CharField(max_length=255,
verbose_name='Name'
)
def __str__(self):
return self.name
class Room (models.Model):
possEquipment = models.ManyToManyField(Item)
owner = models.CharField(max_length=50)
address = models.CharField(max_length=255)
city = models.CharField(max_length=50)
roomNo = models.IntegerField()
floor = models.IntegerField()
isVehicle = models.BooleanField()
possEquipment = models.ManyToManyField(Item,
verbose_name='Posessed equipment'
)
owner = models.CharField(max_length=50,
verbose_name='Owner'
)
address = models.CharField(max_length=255,
verbose_name='Address'
)
city = models.CharField(max_length=50,
verbose_name='City'
)
roomNo = models.IntegerField(
verbose_name='Room number'
)
floor = models.IntegerField(
verbose_name='Floor'
)
isVehicle = models.BooleanField(
verbose_name='Is a vehicle?'
)
def __str__(self):
return "%d %s %s" % (self.roomNo, self.address, self.city)
class AppType (models.Model):
reqEquipment = models.ManyToManyField(Item)
followUp = models.ForeignKey('self')
apCode = models.CharField(max_length=20)
apDescription = models.CharField(max_length=2000)
apDefaultTime = models.IntegerField()
apRestTime = models.IntegerField()
reqEquipment = models.ManyToManyField(Item,
verbose_name='Required equipment'
)
followUp = models.ForeignKey('self',
verbose_name='Follow-up visit'
)
apCode = models.CharField(max_length=20,
verbose_name='Appointment code'
)
apDescription = models.CharField(max_length=2000,
verbose_name='Appointment description'
)
apDefaultTime = models.IntegerField(
verbose_name='Default time'
)
apRestTime = models.IntegerField(
verbose_name='Suggested rest time'
)
def __str__(self):
return self.apCode
class Worker (models.Model):
languages = models.ManyToManyField(Language)
appointments = models.ManyToManyField('Appointment', blank=True)
user = models.OneToOneField(User, blank=True, null=True)
firstName = models.CharField(max_length=50)
lastName = models.CharField(max_length=50)
phoneNo = models.CharField(max_length=20)
unit = models.CharField(max_length=50)
email = models.EmailField()
languages = models.ManyToManyField(Language,
verbose_name='Known languages'
)
appointments = models.ManyToManyField('Appointment', blank=True,
verbose_name='Appointments'
)
user = models.OneToOneField(User, blank=True, null=True,
verbose_name='Username'
)
firstName = models.CharField(max_length=50,
verbose_name='First name'
)
lastName = models.CharField(max_length=50,
verbose_name='Last name'
)
phoneNo = models.CharField(max_length=20,
verbose_name='Phone number'
)
unit = models.CharField(max_length=50,
verbose_name='Unit'
)
email = models.EmailField(
verbose_name='E-mail'
)
ROLE_CHOICES = (
('DOCTOR', 'Doctor'),
('NURSE', 'Nurse'),
......@@ -111,8 +213,12 @@ class Worker (models.Model):
('TECHNICIAN', 'Technician'),
('SECRETARY', 'Secretary')
)
role = models.CharField(max_length=20, choices=ROLE_CHOICES)
specialization = models.CharField(max_length=20)
role = models.CharField(max_length=20, choices=ROLE_CHOICES,
verbose_name='Role'
)
specialization = models.CharField(max_length=20,
verbose_name='Specialization'
)
def isOnLeave(self):
if len(self.holiday_set.filter(holidayEnd__gt=datetime.datetime.now(),
......@@ -135,33 +241,78 @@ class Worker (models.Model):
class FlyingTeam(models.Model):
doctor = models.ForeignKey(Worker, related_name='FlyingTeamDoctor')
nurse = models.ForeignKey(Worker, related_name='FlyingTeamNurse')
psychologist = models.ForeignKey(Worker, related_name='FlyingTeamPsychologist')
dateTimeCalled = models.DateTimeField()
dateTimeUntil = models.DateTimeField()
doctor = models.ForeignKey(Worker, related_name='FlyingTeamDoctor',
verbose_name='Doctor'
)
nurse = models.ForeignKey(Worker, related_name='FlyingTeamNurse',
verbose_name='Nurse'
)
psychologist = models.ForeignKey(Worker, related_name='FlyingTeamPsychologist',
verbose_name='Psychologist'
)
dateTimeCalled = models.DateTimeField(
verbose_name='Created on'
)
dateTimeUntil = models.DateTimeField(
verbose_name='Disbanded on'
)
def __str__(self):
return "%s %s %s" % (self.doctor.lastName, self.nurse.lastName, self.psychologist.lastName)
class Avaibility(models.Model):
person = models.ForeignKey(Worker, on_delete=models.CASCADE)
dayNo = models.IntegerField()
availFro = models.TimeField()
availTil = models.TimeField()
current = models.BooleanField()
person = models.ForeignKey(Worker, on_delete=models.CASCADE,
verbose_name='Worker'
)
dayNo = models.IntegerField(
verbose_name='Day of the week'
)
availFro = models.TimeField(
verbose_name='Avaible since'
)
availTil = models.TimeField(
verbose_name='Avaible until'
)
current = models.BooleanField(
verbose_name='Is current?'
)
def __str__(self):
return "%d %s %s" % (self.dayNo, self.person.lastName, self.person.firstName)
class Holiday(models.Model):
person = models.ForeignKey(Worker, on_delete=models.CASCADE)
holidayStart = models.DateTimeField()
holidayEnd = models.DateTimeField()
person = models.ForeignKey(Worker, on_delete=models.CASCADE,
verbose_name='Worker'
)
holidayStart = models.DateTimeField(
verbose_name='On leave since'
)
holidayEnd = models.DateTimeField(
verbose_name='On leave until'
)
def __str__(self):
return "%s %s" % (self.person.firstName, self.person.lastName)
class Appointment(models.Model):
flyingTeam = models.ForeignKey(FlyingTeam)
appType = models.ForeignKey(AppType)
room = models.ForeignKey(Room)
visit = models.ForeignKey(Visit)
appDateTime = models.DateTimeField()
appLength = models.IntegerField()
appFinished = models.BooleanField()
flyingTeam = models.ForeignKey(FlyingTeam,
verbose_name='Flying team (if applicable)'
)
appType = models.ForeignKey(AppType,
verbose_name='Appointment type'
)
room = models.ForeignKey(Room,
verbose_name='Room ID'
)
visit = models.ForeignKey(Visit,
verbose_name='Visit ID'
)
appDateTime = models.DateTimeField(
verbose_name='Appointment on'
)
appLength = models.IntegerField(
verbose_name='Appointment length'
)
appFinished = models.BooleanField(
verbose_name='Has the appointment ended?'
)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment