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

Fixes and changes in preparation for appointment planning functionality and modifying names

parent 99dcbdfe
No related branches found
No related tags found
No related merge requests found
......@@ -12,7 +12,7 @@ admin.site.register(Subject)
admin.site.register(Visit)
admin.site.register(Item)
admin.site.register(Room)
admin.site.register(AppType)
admin.site.register(AppointmentType)
admin.site.register(Language, LanguageAdmin)
admin.site.register(Worker)
admin.site.register(FlyingTeam)
......
......@@ -74,14 +74,16 @@ class Subject(models.Model):
verbose_name='MPower ID'
)
STATUS_CHOICES = (
('INV', 'Invited'),
('OPT', 'Opted out'),
('PAR', 'Participating'),
('NCO', 'Not contacted'),
('TST', 'Test group'),
('LEA', 'Level A'),
('LEB', 'Level B'),
('OPT', 'Opted out'),
('DEA', 'Dead')
)
subjectStatus = models.CharField(max_length=3, choices=STATUS_CHOICES,
verbose_name='Status'
verbose_name='Status',
default='NCO'
)
mainPseudonym = models.CharField(max_length=45,
verbose_name='Pseudonym'
......@@ -90,6 +92,15 @@ class Subject(models.Model):
verbose_name='Comments'
)
dateAdded = models.DateField(verbose_name='Added on',
auto_now=True
)
referral = models.CharField(max_length=128,
null=True,
verbose_name='Referred by'
)
def __str__(self):
return "%s %s" % (self.firstName, self.lastName)
......@@ -106,15 +117,19 @@ class Visit(models.Model):
)
visitEnd = models.DateTimeField(
verbose_name='Visit ends at'
) # Deadline before which all appointments need to be scheduled
TYPE_CHOICES = (
('A', 'Level A visit'),
('B', 'Level B visit'),
('O', 'Other')
)
assesmentNo = models.IntegerField(
verbose_name='Which assesment'
)
visitType = models.IntegerField(
verbose_name='Type of visit'
visitType = models.CharField(max_length=1, choices=TYPE_CHOICES,
verbose_name='Visit type',
default='O'
)
visitFinished = models.BooleanField(
verbose_name='Has ended'
verbose_name='Has ended',
default=False
)
def __str__(self):
......@@ -138,7 +153,7 @@ class Item (models.Model):
class Room (models.Model):
possEquipment = models.ManyToManyField(Item,
verbose_name='On-site equipment',
null=True, blank=True
blank=True
)
owner = models.CharField(max_length=50,
verbose_name='Owner'
......@@ -162,24 +177,20 @@ class Room (models.Model):
def __str__(self):
return "%d %s %s" % (self.roomNo, self.address, self.city)
class AppType (models.Model):
reqEquipment = models.ManyToManyField(Item,
class AppointmentType (models.Model):
requiredEquipment = models.ManyToManyField(Item,
verbose_name='Required equipment'
)
followUp = models.ForeignKey('self',
verbose_name='Follow-up visit',
null=True, blank=True
)
apCode = models.CharField(max_length=20,
code = models.CharField(max_length=20,
verbose_name='Appointment code'
)
apDescription = models.CharField(max_length=2000,
description = models.CharField(max_length=2000,
verbose_name='Appointment description'
)
apDefaultTime = models.IntegerField(
defaultTime = models.IntegerField(
verbose_name='Default time'
)
apRestTime = models.IntegerField(
restTime = models.IntegerField(
verbose_name='Suggested rest time'
)
......@@ -279,7 +290,8 @@ class Avaibility(models.Model):
verbose_name='Avaible until'
)
current = models.BooleanField(
verbose_name='Is current?'
verbose_name='Is current?',
default=True
)
def __str__(self):
......@@ -304,8 +316,13 @@ class Appointment(models.Model):
verbose_name='Flying team (if applicable)',
null=True, blank=True
)
appType = models.ForeignKey(AppType,
verbose_name='Appointment type'
workerAssigned = models.ForeignKey(Worker,
verbose_name='Worker conducting the assessment (if applicable)',
null=True, blank=True
)
appointmentType = models.ForeignKey(AppointmentType,
verbose_name='Appointment type',
null=True, blank=True
)
room = models.ForeignKey(Room,
verbose_name='Room ID'
......@@ -318,7 +335,8 @@ class Appointment(models.Model):
)
appLength = models.IntegerField(
verbose_name='Appointment length'
)
)#Potentially redundant; but can be used to manually adjust appointment's length
appFinished = models.BooleanField(
verbose_name='Has the appointment ended?'
verbose_name='Has the appointment ended?',
default=False
)
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