This commit is contained in:
Ismo Vuorinen
2024-07-03 15:06:43 +03:00
parent 955f8ba6c3
commit 6a2c76e4f4
13 changed files with 10167 additions and 2715 deletions

View File

@@ -0,0 +1,183 @@
from http import HTTPStatus
from typing import Any, Dict, Optional, Union, cast
import httpx
from ... import errors
from ...client import AuthenticatedClient, Client
from ...models.error_model import ErrorModel
from ...models.search_event_query_model import SearchEventQueryModel
from ...models.search_event_result_model import SearchEventResultModel
from ...models.validation_model import ValidationModel
from ...types import Response
def _get_kwargs(
company_id: str,
*,
json_body: SearchEventQueryModel,
) -> Dict[str, Any]:
pass
json_json_body = json_body.to_dict()
return {
"method": "post",
"url": "/v0.1/companies/{companyId}/events/search".format(
companyId=company_id,
),
"json": json_json_body,
}
def _parse_response(
*, client: Union[AuthenticatedClient, Client], response: httpx.Response
) -> Optional[Union[Any, ErrorModel, SearchEventResultModel, ValidationModel]]:
if response.status_code == HTTPStatus.OK:
response_200 = SearchEventResultModel.from_dict(response.json())
return response_200
if response.status_code == HTTPStatus.BAD_REQUEST:
response_400 = ValidationModel.from_dict(response.json())
return response_400
if response.status_code == HTTPStatus.UNAUTHORIZED:
response_401 = cast(Any, None)
return response_401
if response.status_code == HTTPStatus.INTERNAL_SERVER_ERROR:
response_500 = ErrorModel.from_dict(response.json())
return response_500
if client.raise_on_unexpected_status:
raise errors.UnexpectedStatus(response.status_code, response.content)
else:
return None
def _build_response(
*, client: Union[AuthenticatedClient, Client], response: httpx.Response
) -> Response[Union[Any, ErrorModel, SearchEventResultModel, ValidationModel]]:
return Response(
status_code=HTTPStatus(response.status_code),
content=response.content,
headers=response.headers,
parsed=_parse_response(client=client, response=response),
)
def sync_detailed(
company_id: str,
*,
client: Union[AuthenticatedClient, Client],
json_body: SearchEventQueryModel,
) -> Response[Union[Any, ErrorModel, SearchEventResultModel, ValidationModel]]:
"""Get company events list from search criteria
Args:
company_id (str):
json_body (SearchEventQueryModel):
Raises:
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
httpx.TimeoutException: If the request takes longer than Client.timeout.
Returns:
Response[Union[Any, ErrorModel, SearchEventResultModel, ValidationModel]]
"""
kwargs = _get_kwargs(
company_id=company_id,
json_body=json_body,
)
response = client.get_httpx_client().request(
**kwargs,
)
return _build_response(client=client, response=response)
def sync(
company_id: str,
*,
client: Union[AuthenticatedClient, Client],
json_body: SearchEventQueryModel,
) -> Optional[Union[Any, ErrorModel, SearchEventResultModel, ValidationModel]]:
"""Get company events list from search criteria
Args:
company_id (str):
json_body (SearchEventQueryModel):
Raises:
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
httpx.TimeoutException: If the request takes longer than Client.timeout.
Returns:
Union[Any, ErrorModel, SearchEventResultModel, ValidationModel]
"""
return sync_detailed(
company_id=company_id,
client=client,
json_body=json_body,
).parsed
async def asyncio_detailed(
company_id: str,
*,
client: Union[AuthenticatedClient, Client],
json_body: SearchEventQueryModel,
) -> Response[Union[Any, ErrorModel, SearchEventResultModel, ValidationModel]]:
"""Get company events list from search criteria
Args:
company_id (str):
json_body (SearchEventQueryModel):
Raises:
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
httpx.TimeoutException: If the request takes longer than Client.timeout.
Returns:
Response[Union[Any, ErrorModel, SearchEventResultModel, ValidationModel]]
"""
kwargs = _get_kwargs(
company_id=company_id,
json_body=json_body,
)
response = await client.get_async_httpx_client().request(**kwargs)
return _build_response(client=client, response=response)
async def asyncio(
company_id: str,
*,
client: Union[AuthenticatedClient, Client],
json_body: SearchEventQueryModel,
) -> Optional[Union[Any, ErrorModel, SearchEventResultModel, ValidationModel]]:
"""Get company events list from search criteria
Args:
company_id (str):
json_body (SearchEventQueryModel):
Raises:
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
httpx.TimeoutException: If the request takes longer than Client.timeout.
Returns:
Union[Any, ErrorModel, SearchEventResultModel, ValidationModel]
"""
return (
await asyncio_detailed(
company_id=company_id,
client=client,
json_body=json_body,
)
).parsed

View File

