Make spelling
This commit is contained in:
parent
4a0dfd2890
commit
a4a797aa40
@ -1,7 +1,6 @@
|
|||||||
Документация разработчика
|
Документация разработчика
|
||||||
=========================
|
=========================
|
||||||
|
|
||||||
|
|
||||||
*******
|
*******
|
||||||
Models
|
Models
|
||||||
*******
|
*******
|
||||||
@ -48,3 +47,5 @@ Views
|
|||||||
|
|
||||||
.. automodule:: main.views
|
.. automodule:: main.views
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
|
|
||||||
|
@ -115,24 +115,12 @@ def skip_queryset(app, what, name, obj, skip, options):
|
|||||||
return True
|
return True
|
||||||
return skip
|
return skip
|
||||||
|
|
||||||
# def process_signature(app):
|
|
||||||
# if app != 'module':
|
|
||||||
# return lines
|
|
||||||
# from enchant.checker import SpellChecker
|
|
||||||
# for line in lines:
|
|
||||||
# chkr = SpellChecker("ru_RU", line)
|
|
||||||
# for err in chkr:
|
|
||||||
# print(err)
|
|
||||||
# print('cheked')
|
|
||||||
|
|
||||||
|
# def setup(app):
|
||||||
def setup(app):
|
# # Register the docstring processor with sphinx
|
||||||
# Register the docstring processor with sphinx
|
# app.connect('autodoc-process-docstring', process_django_models)
|
||||||
app.connect('autodoc-process-docstring', process_django_models)
|
# app.connect('autodoc-skip-member', skip_queryset)
|
||||||
app.connect('autodoc-skip-member', skip_queryset)
|
# app.connect('autodoc-process-docstring', process_modules)
|
||||||
app.connect('autodoc-process-docstring', process_modules)
|
|
||||||
# process_signature(app)
|
|
||||||
print('app')
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -196,12 +184,8 @@ intersphinx_mapping = {
|
|||||||
autodoc_default_flags = ['members']
|
autodoc_default_flags = ['members']
|
||||||
|
|
||||||
# spell checking
|
# spell checking
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
spelling_lang = 'ru_RU'
|
spelling_lang = 'ru_RU'
|
||||||
tokenizer_lang = 'ru_RU'
|
tokenizer_lang = 'ru_RU'
|
||||||
spelling_word_list_filename = ['spelling_wordlist', None]
|
|
||||||
spelling_exclude_patterns=['ignored_*']
|
spelling_exclude_patterns=['ignored_*']
|
||||||
spelling_show_suggestions = True
|
spelling_show_suggestions = True
|
||||||
spelling_show_whole_line=True
|
spelling_show_whole_line=True
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
You can adapt this file completely to your liking, but it should at least
|
You can adapt this file completely to your liking, but it should at least
|
||||||
contain the root `toctree` directive.
|
contain the root `toctree` directive.
|
||||||
|
|
||||||
Welcome to ZenDesk Access Controller's documentation!
|
Документация контроллера прав доступа
|
||||||
=====================================================
|
=====================================================
|
||||||
|
|
||||||
.. toctree::
|
.. toctree::
|
||||||
@ -15,7 +15,6 @@ Welcome to ZenDesk Access Controller's documentation!
|
|||||||
todo
|
todo
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Indices and tables
|
Indices and tables
|
||||||
==================
|
==================
|
||||||
|
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
******************************
|
******************************
|
||||||
|
|
||||||
|
|
||||||
**ZenDesk Access Controller** - Web-приложение, для выдачи прав пользователям системы по запросу самого пользователя.
|
**ZenDesk Access Controller** - web-приложение, для выдачи прав пользователям системы по запросу самого пользователя.
|
||||||
|
|
||||||
Например, из 12 человек 3 сейчас работают с правами администратора, по окончании рабочей смены они сдают свои права (освобождают места) и другие пользователи могут запросить эти права в свое пользование.
|
Например, из 12 человек 3 сейчас работают с правами администратора, по окончании рабочей смены они сдают свои права (освобождают места) и другие пользователи могут запросить эти права в свое пользование.
|
||||||
|
|
||||||
@ -52,7 +52,7 @@
|
|||||||
|
|
||||||
.. image:: _static/login.png
|
.. image:: _static/login.png
|
||||||
|
|
||||||
Если Вы не помните пароль необходимо пройти по ссылке "Забыли пароль" и указанть email.
|
Если Вы не помните пароль необходимо пройти по ссылке "Забыли пароль" и указать email.
|
||||||
На Вашу почту придет ссылка для установки нового пароля.
|
На Вашу почту придет ссылка для установки нового пароля.
|
||||||
|
|
||||||
********
|
********
|
||||||
@ -78,7 +78,7 @@
|
|||||||
Управление правами доступа администратором
|
Управление правами доступа администратором
|
||||||
******************************************
|
******************************************
|
||||||
|
|
||||||
Для администратора существует удобный интефейс страницы управления, в котором представлены:
|
Для администратора существует удобный интерфейс страницы управления, в котором представлены:
|
||||||
|
|
||||||
* Количество свободных инженерных мест
|
* Количество свободных инженерных мест
|
||||||
* Количество и список инженеров и легких агентов
|
* Количество и список инженеров и легких агентов
|
||||||
|
@ -0,0 +1,86 @@
|
|||||||
|
тикетами
|
||||||
|
тикета
|
||||||
|
тикетов
|
||||||
|
тикет
|
||||||
|
web
|
||||||
|
Indices
|
||||||
|
and
|
||||||
|
tables
|
||||||
|
Models
|
||||||
|
логирования
|
||||||
|
User
|
||||||
|
user
|
||||||
|
superuser
|
||||||
|
light
|
||||||
|
light_agent
|
||||||
|
admin
|
||||||
|
agent
|
||||||
|
bootstrap
|
||||||
|
form
|
||||||
|
control
|
||||||
|
Zendesk
|
||||||
|
email
|
||||||
|
Extra
|
||||||
|
Functions
|
||||||
|
env
|
||||||
|
ID
|
||||||
|
url
|
||||||
|
None
|
||||||
|
token
|
||||||
|
password
|
||||||
|
engineer
|
||||||
|
SYSTEM
|
||||||
|
start_date
|
||||||
|
end_date
|
||||||
|
timedelta
|
||||||
|
log
|
||||||
|
RoleChangeLogs
|
||||||
|
time(datetime.time)
|
||||||
|
stat
|
||||||
|
statistic
|
||||||
|
True
|
||||||
|
False
|
||||||
|
val
|
||||||
|
start
|
||||||
|
end
|
||||||
|
date
|
||||||
|
Токен
|
||||||
|
токеном
|
||||||
|
аутентифицирован
|
||||||
|
(datetime.time)
|
||||||
|
datetime
|
||||||
|
time
|
||||||
|
serializer
|
||||||
|
валидны
|
||||||
|
html
|
||||||
|
subdomain
|
||||||
|
логгирования
|
||||||
|
логгирование
|
||||||
|
forms
|
||||||
|
StatisticForm
|
||||||
|
Userprofile
|
||||||
|
login
|
||||||
|
login_required
|
||||||
|
required
|
||||||
|
id
|
||||||
|
prom
|
||||||
|
home
|
||||||
|
PycharmProjects
|
||||||
|
Access
|
||||||
|
access
|
||||||
|
controler
|
||||||
|
controller
|
||||||
|
main
|
||||||
|
views
|
||||||
|
py
|
||||||
|
docstring
|
||||||
|
of
|
||||||
|
page
|
||||||
|
API
|
||||||
|
functions
|
||||||
|
Serializer
|
||||||
|
Serializers
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -13,7 +13,7 @@ from main.models import UserProfile, RoleChangeLogs, UnassignedTicket, Unassigne
|
|||||||
|
|
||||||
class ZendeskAdmin:
|
class ZendeskAdmin:
|
||||||
"""
|
"""
|
||||||
Класс **ZendeskAdmin** существует, чтобы в каждой фунциии отдельно не проверять аккаунт администратора.
|
Класс **ZendeskAdmin** существует, чтобы в каждой функции отдельно не проверять аккаунт администратора.
|
||||||
|
|
||||||
:param credentials: Полномочия (первым указывается учетная запись организации в Zendesk)
|
:param credentials: Полномочия (первым указывается учетная запись организации в Zendesk)
|
||||||
:type credentials: :class:`dict`
|
:type credentials: :class:`dict`
|
||||||
@ -95,7 +95,7 @@ class ZendeskAdmin:
|
|||||||
Функция возвращает группы, к которым принадлежит пользователь.
|
Функция возвращает группы, к которым принадлежит пользователь.
|
||||||
|
|
||||||
:param name: Имя пользователя
|
:param name: Имя пользователя
|
||||||
:return: Группы пользователя (в случае отствия None)
|
:return: Группы пользователя (в случае отсутствия None)
|
||||||
"""
|
"""
|
||||||
groups = self.admin.search(name)
|
groups = self.admin.search(name)
|
||||||
for group in groups:
|
for group in groups:
|
||||||
@ -155,10 +155,10 @@ def update_role(user_profile: UserProfile, role: str) -> UserProfile:
|
|||||||
|
|
||||||
def make_engineer(user_profile: UserProfile, who_changes: User) -> UserProfile:
|
def make_engineer(user_profile: UserProfile, who_changes: User) -> UserProfile:
|
||||||
"""
|
"""
|
||||||
Функция устанавливапет пользователю роль инженера.
|
Функция устанавливает пользователю роль инженера.
|
||||||
|
|
||||||
:param user_profile: Профиль пользователя
|
:param user_profile: Профиль пользователя
|
||||||
:return: Вызов функции **update_role** с параметрами: профиль пользователя, роль "endineer"
|
:return: Вызов функции **update_role** с параметрами: профиль пользователя, роль "engineer"
|
||||||
"""
|
"""
|
||||||
RoleChangeLogs.objects.create(
|
RoleChangeLogs.objects.create(
|
||||||
user=user_profile.user,
|
user=user_profile.user,
|
||||||
@ -171,7 +171,7 @@ def make_engineer(user_profile: UserProfile, who_changes: User) -> UserProfile:
|
|||||||
|
|
||||||
def make_light_agent(user_profile: UserProfile, who_changes: User) -> UserProfile:
|
def make_light_agent(user_profile: UserProfile, who_changes: User) -> UserProfile:
|
||||||
"""
|
"""
|
||||||
Функция устанавливапет пользователю роль легкого агента.
|
Функция устанавливает пользователю роль легкого агента.
|
||||||
|
|
||||||
:param user_profile: Профиль пользователя
|
:param user_profile: Профиль пользователя
|
||||||
:return: Вызов функции **update_role** с параметрами: профиль пользователя, роль "light_agent"
|
:return: Вызов функции **update_role** с параметрами: профиль пользователя, роль "light_agent"
|
||||||
@ -220,7 +220,7 @@ def get_tickets_list(email):
|
|||||||
|
|
||||||
def update_profile(user_profile: UserProfile) -> UserProfile:
|
def update_profile(user_profile: UserProfile) -> UserProfile:
|
||||||
"""
|
"""
|
||||||
Функция обновляет профиль пользователя в соотвтетствии с текущим в Zendesk.
|
Функция обновляет профиль пользователя в соответствии с текущим в Zendesk.
|
||||||
|
|
||||||
:param user_profile: Профиль пользователя
|
:param user_profile: Профиль пользователя
|
||||||
:return: Обновленный, в соответствие с текущими данными в Zendesk, профиль пользователя
|
:return: Обновленный, в соответствие с текущими данными в Zendesk, профиль пользователя
|
||||||
@ -248,7 +248,7 @@ def get_user_organization(email: str) -> str:
|
|||||||
Функция возвращает организацию пользователя.
|
Функция возвращает организацию пользователя.
|
||||||
|
|
||||||
:param email: Email пользователя
|
:param email: Email пользователя
|
||||||
:return: Организацния пользователя
|
:return: Организация пользователя
|
||||||
"""
|
"""
|
||||||
return ZendeskAdmin().get_user_org(email)
|
return ZendeskAdmin().get_user_org(email)
|
||||||
|
|
||||||
@ -290,7 +290,7 @@ def update_user_in_model(profile: UserProfile, zendesk_user: User) -> UserProfil
|
|||||||
|
|
||||||
def count_users(users) -> tuple:
|
def count_users(users) -> tuple:
|
||||||
"""
|
"""
|
||||||
Функция подсчета количества сотрудников с ролями engineer и light_a
|
Функция подсчета количества сотрудников с ролями engineer и light_agent
|
||||||
"""
|
"""
|
||||||
engineers, light_agents = 0, 0
|
engineers, light_agents = 0, 0
|
||||||
for user in users:
|
for user in users:
|
||||||
@ -358,11 +358,11 @@ def last_day_of_month(day: int) -> int:
|
|||||||
class StatisticData:
|
class StatisticData:
|
||||||
"""
|
"""
|
||||||
Класс для учета статистики интервалов работы пользователей.
|
Класс для учета статистики интервалов работы пользователей.
|
||||||
Передаваемые параметры: start_date, end_date, user_email, stat.
|
Передаваемые параметры: start_date, end_date, email, stat.
|
||||||
|
|
||||||
:param display: Формат отображения времени (часы, минуты)
|
:param display: Формат отображения времени (часы, минуты)
|
||||||
:type display: :class:`list`
|
:type display: :class:`list`
|
||||||
:param interval: Инетрвал времени в часах и минутах
|
:param interval: Интервал времени в часах и минутах
|
||||||
:type interval: :class:`list`
|
:type interval: :class:`list`
|
||||||
:param start_date: Дата начала работы
|
:param start_date: Дата начала работы
|
||||||
:type start_date: :class:`date`
|
:type start_date: :class:`date`
|
||||||
@ -372,7 +372,7 @@ class StatisticData:
|
|||||||
:type email: :class:`str`
|
:type email: :class:`str`
|
||||||
:param errors: Список ошибок
|
:param errors: Список ошибок
|
||||||
:type errors: :class:`list`
|
:type errors: :class:`list`
|
||||||
:param warnings: Список предупрежденй
|
:param warnings: Список предупреждений
|
||||||
:type warnings: :class:`list`
|
:type warnings: :class:`list`
|
||||||
:param data: Ретроспектива смены ролей пользователя
|
:param data: Ретроспектива смены ролей пользователя
|
||||||
:type data: :class:`dict`
|
:type data: :class:`dict`
|
||||||
@ -399,7 +399,7 @@ class StatisticData:
|
|||||||
"""
|
"""
|
||||||
Функция возвращает статистику работы пользователя.
|
Функция возвращает статистику работы пользователя.
|
||||||
|
|
||||||
:return: Cловарь statistic с применением формата отображения и интеравала работы(если они есть). None, если были ошибки при создании.
|
:return: Словарь statistic с применением формата отображения и интервала работы(если они есть). None, если были ошибки при создании.
|
||||||
"""
|
"""
|
||||||
if self.is_valid_statistic():
|
if self.is_valid_statistic():
|
||||||
stat = self.statistic
|
stat = self.statistic
|
||||||
@ -413,7 +413,7 @@ class StatisticData:
|
|||||||
"""
|
"""
|
||||||
Функция проверяет были ли ошибки при создании статистики.
|
Функция проверяет были ли ошибки при создании статистики.
|
||||||
|
|
||||||
:return: True, при отутствии ошибок
|
:return: True, при отсутствии ошибок
|
||||||
"""
|
"""
|
||||||
return not self.errors and self.statistic
|
return not self.errors and self.statistic
|
||||||
|
|
||||||
@ -569,12 +569,12 @@ class StatisticData:
|
|||||||
|
|
||||||
def fill_daterange(self, first: date, last: date, val: int = 24 * 3600) -> dict:
|
def fill_daterange(self, first: date, last: date, val: int = 24 * 3600) -> dict:
|
||||||
"""
|
"""
|
||||||
Функция заполеняет диапазон дат значением val (по умолчанию val = кол-во секунд в 1 дне).
|
Функция заполняет диапазон дат значением val (по умолчанию val = кол-во секунд в 1 дне).
|
||||||
|
|
||||||
:param first: Начальная дата интервала
|
:param first: Начальная дата интервала
|
||||||
:param last: Последняя дата интервала
|
:param last: Последняя дата интервала
|
||||||
:param val: Количество секунд в одном дне
|
:param val: Количество секунд в одном дне
|
||||||
:return: Статистику пользоваиеля с указанным количеством секунд в заданных днях
|
:return: Статистику пользователя с указанным количеством секунд в заданных днях
|
||||||
"""
|
"""
|
||||||
for day in daterange(first, last):
|
for day in daterange(first, last):
|
||||||
self.statistic[day] = val
|
self.statistic[day] = val
|
||||||
|
@ -11,7 +11,7 @@ class CustomRegistrationForm(RegistrationFormUniqueEmail):
|
|||||||
Форма для регистрации :class:`django_registration.forms.RegistrationFormUniqueEmail`
|
Форма для регистрации :class:`django_registration.forms.RegistrationFormUniqueEmail`
|
||||||
с добавлением bootstrap-класса "form-control".
|
с добавлением bootstrap-класса "form-control".
|
||||||
|
|
||||||
:param visible_fields.email: Поле для ввода email, зарегистирированного на Zendesk
|
:param visible_fields.email: Поле для ввода email, зарегистрированного на Zendesk
|
||||||
:type visible_fields.email: :class:`django_registration.forms.RegistrationFormUniqueEmail`
|
:type visible_fields.email: :class:`django_registration.forms.RegistrationFormUniqueEmail`
|
||||||
"""
|
"""
|
||||||
def __init__(self, *args, **kwargs) -> RegistrationFormUniqueEmail:
|
def __init__(self, *args, **kwargs) -> RegistrationFormUniqueEmail:
|
||||||
|
@ -40,13 +40,11 @@ class RoleChangeLogs(models.Model):
|
|||||||
Модель для логирования изменений ролей пользователя.
|
Модель для логирования изменений ролей пользователя.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
user = models.ForeignKey(to=User, on_delete=models.CASCADE,
|
user = models.ForeignKey(to=User, on_delete=models.CASCADE, help_text='Пользователь, которому присвоили другую роль')
|
||||||
help_text='Пользователь, которому присвоили другую роль')
|
|
||||||
old_role = models.IntegerField(default=0, help_text='Старая роль')
|
old_role = models.IntegerField(default=0, help_text='Старая роль')
|
||||||
new_role = models.IntegerField(default=0, help_text='Присвоенная роль')
|
new_role = models.IntegerField(default=0, help_text='Присвоенная роль')
|
||||||
change_time = models.DateTimeField(help_text='Дата и время изменения роли', default=timezone.now)
|
change_time = models.DateTimeField(default=timezone.now, help_text='Дата и время изменения роли')
|
||||||
changed_by = models.ForeignKey(to=User, on_delete=models.CASCADE, related_name='changed_by',
|
changed_by = models.ForeignKey(to=User, on_delete=models.CASCADE, related_name='changed_by', help_text='Кем была изменена роль')
|
||||||
help_text='Кем была изменена роль')
|
|
||||||
|
|
||||||
|
|
||||||
class UnassignedTicketStatus(models.IntegerChoices):
|
class UnassignedTicketStatus(models.IntegerChoices):
|
||||||
|
@ -14,7 +14,7 @@ class UserSerializer(serializers.HyperlinkedModelSerializer):
|
|||||||
|
|
||||||
class ProfileSerializer(serializers.HyperlinkedModelSerializer):
|
class ProfileSerializer(serializers.HyperlinkedModelSerializer):
|
||||||
"""
|
"""
|
||||||
Класс serialiser для модель профиля пользователя.
|
Класс serializer для модель профиля пользователя.
|
||||||
"""
|
"""
|
||||||
user = UserSerializer()
|
user = UserSerializer()
|
||||||
|
|
||||||
|
@ -112,7 +112,7 @@ class CustomRegistrationView(RegistrationView):
|
|||||||
Функция возвращает url-адрес страницы, куда нужно перейти после успешной/не успешной регистрации.
|
Функция возвращает url-адрес страницы, куда нужно перейти после успешной/не успешной регистрации.
|
||||||
Используется самой django-registration.
|
Используется самой django-registration.
|
||||||
|
|
||||||
:param user: пользователь, пытающийся зарегистроваться
|
:param user: пользователь, пытающийся зарегистрироваться
|
||||||
:return: адресация на страницу успешной регистрации
|
:return: адресация на страницу успешной регистрации
|
||||||
"""
|
"""
|
||||||
if self.is_allowed:
|
if self.is_allowed:
|
||||||
@ -216,7 +216,7 @@ def work_hand_over(request: WSGIRequest) -> HttpResponseRedirect:
|
|||||||
@login_required()
|
@login_required()
|
||||||
def work_become_engineer(request: WSGIRequest) -> HttpResponseRedirect:
|
def work_become_engineer(request: WSGIRequest) -> HttpResponseRedirect:
|
||||||
"""
|
"""
|
||||||
Функция меняет роль пользователя в Zendesk на "engineer" и присваевает роль "agent" в БД (в случае, если исходная роль пользователя была "light_agent").
|
Функция меняет роль пользователя в Zendesk на "engineer" и присваивает роль "agent" в БД (в случае, если исходная роль пользователя была "light_agent").
|
||||||
|
|
||||||
:param request: данные текущего пользователя (login_required)
|
:param request: данные текущего пользователя (login_required)
|
||||||
:return: перезагрузка текущей страницы после выполнения смены роли
|
:return: перезагрузка текущей страницы после выполнения смены роли
|
||||||
|
Loading…
x
Reference in New Issue
Block a user