Use pylint for models.py
This commit is contained in:
parent
a7dd7d84e0
commit
e5460d90fc
@ -107,8 +107,7 @@ def update_profile(user_profile: UserProfile) -> None:
|
||||
Функция обновляет профиль пользователя в соответствии с текущим в Zendesk.
|
||||
|
||||
:param user_profile: Профиль пользователя
|
||||
:return: Обновленный, в соответствие с текущими данными
|
||||
в Zendesk, профиль пользователя
|
||||
:return: Обновленный, в соответствие с текущими данными в Zendesk, профиль пользователя
|
||||
"""
|
||||
user = zenpy.get_user(user_profile.user.email)
|
||||
user_profile.name = user.name
|
||||
@ -142,8 +141,7 @@ def check_user_auth(email: str, password: str) -> bool:
|
||||
"""
|
||||
Функция проверяет, верны ли входные данные.
|
||||
|
||||
:raise: :class:`APIException`: исключение,
|
||||
вызываемое если пользователь не аутентифицирован
|
||||
:raise: :class:`APIException`: исключение, вызываемое если пользователь не аутентифицирован
|
||||
"""
|
||||
creds = {
|
||||
'email': email,
|
||||
@ -176,7 +174,7 @@ def update_user_in_model(profile: UserProfile, zendesk_user: ZenpyUser) -> None:
|
||||
|
||||
def count_users(users: list) -> tuple:
|
||||
"""
|
||||
Функция подсчета количества сотрудников с ролями engineer и light_agent
|
||||
Функция подсчета количества сотрудников с ролями engineer и light_agent.
|
||||
"""
|
||||
engineers, light_agents = 0, 0
|
||||
for user in users:
|
||||
@ -189,7 +187,7 @@ def count_users(users: list) -> tuple:
|
||||
|
||||
def update_users_in_model() -> list:
|
||||
"""
|
||||
Обновляет пользователей в модели UserProfile по списку пользователей в организации
|
||||
Обновляет пользователей в модели UserProfile по списку пользователей в организации.
|
||||
"""
|
||||
users = get_users_list()
|
||||
for user in users:
|
||||
@ -217,10 +215,8 @@ def daterange(start_date: timedelta, end_date: timedelta) -> list:
|
||||
|
||||
def get_timedelta(log: RoleChangeLogs, time: timedelta = None) -> timedelta:
|
||||
"""
|
||||
Функция возвращает объект класса timedelta,
|
||||
который хранит промежуток времени от начала суток до момента,
|
||||
который находится в log (объект класса RoleChangeLogs)
|
||||
или в time(datetime.time), если введён.
|
||||
Функция возвращает объект класса timedelta, который хранит промежуток времени от начала суток до момента,
|
||||
который находится в log (объект класса RoleChangeLogs) или в time(datetime.time), если введён.
|
||||
|
||||
:param log: Лог
|
||||
:param time: Время
|
||||
@ -427,8 +423,7 @@ class StatisticData:
|
||||
|
||||
def _init_statistic(self) -> None:
|
||||
"""
|
||||
Функция заполняет словарь, в котором ключ - дата,
|
||||
значение - кол-во проработанных в этот день секунд.
|
||||
Функция заполняет словарь, в котором ключ - дата, значение - кол-во проработанных в этот день секунд.
|
||||
|
||||
:return: Статистика работы пользователя (statistic)
|
||||
"""
|
||||
@ -559,7 +554,8 @@ class CsvFormatter(logging.Formatter):
|
||||
|
||||
def format(self, record: logging.LogRecord) -> str:
|
||||
"""
|
||||
Функция форматирует запись смены роли пользователя в строку
|
||||
Функция форматирует запись смены роли пользователя в строку.
|
||||
|
||||
:param record: Запись смены роли пользователя.
|
||||
:return: Строка с записью смены пользователя.
|
||||
"""
|
||||
@ -606,8 +602,8 @@ def log(user: User, admin: int = 0) -> None:
|
||||
def set_session_params_for_work_page(request: WSGIRequest, count: int = None, is_confirm: bool = True) -> \
|
||||
Union[HttpResponsePermanentRedirect, HttpResponseRedirect]:
|
||||
"""
|
||||
Функция для страницы получения прав, устанавливает данные сессии
|
||||
о успешности запроса и количестве назначенных тикетов.
|
||||
Функция для страницы получения прав, устанавливает данные сессии о успешности запроса и количестве
|
||||
назначенных тикетов.
|
||||
|
||||
:param request: Получение данных с рабочей страницы пользователя
|
||||
:param count: Количество запрошенных тикетов
|
||||
|
@ -1,3 +1,8 @@
|
||||
"""
|
||||
Модели, использующиеся в приложении.
|
||||
"""
|
||||
|
||||
|
||||
from django.db import models
|
||||
from django.contrib.auth.models import User
|
||||
from django.db.models.signals import post_save
|
||||
@ -26,7 +31,12 @@ class UserProfile(models.Model):
|
||||
name = models.CharField(default='None', max_length=100, help_text='Имя пользователя на нашем сайте')
|
||||
|
||||
@property
|
||||
def zendesk_role(self):
|
||||
def zendesk_role(self) -> str:
|
||||
"""
|
||||
Функция возвращает роль пользователя в Zendesk в формате str, либо UNDERFINED, если пользователь не найден.
|
||||
|
||||
:return: Роль пользователя в Zendesk
|
||||
"""
|
||||
id = self.custom_role_id
|
||||
for role, r_id in ZENDESK_ROLES.items():
|
||||
if r_id == id:
|
||||
@ -35,13 +45,28 @@ class UserProfile(models.Model):
|
||||
|
||||
|
||||
@receiver(post_save, sender=User)
|
||||
def create_user_profile(sender, instance, created, **kwargs):
|
||||
def create_user_profile(instance, created, **kwargs) -> None:
|
||||
"""
|
||||
Функция создания профиля пользователя (Userprofile) при регистрации пользователя.
|
||||
|
||||
:param instance: Экземпляр класса User
|
||||
:param created: Создание профиля пользователя
|
||||
:param kwargs: Параметры
|
||||
:return: Обновленный список объектов профилей пользователей
|
||||
"""
|
||||
if created:
|
||||
UserProfile.objects.create(user=instance)
|
||||
|
||||
|
||||
@receiver(post_save, sender=User)
|
||||
def save_user_profile(sender, instance, **kwargs):
|
||||
def save_user_profile(instance, **kwargs) -> None:
|
||||
"""
|
||||
Функция записи БД профиля пользователя.
|
||||
|
||||
:param instance: Экземпляр класса User
|
||||
:param kwargs: Параметры
|
||||
:return: Запись профиля пользователя
|
||||
"""
|
||||
instance.userprofile.save()
|
||||
|
||||
|
||||
@ -49,16 +74,12 @@ class RoleChangeLogs(models.Model):
|
||||
"""
|
||||
Модель для логирования изменений ролей пользователя.
|
||||
"""
|
||||
user = models.ForeignKey(to=User,
|
||||
on_delete=models.CASCADE,
|
||||
user = models.ForeignKey(to=User, on_delete=models.CASCADE,
|
||||
help_text='Пользователь, которому присвоили другую роль')
|
||||
old_role = models.IntegerField(default=0, help_text='Старая роль')
|
||||
new_role = models.IntegerField(default=0, help_text='Присвоенная роль')
|
||||
change_time = models.DateTimeField(
|
||||
default=timezone.now, help_text='Дата и время изменения роли')
|
||||
changed_by = models.ForeignKey(to=User,
|
||||
on_delete=models.CASCADE,
|
||||
related_name='changed_by',
|
||||
change_time = models.DateTimeField(default=timezone.now, help_text='Дата и время изменения роли')
|
||||
changed_by = models.ForeignKey(to=User, on_delete=models.CASCADE, related_name='changed_by',
|
||||
help_text='Кем была изменена роль')
|
||||
|
||||
|
||||
|
@ -1,3 +1,8 @@
|
||||
"""
|
||||
View функции.
|
||||
"""
|
||||
|
||||
|
||||
from smtplib import SMTPException
|
||||
from typing import Dict, Any, Optional
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user