minor tweaks to error handling to allow for defaulted values from pre v2.6 data

This commit is contained in:
John Anderson 2019-06-19 23:47:19 -04:00
parent 1a5aaf54dd
commit 625a09785a
2 changed files with 10 additions and 6 deletions

View File

@ -1974,8 +1974,8 @@ class PowerPort(CableTermination, ComponentModel):
allocated_draw_total=Sum('allocated_draw'), allocated_draw_total=Sum('allocated_draw'),
) )
ret = { ret = {
'allocated': utilization['allocated_draw_total'], 'allocated': utilization['allocated_draw_total'] or 0,
'maximum': utilization['maximum_draw_total'], 'maximum': utilization['maximum_draw_total'] or 0,
'outlet_count': len(outlet_ids), 'outlet_count': len(outlet_ids),
'legs': [], 'legs': [],
} }
@ -1990,8 +1990,8 @@ class PowerPort(CableTermination, ComponentModel):
) )
ret['legs'].append({ ret['legs'].append({
'name': leg_name, 'name': leg_name,
'allocated': utilization['allocated_draw_total'], 'allocated': utilization['allocated_draw_total'] or 0,
'maximum': utilization['maximum_draw_total'], 'maximum': utilization['maximum_draw_total'] or 0,
'outlet_count': len(outlet_ids), 'outlet_count': len(outlet_ids),
}) })
@ -1999,8 +1999,8 @@ class PowerPort(CableTermination, ComponentModel):
# Default to administratively defined values # Default to administratively defined values
return { return {
'allocated': self.allocated_draw, 'allocated': self.allocated_draw or 0,
'maximum': self.maximum_draw, 'maximum': self.maximum_draw or 0,
'outlet_count': PowerOutlet.objects.filter(power_port=self).count(), 'outlet_count': PowerOutlet.objects.filter(power_port=self).count(),
'legs': [], 'legs': [],
} }

View File

@ -171,6 +171,8 @@ def divide(x, y):
""" """
Return x/y (rounded). Return x/y (rounded).
""" """
if x is None or y is None:
return None
return round(x / y) return round(x / y)
@ -179,6 +181,8 @@ def percentage(x, y):
""" """
Return x/y as a percentage. Return x/y as a percentage.
""" """
if x is None or y is None:
return None
return round(x / y * 100) return round(x / y * 100)