merge Room and Outside into Area

This commit is contained in:
Laura Klünder 2017-05-04 12:08:17 +02:00
parent 67be5d29a8
commit 857788bcf6
5 changed files with 199 additions and 25 deletions

View file

@ -0,0 +1,118 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.10.4 on 2017-05-04 09:53
from __future__ import unicode_literals
import c3nav.mapdata.fields
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('mapdata', '0039_auto_20170501_1523'),
]
operations = [
migrations.CreateModel(
name='Area',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.SlugField(unique=True, verbose_name='Name')),
('geometry', c3nav.mapdata.fields.GeometryField()),
('public', models.BooleanField(verbose_name='public')),
('categories', models.CharField(choices=[('', 'normal'), ('stairs', 'stairs'), ('escalator', 'escalator'), ('elevator', 'elevator')], max_length=16, verbose_name='category')),
('layer', models.CharField(choices=[('', 'normal'), ('upper', 'upper'), ('lowerr', 'lower')], max_length=16, verbose_name='layer')),
],
options={
'default_related_name': 'areas',
'verbose_name_plural': 'Areas',
'verbose_name': 'Area',
},
),
migrations.RemoveField(
model_name='package',
name='depends',
),
migrations.RemoveField(
model_name='arealocation',
name='package',
),
migrations.RemoveField(
model_name='building',
name='package',
),
migrations.RemoveField(
model_name='door',
name='package',
),
migrations.RemoveField(
model_name='elevator',
name='package',
),
migrations.RemoveField(
model_name='elevatorlevel',
name='package',
),
migrations.RemoveField(
model_name='escalator',
name='package',
),
migrations.RemoveField(
model_name='hole',
name='package',
),
migrations.RemoveField(
model_name='level',
name='package',
),
migrations.RemoveField(
model_name='levelconnector',
name='package',
),
migrations.RemoveField(
model_name='lineobstacle',
name='package',
),
migrations.RemoveField(
model_name='locationgroup',
name='package',
),
migrations.RemoveField(
model_name='obstacle',
name='package',
),
migrations.RemoveField(
model_name='outside',
name='package',
),
migrations.RemoveField(
model_name='room',
name='package',
),
migrations.RemoveField(
model_name='source',
name='package',
),
migrations.RemoveField(
model_name='stair',
name='package',
),
migrations.RemoveField(
model_name='stuffedarea',
name='package',
),
migrations.AlterField(
model_name='arealocation',
name='routing_inclusion',
field=models.CharField(choices=[('default', 'Default, include it is unlocked'), ('allow_avoid', 'Included, but allow excluding'), ('allow_include', 'Avoided, but allow including'), ('needs_permission', 'Excluded, needs permission to include')], default='default', max_length=20, verbose_name='Routing Inclusion'),
),
migrations.DeleteModel(
name='Package',
),
migrations.AddField(
model_name='area',
name='level',
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='areas', to='mapdata.Level', verbose_name='level'),
),
]

View file

@ -0,0 +1,31 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.10.4 on 2017-05-04 09:55
from __future__ import unicode_literals
from django.db import migrations
def fill_area_model(apps, schema_editor):
Area = apps.get_model('mapdata', 'Area')
for model_name in ('Room', 'Outside'):
Model_ = apps.get_model('mapdata', model_name)
for obj in Model_.objects.all():
Area.objects.create(
name=obj.name,
geometry=obj.geometry,
level=obj.level,
public=obj.public,
categories='',
layer='',
)
class Migration(migrations.Migration):
dependencies = [
('mapdata', '0040_auto_20170504_0953'),
]
operations = [
migrations.RunPython(fill_area_model),
]

View file

@ -0,0 +1,29 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.10.4 on 2017-05-04 10:07
from __future__ import unicode_literals
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('mapdata', '0041_room_outside_area'),
]
operations = [
migrations.RemoveField(
model_name='outside',
name='level',
),
migrations.RemoveField(
model_name='room',
name='level',
),
migrations.DeleteModel(
name='Outside',
),
migrations.DeleteModel(
name='Room',
),
]