@@ -82,6 +82,7 @@ from .company_user_add_model import CompanyUserAddModel
from .company_user_base_model import CompanyUserBaseModel
from .company_user_candidate_model import CompanyUserCandidateModel
from .company_user_candidate_status import CompanyUserCandidateStatus
from .company_user_deletion_status import CompanyUserDeletionStatus
from .company_user_edit_model import CompanyUserEditModel
from .company_user_event_base_model import CompanyUserEventBaseModel
from .company_user_event_meeting_add_edit_model import CompanyUserEventMeetingAddEditModel
@@ -173,9 +174,12 @@ from .dynamic_template_view_model_primary_script_assets import DynamicTemplateVi
from .dynamic_template_view_model_primary_style_assets import DynamicTemplateViewModelPrimaryStyleAssets
from .error_model import ErrorModel
from .event_comment_model import EventCommentModel
from .event_entity_type import EventEntityType
from .event_meeting_add_edit_model import EventMeetingAddEditModel
from .event_note_add_edit_model import EventNoteAddEditModel
from .event_note_type import EventNoteType
from .event_query_sort import EventQuerySort
from .event_query_sort_page_and_sort_by_model import EventQuerySortPageAndSortByModel
from .event_status_value import EventStatusValue
from .event_task_add_edit_model import EventTaskAddEditModel
from .event_task_type import EventTaskType
@@ -273,6 +277,9 @@ from .search_company_customer_query_model import SearchCompanyCustomerQueryModel
from .search_company_customer_result_model import SearchCompanyCustomerResultModel
from .search_company_user_query_model import SearchCompanyUserQueryModel
from .search_company_user_result_model import SearchCompanyUserResultModel
from .search_event_model import SearchEventModel
from .search_event_query_model import SearchEventQueryModel
from .search_event_result_model import SearchEventResultModel
from .search_project_query_model import SearchProjectQueryModel
from .search_projects_result_model import SearchProjectsResultModel
from .search_skill_model import SearchSkillModel
@@ -389,6 +396,7 @@ __all__ = (
"CompanyUserBaseModel",
"CompanyUserCandidateModel",
"CompanyUserCandidateStatus",
"CompanyUserDeletionStatus",
"CompanyUserEditModel",
"CompanyUserEventBaseModel",
"CompanyUserEventMeetingAddEditModel",
@@ -480,9 +488,12 @@ __all__ = (
"DynamicTemplateViewModelPrimaryStyleAssets",
"ErrorModel",
"EventCommentModel",
"EventEntityType",
"EventMeetingAddEditModel",
"EventNoteAddEditModel",
"EventNoteType",
"EventQuerySort",
"EventQuerySortPageAndSortByModel",
"EventStatusValue",
"EventTaskAddEditModel",
"EventTaskType",
@@ -580,6 +591,9 @@ __all__ = (
"SearchCompanyCustomerResultModel",
"SearchCompanyUserQueryModel",
"SearchCompanyUserResultModel",
"SearchEventModel",
"SearchEventQueryModel",
"SearchEventResultModel",
"SearchProjectQueryModel",
"SearchProjectsResultModel",
"SearchSkillModel",

View File

@@ -0,0 +1,10 @@
from enum import IntEnum
class CompanyUserDeletionStatus(IntEnum):
VALUE_0 = 0
VALUE_1 = 1
VALUE_2 = 2
def __str__(self) -> str:
return str(self.value)

View File

@@ -0,0 +1,14 @@
from enum import IntEnum
class EventEntityType(IntEnum):
VALUE_0 = 0
VALUE_1 = 1
VALUE_2 = 2
VALUE_3 = 3
VALUE_4 = 4
VALUE_6 = 6
VALUE_7 = 7
def __str__(self) -> str:
return str(self.value)

View File

@@ -0,0 +1,12 @@
from enum import IntEnum
class EventQuerySort(IntEnum):
VALUE_0 = 0
VALUE_1 = 1
VALUE_2 = 2
VALUE_3 = 3
VALUE_4 = 4
def __str__(self) -> str:
return str(self.value)

View File

@@ -0,0 +1,91 @@
from typing import Any, Dict, Type, TypeVar, Union
from attrs import define as _attrs_define
from ..models.event_query_sort import EventQuerySort
from ..models.sort_order import SortOrder
from ..types import UNSET, Unset
T = TypeVar("T", bound="EventQuerySortPageAndSortByModel")
@_attrs_define
class EventQuerySortPageAndSortByModel:
"""
Attributes:
sort_by (Union[Unset, EventQuerySort]):
CreatedDateTime = 0
Identification = 1
Status = 2
UpdatedDateTime = 3
LastTouchDateTime = 4
sort_order (Union[Unset, SortOrder]): 0 - Ascending,
1 - Descending
page (Union[Unset, int]): Default: 1.
items_per_page (Union[Unset, int]): Default: 15.
"""
sort_by: Union[Unset, EventQuerySort] = UNSET
sort_order: Union[Unset, SortOrder] = UNSET
page: Union[Unset, int] = 1
items_per_page: Union[Unset, int] = 15
def to_dict(self) -> Dict[str, Any]:
sort_by: Union[Unset, int] = UNSET
if not isinstance(self.sort_by, Unset):
sort_by = self.sort_by.value
sort_order: Union[Unset, int] = UNSET
if not isinstance(self.sort_order, Unset):
sort_order = self.sort_order.value
page = self.page
items_per_page = self.items_per_page
field_dict: Dict[str, Any] = {}
field_dict.update({})
if sort_by is not UNSET:
field_dict["sortBy"] = sort_by
if sort_order is not UNSET:
field_dict["sortOrder"] = sort_order
if page is not UNSET:
field_dict["page"] = page
if items_per_page is not UNSET:
field_dict["itemsPerPage"] = items_per_page
return field_dict
@classmethod
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
d = src_dict.copy()
_sort_by = d.pop("sortBy", UNSET)
sort_by: Union[Unset, EventQuerySort]
if isinstance(_sort_by, Unset):
sort_by = UNSET
else:
sort_by = EventQuerySort(_sort_by)
_sort_order = d.pop("sortOrder", UNSET)
sort_order: Union[Unset, SortOrder]
if isinstance(_sort_order, Unset):
sort_order = UNSET
else:
sort_order = SortOrder(_sort_order)
page = d.pop("page", UNSET)
items_per_page = d.pop("itemsPerPage", UNSET)
event_query_sort_page_and_sort_by_model = cls(
sort_by=sort_by,
sort_order=sort_order,
page=page,
items_per_page=items_per_page,
)
return event_query_sort_page_and_sort_by_model

View File

@@ -1,4 +1,4 @@
from typing import TYPE_CHECKING, Any, Dict, Type, TypeVar, Union
from typing import TYPE_CHECKING, Any, Dict, List, Type, TypeVar, Union, cast
from attrs import define as _attrs_define
@@ -47,7 +47,11 @@ class SearchCompanyCustomerQueryModel:
EndsWith = 2
Equals = 3
no_manager (Union[Unset, None, bool]):
managers (Union[Unset, None, List[int]]):
last_touched_at (Union[Unset, None, DateTimeFilterInterval]):
created_at (Union[Unset, None, DateTimeFilterInterval]):
updated_at (Union[Unset, None, DateTimeFilterInterval]):
page_and_sort_by (Union[Unset, None, CompanyCustomerQuerySortPageAndSortByModel]):
"""
@@ -57,7 +61,11 @@ class SearchCompanyCustomerQueryModel:
identification_operator: Union[Unset, StringComparisonOperator] = UNSET
corporate_identity_number: Union[Unset, None, str] = UNSET
corporate_identity_number_operator: Union[Unset, StringComparisonOperator] = UNSET
no_manager: Union[Unset, None, bool] = UNSET
managers: Union[Unset, None, List[int]] = UNSET
last_touched_at: Union[Unset, None, "DateTimeFilterInterval"] = UNSET
created_at: Union[Unset, None, "DateTimeFilterInterval"] = UNSET
updated_at: Union[Unset, None, "DateTimeFilterInterval"] = UNSET
page_and_sort_by: Union[Unset, None, "CompanyCustomerQuerySortPageAndSortByModel"] = UNSET
def to_dict(self) -> Dict[str, Any]:
@@ -76,10 +84,26 @@ class SearchCompanyCustomerQueryModel:
if not isinstance(self.corporate_identity_number_operator, Unset):
corporate_identity_number_operator = self.corporate_identity_number_operator.value
no_manager = self.no_manager
managers: Union[Unset, None, List[int]] = UNSET
if not isinstance(self.managers, Unset):
if self.managers is None:
managers = None
else:
managers = self.managers
last_touched_at: Union[Unset, None, Dict[str, Any]] = UNSET
if not isinstance(self.last_touched_at, Unset):
last_touched_at = self.last_touched_at.to_dict() if self.last_touched_at else None
created_at: Union[Unset, None, Dict[str, Any]] = UNSET
if not isinstance(self.created_at, Unset):
created_at = self.created_at.to_dict() if self.created_at else None
updated_at: Union[Unset, None, Dict[str, Any]] = UNSET
if not isinstance(self.updated_at, Unset):
updated_at = self.updated_at.to_dict() if self.updated_at else None
page_and_sort_by: Union[Unset, None, Dict[str, Any]] = UNSET
if not isinstance(self.page_and_sort_by, Unset):
page_and_sort_by = self.page_and_sort_by.to_dict() if self.page_and_sort_by else None
@@ -98,8 +122,16 @@ class SearchCompanyCustomerQueryModel:
field_dict["corporateIdentityNumber"] = corporate_identity_number
if corporate_identity_number_operator is not UNSET:
field_dict["corporateIdentityNumberOperator"] = corporate_identity_number_operator
if no_manager is not UNSET:
field_dict["noManager"] = no_manager
if managers is not UNSET:
field_dict["managers"] = managers
if last_touched_at is not UNSET:
field_dict["lastTouchedAt"] = last_touched_at
if created_at is not UNSET:
field_dict["createdAt"] = created_at
if updated_at is not UNSET:
field_dict["updatedAt"] = updated_at
if page_and_sort_by is not UNSET:
field_dict["pageAndSortBy"] = page_and_sort_by
@@ -140,6 +172,10 @@ class SearchCompanyCustomerQueryModel:
else:
corporate_identity_number_operator = StringComparisonOperator(_corporate_identity_number_operator)
no_manager = d.pop("noManager", UNSET)
managers = cast(List[int], d.pop("managers", UNSET))
_last_touched_at = d.pop("lastTouchedAt", UNSET)
last_touched_at: Union[Unset, None, DateTimeFilterInterval]
if _last_touched_at is None:
@@ -149,6 +185,24 @@ class SearchCompanyCustomerQueryModel:
else:
last_touched_at = DateTimeFilterInterval.from_dict(_last_touched_at)
_created_at = d.pop("createdAt", UNSET)
created_at: Union[Unset, None, DateTimeFilterInterval]
if _created_at is None:
created_at = None
elif isinstance(_created_at, Unset):
created_at = UNSET
else:
created_at = DateTimeFilterInterval.from_dict(_created_at)
_updated_at = d.pop("updatedAt", UNSET)
updated_at: Union[Unset, None, DateTimeFilterInterval]
if _updated_at is None:
updated_at = None
elif isinstance(_updated_at, Unset):
updated_at = UNSET
else:
updated_at = DateTimeFilterInterval.from_dict(_updated_at)
_page_and_sort_by = d.pop("pageAndSortBy", UNSET)
page_and_sort_by: Union[Unset, None, CompanyCustomerQuerySortPageAndSortByModel]
if _page_and_sort_by is None:
@@ -165,7 +219,11 @@ class SearchCompanyCustomerQueryModel:
identification_operator=identification_operator,
corporate_identity_number=corporate_identity_number,
corporate_identity_number_operator=corporate_identity_number_operator,
no_manager=no_manager,
managers=managers,
last_touched_at=last_touched_at,
created_at=created_at,
updated_at=updated_at,
page_and_sort_by=page_and_sort_by,
)

View File

@@ -0,0 +1,805 @@
import datetime
from typing import TYPE_CHECKING, Any, Dict, List, Type, TypeVar, Union
from attrs import define as _attrs_define
from dateutil.parser import isoparse
from ..models.company_user_deletion_status import CompanyUserDeletionStatus
from ..models.event_entity_type import EventEntityType
from ..models.event_note_type import EventNoteType
from ..models.event_status_value import EventStatusValue
from ..models.event_type import EventType
from ..models.event_visibility import EventVisibility
from ..types import UNSET, Unset
if TYPE_CHECKING:
from ..models.event_comment_model import EventCommentModel
from ..models.link import Link
T = TypeVar("T", bound="SearchEventModel")
@_attrs_define
class SearchEventModel:
"""
Attributes:
assigned_to_user_full_name (Union[Unset, None, str]):
assigned_to_user_initials (Union[Unset, None, str]):
assigned_to_user_show_as_deleted (Union[Unset, None, bool]):
event_date_native_timezone (Union[Unset, datetime.datetime]):
due_date_time_native_timezone (Union[Unset, None, datetime.datetime]):
start_date_time_native_timezone (Union[Unset, None, datetime.datetime]):
end_date_time_native_timezone (Union[Unset, None, datetime.datetime]):
event_date_utc (Union[Unset, datetime.datetime]):
due_date_time (Union[Unset, None, datetime.datetime]):
due_date_time_utc (Union[Unset, None, datetime.datetime]):
event_entity_type (Union[Unset, EventEntityType]):
Kandidat = 0
Kund = 1
Uppdrag = 2
Underkonsult = 3
Medarbetare = 4
Partner = 6
Ej angiven = 7
event_entity_id (Union[Unset, int]):
event_entity_name (Union[Unset, None, str]):
event_entity_seo_id (Union[Unset, None, str]):
secondary_event_entity_type (Union[Unset, None, EventEntityType]):
Kandidat = 0
Kund = 1
Uppdrag = 2
Underkonsult = 3
Medarbetare = 4
Partner = 6
Ej angiven = 7
secondary_event_entity_id (Union[Unset, None, int]):
secondary_event_entity_name (Union[Unset, None, str]):
secondary_event_entity_seo_id (Union[Unset, None, str]):
assigned_to_company_user_id (Union[Unset, None, int]):
assigned_to_image_file_name (Union[Unset, None, str]):
assigned_to_image_file_extension (Union[Unset, None, str]):
assigned_to_seo_id (Union[Unset, None, str]):
assigned_to_user_first_name (Union[Unset, None, str]):
assigned_to_user_last_name (Union[Unset, None, str]):
assigned_to_user_deletion_status (Union[Unset, None, CompanyUserDeletionStatus]):
Aktiv = 0
Marked for deletion = 1
Borttagen = 2
number_of_comments (Union[Unset, int]):
status (Union[Unset, EventStatusValue]):
Inte påbörjad = 0
Påbörjad = 1
Färdig = 2
Uppskjuten = 3
Väntar = 4
start_date_time (Union[Unset, None, datetime.datetime]):
start_date_time_utc (Union[Unset, None, datetime.datetime]):
end_date_time (Union[Unset, None, datetime.datetime]):
end_date_time_utc (Union[Unset, None, datetime.datetime]):
event_type (Union[Unset, EventType]):
Möte = 0
Notering = 1
Uppgift = 2
Samtal = 3
has_time (Union[Unset, None, bool]):
timezone_id (Union[Unset, None, str]):
external_id (Union[Unset, None, str]):
external_sync_account_id (Union[Unset, None, str]):
external_sync_account_company_user_id (Union[Unset, None, int]):
external_sync_account_company_user_full_name (Union[Unset, None, str]):
note_type (Union[Unset, None, EventNoteType]):
Ej angiven = 0
Telefonsamtal = 1
E-mail = 2
has_attendees (Union[Unset, None, bool]):
is_overdue (Union[Unset, None, bool]):
created_by_company_user_id (Union[Unset, int]):
updated_by_company_user_id (Union[Unset, None, int]):
created (Union[Unset, datetime.datetime]):
updated (Union[Unset, None, datetime.datetime]):
visibility (Union[Unset, EventVisibility]):
Publik = 0
Privat = 1
comments (Union[Unset, None, List['EventCommentModel']]):
type (Union[Unset, EventType]):
Möte = 0
Notering = 1
Uppgift = 2
Samtal = 3
id (Union[Unset, None, str]):
company_id (Union[Unset, None, int]):
title (Union[Unset, None, str]):
description (Union[Unset, None, str]):
description_html (Union[Unset, None, str]):
description_delta (Union[Unset, None, str]):
event_date (Union[Unset, datetime.datetime]):
links (Union[Unset, None, List['Link']]):
"""
assigned_to_user_full_name: Union[Unset, None, str] = UNSET
assigned_to_user_initials: Union[Unset, None, str] = UNSET
assigned_to_user_show_as_deleted: Union[Unset, None, bool] = UNSET
event_date_native_timezone: Union[Unset, datetime.datetime] = UNSET
due_date_time_native_timezone: Union[Unset, None, datetime.datetime] = UNSET
start_date_time_native_timezone: Union[Unset, None, datetime.datetime] = UNSET
end_date_time_native_timezone: Union[Unset, None, datetime.datetime] = UNSET
event_date_utc: Union[Unset, datetime.datetime] = UNSET
due_date_time: Union[Unset, None, datetime.datetime] = UNSET
due_date_time_utc: Union[Unset, None, datetime.datetime] = UNSET
event_entity_type: Union[Unset, EventEntityType] = UNSET
event_entity_id: Union[Unset, int] = UNSET
event_entity_name: Union[Unset, None, str] = UNSET
event_entity_seo_id: Union[Unset, None, str] = UNSET
secondary_event_entity_type: Union[Unset, None, EventEntityType] = UNSET
secondary_event_entity_id: Union[Unset, None, int] = UNSET
secondary_event_entity_name: Union[Unset, None, str] = UNSET
secondary_event_entity_seo_id: Union[Unset, None, str] = UNSET
assigned_to_company_user_id: Union[Unset, None, int] = UNSET
assigned_to_image_file_name: Union[Unset, None, str] = UNSET
assigned_to_image_file_extension: Union[Unset, None, str] = UNSET
assigned_to_seo_id: Union[Unset, None, str] = UNSET
assigned_to_user_first_name: Union[Unset, None, str] = UNSET
assigned_to_user_last_name: Union[Unset, None, str] = UNSET
assigned_to_user_deletion_status: Union[Unset, None, CompanyUserDeletionStatus] = UNSET
number_of_comments: Union[Unset, int] = UNSET
status: Union[Unset, EventStatusValue] = UNSET
start_date_time: Union[Unset, None, datetime.datetime] = UNSET
start_date_time_utc: Union[Unset, None, datetime.datetime] = UNSET
end_date_time: Union[Unset, None, datetime.datetime] = UNSET
end_date_time_utc: Union[Unset, None, datetime.datetime] = UNSET
event_type: Union[Unset, EventType] = UNSET
has_time: Union[Unset, None, bool] = UNSET
timezone_id: Union[Unset, None, str] = UNSET
external_id: Union[Unset, None, str] = UNSET
external_sync_account_id: Union[Unset, None, str] = UNSET
external_sync_account_company_user_id: Union[Unset, None, int] = UNSET
external_sync_account_company_user_full_name: Union[Unset, None, str] = UNSET
note_type: Union[Unset, None, EventNoteType] = UNSET
has_attendees: Union[Unset, None, bool] = UNSET
is_overdue: Union[Unset, None, bool] = UNSET
created_by_company_user_id: Union[Unset, int] = UNSET
updated_by_company_user_id: Union[Unset, None, int] = UNSET
created: Union[Unset, datetime.datetime] = UNSET
updated: Union[Unset, None, datetime.datetime] = UNSET
visibility: Union[Unset, EventVisibility] = UNSET
comments: Union[Unset, None, List["EventCommentModel"]] = UNSET
type: Union[Unset, EventType] = UNSET
id: Union[Unset, None, str] = UNSET
company_id: Union[Unset, None, int] = UNSET
title: Union[Unset, None, str] = UNSET
description: Union[Unset, None, str] = UNSET
description_html: Union[Unset, None, str] = UNSET
description_delta: Union[Unset, None, str] = UNSET
event_date: Union[Unset, datetime.datetime] = UNSET
links: Union[Unset, None, List["Link"]] = UNSET
def to_dict(self) -> Dict[str, Any]:
assigned_to_user_full_name = self.assigned_to_user_full_name
assigned_to_user_initials = self.assigned_to_user_initials
assigned_to_user_show_as_deleted = self.assigned_to_user_show_as_deleted
event_date_native_timezone: Union[Unset, str] = UNSET
if not isinstance(self.event_date_native_timezone, Unset):
event_date_native_timezone = self.event_date_native_timezone.isoformat()
due_date_time_native_timezone: Union[Unset, None, str] = UNSET
if not isinstance(self.due_date_time_native_timezone, Unset):
due_date_time_native_timezone = (
self.due_date_time_native_timezone.isoformat() if self.due_date_time_native_timezone else None
)
start_date_time_native_timezone: Union[Unset, None, str] = UNSET
if not isinstance(self.start_date_time_native_timezone, Unset):
start_date_time_native_timezone = (
self.start_date_time_native_timezone.isoformat() if self.start_date_time_native_timezone else None
)
end_date_time_native_timezone: Union[Unset, None, str] = UNSET
if not isinstance(self.end_date_time_native_timezone, Unset):
end_date_time_native_timezone = (
self.end_date_time_native_timezone.isoformat() if self.end_date_time_native_timezone else None
)
event_date_utc: Union[Unset, str] = UNSET
if not isinstance(self.event_date_utc, Unset):
event_date_utc = self.event_date_utc.isoformat()
due_date_time: Union[Unset, None, str] = UNSET
if not isinstance(self.due_date_time, Unset):
due_date_time = self.due_date_time.isoformat() if self.due_date_time else None
due_date_time_utc: Union[Unset, None, str] = UNSET
if not isinstance(self.due_date_time_utc, Unset):
due_date_time_utc = self.due_date_time_utc.isoformat() if self.due_date_time_utc else None
event_entity_type: Union[Unset, int] = UNSET
if not isinstance(self.event_entity_type, Unset):
event_entity_type = self.event_entity_type.value
event_entity_id = self.event_entity_id
event_entity_name = self.event_entity_name
event_entity_seo_id = self.event_entity_seo_id
secondary_event_entity_type: Union[Unset, None, int] = UNSET
if not isinstance(self.secondary_event_entity_type, Unset):
secondary_event_entity_type = (
self.secondary_event_entity_type.value if self.secondary_event_entity_type else None
)
secondary_event_entity_id = self.secondary_event_entity_id
secondary_event_entity_name = self.secondary_event_entity_name
secondary_event_entity_seo_id = self.secondary_event_entity_seo_id
assigned_to_company_user_id = self.assigned_to_company_user_id
assigned_to_image_file_name = self.assigned_to_image_file_name
assigned_to_image_file_extension = self.assigned_to_image_file_extension
assigned_to_seo_id = self.assigned_to_seo_id
assigned_to_user_first_name = self.assigned_to_user_first_name
assigned_to_user_last_name = self.assigned_to_user_last_name
assigned_to_user_deletion_status: Union[Unset, None, int] = UNSET
if not isinstance(self.assigned_to_user_deletion_status, Unset):
assigned_to_user_deletion_status = (
self.assigned_to_user_deletion_status.value if self.assigned_to_user_deletion_status else None
)
number_of_comments = self.number_of_comments
status: Union[Unset, int] = UNSET
if not isinstance(self.status, Unset):
status = self.status.value
start_date_time: Union[Unset, None, str] = UNSET
if not isinstance(self.start_date_time, Unset):
start_date_time = self.start_date_time.isoformat() if self.start_date_time else None
start_date_time_utc: Union[Unset, None, str] = UNSET
if not isinstance(self.start_date_time_utc, Unset):
start_date_time_utc = self.start_date_time_utc.isoformat() if self.start_date_time_utc else None
end_date_time: Union[Unset, None, str] = UNSET
if not isinstance(self.end_date_time, Unset):
end_date_time = self.end_date_time.isoformat() if self.end_date_time else None
end_date_time_utc: Union[Unset, None, str] = UNSET
if not isinstance(self.end_date_time_utc, Unset):
end_date_time_utc = self.end_date_time_utc.isoformat() if self.end_date_time_utc else None
event_type: Union[Unset, int] = UNSET
if not isinstance(self.event_type, Unset):
event_type = self.event_type.value
has_time = self.has_time
timezone_id = self.timezone_id
external_id = self.external_id
external_sync_account_id = self.external_sync_account_id
external_sync_account_company_user_id = self.external_sync_account_company_user_id
external_sync_account_company_user_full_name = self.external_sync_account_company_user_full_name
note_type: Union[Unset, None, int] = UNSET
if not isinstance(self.note_type, Unset):
note_type = self.note_type.value if self.note_type else None
has_attendees = self.has_attendees
is_overdue = self.is_overdue
created_by_company_user_id = self.created_by_company_user_id
updated_by_company_user_id = self.updated_by_company_user_id
created: Union[Unset, str] = UNSET
if not isinstance(self.created, Unset):
created = self.created.isoformat()
updated: Union[Unset, None, str] = UNSET
if not isinstance(self.updated, Unset):
updated = self.updated.isoformat() if self.updated else None
visibility: Union[Unset, int] = UNSET
if not isinstance(self.visibility, Unset):
visibility = self.visibility.value
comments: Union[Unset, None, List[Dict[str, Any]]] = UNSET
if not isinstance(self.comments, Unset):
if self.comments is None:
comments = None
else:
comments = []
for comments_item_data in self.comments:
comments_item = comments_item_data.to_dict()
comments.append(comments_item)
type: Union[Unset, int] = UNSET
if not isinstance(self.type, Unset):
type = self.type.value
id = self.id
company_id = self.company_id
title = self.title
description = self.description
description_html = self.description_html
description_delta = self.description_delta
event_date: Union[Unset, str] = UNSET
if not isinstance(self.event_date, Unset):
event_date = self.event_date.isoformat()
links: Union[Unset, None, List[Dict[str, Any]]] = UNSET
if not isinstance(self.links, Unset):
if self.links is None:
links = None
else:
links = []
for links_item_data in self.links:
links_item = links_item_data.to_dict()
links.append(links_item)
field_dict: Dict[str, Any] = {}
field_dict.update({})
if assigned_to_user_full_name is not UNSET:
field_dict["assignedToUserFullName"] = assigned_to_user_full_name
if assigned_to_user_initials is not UNSET:
field_dict["assignedToUserInitials"] = assigned_to_user_initials
if assigned_to_user_show_as_deleted is not UNSET:
field_dict["assignedToUserShowAsDeleted"] = assigned_to_user_show_as_deleted
if event_date_native_timezone is not UNSET:
field_dict["eventDateNativeTimezone"] = event_date_native_timezone
if due_date_time_native_timezone is not UNSET:
field_dict["dueDateTimeNativeTimezone"] = due_date_time_native_timezone
if start_date_time_native_timezone is not UNSET:
field_dict["startDateTimeNativeTimezone"] = start_date_time_native_timezone
if end_date_time_native_timezone is not UNSET:
field_dict["endDateTimeNativeTimezone"] = end_date_time_native_timezone
if event_date_utc is not UNSET:
field_dict["eventDateUtc"] = event_date_utc
if due_date_time is not UNSET:
field_dict["dueDateTime"] = due_date_time
if due_date_time_utc is not UNSET:
field_dict["dueDateTimeUtc"] = due_date_time_utc
if event_entity_type is not UNSET:
field_dict["eventEntityType"] = event_entity_type
if event_entity_id is not UNSET:
field_dict["eventEntityId"] = event_entity_id
if event_entity_name is not UNSET:
field_dict["eventEntityName"] = event_entity_name
if event_entity_seo_id is not UNSET:
field_dict["eventEntitySeoId"] = event_entity_seo_id
if secondary_event_entity_type is not UNSET:
field_dict["secondaryEventEntityType"] = secondary_event_entity_type
if secondary_event_entity_id is not UNSET:
field_dict["secondaryEventEntityId"] = secondary_event_entity_id
if secondary_event_entity_name is not UNSET:
field_dict["secondaryEventEntityName"] = secondary_event_entity_name
if secondary_event_entity_seo_id is not UNSET:
field_dict["secondaryEventEntitySeoId"] = secondary_event_entity_seo_id
if assigned_to_company_user_id is not UNSET:
field_dict["assignedToCompanyUserId"] = assigned_to_company_user_id
if assigned_to_image_file_name is not UNSET:
field_dict["assignedToImageFileName"] = assigned_to_image_file_name
if assigned_to_image_file_extension is not UNSET:
field_dict["assignedToImageFileExtension"] = assigned_to_image_file_extension
if assigned_to_seo_id is not UNSET:
field_dict["assignedToSeoId"] = assigned_to_seo_id
if assigned_to_user_first_name is not UNSET:
field_dict["assignedToUserFirstName"] = assigned_to_user_first_name
if assigned_to_user_last_name is not UNSET:
field_dict["assignedToUserLastName"] = assigned_to_user_last_name
if assigned_to_user_deletion_status is not UNSET:
field_dict["assignedToUserDeletionStatus"] = assigned_to_user_deletion_status
if number_of_comments is not UNSET:
field_dict["numberOfComments"] = number_of_comments
if status is not UNSET:
field_dict["status"] = status
if start_date_time is not UNSET:
field_dict["startDateTime"] = start_date_time
if start_date_time_utc is not UNSET:
field_dict["startDateTimeUtc"] = start_date_time_utc
if end_date_time is not UNSET:
field_dict["endDateTime"] = end_date_time
if end_date_time_utc is not UNSET:
field_dict["endDateTimeUtc"] = end_date_time_utc
if event_type is not UNSET:
field_dict["eventType"] = event_type
if has_time is not UNSET:
field_dict["hasTime"] = has_time
if timezone_id is not UNSET:
field_dict["timezoneId"] = timezone_id
if external_id is not UNSET:
field_dict["externalId"] = external_id
if external_sync_account_id is not UNSET:
field_dict["externalSyncAccountId"] = external_sync_account_id
if external_sync_account_company_user_id is not UNSET:
field_dict["externalSyncAccountCompanyUserId"] = external_sync_account_company_user_id
if external_sync_account_company_user_full_name is not UNSET:
field_dict["externalSyncAccountCompanyUserFullName"] = external_sync_account_company_user_full_name
if note_type is not UNSET:
field_dict["noteType"] = note_type
if has_attendees is not UNSET:
field_dict["hasAttendees"] = has_attendees
if is_overdue is not UNSET:
field_dict["isOverdue"] = is_overdue
if created_by_company_user_id is not UNSET:
field_dict["createdByCompanyUserId"] = created_by_company_user_id
if updated_by_company_user_id is not UNSET:
field_dict["updatedByCompanyUserId"] = updated_by_company_user_id
if created is not UNSET:
field_dict["created"] = created
if updated is not UNSET:
field_dict["updated"] = updated
if visibility is not UNSET:
field_dict["visibility"] = visibility
if comments is not UNSET:
field_dict["comments"] = comments
if type is not UNSET:
field_dict["type"] = type
if id is not UNSET:
field_dict["id"] = id
if company_id is not UNSET:
field_dict["companyId"] = company_id
if title is not UNSET:
field_dict["title"] = title
if description is not UNSET:
field_dict["description"] = description
if description_html is not UNSET:
field_dict["descriptionHtml"] = description_html
if description_delta is not UNSET:
field_dict["descriptionDelta"] = description_delta
if event_date is not UNSET:
field_dict["eventDate"] = event_date
if links is not UNSET:
field_dict["links"] = links
return field_dict
@classmethod
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
from ..models.event_comment_model import EventCommentModel
from ..models.link import Link
d = src_dict.copy()
assigned_to_user_full_name = d.pop("assignedToUserFullName", UNSET)
assigned_to_user_initials = d.pop("assignedToUserInitials", UNSET)
assigned_to_user_show_as_deleted = d.pop("assignedToUserShowAsDeleted", UNSET)
_event_date_native_timezone = d.pop("eventDateNativeTimezone", UNSET)
event_date_native_timezone: Union[Unset, datetime.datetime]
if isinstance(_event_date_native_timezone, Unset):
event_date_native_timezone = UNSET
else:
event_date_native_timezone = isoparse(_event_date_native_timezone)
_due_date_time_native_timezone = d.pop("dueDateTimeNativeTimezone", UNSET)
due_date_time_native_timezone: Union[Unset, None, datetime.datetime]
if _due_date_time_native_timezone is None:
due_date_time_native_timezone = None
elif isinstance(_due_date_time_native_timezone, Unset):
due_date_time_native_timezone = UNSET
else:
due_date_time_native_timezone = isoparse(_due_date_time_native_timezone)
_start_date_time_native_timezone = d.pop("startDateTimeNativeTimezone", UNSET)
start_date_time_native_timezone: Union[Unset, None, datetime.datetime]
if _start_date_time_native_timezone is None:
start_date_time_native_timezone = None
elif isinstance(_start_date_time_native_timezone, Unset):
start_date_time_native_timezone = UNSET
else:
start_date_time_native_timezone = isoparse(_start_date_time_native_timezone)
_end_date_time_native_timezone = d.pop("endDateTimeNativeTimezone", UNSET)
end_date_time_native_timezone: Union[Unset, None, datetime.datetime]
if _end_date_time_native_timezone is None:
end_date_time_native_timezone = None
elif isinstance(_end_date_time_native_timezone, Unset):
end_date_time_native_timezone = UNSET
else:
end_date_time_native_timezone = isoparse(_end_date_time_native_timezone)
_event_date_utc = d.pop("eventDateUtc", UNSET)
event_date_utc: Union[Unset, datetime.datetime]
if isinstance(_event_date_utc, Unset):
event_date_utc = UNSET
else:
event_date_utc = isoparse(_event_date_utc)
_due_date_time = d.pop("dueDateTime", UNSET)
due_date_time: Union[Unset, None, datetime.datetime]
if _due_date_time is None:
due_date_time = None
elif isinstance(_due_date_time, Unset):
due_date_time = UNSET
else:
due_date_time = isoparse(_due_date_time)
_due_date_time_utc = d.pop("dueDateTimeUtc", UNSET)
due_date_time_utc: Union[Unset, None, datetime.datetime]
if _due_date_time_utc is None:
due_date_time_utc = None
elif isinstance(_due_date_time_utc, Unset):
due_date_time_utc = UNSET
else:
due_date_time_utc = isoparse(_due_date_time_utc)
_event_entity_type = d.pop("eventEntityType", UNSET)
event_entity_type: Union[Unset, EventEntityType]
if isinstance(_event_entity_type, Unset):
event_entity_type = UNSET
else:
event_entity_type = EventEntityType(_event_entity_type)
event_entity_id = d.pop("eventEntityId", UNSET)
event_entity_name = d.pop("eventEntityName", UNSET)
event_entity_seo_id = d.pop("eventEntitySeoId", UNSET)
_secondary_event_entity_type = d.pop("secondaryEventEntityType", UNSET)
secondary_event_entity_type: Union[Unset, None, EventEntityType]
if _secondary_event_entity_type is None:
secondary_event_entity_type = None
elif isinstance(_secondary_event_entity_type, Unset):
secondary_event_entity_type = UNSET
else:
secondary_event_entity_type = EventEntityType(_secondary_event_entity_type)
secondary_event_entity_id = d.pop("secondaryEventEntityId", UNSET)
secondary_event_entity_name = d.pop("secondaryEventEntityName", UNSET)
secondary_event_entity_seo_id = d.pop("secondaryEventEntitySeoId", UNSET)
assigned_to_company_user_id = d.pop("assignedToCompanyUserId", UNSET)
assigned_to_image_file_name = d.pop("assignedToImageFileName", UNSET)
assigned_to_image_file_extension = d.pop("assignedToImageFileExtension", UNSET)
assigned_to_seo_id = d.pop("assignedToSeoId", UNSET)
assigned_to_user_first_name = d.pop("assignedToUserFirstName", UNSET)
assigned_to_user_last_name = d.pop("assignedToUserLastName", UNSET)
_assigned_to_user_deletion_status = d.pop("assignedToUserDeletionStatus", UNSET)
assigned_to_user_deletion_status: Union[Unset, None, CompanyUserDeletionStatus]
if _assigned_to_user_deletion_status is None:
assigned_to_user_deletion_status = None
elif isinstance(_assigned_to_user_deletion_status, Unset):
assigned_to_user_deletion_status = UNSET
else:
assigned_to_user_deletion_status = CompanyUserDeletionStatus(_assigned_to_user_deletion_status)
number_of_comments = d.pop("numberOfComments", UNSET)
_status = d.pop("status", UNSET)
status: Union[Unset, EventStatusValue]
if isinstance(_status, Unset):
status = UNSET
else:
status = EventStatusValue(_status)
_start_date_time = d.pop("startDateTime", UNSET)
start_date_time: Union[Unset, None, datetime.datetime]
if _start_date_time is None:
start_date_time = None
elif isinstance(_start_date_time, Unset):
start_date_time = UNSET
else:
start_date_time = isoparse(_start_date_time)
_start_date_time_utc = d.pop("startDateTimeUtc", UNSET)
start_date_time_utc: Union[Unset, None, datetime.datetime]
if _start_date_time_utc is None:
start_date_time_utc = None
elif isinstance(_start_date_time_utc, Unset):
start_date_time_utc = UNSET
else:
start_date_time_utc = isoparse(_start_date_time_utc)
_end_date_time = d.pop("endDateTime", UNSET)
end_date_time: Union[Unset, None, datetime.datetime]
if _end_date_time is None:
end_date_time = None
elif isinstance(_end_date_time, Unset):
end_date_time = UNSET
else:
end_date_time = isoparse(_end_date_time)
_end_date_time_utc = d.pop("endDateTimeUtc", UNSET)
end_date_time_utc: Union[Unset, None, datetime.datetime]
if _end_date_time_utc is None:
end_date_time_utc = None
elif isinstance(_end_date_time_utc, Unset):
end_date_time_utc = UNSET
else:
end_date_time_utc = isoparse(_end_date_time_utc)
_event_type = d.pop("eventType", UNSET)
event_type: Union[Unset, EventType]
if isinstance(_event_type, Unset):
event_type = UNSET
else:
event_type = EventType(_event_type)
has_time = d.pop("hasTime", UNSET)
timezone_id = d.pop("timezoneId", UNSET)
external_id = d.pop("externalId", UNSET)
external_sync_account_id = d.pop("externalSyncAccountId", UNSET)
external_sync_account_company_user_id = d.pop("externalSyncAccountCompanyUserId", UNSET)
external_sync_account_company_user_full_name = d.pop("externalSyncAccountCompanyUserFullName", UNSET)
_note_type = d.pop("noteType", UNSET)
note_type: Union[Unset, None, EventNoteType]
if _note_type is None:
note_type = None
elif isinstance(_note_type, Unset):
note_type = UNSET
else:
note_type = EventNoteType(_note_type)
has_attendees = d.pop("hasAttendees", UNSET)
is_overdue = d.pop("isOverdue", UNSET)
created_by_company_user_id = d.pop("createdByCompanyUserId", UNSET)
updated_by_company_user_id = d.pop("updatedByCompanyUserId", UNSET)
_created = d.pop("created", UNSET)
created: Union[Unset, datetime.datetime]
if isinstance(_created, Unset):
created = UNSET
else:
created = isoparse(_created)
_updated = d.pop("updated", UNSET)
updated: Union[Unset, None, datetime.datetime]
if _updated is None:
updated = None
elif isinstance(_updated, Unset):
updated = UNSET
else:
updated = isoparse(_updated)
_visibility = d.pop("visibility", UNSET)
visibility: Union[Unset, EventVisibility]
if isinstance(_visibility, Unset):
visibility = UNSET
else:
visibility = EventVisibility(_visibility)
comments = []
_comments = d.pop("comments", UNSET)
for comments_item_data in _comments or []:
comments_item = EventCommentModel.from_dict(comments_item_data)
comments.append(comments_item)
_type = d.pop("type", UNSET)
type: Union[Unset, EventType]
if isinstance(_type, Unset):
type = UNSET
else:
type = EventType(_type)
id = d.pop("id", UNSET)
company_id = d.pop("companyId", UNSET)
title = d.pop("title", UNSET)
description = d.pop("description", UNSET)
description_html = d.pop("descriptionHtml", UNSET)
description_delta = d.pop("descriptionDelta", UNSET)
_event_date = d.pop("eventDate", UNSET)
event_date: Union[Unset, datetime.datetime]
if isinstance(_event_date, Unset):
event_date = UNSET
else:
event_date = isoparse(_event_date)
links = []
_links = d.pop("links", UNSET)
for links_item_data in _links or []:
links_item = Link.from_dict(links_item_data)
links.append(links_item)
search_event_model = cls(
assigned_to_user_full_name=assigned_to_user_full_name,
assigned_to_user_initials=assigned_to_user_initials,
assigned_to_user_show_as_deleted=assigned_to_user_show_as_deleted,
event_date_native_timezone=event_date_native_timezone,
due_date_time_native_timezone=due_date_time_native_timezone,
start_date_time_native_timezone=start_date_time_native_timezone,
end_date_time_native_timezone=end_date_time_native_timezone,
event_date_utc=event_date_utc,
due_date_time=due_date_time,
due_date_time_utc=due_date_time_utc,
event_entity_type=event_entity_type,
event_entity_id=event_entity_id,
event_entity_name=event_entity_name,
event_entity_seo_id=event_entity_seo_id,
secondary_event_entity_type=secondary_event_entity_type,
secondary_event_entity_id=secondary_event_entity_id,
secondary_event_entity_name=secondary_event_entity_name,
secondary_event_entity_seo_id=secondary_event_entity_seo_id,
assigned_to_company_user_id=assigned_to_company_user_id,
assigned_to_image_file_name=assigned_to_image_file_name,
assigned_to_image_file_extension=assigned_to_image_file_extension,
assigned_to_seo_id=assigned_to_seo_id,
assigned_to_user_first_name=assigned_to_user_first_name,
assigned_to_user_last_name=assigned_to_user_last_name,
assigned_to_user_deletion_status=assigned_to_user_deletion_status,
number_of_comments=number_of_comments,
status=status,
start_date_time=start_date_time,
start_date_time_utc=start_date_time_utc,
end_date_time=end_date_time,
end_date_time_utc=end_date_time_utc,
event_type=event_type,
has_time=has_time,
timezone_id=timezone_id,
external_id=external_id,
external_sync_account_id=external_sync_account_id,
external_sync_account_company_user_id=external_sync_account_company_user_id,
external_sync_account_company_user_full_name=external_sync_account_company_user_full_name,
note_type=note_type,
has_attendees=has_attendees,
is_overdue=is_overdue,
created_by_company_user_id=created_by_company_user_id,
updated_by_company_user_id=updated_by_company_user_id,
created=created,
updated=updated,
visibility=visibility,
comments=comments,
type=type,
id=id,
company_id=company_id,
title=title,
description=description,
description_html=description_html,
description_delta=description_delta,
event_date=event_date,
links=links,
)
return search_event_model

View File

@@ -0,0 +1,209 @@
from typing import TYPE_CHECKING, Any, Dict, List, Type, TypeVar, Union, cast
from attrs import define as _attrs_define
from ..models.event_entity_type import EventEntityType
from ..models.event_status_value import EventStatusValue
from ..models.event_type import EventType
from ..types import UNSET, Unset
if TYPE_CHECKING:
from ..models.date_time_filter_interval import DateTimeFilterInterval
from ..models.event_query_sort_page_and_sort_by_model import EventQuerySortPageAndSortByModel
T = TypeVar("T", bound="SearchEventQueryModel")
@_attrs_define
class SearchEventQueryModel:
"""
Attributes:
event_statuses (Union[Unset, None, List[EventStatusValue]]):
entity_types (Union[Unset, None, List[EventEntityType]]):
event_types (Union[Unset, None, List[EventType]]):
created_date (Union[Unset, None, DateTimeFilterInterval]):
event_date (Union[Unset, None, DateTimeFilterInterval]):
i_am_responsible (Union[Unset, None, bool]):
no_responsible (Union[Unset, None, bool]):
responsibles (Union[Unset, None, List[int]]):
query (Union[Unset, None, str]):
timezone_id (Union[Unset, None, str]):
page_and_sort_by (Union[Unset, None, EventQuerySortPageAndSortByModel]):
"""
event_statuses: Union[Unset, None, List[EventStatusValue]] = UNSET
entity_types: Union[Unset, None, List[EventEntityType]] = UNSET
event_types: Union[Unset, None, List[EventType]] = UNSET
created_date: Union[Unset, None, "DateTimeFilterInterval"] = UNSET
event_date: Union[Unset, None, "DateTimeFilterInterval"] = UNSET
i_am_responsible: Union[Unset, None, bool] = UNSET
no_responsible: Union[Unset, None, bool] = UNSET
responsibles: Union[Unset, None, List[int]] = UNSET
query: Union[Unset, None, str] = UNSET
timezone_id: Union[Unset, None, str] = UNSET
page_and_sort_by: Union[Unset, None, "EventQuerySortPageAndSortByModel"] = UNSET
def to_dict(self) -> Dict[str, Any]:
event_statuses: Union[Unset, None, List[int]] = UNSET
if not isinstance(self.event_statuses, Unset):
if self.event_statuses is None:
event_statuses = None
else:
event_statuses = []
for event_statuses_item_data in self.event_statuses:
event_statuses_item = event_statuses_item_data.value
event_statuses.append(event_statuses_item)
entity_types: Union[Unset, None, List[int]] = UNSET
if not isinstance(self.entity_types, Unset):
if self.entity_types is None:
entity_types = None
else:
entity_types = []
for entity_types_item_data in self.entity_types:
entity_types_item = entity_types_item_data.value
entity_types.append(entity_types_item)
event_types: Union[Unset, None, List[int]] = UNSET
if not isinstance(self.event_types, Unset):
if self.event_types is None:
event_types = None
else:
event_types = []
for event_types_item_data in self.event_types:
event_types_item = event_types_item_data.value
event_types.append(event_types_item)
created_date: Union[Unset, None, Dict[str, Any]] = UNSET
if not isinstance(self.created_date, Unset):
created_date = self.created_date.to_dict() if self.created_date else None
event_date: Union[Unset, None, Dict[str, Any]] = UNSET
if not isinstance(self.event_date, Unset):
event_date = self.event_date.to_dict() if self.event_date else None
i_am_responsible = self.i_am_responsible
no_responsible = self.no_responsible
responsibles: Union[Unset, None, List[int]] = UNSET
if not isinstance(self.responsibles, Unset):
if self.responsibles is None:
responsibles = None
else:
responsibles = self.responsibles
query = self.query
timezone_id = self.timezone_id
page_and_sort_by: Union[Unset, None, Dict[str, Any]] = UNSET
if not isinstance(self.page_and_sort_by, Unset):
page_and_sort_by = self.page_and_sort_by.to_dict() if self.page_and_sort_by else None
field_dict: Dict[str, Any] = {}
field_dict.update({})
if event_statuses is not UNSET:
field_dict["eventStatuses"] = event_statuses
if entity_types is not UNSET:
field_dict["entityTypes"] = entity_types
if event_types is not UNSET:
field_dict["eventTypes"] = event_types
if created_date is not UNSET:
field_dict["createdDate"] = created_date
if event_date is not UNSET:
field_dict["eventDate"] = event_date
if i_am_responsible is not UNSET:
field_dict["iAmResponsible"] = i_am_responsible
if no_responsible is not UNSET:
field_dict["noResponsible"] = no_responsible
if responsibles is not UNSET:
field_dict["responsibles"] = responsibles
if query is not UNSET:
field_dict["query"] = query
if timezone_id is not UNSET:
field_dict["timezoneId"] = timezone_id
if page_and_sort_by is not UNSET:
field_dict["pageAndSortBy"] = page_and_sort_by
return field_dict
@classmethod
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
from ..models.date_time_filter_interval import DateTimeFilterInterval
from ..models.event_query_sort_page_and_sort_by_model import EventQuerySortPageAndSortByModel
d = src_dict.copy()
event_statuses = []
_event_statuses = d.pop("eventStatuses", UNSET)
for event_statuses_item_data in _event_statuses or []:
event_statuses_item = EventStatusValue(event_statuses_item_data)
event_statuses.append(event_statuses_item)
entity_types = []
_entity_types = d.pop("entityTypes", UNSET)
for entity_types_item_data in _entity_types or []:
entity_types_item = EventEntityType(entity_types_item_data)
entity_types.append(entity_types_item)
event_types = []
_event_types = d.pop("eventTypes", UNSET)
for event_types_item_data in _event_types or []:
event_types_item = EventType(event_types_item_data)
event_types.append(event_types_item)
_created_date = d.pop("createdDate", UNSET)
created_date: Union[Unset, None, DateTimeFilterInterval]
if _created_date is None:
created_date = None
elif isinstance(_created_date, Unset):
created_date = UNSET
else:
created_date = DateTimeFilterInterval.from_dict(_created_date)
_event_date = d.pop("eventDate", UNSET)
event_date: Union[Unset, None, DateTimeFilterInterval]
if _event_date is None:
event_date = None
elif isinstance(_event_date, Unset):
event_date = UNSET
else:
event_date = DateTimeFilterInterval.from_dict(_event_date)
i_am_responsible = d.pop("iAmResponsible", UNSET)
no_responsible = d.pop("noResponsible", UNSET)
responsibles = cast(List[int], d.pop("responsibles", UNSET))
query = d.pop("query", UNSET)
timezone_id = d.pop("timezoneId", UNSET)
_page_and_sort_by = d.pop("pageAndSortBy", UNSET)
page_and_sort_by: Union[Unset, None, EventQuerySortPageAndSortByModel]
if _page_and_sort_by is None:
page_and_sort_by = None
elif isinstance(_page_and_sort_by, Unset):
page_and_sort_by = UNSET
else:
page_and_sort_by = EventQuerySortPageAndSortByModel.from_dict(_page_and_sort_by)
search_event_query_model = cls(
event_statuses=event_statuses,
entity_types=entity_types,
event_types=event_types,
created_date=created_date,
event_date=event_date,
i_am_responsible=i_am_responsible,
no_responsible=no_responsible,
responsibles=responsibles,
query=query,
timezone_id=timezone_id,
page_and_sort_by=page_and_sort_by,
)
return search_event_query_model

View File

@@ -0,0 +1,95 @@
from typing import TYPE_CHECKING, Any, Dict, List, Type, TypeVar, Union
from attrs import define as _attrs_define
from ..types import UNSET, Unset
if TYPE_CHECKING:
from ..models.event_query_sort_page_and_sort_by_model import EventQuerySortPageAndSortByModel
from ..models.search_event_model import SearchEventModel
T = TypeVar("T", bound="SearchEventResultModel")
@_attrs_define
class SearchEventResultModel:
"""
Attributes:
paged_and_sorted_by (Union[Unset, None, EventQuerySortPageAndSortByModel]):
result (Union[Unset, None, List['SearchEventModel']]):
hits (Union[Unset, int]):
total_items (Union[Unset, int]):
"""
paged_and_sorted_by: Union[Unset, None, "EventQuerySortPageAndSortByModel"] = UNSET
result: Union[Unset, None, List["SearchEventModel"]] = UNSET
hits: Union[Unset, int] = UNSET
total_items: Union[Unset, int] = UNSET
def to_dict(self) -> Dict[str, Any]:
paged_and_sorted_by: Union[Unset, None, Dict[str, Any]] = UNSET
if not isinstance(self.paged_and_sorted_by, Unset):
paged_and_sorted_by = self.paged_and_sorted_by.to_dict() if self.paged_and_sorted_by else None
result: Union[Unset, None, List[Dict[str, Any]]] = UNSET
if not isinstance(self.result, Unset):
if self.result is None:
result = None
else:
result = []
for result_item_data in self.result:
result_item = result_item_data.to_dict()
result.append(result_item)
hits = self.hits
total_items = self.total_items
field_dict: Dict[str, Any] = {}
field_dict.update({})
if paged_and_sorted_by is not UNSET:
field_dict["pagedAndSortedBy"] = paged_and_sorted_by
if result is not UNSET:
field_dict["result"] = result
if hits is not UNSET:
field_dict["hits"] = hits
if total_items is not UNSET:
field_dict["totalItems"] = total_items
return field_dict
@classmethod
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
from ..models.event_query_sort_page_and_sort_by_model import EventQuerySortPageAndSortByModel
from ..models.search_event_model import SearchEventModel
d = src_dict.copy()
_paged_and_sorted_by = d.pop("pagedAndSortedBy", UNSET)
paged_and_sorted_by: Union[Unset, None, EventQuerySortPageAndSortByModel]
if _paged_and_sorted_by is None:
paged_and_sorted_by = None
elif isinstance(_paged_and_sorted_by, Unset):
paged_and_sorted_by = UNSET
else:
paged_and_sorted_by = EventQuerySortPageAndSortByModel.from_dict(_paged_and_sorted_by)
result = []
_result = d.pop("result", UNSET)
for result_item_data in _result or []:
result_item = SearchEventModel.from_dict(result_item_data)
result.append(result_item)
hits = d.pop("hits", UNSET)
total_items = d.pop("totalItems", UNSET)
search_event_result_model = cls(
paged_and_sorted_by=paged_and_sorted_by,
result=result,
hits=hits,
total_items=total_items,
)
return search_event_result_model

View File

@@ -13,7 +13,7 @@ include = ["CHANGELOG.md", "cinode_api_client/py.typed"]
[tool.poetry.dependencies]
python = "^3.8"
httpx = ">=0.27.0,<0.28.0"
httpx = ">=0.20.0,<0.25.0"
attrs = ">=21.3.0"
python-dateutil = "^2.8.0"

11387
src/cinode.d.ts vendored

File diff suppressed because it is too large Load Diff