waldur-api-client 7.8.3__py3-none-any.whl → 7.8.4__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of waldur-api-client might be problematic. Click here for more details.
- waldur_api_client/api/booking_resources/booking_resources_count.py +18 -0
- waldur_api_client/api/booking_resources/booking_resources_list.py +18 -0
- waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_checklist_template_count.py +125 -0
- waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_checklist_template_retrieve.py +126 -0
- waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_tos_stats_retrieve.py +146 -0
- waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_count.py +18 -0
- waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_list.py +18 -0
- waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_update_options.py +168 -0
- waldur_api_client/api/marketplace_resources/marketplace_resources_count.py +18 -0
- waldur_api_client/api/marketplace_resources/marketplace_resources_list.py +18 -0
- waldur_api_client/api/marketplace_resources/marketplace_resources_renew.py +166 -0
- waldur_api_client/api/marketplace_service_providers/service_provider_checklists_summary.py +189 -0
- waldur_api_client/api/onboarding/__init__.py +1 -0
- waldur_api_client/api/onboarding/onboarding_supported_countries_retrieve.py +74 -0
- waldur_api_client/api/onboarding_justifications/__init__.py +1 -0
- waldur_api_client/api/onboarding_justifications/onboarding_justifications_attach_document.py +211 -0
- waldur_api_client/api/onboarding_justifications/onboarding_justifications_count.py +172 -0
- waldur_api_client/api/onboarding_justifications/onboarding_justifications_create.py +150 -0
- waldur_api_client/api/onboarding_justifications/onboarding_justifications_create_justification.py +154 -0
- waldur_api_client/api/onboarding_justifications/onboarding_justifications_destroy.py +89 -0
- waldur_api_client/api/onboarding_justifications/onboarding_justifications_list.py +175 -0
- waldur_api_client/api/onboarding_justifications/onboarding_justifications_partial_update.py +164 -0
- waldur_api_client/api/onboarding_justifications/onboarding_justifications_retrieve.py +142 -0
- waldur_api_client/api/onboarding_justifications/onboarding_justifications_update.py +164 -0
- waldur_api_client/api/onboarding_verifications/__init__.py +1 -0
- waldur_api_client/api/onboarding_verifications/onboarding_verifications_count.py +172 -0
- waldur_api_client/api/onboarding_verifications/onboarding_verifications_create.py +150 -0
- waldur_api_client/api/onboarding_verifications/onboarding_verifications_create_customer.py +144 -0
- waldur_api_client/api/onboarding_verifications/onboarding_verifications_destroy.py +89 -0
- waldur_api_client/api/onboarding_verifications/onboarding_verifications_list.py +175 -0
- waldur_api_client/api/onboarding_verifications/onboarding_verifications_partial_update.py +164 -0
- waldur_api_client/api/onboarding_verifications/onboarding_verifications_retrieve.py +142 -0
- waldur_api_client/api/onboarding_verifications/onboarding_verifications_update.py +164 -0
- waldur_api_client/api/onboarding_verifications/onboarding_verifications_validate_company.py +154 -0
- waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_count.py +33 -0
- waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_create.py +154 -0
- waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_destroy.py +91 -0
- waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_list.py +33 -0
- waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_partial_update.py +164 -0
- waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_update.py +164 -0
- waldur_api_client/api/openstack_networks/openstack_networks_rbac_policy_create.py +24 -22
- waldur_api_client/api/projects/projects_checklist_template_count.py +125 -0
- waldur_api_client/api/projects/projects_checklist_template_retrieve.py +126 -0
- waldur_api_client/api/proposal_proposals/proposal_proposals_checklist_template_count.py +125 -0
- waldur_api_client/api/proposal_proposals/proposal_proposals_checklist_template_retrieve.py +126 -0
- waldur_api_client/api/proposal_protected_calls/proposal_protected_calls_offerings_list.py +15 -0
- waldur_api_client/models/__init__.py +62 -4
- waldur_api_client/models/booking_resource.py +4 -11
- waldur_api_client/models/call_round.py +4 -4
- waldur_api_client/models/checklist_template.py +99 -0
- waldur_api_client/models/checklist_template_checklist.py +44 -0
- waldur_api_client/models/constance_settings.py +45 -0
- waldur_api_client/models/constance_settings_request.py +45 -0
- waldur_api_client/models/constance_settings_request_form.py +45 -0
- waldur_api_client/models/constance_settings_request_multipart.py +85 -0
- waldur_api_client/models/customer.py +9 -0
- waldur_api_client/models/customers_list_field_item.py +1 -0
- waldur_api_client/models/customers_retrieve_field_item.py +1 -0
- waldur_api_client/models/deprecated_network_rbac_policy.py +137 -0
- waldur_api_client/models/deprecated_network_rbac_policy_request.py +78 -0
- waldur_api_client/models/event_types_enum.py +1 -0
- waldur_api_client/models/marketplace_service_providers_projects_list_field_item.py +1 -0
- waldur_api_client/models/merged_plugin_options.py +18 -0
- waldur_api_client/models/merged_plugin_options_request.py +18 -0
- waldur_api_client/models/nested_round.py +5 -5
- waldur_api_client/models/network_rbac_policy_request.py +8 -0
- waldur_api_client/models/notification.py +9 -9
- waldur_api_client/models/{notification_context_fields.py → notification_context_schema.py} +6 -6
- waldur_api_client/models/notification_template_detail_serializers.py +9 -3
- waldur_api_client/models/offering_component.py +79 -0
- waldur_api_client/models/offering_component_request.py +80 -0
- waldur_api_client/models/onboarding_company_validation_request_request.py +88 -0
- waldur_api_client/models/onboarding_justification.py +183 -0
- waldur_api_client/models/onboarding_justification_create_request.py +68 -0
- waldur_api_client/models/onboarding_justification_documentation.py +108 -0
- waldur_api_client/models/onboarding_justification_documentation_request.py +84 -0
- waldur_api_client/models/onboarding_justification_documentation_request_form.py +84 -0
- waldur_api_client/models/onboarding_justification_documentation_request_multipart.py +98 -0
- waldur_api_client/models/onboarding_justification_request.py +75 -0
- waldur_api_client/models/onboarding_verification.py +250 -0
- waldur_api_client/models/onboarding_verification_request.py +128 -0
- waldur_api_client/models/onboarding_verification_status_enum.py +12 -0
- waldur_api_client/models/open_stack_create_floating_ip_request.py +20 -1
- waldur_api_client/models/order_create.py +4 -4
- waldur_api_client/models/order_details.py +4 -11
- waldur_api_client/models/patched_network_rbac_policy_request.py +85 -0
- waldur_api_client/models/patched_onboarding_justification_request.py +77 -0
- waldur_api_client/models/patched_onboarding_verification_request.py +128 -0
- waldur_api_client/models/patched_project_credit_request.py +13 -0
- waldur_api_client/models/patched_project_request.py +1 -2
- waldur_api_client/models/patched_project_request_form.py +1 -2
- waldur_api_client/models/patched_project_request_multipart.py +1 -2
- waldur_api_client/models/project.py +10 -2
- waldur_api_client/models/project_credit.py +13 -0
- waldur_api_client/models/project_credit_request.py +13 -0
- waldur_api_client/models/project_request.py +1 -2
- waldur_api_client/models/project_request_form.py +1 -2
- waldur_api_client/models/project_request_multipart.py +1 -2
- waldur_api_client/models/projects_list_field_item.py +1 -0
- waldur_api_client/models/projects_retrieve_field_item.py +1 -0
- waldur_api_client/models/protected_round.py +4 -4
- waldur_api_client/models/question.py +102 -0
- waldur_api_client/models/question_options.py +79 -0
- waldur_api_client/models/resource.py +4 -11
- waldur_api_client/models/resource_renew_request.py +83 -0
- waldur_api_client/models/resource_renew_request_limits.py +44 -0
- waldur_api_client/models/{status_enum.py → round_status.py} +1 -1
- waldur_api_client/models/service_provider_checklist_summary.py +98 -0
- waldur_api_client/models/time_series_to_s_data.py +69 -0
- waldur_api_client/models/to_s_consent_dashboard.py +155 -0
- waldur_api_client/models/update_offering_component_request.py +79 -0
- waldur_api_client/models/validation_decision_enum.py +10 -0
- waldur_api_client/models/validation_method_enum.py +8 -0
- waldur_api_client/models/version_adoption.py +67 -0
- {waldur_api_client-7.8.3.dist-info → waldur_api_client-7.8.4.dist-info}/METADATA +1 -1
- {waldur_api_client-7.8.3.dist-info → waldur_api_client-7.8.4.dist-info}/RECORD +118 -54
- {waldur_api_client-7.8.3.dist-info → waldur_api_client-7.8.4.dist-info}/WHEEL +0 -0
- {waldur_api_client-7.8.3.dist-info → waldur_api_client-7.8.4.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import datetime
|
|
2
|
+
from collections.abc import Mapping
|
|
3
|
+
from typing import Any, TypeVar, Union, cast
|
|
4
|
+
|
|
5
|
+
from attrs import define as _attrs_define
|
|
6
|
+
from attrs import field as _attrs_field
|
|
7
|
+
from dateutil.parser import isoparse
|
|
8
|
+
|
|
9
|
+
from ..types import UNSET, Unset
|
|
10
|
+
|
|
11
|
+
T = TypeVar("T", bound="PatchedOnboardingVerificationRequest")
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
@_attrs_define
|
|
15
|
+
class PatchedOnboardingVerificationRequest:
|
|
16
|
+
"""
|
|
17
|
+
Attributes:
|
|
18
|
+
user (Union[Unset, int]): User requesting company onboarding
|
|
19
|
+
country (Union[Unset, str]): ISO country code (e.g., 'EE' for Estonia)
|
|
20
|
+
legal_person_identifier (Union[Unset, str]): Official company registration code
|
|
21
|
+
legal_name (Union[Unset, str]): Claimed company name (optional, for reference)
|
|
22
|
+
user_submitted_customer_metadata (Union[Unset, Any]): Additional customer metadata submitted by user for manual
|
|
23
|
+
verification cases. Should contain valid Customer model fields.
|
|
24
|
+
expires_at (Union[None, Unset, datetime.datetime]): When this verification expires
|
|
25
|
+
"""
|
|
26
|
+
|
|
27
|
+
user: Union[Unset, int] = UNSET
|
|
28
|
+
country: Union[Unset, str] = UNSET
|
|
29
|
+
legal_person_identifier: Union[Unset, str] = UNSET
|
|
30
|
+
legal_name: Union[Unset, str] = UNSET
|
|
31
|
+
user_submitted_customer_metadata: Union[Unset, Any] = UNSET
|
|
32
|
+
expires_at: Union[None, Unset, datetime.datetime] = UNSET
|
|
33
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
34
|
+
|
|
35
|
+
def to_dict(self) -> dict[str, Any]:
|
|
36
|
+
user = self.user
|
|
37
|
+
|
|
38
|
+
country = self.country
|
|
39
|
+
|
|
40
|
+
legal_person_identifier = self.legal_person_identifier
|
|
41
|
+
|
|
42
|
+
legal_name = self.legal_name
|
|
43
|
+
|
|
44
|
+
user_submitted_customer_metadata = self.user_submitted_customer_metadata
|
|
45
|
+
|
|
46
|
+
expires_at: Union[None, Unset, str]
|
|
47
|
+
if isinstance(self.expires_at, Unset):
|
|
48
|
+
expires_at = UNSET
|
|
49
|
+
elif isinstance(self.expires_at, datetime.datetime):
|
|
50
|
+
expires_at = self.expires_at.isoformat()
|
|
51
|
+
else:
|
|
52
|
+
expires_at = self.expires_at
|
|
53
|
+
|
|
54
|
+
field_dict: dict[str, Any] = {}
|
|
55
|
+
field_dict.update(self.additional_properties)
|
|
56
|
+
field_dict.update({})
|
|
57
|
+
if user is not UNSET:
|
|
58
|
+
field_dict["user"] = user
|
|
59
|
+
if country is not UNSET:
|
|
60
|
+
field_dict["country"] = country
|
|
61
|
+
if legal_person_identifier is not UNSET:
|
|
62
|
+
field_dict["legal_person_identifier"] = legal_person_identifier
|
|
63
|
+
if legal_name is not UNSET:
|
|
64
|
+
field_dict["legal_name"] = legal_name
|
|
65
|
+
if user_submitted_customer_metadata is not UNSET:
|
|
66
|
+
field_dict["user_submitted_customer_metadata"] = user_submitted_customer_metadata
|
|
67
|
+
if expires_at is not UNSET:
|
|
68
|
+
field_dict["expires_at"] = expires_at
|
|
69
|
+
|
|
70
|
+
return field_dict
|
|
71
|
+
|
|
72
|
+
@classmethod
|
|
73
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
74
|
+
d = dict(src_dict)
|
|
75
|
+
user = d.pop("user", UNSET)
|
|
76
|
+
|
|
77
|
+
country = d.pop("country", UNSET)
|
|
78
|
+
|
|
79
|
+
legal_person_identifier = d.pop("legal_person_identifier", UNSET)
|
|
80
|
+
|
|
81
|
+
legal_name = d.pop("legal_name", UNSET)
|
|
82
|
+
|
|
83
|
+
user_submitted_customer_metadata = d.pop("user_submitted_customer_metadata", UNSET)
|
|
84
|
+
|
|
85
|
+
def _parse_expires_at(data: object) -> Union[None, Unset, datetime.datetime]:
|
|
86
|
+
if data is None:
|
|
87
|
+
return data
|
|
88
|
+
if isinstance(data, Unset):
|
|
89
|
+
return data
|
|
90
|
+
try:
|
|
91
|
+
if not isinstance(data, str):
|
|
92
|
+
raise TypeError()
|
|
93
|
+
expires_at_type_0 = isoparse(data)
|
|
94
|
+
|
|
95
|
+
return expires_at_type_0
|
|
96
|
+
except: # noqa: E722
|
|
97
|
+
pass
|
|
98
|
+
return cast(Union[None, Unset, datetime.datetime], data)
|
|
99
|
+
|
|
100
|
+
expires_at = _parse_expires_at(d.pop("expires_at", UNSET))
|
|
101
|
+
|
|
102
|
+
patched_onboarding_verification_request = cls(
|
|
103
|
+
user=user,
|
|
104
|
+
country=country,
|
|
105
|
+
legal_person_identifier=legal_person_identifier,
|
|
106
|
+
legal_name=legal_name,
|
|
107
|
+
user_submitted_customer_metadata=user_submitted_customer_metadata,
|
|
108
|
+
expires_at=expires_at,
|
|
109
|
+
)
|
|
110
|
+
|
|
111
|
+
patched_onboarding_verification_request.additional_properties = d
|
|
112
|
+
return patched_onboarding_verification_request
|
|
113
|
+
|
|
114
|
+
@property
|
|
115
|
+
def additional_keys(self) -> list[str]:
|
|
116
|
+
return list(self.additional_properties.keys())
|
|
117
|
+
|
|
118
|
+
def __getitem__(self, key: str) -> Any:
|
|
119
|
+
return self.additional_properties[key]
|
|
120
|
+
|
|
121
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
122
|
+
self.additional_properties[key] = value
|
|
123
|
+
|
|
124
|
+
def __delitem__(self, key: str) -> None:
|
|
125
|
+
del self.additional_properties[key]
|
|
126
|
+
|
|
127
|
+
def __contains__(self, key: str) -> bool:
|
|
128
|
+
return key in self.additional_properties
|
|
@@ -23,6 +23,7 @@ class PatchedProjectCreditRequest:
|
|
|
23
23
|
minimal_consumption_logic (Union[Unset, MinimalConsumptionLogicEnum]):
|
|
24
24
|
grace_coefficient (Union[Unset, str]):
|
|
25
25
|
apply_as_minimal_consumption (Union[Unset, bool]):
|
|
26
|
+
mark_unused_credit_as_spent_on_project_termination (Union[Unset, bool]):
|
|
26
27
|
"""
|
|
27
28
|
|
|
28
29
|
value: Union[Unset, str] = UNSET
|
|
@@ -32,6 +33,7 @@ class PatchedProjectCreditRequest:
|
|
|
32
33
|
minimal_consumption_logic: Union[Unset, MinimalConsumptionLogicEnum] = UNSET
|
|
33
34
|
grace_coefficient: Union[Unset, str] = UNSET
|
|
34
35
|
apply_as_minimal_consumption: Union[Unset, bool] = UNSET
|
|
36
|
+
mark_unused_credit_as_spent_on_project_termination: Union[Unset, bool] = UNSET
|
|
35
37
|
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
36
38
|
|
|
37
39
|
def to_dict(self) -> dict[str, Any]:
|
|
@@ -57,6 +59,8 @@ class PatchedProjectCreditRequest:
|
|
|
57
59
|
|
|
58
60
|
apply_as_minimal_consumption = self.apply_as_minimal_consumption
|
|
59
61
|
|
|
62
|
+
mark_unused_credit_as_spent_on_project_termination = self.mark_unused_credit_as_spent_on_project_termination
|
|
63
|
+
|
|
60
64
|
field_dict: dict[str, Any] = {}
|
|
61
65
|
field_dict.update(self.additional_properties)
|
|
62
66
|
field_dict.update({})
|
|
@@ -74,6 +78,10 @@ class PatchedProjectCreditRequest:
|
|
|
74
78
|
field_dict["grace_coefficient"] = grace_coefficient
|
|
75
79
|
if apply_as_minimal_consumption is not UNSET:
|
|
76
80
|
field_dict["apply_as_minimal_consumption"] = apply_as_minimal_consumption
|
|
81
|
+
if mark_unused_credit_as_spent_on_project_termination is not UNSET:
|
|
82
|
+
field_dict["mark_unused_credit_as_spent_on_project_termination"] = (
|
|
83
|
+
mark_unused_credit_as_spent_on_project_termination
|
|
84
|
+
)
|
|
77
85
|
|
|
78
86
|
return field_dict
|
|
79
87
|
|
|
@@ -114,6 +122,10 @@ class PatchedProjectCreditRequest:
|
|
|
114
122
|
|
|
115
123
|
apply_as_minimal_consumption = d.pop("apply_as_minimal_consumption", UNSET)
|
|
116
124
|
|
|
125
|
+
mark_unused_credit_as_spent_on_project_termination = d.pop(
|
|
126
|
+
"mark_unused_credit_as_spent_on_project_termination", UNSET
|
|
127
|
+
)
|
|
128
|
+
|
|
117
129
|
patched_project_credit_request = cls(
|
|
118
130
|
value=value,
|
|
119
131
|
project=project,
|
|
@@ -122,6 +134,7 @@ class PatchedProjectCreditRequest:
|
|
|
122
134
|
minimal_consumption_logic=minimal_consumption_logic,
|
|
123
135
|
grace_coefficient=grace_coefficient,
|
|
124
136
|
apply_as_minimal_consumption=apply_as_minimal_consumption,
|
|
137
|
+
mark_unused_credit_as_spent_on_project_termination=mark_unused_credit_as_spent_on_project_termination,
|
|
125
138
|
)
|
|
126
139
|
|
|
127
140
|
patched_project_credit_request.additional_properties = d
|
|
@@ -27,8 +27,7 @@ class PatchedProjectRequest:
|
|
|
27
27
|
type_ (Union[None, Unset, str]):
|
|
28
28
|
backend_id (Union[Unset, str]):
|
|
29
29
|
start_date (Union[None, Unset, datetime.date]):
|
|
30
|
-
end_date (Union[None, Unset, datetime.date]):
|
|
31
|
-
scheduled for termination.
|
|
30
|
+
end_date (Union[None, Unset, datetime.date]):
|
|
32
31
|
oecd_fos_2007_code (Union[BlankEnum, None, OecdFos2007CodeEnum, Unset]):
|
|
33
32
|
is_industry (Union[Unset, bool]):
|
|
34
33
|
image (Union[File, None, Unset]):
|
|
@@ -27,8 +27,7 @@ class PatchedProjectRequestForm:
|
|
|
27
27
|
type_ (Union[None, Unset, str]):
|
|
28
28
|
backend_id (Union[Unset, str]):
|
|
29
29
|
start_date (Union[None, Unset, datetime.date]):
|
|
30
|
-
end_date (Union[None, Unset, datetime.date]):
|
|
31
|
-
scheduled for termination.
|
|
30
|
+
end_date (Union[None, Unset, datetime.date]):
|
|
32
31
|
oecd_fos_2007_code (Union[BlankEnum, None, OecdFos2007CodeEnum, Unset]):
|
|
33
32
|
is_industry (Union[Unset, bool]):
|
|
34
33
|
image (Union[File, None, Unset]):
|
|
@@ -27,8 +27,7 @@ class PatchedProjectRequestMultipart:
|
|
|
27
27
|
type_ (Union[None, Unset, str]):
|
|
28
28
|
backend_id (Union[Unset, str]):
|
|
29
29
|
start_date (Union[None, Unset, datetime.date]):
|
|
30
|
-
end_date (Union[None, Unset, datetime.date]):
|
|
31
|
-
scheduled for termination.
|
|
30
|
+
end_date (Union[None, Unset, datetime.date]):
|
|
32
31
|
oecd_fos_2007_code (Union[BlankEnum, None, OecdFos2007CodeEnum, Unset]):
|
|
33
32
|
is_industry (Union[Unset, bool]):
|
|
34
33
|
image (Union[File, None, Unset]):
|
|
@@ -35,14 +35,14 @@ class Project:
|
|
|
35
35
|
customer_native_name (Union[Unset, str]):
|
|
36
36
|
customer_abbreviation (Union[Unset, str]):
|
|
37
37
|
description (Union[Unset, str]):
|
|
38
|
+
customer_display_billing_info_in_projects (Union[Unset, bool]):
|
|
38
39
|
created (Union[Unset, datetime.datetime]):
|
|
39
40
|
type_ (Union[None, Unset, str]):
|
|
40
41
|
type_name (Union[None, Unset, str]):
|
|
41
42
|
type_uuid (Union[None, UUID, Unset]):
|
|
42
43
|
backend_id (Union[Unset, str]):
|
|
43
44
|
start_date (Union[None, Unset, datetime.date]):
|
|
44
|
-
end_date (Union[None, Unset, datetime.date]):
|
|
45
|
-
scheduled for termination.
|
|
45
|
+
end_date (Union[None, Unset, datetime.date]):
|
|
46
46
|
end_date_requested_by (Union[None, Unset, str]):
|
|
47
47
|
oecd_fos_2007_code (Union[BlankEnum, None, OecdFos2007CodeEnum, Unset]):
|
|
48
48
|
oecd_fos_2007_label (Union[Unset, str]):
|
|
@@ -67,6 +67,7 @@ class Project:
|
|
|
67
67
|
customer_native_name: Union[Unset, str] = UNSET
|
|
68
68
|
customer_abbreviation: Union[Unset, str] = UNSET
|
|
69
69
|
description: Union[Unset, str] = UNSET
|
|
70
|
+
customer_display_billing_info_in_projects: Union[Unset, bool] = UNSET
|
|
70
71
|
created: Union[Unset, datetime.datetime] = UNSET
|
|
71
72
|
type_: Union[None, Unset, str] = UNSET
|
|
72
73
|
type_name: Union[None, Unset, str] = UNSET
|
|
@@ -114,6 +115,8 @@ class Project:
|
|
|
114
115
|
|
|
115
116
|
description = self.description
|
|
116
117
|
|
|
118
|
+
customer_display_billing_info_in_projects = self.customer_display_billing_info_in_projects
|
|
119
|
+
|
|
117
120
|
created: Union[Unset, str] = UNSET
|
|
118
121
|
if not isinstance(self.created, Unset):
|
|
119
122
|
created = self.created.isoformat()
|
|
@@ -233,6 +236,8 @@ class Project:
|
|
|
233
236
|
field_dict["customer_abbreviation"] = customer_abbreviation
|
|
234
237
|
if description is not UNSET:
|
|
235
238
|
field_dict["description"] = description
|
|
239
|
+
if customer_display_billing_info_in_projects is not UNSET:
|
|
240
|
+
field_dict["customer_display_billing_info_in_projects"] = customer_display_billing_info_in_projects
|
|
236
241
|
if created is not UNSET:
|
|
237
242
|
field_dict["created"] = created
|
|
238
243
|
if type_ is not UNSET:
|
|
@@ -310,6 +315,8 @@ class Project:
|
|
|
310
315
|
|
|
311
316
|
description = d.pop("description", UNSET)
|
|
312
317
|
|
|
318
|
+
customer_display_billing_info_in_projects = d.pop("customer_display_billing_info_in_projects", UNSET)
|
|
319
|
+
|
|
313
320
|
_created = d.pop("created", UNSET)
|
|
314
321
|
created: Union[Unset, datetime.datetime]
|
|
315
322
|
if isinstance(_created, Unset):
|
|
@@ -488,6 +495,7 @@ class Project:
|
|
|
488
495
|
customer_native_name=customer_native_name,
|
|
489
496
|
customer_abbreviation=customer_abbreviation,
|
|
490
497
|
description=description,
|
|
498
|
+
customer_display_billing_info_in_projects=customer_display_billing_info_in_projects,
|
|
491
499
|
created=created,
|
|
492
500
|
type_=type_,
|
|
493
501
|
type_name=type_name,
|
|
@@ -41,6 +41,7 @@ class ProjectCredit:
|
|
|
41
41
|
minimal_consumption_logic (Union[Unset, MinimalConsumptionLogicEnum]):
|
|
42
42
|
grace_coefficient (Union[Unset, str]):
|
|
43
43
|
apply_as_minimal_consumption (Union[Unset, bool]):
|
|
44
|
+
mark_unused_credit_as_spent_on_project_termination (Union[Unset, bool]):
|
|
44
45
|
"""
|
|
45
46
|
|
|
46
47
|
uuid: UUID
|
|
@@ -63,6 +64,7 @@ class ProjectCredit:
|
|
|
63
64
|
minimal_consumption_logic: Union[Unset, MinimalConsumptionLogicEnum] = UNSET
|
|
64
65
|
grace_coefficient: Union[Unset, str] = UNSET
|
|
65
66
|
apply_as_minimal_consumption: Union[Unset, bool] = UNSET
|
|
67
|
+
mark_unused_credit_as_spent_on_project_termination: Union[Unset, bool] = UNSET
|
|
66
68
|
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
67
69
|
|
|
68
70
|
def to_dict(self) -> dict[str, Any]:
|
|
@@ -117,6 +119,8 @@ class ProjectCredit:
|
|
|
117
119
|
|
|
118
120
|
apply_as_minimal_consumption = self.apply_as_minimal_consumption
|
|
119
121
|
|
|
122
|
+
mark_unused_credit_as_spent_on_project_termination = self.mark_unused_credit_as_spent_on_project_termination
|
|
123
|
+
|
|
120
124
|
field_dict: dict[str, Any] = {}
|
|
121
125
|
field_dict.update(self.additional_properties)
|
|
122
126
|
field_dict.update(
|
|
@@ -149,6 +153,10 @@ class ProjectCredit:
|
|
|
149
153
|
field_dict["grace_coefficient"] = grace_coefficient
|
|
150
154
|
if apply_as_minimal_consumption is not UNSET:
|
|
151
155
|
field_dict["apply_as_minimal_consumption"] = apply_as_minimal_consumption
|
|
156
|
+
if mark_unused_credit_as_spent_on_project_termination is not UNSET:
|
|
157
|
+
field_dict["mark_unused_credit_as_spent_on_project_termination"] = (
|
|
158
|
+
mark_unused_credit_as_spent_on_project_termination
|
|
159
|
+
)
|
|
152
160
|
|
|
153
161
|
return field_dict
|
|
154
162
|
|
|
@@ -222,6 +230,10 @@ class ProjectCredit:
|
|
|
222
230
|
|
|
223
231
|
apply_as_minimal_consumption = d.pop("apply_as_minimal_consumption", UNSET)
|
|
224
232
|
|
|
233
|
+
mark_unused_credit_as_spent_on_project_termination = d.pop(
|
|
234
|
+
"mark_unused_credit_as_spent_on_project_termination", UNSET
|
|
235
|
+
)
|
|
236
|
+
|
|
225
237
|
project_credit = cls(
|
|
226
238
|
uuid=uuid,
|
|
227
239
|
url=url,
|
|
@@ -243,6 +255,7 @@ class ProjectCredit:
|
|
|
243
255
|
minimal_consumption_logic=minimal_consumption_logic,
|
|
244
256
|
grace_coefficient=grace_coefficient,
|
|
245
257
|
apply_as_minimal_consumption=apply_as_minimal_consumption,
|
|
258
|
+
mark_unused_credit_as_spent_on_project_termination=mark_unused_credit_as_spent_on_project_termination,
|
|
246
259
|
)
|
|
247
260
|
|
|
248
261
|
project_credit.additional_properties = d
|
|
@@ -23,6 +23,7 @@ class ProjectCreditRequest:
|
|
|
23
23
|
minimal_consumption_logic (Union[Unset, MinimalConsumptionLogicEnum]):
|
|
24
24
|
grace_coefficient (Union[Unset, str]):
|
|
25
25
|
apply_as_minimal_consumption (Union[Unset, bool]):
|
|
26
|
+
mark_unused_credit_as_spent_on_project_termination (Union[Unset, bool]):
|
|
26
27
|
"""
|
|
27
28
|
|
|
28
29
|
project: str
|
|
@@ -32,6 +33,7 @@ class ProjectCreditRequest:
|
|
|
32
33
|
minimal_consumption_logic: Union[Unset, MinimalConsumptionLogicEnum] = UNSET
|
|
33
34
|
grace_coefficient: Union[Unset, str] = UNSET
|
|
34
35
|
apply_as_minimal_consumption: Union[Unset, bool] = UNSET
|
|
36
|
+
mark_unused_credit_as_spent_on_project_termination: Union[Unset, bool] = UNSET
|
|
35
37
|
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
36
38
|
|
|
37
39
|
def to_dict(self) -> dict[str, Any]:
|
|
@@ -57,6 +59,8 @@ class ProjectCreditRequest:
|
|
|
57
59
|
|
|
58
60
|
apply_as_minimal_consumption = self.apply_as_minimal_consumption
|
|
59
61
|
|
|
62
|
+
mark_unused_credit_as_spent_on_project_termination = self.mark_unused_credit_as_spent_on_project_termination
|
|
63
|
+
|
|
60
64
|
field_dict: dict[str, Any] = {}
|
|
61
65
|
field_dict.update(self.additional_properties)
|
|
62
66
|
field_dict.update(
|
|
@@ -76,6 +80,10 @@ class ProjectCreditRequest:
|
|
|
76
80
|
field_dict["grace_coefficient"] = grace_coefficient
|
|
77
81
|
if apply_as_minimal_consumption is not UNSET:
|
|
78
82
|
field_dict["apply_as_minimal_consumption"] = apply_as_minimal_consumption
|
|
83
|
+
if mark_unused_credit_as_spent_on_project_termination is not UNSET:
|
|
84
|
+
field_dict["mark_unused_credit_as_spent_on_project_termination"] = (
|
|
85
|
+
mark_unused_credit_as_spent_on_project_termination
|
|
86
|
+
)
|
|
79
87
|
|
|
80
88
|
return field_dict
|
|
81
89
|
|
|
@@ -116,6 +124,10 @@ class ProjectCreditRequest:
|
|
|
116
124
|
|
|
117
125
|
apply_as_minimal_consumption = d.pop("apply_as_minimal_consumption", UNSET)
|
|
118
126
|
|
|
127
|
+
mark_unused_credit_as_spent_on_project_termination = d.pop(
|
|
128
|
+
"mark_unused_credit_as_spent_on_project_termination", UNSET
|
|
129
|
+
)
|
|
130
|
+
|
|
119
131
|
project_credit_request = cls(
|
|
120
132
|
project=project,
|
|
121
133
|
value=value,
|
|
@@ -124,6 +136,7 @@ class ProjectCreditRequest:
|
|
|
124
136
|
minimal_consumption_logic=minimal_consumption_logic,
|
|
125
137
|
grace_coefficient=grace_coefficient,
|
|
126
138
|
apply_as_minimal_consumption=apply_as_minimal_consumption,
|
|
139
|
+
mark_unused_credit_as_spent_on_project_termination=mark_unused_credit_as_spent_on_project_termination,
|
|
127
140
|
)
|
|
128
141
|
|
|
129
142
|
project_credit_request.additional_properties = d
|
|
@@ -27,8 +27,7 @@ class ProjectRequest:
|
|
|
27
27
|
type_ (Union[None, Unset, str]):
|
|
28
28
|
backend_id (Union[Unset, str]):
|
|
29
29
|
start_date (Union[None, Unset, datetime.date]):
|
|
30
|
-
end_date (Union[None, Unset, datetime.date]):
|
|
31
|
-
scheduled for termination.
|
|
30
|
+
end_date (Union[None, Unset, datetime.date]):
|
|
32
31
|
oecd_fos_2007_code (Union[BlankEnum, None, OecdFos2007CodeEnum, Unset]):
|
|
33
32
|
is_industry (Union[Unset, bool]):
|
|
34
33
|
image (Union[File, None, Unset]):
|
|
@@ -27,8 +27,7 @@ class ProjectRequestForm:
|
|
|
27
27
|
type_ (Union[None, Unset, str]):
|
|
28
28
|
backend_id (Union[Unset, str]):
|
|
29
29
|
start_date (Union[None, Unset, datetime.date]):
|
|
30
|
-
end_date (Union[None, Unset, datetime.date]):
|
|
31
|
-
scheduled for termination.
|
|
30
|
+
end_date (Union[None, Unset, datetime.date]):
|
|
32
31
|
oecd_fos_2007_code (Union[BlankEnum, None, OecdFos2007CodeEnum, Unset]):
|
|
33
32
|
is_industry (Union[Unset, bool]):
|
|
34
33
|
image (Union[File, None, Unset]):
|
|
@@ -27,8 +27,7 @@ class ProjectRequestMultipart:
|
|
|
27
27
|
type_ (Union[None, Unset, str]):
|
|
28
28
|
backend_id (Union[Unset, str]):
|
|
29
29
|
start_date (Union[None, Unset, datetime.date]):
|
|
30
|
-
end_date (Union[None, Unset, datetime.date]):
|
|
31
|
-
scheduled for termination.
|
|
30
|
+
end_date (Union[None, Unset, datetime.date]):
|
|
32
31
|
oecd_fos_2007_code (Union[BlankEnum, None, OecdFos2007CodeEnum, Unset]):
|
|
33
32
|
is_industry (Union[Unset, bool]):
|
|
34
33
|
image (Union[File, None, Unset]):
|
|
@@ -7,6 +7,7 @@ class ProjectsListFieldItem(str, Enum):
|
|
|
7
7
|
CREATED = "created"
|
|
8
8
|
CUSTOMER = "customer"
|
|
9
9
|
CUSTOMER_ABBREVIATION = "customer_abbreviation"
|
|
10
|
+
CUSTOMER_DISPLAY_BILLING_INFO_IN_PROJECTS = "customer_display_billing_info_in_projects"
|
|
10
11
|
CUSTOMER_NAME = "customer_name"
|
|
11
12
|
CUSTOMER_NATIVE_NAME = "customer_native_name"
|
|
12
13
|
CUSTOMER_SLUG = "customer_slug"
|
|
@@ -7,6 +7,7 @@ class ProjectsRetrieveFieldItem(str, Enum):
|
|
|
7
7
|
CREATED = "created"
|
|
8
8
|
CUSTOMER = "customer"
|
|
9
9
|
CUSTOMER_ABBREVIATION = "customer_abbreviation"
|
|
10
|
+
CUSTOMER_DISPLAY_BILLING_INFO_IN_PROJECTS = "customer_display_billing_info_in_projects"
|
|
10
11
|
CUSTOMER_NAME = "customer_name"
|
|
11
12
|
CUSTOMER_NATIVE_NAME = "customer_native_name"
|
|
12
13
|
CUSTOMER_SLUG = "customer_slug"
|
|
@@ -10,7 +10,7 @@ from dateutil.parser import isoparse
|
|
|
10
10
|
from ..models.allocation_time_enum import AllocationTimeEnum
|
|
11
11
|
from ..models.deciding_entity_enum import DecidingEntityEnum
|
|
12
12
|
from ..models.review_strategy_enum import ReviewStrategyEnum
|
|
13
|
-
from ..models.
|
|
13
|
+
from ..models.round_status import RoundStatus
|
|
14
14
|
from ..types import UNSET, Unset
|
|
15
15
|
|
|
16
16
|
if TYPE_CHECKING:
|
|
@@ -29,7 +29,7 @@ class ProtectedRound:
|
|
|
29
29
|
name (str):
|
|
30
30
|
start_time (datetime.datetime):
|
|
31
31
|
cutoff_time (datetime.datetime):
|
|
32
|
-
status (
|
|
32
|
+
status (RoundStatus):
|
|
33
33
|
url (str):
|
|
34
34
|
proposals (list['ProtectedProposalList']):
|
|
35
35
|
review_strategy (Union[Unset, ReviewStrategyEnum]):
|
|
@@ -46,7 +46,7 @@ class ProtectedRound:
|
|
|
46
46
|
name: str
|
|
47
47
|
start_time: datetime.datetime
|
|
48
48
|
cutoff_time: datetime.datetime
|
|
49
|
-
status:
|
|
49
|
+
status: RoundStatus
|
|
50
50
|
url: str
|
|
51
51
|
proposals: list["ProtectedProposalList"]
|
|
52
52
|
review_strategy: Union[Unset, ReviewStrategyEnum] = UNSET
|
|
@@ -158,7 +158,7 @@ class ProtectedRound:
|
|
|
158
158
|
|
|
159
159
|
cutoff_time = isoparse(d.pop("cutoff_time"))
|
|
160
160
|
|
|
161
|
-
status =
|
|
161
|
+
status = RoundStatus(d.pop("status"))
|
|
162
162
|
|
|
163
163
|
url = d.pop("url")
|
|
164
164
|
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
from collections.abc import Mapping
|
|
2
|
+
from typing import TYPE_CHECKING, Any, TypeVar, Union
|
|
3
|
+
from uuid import UUID
|
|
4
|
+
|
|
5
|
+
from attrs import define as _attrs_define
|
|
6
|
+
from attrs import field as _attrs_field
|
|
7
|
+
|
|
8
|
+
from ..types import UNSET, Unset
|
|
9
|
+
|
|
10
|
+
if TYPE_CHECKING:
|
|
11
|
+
from ..models.question_options import QuestionOptions
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
T = TypeVar("T", bound="Question")
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
@_attrs_define
|
|
18
|
+
class Question:
|
|
19
|
+
"""
|
|
20
|
+
Attributes:
|
|
21
|
+
uuid (UUID):
|
|
22
|
+
question_options (list['QuestionOptions']):
|
|
23
|
+
description (Union[Unset, str]):
|
|
24
|
+
user_guidance (Union[Unset, str]): Additional guidance text visible to users when answering and reviewing
|
|
25
|
+
"""
|
|
26
|
+
|
|
27
|
+
uuid: UUID
|
|
28
|
+
question_options: list["QuestionOptions"]
|
|
29
|
+
description: Union[Unset, str] = UNSET
|
|
30
|
+
user_guidance: Union[Unset, str] = UNSET
|
|
31
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
32
|
+
|
|
33
|
+
def to_dict(self) -> dict[str, Any]:
|
|
34
|
+
uuid = str(self.uuid)
|
|
35
|
+
|
|
36
|
+
question_options = []
|
|
37
|
+
for question_options_item_data in self.question_options:
|
|
38
|
+
question_options_item = question_options_item_data.to_dict()
|
|
39
|
+
question_options.append(question_options_item)
|
|
40
|
+
|
|
41
|
+
description = self.description
|
|
42
|
+
|
|
43
|
+
user_guidance = self.user_guidance
|
|
44
|
+
|
|
45
|
+
field_dict: dict[str, Any] = {}
|
|
46
|
+
field_dict.update(self.additional_properties)
|
|
47
|
+
field_dict.update(
|
|
48
|
+
{
|
|
49
|
+
"uuid": uuid,
|
|
50
|
+
"question_options": question_options,
|
|
51
|
+
}
|
|
52
|
+
)
|
|
53
|
+
if description is not UNSET:
|
|
54
|
+
field_dict["description"] = description
|
|
55
|
+
if user_guidance is not UNSET:
|
|
56
|
+
field_dict["user_guidance"] = user_guidance
|
|
57
|
+
|
|
58
|
+
return field_dict
|
|
59
|
+
|
|
60
|
+
@classmethod
|
|
61
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
62
|
+
from ..models.question_options import QuestionOptions
|
|
63
|
+
|
|
64
|
+
d = dict(src_dict)
|
|
65
|
+
uuid = UUID(d.pop("uuid"))
|
|
66
|
+
|
|
67
|
+
question_options = []
|
|
68
|
+
_question_options = d.pop("question_options")
|
|
69
|
+
for question_options_item_data in _question_options:
|
|
70
|
+
question_options_item = QuestionOptions.from_dict(question_options_item_data)
|
|
71
|
+
|
|
72
|
+
question_options.append(question_options_item)
|
|
73
|
+
|
|
74
|
+
description = d.pop("description", UNSET)
|
|
75
|
+
|
|
76
|
+
user_guidance = d.pop("user_guidance", UNSET)
|
|
77
|
+
|
|
78
|
+
question = cls(
|
|
79
|
+
uuid=uuid,
|
|
80
|
+
question_options=question_options,
|
|
81
|
+
description=description,
|
|
82
|
+
user_guidance=user_guidance,
|
|
83
|
+
)
|
|
84
|
+
|
|
85
|
+
question.additional_properties = d
|
|
86
|
+
return question
|
|
87
|
+
|
|
88
|
+
@property
|
|
89
|
+
def additional_keys(self) -> list[str]:
|
|
90
|
+
return list(self.additional_properties.keys())
|
|
91
|
+
|
|
92
|
+
def __getitem__(self, key: str) -> Any:
|
|
93
|
+
return self.additional_properties[key]
|
|
94
|
+
|
|
95
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
96
|
+
self.additional_properties[key] = value
|
|
97
|
+
|
|
98
|
+
def __delitem__(self, key: str) -> None:
|
|
99
|
+
del self.additional_properties[key]
|
|
100
|
+
|
|
101
|
+
def __contains__(self, key: str) -> bool:
|
|
102
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
from collections.abc import Mapping
|
|
2
|
+
from typing import Any, TypeVar, Union
|
|
3
|
+
from uuid import UUID
|
|
4
|
+
|
|
5
|
+
from attrs import define as _attrs_define
|
|
6
|
+
from attrs import field as _attrs_field
|
|
7
|
+
|
|
8
|
+
from ..types import UNSET, Unset
|
|
9
|
+
|
|
10
|
+
T = TypeVar("T", bound="QuestionOptions")
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
@_attrs_define
|
|
14
|
+
class QuestionOptions:
|
|
15
|
+
"""
|
|
16
|
+
Attributes:
|
|
17
|
+
uuid (UUID):
|
|
18
|
+
label (str):
|
|
19
|
+
order (Union[Unset, int]):
|
|
20
|
+
"""
|
|
21
|
+
|
|
22
|
+
uuid: UUID
|
|
23
|
+
label: str
|
|
24
|
+
order: Union[Unset, int] = UNSET
|
|
25
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
26
|
+
|
|
27
|
+
def to_dict(self) -> dict[str, Any]:
|
|
28
|
+
uuid = str(self.uuid)
|
|
29
|
+
|
|
30
|
+
label = self.label
|
|
31
|
+
|
|
32
|
+
order = self.order
|
|
33
|
+
|
|
34
|
+
field_dict: dict[str, Any] = {}
|
|
35
|
+
field_dict.update(self.additional_properties)
|
|
36
|
+
field_dict.update(
|
|
37
|
+
{
|
|
38
|
+
"uuid": uuid,
|
|
39
|
+
"label": label,
|
|
40
|
+
}
|
|
41
|
+
)
|
|
42
|
+
if order is not UNSET:
|
|
43
|
+
field_dict["order"] = order
|
|
44
|
+
|
|
45
|
+
return field_dict
|
|
46
|
+
|
|
47
|
+
@classmethod
|
|
48
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
49
|
+
d = dict(src_dict)
|
|
50
|
+
uuid = UUID(d.pop("uuid"))
|
|
51
|
+
|
|
52
|
+
label = d.pop("label")
|
|
53
|
+
|
|
54
|
+
order = d.pop("order", UNSET)
|
|
55
|
+
|
|
56
|
+
question_options = cls(
|
|
57
|
+
uuid=uuid,
|
|
58
|
+
label=label,
|
|
59
|
+
order=order,
|
|
60
|
+
)
|
|
61
|
+
|
|
62
|
+
question_options.additional_properties = d
|
|
63
|
+
return question_options
|
|
64
|
+
|
|
65
|
+
@property
|
|
66
|
+
def additional_keys(self) -> list[str]:
|
|
67
|
+
return list(self.additional_properties.keys())
|
|
68
|
+
|
|
69
|
+
def __getitem__(self, key: str) -> Any:
|
|
70
|
+
return self.additional_properties[key]
|
|
71
|
+
|
|
72
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
73
|
+
self.additional_properties[key] = value
|
|
74
|
+
|
|
75
|
+
def __delitem__(self, key: str) -> None:
|
|
76
|
+
del self.additional_properties[key]
|
|
77
|
+
|
|
78
|
+
def __contains__(self, key: str) -> bool:
|
|
79
|
+
return key in self.additional_properties
|