Complete migration to new "areas" API format

Depends on: https://github.com/alphagov/notifications-api/pull/3314

Previously:

- We introduced a new "areas_2" API field that's can
populate the "areas" column in the same way.

- We updated the Admin app to use the new field, so that
the old "areas" and "simple_polygons" API fields are unused.

- We repurposed the unused "areas" API field to use
the new "areas_2" format.

This PR:

- We can switch the Admin app back to the "areas" field,
but in the new format.

Future PRs:

- Remove support for the unused "areas_2" field (migration complete)
This commit is contained in:
Ben Thorner
2021-08-27 14:32:56 +01:00
parent 6c4340c5eb
commit cfdd244325
3 changed files with 11 additions and 11 deletions

View File

@@ -88,7 +88,7 @@ class BroadcastMessage(JSONModel):
@property
def areas(self):
polygons = self._dict['areas_2']['simple_polygons']
polygons = self._dict['areas']['simple_polygons']
library_areas = self.get_areas(self.area_ids)
if library_areas:
@@ -106,11 +106,11 @@ class BroadcastMessage(JSONModel):
@property
def area_ids(self):
return self._dict['areas_2']['ids']
return self._dict['areas']['ids']
@area_ids.setter
def area_ids(self, value):
self._dict['areas_2']['ids'] = value
self._dict['areas']['ids'] = value
@property
def ancestor_areas(self):
@@ -230,7 +230,7 @@ class BroadcastMessage(JSONModel):
self._update_areas()
def remove_area(self, area_id):
self.area_ids = list(set(self._dict['areas_2']['ids']) - {area_id})
self.area_ids = list(set(self._dict['areas']['ids']) - {area_id})
self._update_areas()
def _set_status_to(self, status):
@@ -241,13 +241,13 @@ class BroadcastMessage(JSONModel):
)
def _update_areas(self, force_override=False):
areas_2 = {
areas = {
'ids': self.area_ids,
'names': [area.name for area in self.areas],
'simple_polygons': self.simple_polygons.as_coordinate_pairs_lat_long
}
data = {'areas_2': areas_2}
data = {'areas': areas}
# TEMPORARY: while we migrate to a new format for "areas"
if force_override: