Fixed family mapping in emergency export

This commit is contained in:
John Mullins
2024-02-28 11:15:36 +11:00
parent ec3b33def3
commit aac0358adc
2 changed files with 25 additions and 21 deletions
+21 -20
View File
@@ -171,26 +171,27 @@ def emergency_contacts_context(queryset=None):
traveller = travellerRoute.traveller
if not traveller._is_active():
continue
parent_a = ""
if travellerRoute.traveller.parent_A_firstname:
parent_a = f"{traveller.parent_A_firstname} {traveller.parent_A_lastname} ({traveller.parent_A_phone})"
parent_b = ""
if travellerRoute.traveller.parent_B_firstname:
parent_b = f"{traveller.parent_B_firstname} {traveller.parent_B_lastname} ({traveller.parent_B_phone})"
contact_a = ""
if travellerRoute.traveller.emergency_contact_A_firstname:
contact_a = f"{traveller.emergency_contact_A_firstname} {traveller.emergency_contact_A_lastname} ({traveller.emergency_contact_A_phone})"
contact_b = ""
if travellerRoute.traveller.emergency_contact_B_firstname:
contact_b = f"{traveller.emergency_contact_B_firstname} {traveller.emergency_contact_B_lastname} ({traveller.emergency_contact_B_phone})"
traveller_list.append({
'traveller': traveller,
'parent_a': parent_a,
'parent_b': parent_b,
'contact_a': contact_a,
'contact_b': contact_b,
'note': travellerRoute.notes
})
for family in traveller.get_families():
parent_a = ""
if family.parent_A_firstname:
parent_a = f"{family.parent_A_firstname} {family.parent_A_lastname} ({family.parent_A_phone})"
parent_b = ""
if family.parent_B_firstname:
parent_b = f"{family.parent_B_firstname} {family.parent_B_lastname} ({family.parent_B_phone})"
contact_a = ""
if family.emergency_contact_A_firstname:
contact_a = f"{family.emergency_contact_A_firstname} {family.emergency_contact_A_lastname} ({family.emergency_contact_A_phone})"
contact_b = ""
if family.emergency_contact_B_firstname:
contact_b = f"{family.emergency_contact_B_firstname} {family.emergency_contact_B_lastname} ({family.emergency_contact_B_phone})"
traveller_list.append({
'traveller': traveller,
'parent_a': parent_a,
'parent_b': parent_b,
'contact_a': contact_a,
'contact_b': contact_b,
'note': travellerRoute.notes
})
bus_routes.append({'bus': bus, 'drivers': drivers, 'travellers': traveller_list})
return {'routes': bus_routes}
+4 -1
View File
@@ -262,7 +262,7 @@ class Traveller(models.Model):
return f"${str(cost * stops)}"
def _repopulate_address(self):
families = Family.objects.filter(traveller__id__exact=self.id)
families = self.get_families()
if families.count() == 0:
self.address = ""
elif families.count() == 1:
@@ -274,6 +274,9 @@ class Traveller(models.Model):
def get_parsed_numbers(self, parents=False, emergency=False):
return [] # Moved to family model. To remove from traveller model
def get_families(self):
return Family.objects.filter(traveller__id__exact=self.id)
class Family(models.Model):
RELATIONS = [