Merge branch 'hotfix/logs' into 'develop'
Added logging for work pages See merge request 2020-2021/online/s101/group-02/access_controller!70
This commit is contained in:
commit
58717022c5
@ -16,12 +16,13 @@ from main.models import UserProfile, RoleChangeLogs, UnassignedTicket, Unassigne
|
||||
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 role: Новая роль
|
||||
:param who_changes: Пользователь, меняющий роль
|
||||
:return: Пользователь с обновленной ролью
|
||||
"""
|
||||
zendesk = zenpy
|
||||
@ -29,6 +30,7 @@ def update_role(user_profile: UserProfile, role: int) -> None:
|
||||
user.custom_role_id = role
|
||||
user_profile.custom_role_id = role
|
||||
user_profile.save()
|
||||
log(user_profile, who_changes.userprofile)
|
||||
zendesk.admin.users.update(user)
|
||||
|
||||
|
||||
@ -39,7 +41,7 @@ def make_engineer(user_profile: UserProfile, who_changes: User) -> None:
|
||||
:param user_profile: Профиль пользователя
|
||||
: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:
|
||||
@ -69,7 +71,7 @@ def make_light_agent(user_profile: UserProfile, who_changes: User) -> None:
|
||||
attempts, success = 5, False
|
||||
while not success and attempts != 0:
|
||||
try:
|
||||
update_role(user_profile, ROLES['light_agent'])
|
||||
update_role(user_profile, ROLES['light_agent'], who_changes)
|
||||
success = True
|
||||
except APIException as e:
|
||||
attempts -= 1
|
||||
@ -534,7 +536,7 @@ class CsvFormatter(logging.Formatter):
|
||||
return msg
|
||||
|
||||
|
||||
def log(user, admin=0):
|
||||
def log(user, admin=None):
|
||||
"""
|
||||
Осуществляет запись логов в базу данных и csv файл
|
||||
:param admin:
|
||||
|
@ -289,7 +289,6 @@ class AdminPageView(LoginRequiredMixin, PermissionRequiredMixin, SuccessMessageM
|
||||
"""
|
||||
for user in users:
|
||||
make_engineer(user, self.request.user)
|
||||
log(user, self.request.user.userprofile)
|
||||
|
||||
def make_light_agents(self, users):
|
||||
"""
|
||||
@ -300,7 +299,6 @@ class AdminPageView(LoginRequiredMixin, PermissionRequiredMixin, SuccessMessageM
|
||||
"""
|
||||
for user in users:
|
||||
make_light_agent(user, self.request.user)
|
||||
log(user, self.request.user.userprofile)
|
||||
|
||||
|
||||
class CustomLoginView(LoginView):
|
||||
|
Loading…
x
Reference in New Issue
Block a user