- Изменено поле order_number с CharField на PositiveIntegerField - Удален метод generate_order_number() - Упрощен метод save() - автоинкремент на основе максимального значения - Номера заказов теперь хранятся как числа (1, 2, 3, ...) без форматирования - Удалены все миграции для чистого старта 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
45 lines
3.6 KiB
Python
45 lines
3.6 KiB
Python
# Generated by Django 5.0.10 on 2025-11-09 22:18
|
||
|
||
import phonenumber_field.modelfields
|
||
from django.db import migrations, models
|
||
|
||
|
||
class Migration(migrations.Migration):
|
||
|
||
initial = True
|
||
|
||
dependencies = [
|
||
]
|
||
|
||
operations = [
|
||
migrations.CreateModel(
|
||
name='Shop',
|
||
fields=[
|
||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||
('name', models.CharField(max_length=200, verbose_name='Название магазина')),
|
||
('street', models.CharField(max_length=255, verbose_name='Улица')),
|
||
('building_number', models.CharField(max_length=20, verbose_name='Номер здания')),
|
||
('district', models.CharField(blank=True, help_text='Район в Минске', max_length=100, null=True, verbose_name='Район')),
|
||
('phone', phonenumber_field.modelfields.PhoneNumberField(help_text='Контактный телефон магазина', max_length=128, region=None, verbose_name='Телефон')),
|
||
('email', models.EmailField(blank=True, max_length=254, null=True, verbose_name='Email')),
|
||
('opening_time', models.TimeField(help_text='Время начала работы магазина', verbose_name='Время открытия')),
|
||
('closing_time', models.TimeField(help_text='Время окончания работы магазина', verbose_name='Время закрытия')),
|
||
('working_days', models.CharField(default='Пн-Вс', help_text='Например: Пн-Пт, Пн-Вс, Пн-Сб', max_length=100, verbose_name='Рабочие дни')),
|
||
('is_active', models.BooleanField(default=True, help_text='Работает ли магазин в данный момент', verbose_name='Активен')),
|
||
('is_pickup_point', models.BooleanField(default=True, help_text='Доступен ли магазин для самовывоза заказов', verbose_name='Пункт самовывоза')),
|
||
('description', models.TextField(blank=True, help_text='Дополнительная информация о магазине', null=True, verbose_name='Описание')),
|
||
('delivery_instructions', models.TextField(blank=True, help_text='Как найти магазин, где припарковаться и т.д.', null=True, verbose_name='Инструкции для клиентов')),
|
||
('latitude', models.DecimalField(blank=True, decimal_places=6, help_text='Координаты для отображения на карте', max_digits=9, null=True, verbose_name='Широта')),
|
||
('longitude', models.DecimalField(blank=True, decimal_places=6, help_text='Координаты для отображения на карте', max_digits=9, null=True, verbose_name='Долгота')),
|
||
('created_at', models.DateTimeField(auto_now_add=True, verbose_name='Дата создания')),
|
||
('updated_at', models.DateTimeField(auto_now=True, verbose_name='Дата обновления')),
|
||
],
|
||
options={
|
||
'verbose_name': 'Магазин',
|
||
'verbose_name_plural': 'Магазины',
|
||
'ordering': ['name'],
|
||
'indexes': [models.Index(fields=['is_active'], name='shops_shop_is_acti_bbb154_idx'), models.Index(fields=['is_pickup_point'], name='shops_shop_is_pick_a04981_idx'), models.Index(fields=['district'], name='shops_shop_distric_04626c_idx')],
|
||
},
|
||
),
|
||
]
|