Added logging for work pages

This commit is contained in:
Timofey Mazurov 2021-05-06 02:44:53 +03:00
parent 3c40cefdb6
commit f77256937e
2 changed files with 6 additions and 6 deletions

View File

@ -16,12 +16,13 @@ from main.models import UserProfile, RoleChangeLogs, UnassignedTicket, Unassigne
from main.zendesk_admin import zenpy from main.zendesk_admin import zenpy
def update_role(user_profile: UserProfile, role: int) -> None: def update_role(user_profile: UserProfile, role: int, who_changes: User) -> None:
""" """
Функция меняет роль пользователя. Функция меняет роль пользователя.
:param user_profile: Профиль пользователя :param user_profile: Профиль пользователя
:param role: Новая роль :param role: Новая роль
:param who_changes: Пользователь, меняющий роль
:return: Пользователь с обновленной ролью :return: Пользователь с обновленной ролью
""" """
zendesk = zenpy zendesk = zenpy
@ -29,6 +30,7 @@ def update_role(user_profile: UserProfile, role: int) -> None:
user.custom_role_id = role user.custom_role_id = role
user_profile.custom_role_id = role user_profile.custom_role_id = role
user_profile.save() user_profile.save()
log(user_profile, who_changes.userprofile)
zendesk.admin.users.update(user) zendesk.admin.users.update(user)
@ -39,7 +41,7 @@ def make_engineer(user_profile: UserProfile, who_changes: User) -> None:
:param user_profile: Профиль пользователя :param user_profile: Профиль пользователя
:return: Вызов функции **update_role** с параметрами: профиль пользователя, роль "engineer" :return: Вызов функции **update_role** с параметрами: профиль пользователя, роль "engineer"
""" """
update_role(user_profile, ROLES['engineer']) update_role(user_profile, ROLES['engineer'], who_changes)
def make_light_agent(user_profile: UserProfile, who_changes: User) -> None: def make_light_agent(user_profile: UserProfile, who_changes: User) -> None:
@ -69,7 +71,7 @@ def make_light_agent(user_profile: UserProfile, who_changes: User) -> None:
attempts, success = 5, False attempts, success = 5, False
while not success and attempts != 0: while not success and attempts != 0:
try: try:
update_role(user_profile, ROLES['light_agent']) update_role(user_profile, ROLES['light_agent'], who_changes)
success = True success = True
except APIException as e: except APIException as e:
attempts -= 1 attempts -= 1
@ -534,7 +536,7 @@ class CsvFormatter(logging.Formatter):
return msg return msg
def log(user, admin=0): def log(user, admin=None):
""" """
Осуществляет запись логов в базу данных и csv файл Осуществляет запись логов в базу данных и csv файл
:param admin: :param admin:

View File

@ -289,7 +289,6 @@ class AdminPageView(LoginRequiredMixin, PermissionRequiredMixin, SuccessMessageM
""" """
for user in users: for user in users:
make_engineer(user, self.request.user) make_engineer(user, self.request.user)
log(user, self.request.user.userprofile)
def make_light_agents(self, users): def make_light_agents(self, users):
""" """
@ -300,7 +299,6 @@ class AdminPageView(LoginRequiredMixin, PermissionRequiredMixin, SuccessMessageM
""" """
for user in users: for user in users:
make_light_agent(user, self.request.user) make_light_agent(user, self.request.user)
log(user, self.request.user.userprofile)
class CustomLoginView(LoginView): class CustomLoginView(LoginView):