# -*- coding: utf-8 -*- # Generated by Django 1.9.7 on 2016-08-05 14:50 from __future__ import unicode_literals import datetime from django.conf import settings from django.db import migrations, models import django.db.models.deletion from django.utils.timezone import utc import django.utils.timezone import mptt.fields class Migration(migrations.Migration): replaces = [('projects', '0001_initial'), ('projects', '0002_auto_20160725_1605'), ('projects', '0003_auto_20160725_1606'), ('projects', '0004_auto_20160726_1931'), ('projects', '0005_auto_20160726_1957'), ('projects', '0006_auto_20160727_1835'), ('projects', '0007_auto_20160727_1835'), ('projects', '0005_auto_20160726_1958'), ('projects', '0008_merge'), ('projects', '0009_auto_20160802_1226'), ('projects', '0009_auto_20160802_1414'), ('projects', '0010_answerfiles'), ('projects', '0011_auto_20160802_1653'), ('projects', '0012_merge'), ('projects', '0013_auto_20160804_1403'), ('projects', '0014_auto_20160804_1754'), ('projects', '0013_auto_20160803_2003'), ('projects', '0015_merge')] initial = True dependencies = [ ('common', '__first__'), ('users', '0003_auto_20160726_1931'), ('contenttypes', '0002_remove_content_type_name'), ('users', '0001_initial'), ('specializations', '__first__'), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='Answer', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('budget', models.DecimalField(decimal_places=0, max_digits=10)), ('created', models.DateTimeField(default=django.utils.timezone.now)), ('currency', models.CharField(choices=[('rur', 'RUR'), ('usd', 'USD'), ('eur', 'EUR')], default='rur', max_length=5)), ('term', models.IntegerField(default=0)), ('term_type', models.CharField(choices=[('project', 'За проект'), ('hour', 'За час'), ('day', 'За день'), ('month', 'За месяц')], default='hour', max_length=10)), ('text', models.TextField()), ('contractor', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='answers', to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name': 'Ответ к проекту', 'ordering': ('-created',), 'verbose_name_plural': 'Ответы к проектам', }, ), migrations.CreateModel( name='BuildingClassfication', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255)), ], options={ 'verbose_name': 'Тип здания', 'verbose_name_plural': 'Типы зданий', }, ), migrations.CreateModel( name='Candidate', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('status', models.BooleanField(default=False)), ('answer', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='candidates', to='projects.Answer')), ], options={ 'verbose_name': 'Кандидат', 'verbose_name_plural': 'Кандидаты', }, ), migrations.CreateModel( name='ConstructionType', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255)), ], options={ 'verbose_name': 'Вид строительства', 'verbose_name_plural': 'Виды строительства', }, ), migrations.CreateModel( name='Order', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created', models.DateTimeField(default=django.utils.timezone.now)), ('secure', models.BooleanField(default=False)), ('status', models.BooleanField(default=False)), ('contractor', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='orders', to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name': 'Заказ', 'verbose_name_plural': 'Заказы', }, ), migrations.CreateModel( name='Portfolio', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('budget', models.DecimalField(blank=True, decimal_places=0, default=0, max_digits=10, null=True)), ('currency', models.CharField(blank=True, choices=[('rur', 'RUR'), ('usd', 'USD'), ('eur', 'EUR')], default='rur', max_length=20, null=True)), ('description', models.TextField()), ('name', models.CharField(max_length=255)), ('term', models.IntegerField(blank=True, default=0, null=True)), ('term_type', models.CharField(blank=True, choices=[('project', 'За проект'), ('hour', 'За час'), ('day', 'За день'), ('month', 'За месяц')], default='hour', max_length=20, null=True)), ('worksell', models.BooleanField(default=False)), ('building_classification', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='portfolios', to='projects.BuildingClassfication')), ('construction_type', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='portfolios', to='projects.ConstructionType')), ('location', mptt.fields.TreeForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='portfolios', to='common.Location')), ('specialization', mptt.fields.TreeForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='portfolios', to='specializations.Specialization')), ('team', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='portfolios', to='users.Team')), ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='portfolios', to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name': 'Портфолио', 'verbose_name_plural': 'Портфолио', }, ), migrations.CreateModel( name='PortfolioPhoto', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('img', models.ImageField(upload_to='projects/portfolio')), ('portfolio', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='photos', to='projects.Portfolio')), ], options={ 'verbose_name': 'Фото портфолио', 'verbose_name_plural': 'Фото портфолио', }, ), migrations.CreateModel( name='Project', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('budget', models.DecimalField(decimal_places=0, max_digits=10)), ('budget_by_agreement', models.BooleanField(default=False)), ('created', models.DateTimeField(default=django.utils.timezone.now)), ('cro', models.BooleanField(default=False)), ('currency', models.CharField(choices=[('rur', 'RUR'), ('usd', 'USD'), ('eur', 'EUR')], default='rur', max_length=20)), ('deal_type', models.CharField(choices=[('secure_deal', 'Безопасная сделка (с резервированием бюджета) '), ('direct_payment', 'Прямая оплата Исполнителю на его кошелек/счет')], default='secure_deal', max_length=20)), ('name', models.CharField(max_length=255)), ('price_and_term_required', models.BooleanField(default=False)), ('state', models.CharField(choices=[('active', 'Активный'), ('trashed', 'В корзине'), ('deleted', 'Удален')], default='active', max_length=20)), ('term', models.IntegerField(default=0)), ('term_type', models.CharField(choices=[('project', 'За проект'), ('hour', 'За час'), ('day', 'За день'), ('month', 'За месяц')], default='hour', max_length=20)), ('text', models.TextField(blank=True)), ('work_type', models.IntegerField(choices=[(1, 'Проектирование'), (2, 'Техническое сопровождение')], default=1)), ('customer', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='projects', to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name': 'Проект', 'verbose_name_plural': 'Проекты', }, ), migrations.CreateModel( name='ProjectFile', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('file', models.FileField(upload_to='projects/project_files')), ('project', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='files', to='projects.Project')), ], options={ 'verbose_name': 'Файл проекта', 'verbose_name_plural': 'Файлы проектов', }, ), migrations.CreateModel( name='Realty', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255)), ('building_classification', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='realties', to='projects.BuildingClassfication')), ('construction_type', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='realties', to='projects.ConstructionType')), ('location', mptt.fields.TreeForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='realties', to='common.Location')), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='realties', to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name': 'Объект', 'verbose_name_plural': 'Объекты', }, ), migrations.CreateModel( name='Stage', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('cost', models.DecimalField(decimal_places=0, max_digits=10)), ('cost_type', models.CharField(choices=[('rur', 'RUR'), ('usd', 'USD'), ('eur', 'EUR')], default='rur', max_length=5)), ('name', models.CharField(max_length=255)), ('result', models.CharField(max_length=255)), ('term', models.IntegerField(default=0)), ('term_type', models.CharField(choices=[('project', 'За проект'), ('hour', 'За час'), ('day', 'За день'), ('month', 'За месяц')], default='hour', max_length=10)), ('order', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='stages', to='projects.Order')), ('created', models.DateTimeField(default=datetime.datetime(2016, 7, 25, 13, 6, 34, 550741, tzinfo=utc))), ('pos', models.IntegerField(blank=True, default=0, null=True)), ('status', models.CharField(choices=[('not_agreed', 'Не согласован'), ('in_process', 'В процессе'), ('completed', 'Завершен')], default='not_agreed', max_length=30)), ], options={ 'verbose_name': 'Этап', 'verbose_name_plural': 'Этапы', }, ), migrations.AddField( model_name='project', name='realty', field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='projects', to='projects.Realty'), ), migrations.AddField( model_name='project', name='specialization', field=mptt.fields.TreeForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='projects', to='specializations.Specialization'), ), migrations.AddField( model_name='order', name='project', field=models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='order', to='projects.Project'), ), migrations.AddField( model_name='candidate', name='project', field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='candidates', to='projects.Project'), ), migrations.AddField( model_name='answer', name='project', field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='answers', to='projects.Project'), ), migrations.AlterField( model_name='project', name='deal_type', field=models.CharField(choices=[('secure_deal', 'Безопасная сделка'), ('direct_payment', 'Прямая оплата')], default='secure_deal', max_length=20), ), migrations.AlterModelOptions( name='stage', options={'ordering': ['pos'], 'verbose_name': 'Этап', 'verbose_name_plural': 'Этапы'}, ), migrations.AlterField( model_name='stage', name='created', field=models.DateTimeField(default=datetime.datetime(2016, 7, 26, 16, 31, 5, 738741, tzinfo=utc)), ), migrations.AlterField( model_name='stage', name='created', field=models.DateTimeField(default=datetime.datetime(2016, 7, 26, 16, 57, 39, 517305, tzinfo=utc)), ), migrations.AddField( model_name='stage', name='is_paid', field=models.BooleanField(default=False), ), migrations.AlterField( model_name='stage', name='created', field=models.DateTimeField(default=datetime.datetime(2016, 7, 27, 15, 35, 21, 468300, tzinfo=utc)), ), migrations.AlterField( model_name='stage', name='created', field=models.DateTimeField(default=django.utils.timezone.now), ), migrations.AlterField( model_name='stage', name='created', field=models.DateTimeField(default=datetime.datetime(2016, 7, 26, 16, 58, 47, 631021, tzinfo=utc)), ), migrations.AlterModelOptions( name='answer', options={'ordering': ('-created',), 'verbose_name': 'Отклик на проект', 'verbose_name_plural': 'Отклики на проекты'}, ), migrations.RemoveField( model_name='answer', name='contractor', ), migrations.AddField( model_name='answer', name='content_type', field=models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, to='contenttypes.ContentType'), preserve_default=False, ), migrations.AddField( model_name='answer', name='object_id', field=models.IntegerField(default=None), preserve_default=False, ), migrations.AlterField( model_name='stage', name='created', field=models.DateTimeField(default=django.utils.timezone.now), ), migrations.CreateModel( name='AnswerFile', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255)), ('file', models.FileField(upload_to='projects/answer_files')), ('answer', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='files', to='projects.Answer')), ], options={ 'verbose_name': 'Файл для отклика', 'verbose_name_plural': 'Файлы для откликов', }, ), migrations.AddField( model_name='answer', name='portfolios', field=models.ManyToManyField(blank=True, related_name='portfolios_answers', to='projects.Portfolio'), ), migrations.AddField( model_name='answer', name='secure_deal_only', field=models.BooleanField(default=False), ), migrations.AddField( model_name='order', name='team', field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='orders', to='users.Team'), ), migrations.AlterField( model_name='stage', name='created', field=models.DateTimeField(default=django.utils.timezone.now), ), ]