95 lines
5.8 KiB
Python
95 lines
5.8 KiB
Python
# Generated by Django 2.2.4 on 2019-10-28 07:27
|
|
|
|
from django.conf import settings
|
|
import django.contrib.postgres.fields.jsonb
|
|
from django.db import migrations, models
|
|
import django.db.models.deletion
|
|
import django.utils.timezone
|
|
import utils.models
|
|
|
|
|
|
class Migration(migrations.Migration):
|
|
|
|
initial = True
|
|
|
|
dependencies = [
|
|
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
|
('location', '0013_wineappellation_wineregion'),
|
|
('establishment', '0044_position_index_name'),
|
|
]
|
|
|
|
operations = [
|
|
migrations.CreateModel(
|
|
name='ProductType',
|
|
fields=[
|
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
|
('created', models.DateTimeField(default=django.utils.timezone.now, editable=False, verbose_name='Date created')),
|
|
('modified', models.DateTimeField(auto_now=True, verbose_name='Date updated')),
|
|
('name', utils.models.TJSONField(blank=True, default=None, help_text='{"en-GB":"some text"}', null=True, verbose_name='Name')),
|
|
('index_name', models.CharField(choices=[('food', 'Food'), ('wine', 'Wine'), ('liquor', 'Liquor')], db_index=True, max_length=50, unique=True, verbose_name='Index name')),
|
|
('use_subtypes', models.BooleanField(default=True, verbose_name='Use subtypes')),
|
|
],
|
|
options={
|
|
'verbose_name': 'Product type',
|
|
'verbose_name_plural': 'Product types',
|
|
},
|
|
bases=(utils.models.TranslatedFieldsMixin, models.Model),
|
|
),
|
|
migrations.CreateModel(
|
|
name='ProductSubType',
|
|
fields=[
|
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
|
('created', models.DateTimeField(default=django.utils.timezone.now, editable=False, verbose_name='Date created')),
|
|
('modified', models.DateTimeField(auto_now=True, verbose_name='Date updated')),
|
|
('name', utils.models.TJSONField(blank=True, default=None, help_text='{"en-GB":"some text"}', null=True, verbose_name='Name')),
|
|
('index_name', models.CharField(choices=[('rum', 'Rum'), ('other', 'Other')], db_index=True, max_length=50, unique=True, verbose_name='Index name')),
|
|
('product_type', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='subtypes', to='product.ProductType', verbose_name='Product type')),
|
|
],
|
|
options={
|
|
'verbose_name': 'Product subtype',
|
|
'verbose_name_plural': 'Product subtypes',
|
|
},
|
|
bases=(utils.models.TranslatedFieldsMixin, models.Model),
|
|
),
|
|
migrations.CreateModel(
|
|
name='Product',
|
|
fields=[
|
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
|
('created', models.DateTimeField(default=django.utils.timezone.now, editable=False, verbose_name='Date created')),
|
|
('modified', models.DateTimeField(auto_now=True, verbose_name='Date updated')),
|
|
('category', models.PositiveIntegerField(choices=[(0, 'Common'), (1, 'Online')], default=0)),
|
|
('name', utils.models.TJSONField(blank=True, default=None, help_text='{"en-GB":"some text"}', null=True, verbose_name='Name')),
|
|
('description', utils.models.TJSONField(blank=True, default=None, help_text='{"en-GB":"some text"}', null=True, verbose_name='Description')),
|
|
('characteristics', django.contrib.postgres.fields.jsonb.JSONField(verbose_name='Characteristics')),
|
|
('available', models.BooleanField(default=True, verbose_name='Available')),
|
|
('public_mark', models.PositiveIntegerField(blank=True, default=None, null=True, verbose_name='public mark')),
|
|
('country', models.ManyToManyField(to='location.Country', verbose_name='Country')),
|
|
('created_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='product_records_created', to=settings.AUTH_USER_MODEL, verbose_name='created by')),
|
|
('establishment', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='products', to='establishment.Establishment', verbose_name='establishment')),
|
|
('modified_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='product_records_modified', to=settings.AUTH_USER_MODEL, verbose_name='modified by')),
|
|
('product_type', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='products', to='product.ProductType', verbose_name='Type')),
|
|
('subtypes', models.ManyToManyField(blank=True, related_name='products', to='product.ProductSubType', verbose_name='Subtypes')),
|
|
('wine_appellation', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='location.WineAppellation', verbose_name='wine appellation')),
|
|
('wine_region', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='wines', to='location.WineRegion', verbose_name='wine region')),
|
|
],
|
|
options={
|
|
'verbose_name': 'Product',
|
|
'verbose_name_plural': 'Products',
|
|
},
|
|
bases=(utils.models.TranslatedFieldsMixin, models.Model),
|
|
),
|
|
migrations.CreateModel(
|
|
name='OnlineProduct',
|
|
fields=[
|
|
],
|
|
options={
|
|
'verbose_name': 'Online product',
|
|
'verbose_name_plural': 'Online products',
|
|
'proxy': True,
|
|
'indexes': [],
|
|
'constraints': [],
|
|
},
|
|
bases=('product.product',),
|
|
),
|
|
]
|