cleanings
This commit is contained in:
86
antifroud/migrations/0001_initial.py
Normal file
86
antifroud/migrations/0001_initial.py
Normal file
@@ -0,0 +1,86 @@
|
||||
# Generated by Django 5.1.4 on 2024-12-12 12:28
|
||||
|
||||
import django.db.models.deletion
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
initial = True
|
||||
|
||||
dependencies = [
|
||||
('hotels', '0004_alter_reservation_room_number'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name='ExternalDBSettings',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('name', models.CharField(help_text='Имя подключения для идентификации.', max_length=255, unique=True)),
|
||||
('host', models.CharField(help_text='Адрес сервера базы данных.', max_length=255)),
|
||||
('port', models.PositiveIntegerField(default=3306, help_text='Порт сервера базы данных.')),
|
||||
('database', models.CharField(help_text='Имя базы данных.', max_length=255)),
|
||||
('user', models.CharField(help_text='Имя пользователя базы данных.', max_length=255)),
|
||||
('password', models.CharField(help_text='Пароль для подключения.', max_length=255)),
|
||||
('table_name', models.CharField(blank=True, help_text='Имя таблицы для загрузки данных.', max_length=255, null=True)),
|
||||
('selected_fields', models.TextField(blank=True, help_text='Список полей для загрузки (через запятую).', null=True)),
|
||||
('is_active', models.BooleanField(default=True, help_text='Флаг активности подключения.')),
|
||||
('created_at', models.DateTimeField(auto_now_add=True)),
|
||||
('updated_at', models.DateTimeField(auto_now=True)),
|
||||
],
|
||||
options={
|
||||
'verbose_name': 'Настройки подключения к БД',
|
||||
'verbose_name_plural': 'Настройки подключений к БД',
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='UserActivityLog',
|
||||
fields=[
|
||||
('id', models.BigIntegerField(primary_key=True, serialize=False)),
|
||||
('user_id', models.BigIntegerField(verbose_name='ID пользователя')),
|
||||
('ip', models.GenericIPAddressField(verbose_name='IP-адрес')),
|
||||
('created', models.DateTimeField(verbose_name='Дата создания')),
|
||||
('timestamp', models.BigIntegerField(verbose_name='Метка времени')),
|
||||
('date_time', models.DateTimeField(verbose_name='Дата и время')),
|
||||
('referred', models.TextField(blank=True, null=True, verbose_name='Реферальная ссылка')),
|
||||
('agent', models.TextField(verbose_name='Агент пользователя')),
|
||||
('platform', models.CharField(blank=True, max_length=255, null=True, verbose_name='Платформа')),
|
||||
('version', models.CharField(blank=True, max_length=255, null=True, verbose_name='Версия')),
|
||||
('model', models.CharField(blank=True, max_length=255, null=True, verbose_name='Модель устройства')),
|
||||
('device', models.CharField(blank=True, max_length=255, null=True, verbose_name='Тип устройства')),
|
||||
('UAString', models.TextField(verbose_name='User-Agent строка')),
|
||||
('location', models.CharField(blank=True, max_length=255, null=True, verbose_name='Местоположение')),
|
||||
('page_id', models.BigIntegerField(blank=True, null=True, verbose_name='ID страницы')),
|
||||
('url_parameters', models.TextField(blank=True, null=True, verbose_name='Параметры URL')),
|
||||
('page_title', models.TextField(blank=True, null=True, verbose_name='Заголовок страницы')),
|
||||
('type', models.CharField(max_length=50, verbose_name='Тип')),
|
||||
('last_counter', models.IntegerField(verbose_name='Последний счетчик')),
|
||||
('hits', models.IntegerField(verbose_name='Количество обращений')),
|
||||
('honeypot', models.BooleanField(verbose_name='Метка honeypot')),
|
||||
('reply', models.BooleanField(verbose_name='Ответ пользователя')),
|
||||
('page_url', models.URLField(blank=True, null=True, verbose_name='URL страницы')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': 'Регистрация посетителей',
|
||||
'verbose_name_plural': 'Регистрации посетителей',
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='RoomDiscrepancy',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('room_number', models.CharField(max_length=50, verbose_name='Номер комнаты')),
|
||||
('booking_id', models.CharField(max_length=255, verbose_name='ID бронирования')),
|
||||
('check_in_date_expected', models.DateField(verbose_name='Ожидаемая дата заселения')),
|
||||
('check_in_date_actual', models.DateField(verbose_name='Фактическая дата заселения')),
|
||||
('discrepancy_type', models.CharField(choices=[('early', 'Раннее заселение'), ('late', 'Позднее заселение'), ('missed', 'Неявка')], max_length=50, verbose_name='Тип несоответствия')),
|
||||
('created_at', models.DateTimeField(auto_now_add=True, verbose_name='Дата создания')),
|
||||
('hotel', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='hotels.hotel', verbose_name='Отель')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': 'Несовпадение в заселении',
|
||||
'verbose_name_plural': 'Несовпадения в заселении',
|
||||
},
|
||||
),
|
||||
]
|
||||
Reference in New Issue
Block a user