0.0.24
route model
This commit is contained in:
@@ -6,20 +6,26 @@ from django.core.exceptions import ValidationError
|
|||||||
from .models import *
|
from .models import *
|
||||||
|
|
||||||
|
|
||||||
class RegistrationForm(forms.Form):
|
class RegistrationForm(forms.ModelForm):
|
||||||
type_transport = forms.ChoiceField(choices=type_transport_choices, initial='avia', required=True, label='Выберите способ перевозки')
|
class Meta:
|
||||||
departure_DT = forms.DateTimeField(required=True, label='Дата и время выезда')
|
model = Route
|
||||||
arrival_DT = forms.DateTimeField(required=True, label='Дата и время прибытия')
|
exclude = ['receive_msg_by_sms', 'owner', 'owner_type']
|
||||||
from_country = forms.CharField(required=True, label='Пункт выезда')
|
|
||||||
to_country = forms.CharField(required=True, label='Пункт приезда')
|
|
||||||
# from_city = forms.CharField(required=True)
|
# class RegistrationForm(forms.Form):
|
||||||
# to_city = forms.CharField(required=True)
|
# type_transport = forms.ChoiceField(choices=type_transport_choices, initial='avia', required=True, label='Выберите способ перевозки')
|
||||||
from_place = forms.ChoiceField(choices=transfer_location_choices, initial='other', required=True, label='Откуда можете забрать?')
|
# departure_DT = forms.DateTimeField(required=True, label='Дата и время выезда')
|
||||||
to_place = forms.ChoiceField(choices=transfer_location_choices, initial='other', required=True, label='Куда можете доставить?')
|
# arrival_DT = forms.DateTimeField(required=True, label='Дата и время прибытия')
|
||||||
cargo_type = forms.ChoiceField(choices=cargo_type_choices, initial='parcel', required=True, label='Могу перевезти')
|
# from_country = forms.CharField(required=True, label='Пункт выезда')
|
||||||
weight = forms.IntegerField(required=True, label='Укажите вес до (кг)')
|
# to_country = forms.CharField(required=True, label='Пункт приезда')
|
||||||
phone = forms.CharField(required=True, label='Укажите номер для связи')
|
# # from_city = forms.CharField(required=True)
|
||||||
add_phone = forms.CharField(required=True, label='Дополнительный номер')
|
# # to_city = forms.CharField(required=True)
|
||||||
receive_msg_by_email = forms.BooleanField(initial=False, required=True, label='Получать уведомления по E-mail')
|
# from_place = forms.ChoiceField(choices=transfer_location_choices, initial='other', required=True, label='Откуда можете забрать?')
|
||||||
# receive_msg_by_sms = forms.BooleanField(initial=False, required=True)
|
# to_place = forms.ChoiceField(choices=transfer_location_choices, initial='other', required=True, label='Куда можете доставить?')
|
||||||
# owner = forms.IntegerField(required=True)
|
# cargo_type = forms.ChoiceField(choices=cargo_type_choices, initial='parcel', required=True, label='Могу перевезти')
|
||||||
|
# weight = forms.IntegerField(required=True, label='Укажите вес до (кг)')
|
||||||
|
# phone = forms.CharField(required=True, label='Укажите номер для связи')
|
||||||
|
# add_phone = forms.CharField(required=True, label='Дополнительный номер')
|
||||||
|
# receive_msg_by_email = forms.BooleanField(initial=False, required=True, label='Получать уведомления по E-mail')
|
||||||
|
# # receive_msg_by_sms = forms.BooleanField(initial=False, required=True)
|
||||||
|
# # owner = forms.IntegerField(required=True)
|
||||||
|
|||||||
50
RoutesApp/migrations/0001_initial.py
Normal file
50
RoutesApp/migrations/0001_initial.py
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
# Generated by Django 4.2.2 on 2023-07-13 15:00
|
||||||
|
|
||||||
|
from django.conf import settings
|
||||||
|
from django.db import migrations, models
|
||||||
|
import django.db.models.deletion
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
initial = True
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.CreateModel(
|
||||||
|
name='Route',
|
||||||
|
fields=[
|
||||||
|
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
|
('name', models.TextField(blank=True, help_text='Название', null=True, verbose_name='Название')),
|
||||||
|
('name_plural', models.TextField(blank=True, null=True, verbose_name='Название (множественное число)')),
|
||||||
|
('order', models.IntegerField(blank=True, null=True, verbose_name='Очередность отображения')),
|
||||||
|
('createDT', models.DateTimeField(auto_now_add=True, verbose_name='Дата и время создания')),
|
||||||
|
('modifiedDT', models.DateTimeField(blank=True, null=True, verbose_name='Дата и время последнего изменения')),
|
||||||
|
('enable', models.BooleanField(db_index=True, default=True, verbose_name='Включено')),
|
||||||
|
('json_data', models.JSONField(blank=True, default=dict, verbose_name='Дополнительные данные')),
|
||||||
|
('owner_type', models.CharField(choices=[('customer', 'Заказчик'), ('mover', 'Перевозчик')], default='customer', verbose_name='Тип опреации')),
|
||||||
|
('type_transport', models.CharField(choices=[('avia', 'Авиатранспорт'), ('road', 'Наземный транспорт')], default='avia', verbose_name='Выберите способ перевозки')),
|
||||||
|
('departure_DT', models.DateTimeField(default=True, verbose_name='Дата и время выезда')),
|
||||||
|
('arrival_DT', models.DateTimeField(default=True, verbose_name='Дата и время прибытия')),
|
||||||
|
('from_country', models.CharField(verbose_name='Пункт выезда')),
|
||||||
|
('to_country', models.CharField(verbose_name='Пункт приезда')),
|
||||||
|
('from_place', models.CharField(choices=[('airport', 'В аэропорту'), ('city', 'По городу'), ('other', 'По договоренности')], default='other', verbose_name='Откуда можете забрать?')),
|
||||||
|
('to_place', models.CharField(choices=[('airport', 'В аэропорту'), ('city', 'По городу'), ('other', 'По договоренности')], default='other', verbose_name='Куда можете доставить?')),
|
||||||
|
('cargo_type', models.CharField(choices=[('passenger', 'Пассажир'), ('cargo', 'Груз'), ('parcel', 'Бандероль'), ('package', 'Посылка'), ('letter', 'Письмо\\Документ')], default='parcel', verbose_name='Могу перевезти')),
|
||||||
|
('weight', models.IntegerField(verbose_name='Укажите вес до (кг)')),
|
||||||
|
('phone', models.CharField(verbose_name='Укажите номер для связи')),
|
||||||
|
('extra_phone', models.CharField(blank=True, null=True, verbose_name='Дополнительный номер')),
|
||||||
|
('receive_msg_by_email', models.BooleanField(default=False, verbose_name='Получать уведомления по E-mail')),
|
||||||
|
('receive_msg_by_sms', models.BooleanField(default=False, verbose_name='Получать уведомления по SMS')),
|
||||||
|
('owner', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='rel_routes_for_owner', to=settings.AUTH_USER_MODEL, verbose_name='Владелец')),
|
||||||
|
],
|
||||||
|
options={
|
||||||
|
'verbose_name': 'Маршрут',
|
||||||
|
'verbose_name_plural': 'Маршруты',
|
||||||
|
'ordering': ('name',),
|
||||||
|
},
|
||||||
|
),
|
||||||
|
]
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
from django.db import models
|
from django.db import models
|
||||||
from django.utils.translation import gettext_lazy as _
|
from django.utils.translation import gettext_lazy as _
|
||||||
# Create your models here.
|
from BaseModels.base_models import BaseModel
|
||||||
|
|
||||||
|
|
||||||
type_transport_choices = (
|
type_transport_choices = (
|
||||||
@@ -20,4 +20,48 @@ cargo_type_choices = (
|
|||||||
('parcel', _('Бандероль')),
|
('parcel', _('Бандероль')),
|
||||||
('package', _('Посылка')),
|
('package', _('Посылка')),
|
||||||
('letter', _('Письмо\Документ'))
|
('letter', _('Письмо\Документ'))
|
||||||
)
|
)
|
||||||
|
|
||||||
|
owner_type_choices = (
|
||||||
|
('customer', 'Заказчик'),
|
||||||
|
('mover', 'Перевозчик')
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
class Route(BaseModel):
|
||||||
|
from django.contrib.auth.models import User
|
||||||
|
|
||||||
|
owner_type = models.CharField(
|
||||||
|
choices=owner_type_choices, default='customer', verbose_name=_('Тип опреации'))
|
||||||
|
|
||||||
|
type_transport = models.CharField(
|
||||||
|
choices=type_transport_choices, default='avia', verbose_name=_('Выберите способ перевозки'))
|
||||||
|
departure_DT = models.DateTimeField(default=True, verbose_name=_('Дата и время выезда'))
|
||||||
|
arrival_DT = models.DateTimeField(default=True, verbose_name=_('Дата и время прибытия'))
|
||||||
|
from_country = models.CharField(verbose_name=_('Пункт выезда'))
|
||||||
|
to_country = models.CharField(verbose_name=_('Пункт приезда'))
|
||||||
|
# from_city = forms.CharField(required=True)
|
||||||
|
# to_city = forms.CharField(required=True)
|
||||||
|
from_place = models.CharField(choices=transfer_location_choices, default='other',
|
||||||
|
verbose_name=_('Откуда можете забрать?'))
|
||||||
|
to_place = models.CharField(choices=transfer_location_choices, default='other',
|
||||||
|
verbose_name=_('Куда можете доставить?'))
|
||||||
|
cargo_type = models.CharField(choices=cargo_type_choices, default='parcel', verbose_name=_('Могу перевезти'))
|
||||||
|
weight = models.IntegerField(verbose_name=_('Укажите вес до (кг)'))
|
||||||
|
phone = models.CharField(verbose_name=_('Укажите номер для связи'))
|
||||||
|
extra_phone = models.CharField(verbose_name=_('Дополнительный номер'), blank=True, null=True)
|
||||||
|
receive_msg_by_email = models.BooleanField(default=False, verbose_name=_('Получать уведомления по E-mail'))
|
||||||
|
receive_msg_by_sms = models.BooleanField(default=False, verbose_name=_('Получать уведомления по SMS'))
|
||||||
|
owner = models.ForeignKey(User, verbose_name=_('Владелец'), related_name='rel_routes_for_owner', on_delete=models.CASCADE)
|
||||||
|
|
||||||
|
def __str__(self):
|
||||||
|
if self.name:
|
||||||
|
return f'{self.name}'
|
||||||
|
else:
|
||||||
|
return str(self.id)
|
||||||
|
|
||||||
|
|
||||||
|
class Meta:
|
||||||
|
verbose_name = _(u'Маршрут')
|
||||||
|
verbose_name_plural = _(u'Маршруты')
|
||||||
|
ordering = ('name',)
|
||||||
@@ -46,6 +46,7 @@ INSTALLED_APPS = [
|
|||||||
|
|
||||||
'GeneralApp',
|
'GeneralApp',
|
||||||
'AuthApp',
|
'AuthApp',
|
||||||
|
'RoutesApp',
|
||||||
]
|
]
|
||||||
|
|
||||||
MIDDLEWARE = [
|
MIDDLEWARE = [
|
||||||
|
|||||||
Reference in New Issue
Block a user