diff --git a/main/extra_func.py b/main/extra_func.py index 0c93ba1..c41625a 100644 --- a/main/extra_func.py +++ b/main/extra_func.py @@ -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: diff --git a/main/views.py b/main/views.py index bd57eab..69fdd92 100644 --- a/main/views.py +++ b/main/views.py @@ -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):