Removing parent data from traveller model

This commit is contained in:
John Mullins
2024-02-16 17:54:54 +11:00
parent ee212a47c5
commit 83d5874155
2 changed files with 17 additions and 77 deletions
+11 -35
View File
@@ -175,20 +175,6 @@ class Traveller(models.Model):
("8", "Other Exemption"),
]
RELATIONS = [
("1", "Parent"),
("2", "Step-Parent"),
("3", "Foster Parent"),
("4", "Host Family"),
("5", "Sibling"),
("6", "Grandparent"),
("7", "Aunt/Uncle"),
("8", "Cousin"),
("9", "Carer"),
("10", "Case Worker"),
("11", "Friend/Other"),
]
school = models.ForeignKey(School, on_delete=models.PROTECT)
first_name = models.CharField(max_length=50)
last_name = models.CharField(max_length=50)
@@ -196,10 +182,6 @@ class Traveller(models.Model):
year_level = models.CharField(max_length=2, choices=YEAR)
bus_stops = models.ManyToManyField(BusStop, through='TravellerRoute', blank=True)
distance_to_school = models.PositiveSmallIntegerField(blank=True, null=True)
residential_address = models.CharField(max_length=50, blank=True)
residential_suburb = models.ForeignKey(Suburb, on_delete=models.PROTECT, blank=True, null=True, related_name='residential_suburb')
postal_address = models.CharField(max_length=50, blank=True)
postal_suburb = models.ForeignKey(Suburb, on_delete=models.PROTECT, blank=True, null=True, related_name='postal_suburb')
travel_start_date = models.DateField(blank=True, null=True)
travel_end_date = models.DateField(blank=True, null=True)
@@ -214,23 +196,6 @@ class Traveller(models.Model):
parent_notified = models.BooleanField()
seat_number = models.CharField(max_length=5, blank=True)
parent_A_firstname = models.CharField(max_length=50, blank=True)
parent_A_lastname = models.CharField(max_length=50, blank=True)
parent_A_phone = models.CharField(max_length=15, blank=True)
parent_A_email = models.CharField(max_length=50, blank=True)
parent_B_firstname = models.CharField(max_length=50, blank=True)
parent_B_lastname = models.CharField(max_length=50, blank=True)
parent_B_phone = models.CharField(max_length=15, blank=True)
parent_B_email = models.CharField(max_length=50, blank=True)
emergency_contact_A_firstname = models.CharField(max_length=50, blank=True)
emergency_contact_A_lastname = models.CharField(max_length=50, blank=True)
emergency_contact_A_phone = models.CharField(max_length=15, blank=True)
emergency_contact_A_relation = models.CharField(max_length=50, choices=RELATIONS, blank=True)
emergency_contact_B_firstname = models.CharField(max_length=50, blank=True)
emergency_contact_B_lastname = models.CharField(max_length=50, blank=True)
emergency_contact_B_phone = models.CharField(max_length=15, blank=True)
emergency_contact_B_relation = models.CharField(max_length=50, choices=RELATIONS, blank=True)
created_on = models.DateTimeField(auto_now_add=True, blank=True, null=True)
last_edit = models.DateTimeField(auto_now=True, blank=True, null=True)
is_archived = models.BooleanField(default=False, verbose_name="Archived")
@@ -294,6 +259,14 @@ class Traveller(models.Model):
stops = 1
return f"${str(cost * stops)}"
def address(self):
families = Family.objects.filter(traveller__id__exact=self.id)
if families.count() == 0:
return ""
if families.count() == 1:
family = families.first()
return f"{family.residential_address} {family.residential_suburb}"
return "Multiple"
def get_parsed_numbers(self, parents=False, emergency=False):
return [] # Moved to family model. To remove from traveller model
@@ -338,6 +311,9 @@ class Family(models.Model):
emergency_contact_B_phone = models.CharField(max_length=15, blank=True)
emergency_contact_B_relation = models.CharField(max_length=50, choices=RELATIONS, blank=True)
def __str__(self):
return self.parent_names()
def parent_names(self):
a_name = self.parent_A_firstname
b_name = self.parent_B_firstname