pylance types fixes

This commit is contained in:
2025-05-24 15:22:37 +03:00
parent 88dc6932ec
commit 4897a5050d
3 changed files with 43 additions and 7 deletions

View File

@@ -8,12 +8,11 @@ from django.shortcuts import get_object_or_404
from django.core.validators import validate_email from django.core.validators import validate_email
from django.core.exceptions import ValidationError from django.core.exceptions import ValidationError
from django.db import models from django.db import models
from django.contrib.auth.models import User
from api.auth.serializers import UserResponseSerializer from api.auth.serializers import UserResponseSerializer
from api.models import UserProfile from api.models import UserProfile
from api.utils.decorators import handle_exceptions from api.utils.decorators import handle_exceptions
from routes.models import Route, City, Country, Leads from routes.models import Route, City, Country
from sitemanagement.models import Pricing from sitemanagement.models import Pricing
from .serializers import RouteSerializer, CreateRouteSerializer, CitySerializer, CountrySerializer, PlanChangeSerializer, PricingSerializer, LeadSerializer from .serializers import RouteSerializer, CreateRouteSerializer, CitySerializer, CountrySerializer, PlanChangeSerializer, PricingSerializer, LeadSerializer

View File

@@ -0,0 +1,33 @@
# Generated by Django 5.2.1 on 2025-05-24 12:15
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('routes', '0005_alter_leads_moving_price'),
]
operations = [
migrations.AlterField(
model_name='city',
name='id',
field=models.BigAutoField(primary_key=True, serialize=False),
),
migrations.AlterField(
model_name='country',
name='id',
field=models.BigAutoField(primary_key=True, serialize=False),
),
migrations.AlterField(
model_name='leads',
name='id',
field=models.BigAutoField(primary_key=True, serialize=False),
),
migrations.AlterField(
model_name='route',
name='id',
field=models.BigAutoField(primary_key=True, serialize=False),
),
]

View File

@@ -3,6 +3,7 @@ from django.contrib.auth.models import User
from routes.constants.routeChoices import owner_type_choices, type_transport_choices, cargo_type_choices from routes.constants.routeChoices import owner_type_choices, type_transport_choices, cargo_type_choices
class Country(models.Model): class Country(models.Model):
id = models.BigAutoField(primary_key=True)
international_name = models.CharField(max_length=250, verbose_name=('Международное название'), blank=True, null=True) international_name = models.CharField(max_length=250, verbose_name=('Международное название'), blank=True, null=True)
official_name = models.CharField(max_length=250, verbose_name=('Официальное название'), blank=True, null=True) official_name = models.CharField(max_length=250, verbose_name=('Официальное название'), blank=True, null=True)
@@ -25,13 +26,14 @@ class Country(models.Model):
upload_to='uploads/flags/', verbose_name=('Флаг'), upload_to='uploads/flags/', verbose_name=('Флаг'),
null=True, blank=True, help_text=u'') null=True, blank=True, help_text=u'')
def __str__(self): def __str__(self) -> str:
if self.international_name: if self.international_name:
return f'{self.international_name}' return f'{self.international_name}'
elif self.official_name: elif self.official_name:
return f'{self.official_name}' return f'{self.official_name}'
elif self.code: elif self.code:
return f'{self.code}' return f'{self.code}'
return super().__str__()
class Meta: class Meta:
verbose_name = ('Страна') verbose_name = ('Страна')
@@ -40,7 +42,7 @@ class Country(models.Model):
class City(models.Model): class City(models.Model):
id = models.BigAutoField(primary_key=True)
country = models.ForeignKey( country = models.ForeignKey(
Country, verbose_name=('Страна'), related_name='rel_cities_for_country', on_delete=models.CASCADE) Country, verbose_name=('Страна'), related_name='rel_cities_for_country', on_delete=models.CASCADE)
@@ -54,7 +56,7 @@ class City(models.Model):
parsing_finished_DT = models.DateTimeField(verbose_name=('Дата и время завершения парсинга'), blank=True, null=True) parsing_finished_DT = models.DateTimeField(verbose_name=('Дата и время завершения парсинга'), blank=True, null=True)
def __str__(self): def __str__(self) -> str:
return f'{self.name}' return f'{self.name}'
class Meta: class Meta:
@@ -63,6 +65,7 @@ class City(models.Model):
ordering = ('name',) ordering = ('name',)
class Route(models.Model): class Route(models.Model):
id = models.BigAutoField(primary_key=True)
owner_type = models.CharField( owner_type = models.CharField(
choices=owner_type_choices, default='customer', verbose_name=('Тип операции')) choices=owner_type_choices, default='customer', verbose_name=('Тип операции'))
@@ -102,7 +105,7 @@ class Route(models.Model):
blank=True, null=True blank=True, null=True
) )
def __str__(self): def __str__(self) -> str:
from_city_name = self.from_city.name if self.from_city else 'Не указан' from_city_name = self.from_city.name if self.from_city else 'Не указан'
to_city_name = self.to_city.name if self.to_city else 'Не указан' to_city_name = self.to_city.name if self.to_city else 'Не указан'
return f"Маршрут #{self.id}: {from_city_name}{to_city_name}" return f"Маршрут #{self.id}: {from_city_name}{to_city_name}"
@@ -113,6 +116,7 @@ class Route(models.Model):
ordering = ('id',) ordering = ('id',)
class Leads(models.Model): class Leads(models.Model):
id = models.BigAutoField(primary_key=True)
route = models.ForeignKey(Route, verbose_name="Маршрут", on_delete=models.CASCADE) route = models.ForeignKey(Route, verbose_name="Маршрут", on_delete=models.CASCADE)
moving_user = models.ForeignKey(User, verbose_name="Перевозчик", on_delete=models.CASCADE) moving_user = models.ForeignKey(User, verbose_name="Перевозчик", on_delete=models.CASCADE)
moving_price = models.DecimalField(max_digits=10, decimal_places=2) moving_price = models.DecimalField(max_digits=10, decimal_places=2)
@@ -125,5 +129,5 @@ class Leads(models.Model):
verbose_name_plural = 'Заявки' verbose_name_plural = 'Заявки'
ordering = ['-created_at'] ordering = ['-created_at']
def __str__(self): def __str__(self) -> str:
return f"Заявка по маршруту {self.route}" return f"Заявка по маршруту {self.route}"