requesters.py 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. from classes.Ticket import Ticket
  2. import config
  3. import requests
  4. from typing import List
  5. from requests.models import Response
  6. class TicketRequester:
  7. def __init__(self, token: str):
  8. self.token = token
  9. def patch(self, ticket: Ticket, data: dict) -> Response:
  10. """ Частичное обновление тикета """
  11. url: str = config.API_URL + f"tickets/api/v2/ticket/{ticket.id}"
  12. headers = {'Authorization': f'Api-Key {self.token}'}
  13. response = requests.patch(url, json=data, headers=headers)
  14. return response
  15. def all(self, params: dict = {}) -> List[Ticket]:
  16. """ Получение всех тикетов """
  17. url: str = config.API_URL + "tickets/api/v2/ticket/"
  18. headers = {'Authorization': f'Api-Key {self.token}'}
  19. response = requests.get(url, headers=headers, params=params)
  20. return list(map(lambda x: Ticket(**x), response.json()))
  21. def put(self, ticket: Ticket, data: dict) -> Ticket:
  22. """ Обновление тикета """
  23. None
  24. def post(self, ticket: Ticket, data: dict) -> Ticket:
  25. """ Создание тикета """
  26. None
  27. def delete(self, ticket: Ticket) -> Ticket:
  28. """ Удаление тикета """
  29. None