Find buffer group id and solved tickets user id in ZendeskAdmin constructor

This commit is contained in:
Iurii Tatishchev 2021-04-20 15:02:17 -07:00
parent a5d0c222bd
commit 95d0db24b6
Signed by: CaZzzer
GPG Key ID: 926BE949E29DCD03
2 changed files with 9 additions and 8 deletions

View File

@ -6,10 +6,9 @@ from django.core.exceptions import ObjectDoesNotExist
from django.utils import timezone
from zenpy import Zenpy
from zenpy.lib.exception import APIException
from zenpy.lib.api_objects import User as ZenpyUser
from zenpy.lib.api_objects import User as ZenpyUser, Ticket as ZenpyTicket
from access_controller.settings import ZENDESK_ROLES as ROLES, ONE_DAY, ZENDESK_GROUPS, SOLVED_TICKETS_EMAIL, \
ACTRL_ZENDESK_SUBDOMAIN
from access_controller.settings import ZENDESK_ROLES as ROLES, ONE_DAY, ACTRL_ZENDESK_SUBDOMAIN
from main.models import UserProfile, RoleChangeLogs, UnassignedTicket, UnassignedTicketStatus
from main.zendesk_admin import zenpy
@ -48,8 +47,7 @@ def make_light_agent(user_profile: UserProfile, who_changes: User) -> None:
:return: Вызов функции **update_role** с параметрами: профиль пользователя, роль "light_agent"
"""
tickets = get_tickets_list(user_profile.user.email)
buffer_group = zenpy.get_group(ZENDESK_GROUPS['buffer'])
solved_tickets_user = zenpy.get_user(SOLVED_TICKETS_EMAIL)
ticket: ZenpyTicket
for ticket in tickets:
UnassignedTicket.objects.create(
assignee=user_profile.user,
@ -57,10 +55,10 @@ def make_light_agent(user_profile: UserProfile, who_changes: User) -> None:
status=UnassignedTicketStatus.SOLVED if ticket.status == 'solved' else UnassignedTicketStatus.UNASSIGNED
)
if ticket.status == 'solved':
ticket.assignee = solved_tickets_user
ticket.assignee_id = zenpy.solved_tickets_user_id
else:
ticket.assignee = None
ticket.group = buffer_group
ticket.group_id = zenpy.buffer_group_id
zenpy.admin.tickets.update(tickets.values)

View File

@ -4,7 +4,8 @@ from zenpy import Zenpy
from zenpy.lib.api_objects import User as ZenpyUser
from zenpy.lib.exception import APIException
from access_controller.settings import ACTRL_ZENDESK_SUBDOMAIN, ACTRL_API_EMAIL, ACTRL_API_TOKEN, ACTRL_API_PASSWORD
from access_controller.settings import ACTRL_ZENDESK_SUBDOMAIN, ACTRL_API_EMAIL, ACTRL_API_TOKEN, ACTRL_API_PASSWORD, \
ZENDESK_GROUPS, SOLVED_TICKETS_EMAIL
class ZendeskAdmin:
@ -30,6 +31,8 @@ class ZendeskAdmin:
def __init__(self):
self.create_admin()
self.buffer_group_id: int = self.get_group(ZENDESK_GROUPS['buffer']).id
self.solved_tickets_user_id: int = self.get_user(SOLVED_TICKETS_EMAIL).id
def check_user(self, email: str) -> bool:
"""