add AreaOfInterest and GroupOfInterest

This commit is contained in:
Laura Klünder 2016-12-12 13:21:09 +01:00
parent 52958ec5fc
commit 9c202ab6cd
11 changed files with 194 additions and 13 deletions

View file

@ -7,7 +7,7 @@ from collections import OrderedDict
from django.conf import settings
from django.core.management import CommandError
from c3nav.mapdata.models import Elevator, Level, Package
from c3nav.mapdata.models import AreaOfInterest, Elevator, GroupOfInterest, Level, Package
from c3nav.mapdata.models.geometry import LevelConnector
from c3nav.mapdata.packageio.const import ordered_models
@ -165,6 +165,11 @@ class ReaderItem:
levels = [self.reader.saved_items[Level][name].obj.pk for name in self.data['levels']]
self.data.pop('levels')
groups = []
if self.model == AreaOfInterest:
groups = [self.reader.saved_items[GroupOfInterest][name].obj.pk for name in self.data['groups']]
self.data.pop('groups')
# Change name references to the referenced object
for name, model in self.relations.items():
if name in self.data:
@ -186,3 +191,8 @@ class ReaderItem:
self.obj.levels.clear()
for level in levels:
self.obj.levels.add(level)
if groups:
self.obj.groups.clear()
for group in groups:
self.obj.groups.add(group)