elabapi-python 5.5.10__py3-none-any.whl → 5.6.0__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.
- elabapi_python/__init__.py +7 -1
- elabapi_python/api/__init__.py +3 -1
- elabapi_python/api/branding_api.py +247 -0
- elabapi_python/api/containers_api.py +2 -2
- elabapi_python/api/{extra_fields_keys_api.py → custom_fields_keys_api.py} +14 -14
- elabapi_python/api/experiments_api.py +5 -5
- elabapi_python/api/experiments_templates_api.py +5 -5
- elabapi_python/api/instance_api.py +130 -0
- elabapi_python/api/items_api.py +5 -5
- elabapi_python/api/items_types__resources_templates_api.py +5 -5
- elabapi_python/api/notifications_api.py +11 -3
- elabapi_python/api/storage_units_api.py +2 -2
- elabapi_python/api_client.py +1 -1
- elabapi_python/configuration.py +1 -1
- elabapi_python/models/__init__.py +4 -0
- elabapi_python/models/all_ofentity_editable_metadatamerge.py +90 -0
- elabapi_python/models/branding_id_body.py +147 -0
- elabapi_python/models/containers_subid_body1.py +31 -3
- elabapi_python/models/entity_and_item_editable.py +93 -3
- elabapi_python/models/entity_editable.py +57 -1
- elabapi_python/models/event.py +407 -109
- elabapi_python/models/events_id_body.py +10 -10
- elabapi_python/models/id_certs_body.py +1 -1
- elabapi_python/models/id_experiments_categories_body.py +3 -31
- elabapi_python/models/id_experiments_status_body.py +3 -31
- elabapi_python/models/id_items_status_body.py +3 -31
- elabapi_python/models/id_resources_categories_body.py +3 -31
- elabapi_python/models/idp.py +53 -27
- elabapi_python/models/idps_body.py +59 -31
- elabapi_python/models/instance_body.py +84 -0
- elabapi_python/models/item.py +93 -3
- elabapi_python/models/item_editable.py +93 -3
- elabapi_python/models/metadata_elabftw.py +2 -2
- elabapi_python/models/notifications_subid_body.py +118 -0
- elabapi_python/models/statuslike.py +3 -29
- elabapi_python/models/storage_units_id_body.py +33 -6
- elabapi_python/models/team.py +31 -1
- {elabapi_python-5.5.10.dist-info → elabapi_python-5.6.0.dist-info}/METADATA +1 -1
- {elabapi_python-5.5.10.dist-info → elabapi_python-5.6.0.dist-info}/RECORD +49 -37
- {elabapi_python-5.5.10.dist-info → elabapi_python-5.6.0.dist-info}/WHEEL +1 -1
- test/test_all_ofentity_editable_metadatamerge.py +39 -0
- test/test_branding_api.py +47 -0
- test/test_branding_id_body.py +39 -0
- test/test_custom_fields_keys_api.py +40 -0
- test/{test_extra_fields_keys_api.py → test_instance_api.py} +7 -7
- test/test_instance_body.py +39 -0
- test/test_notifications_api.py +1 -1
- test/test_notifications_subid_body.py +39 -0
- {elabapi_python-5.5.10.dist-info → elabapi_python-5.6.0.dist-info}/top_level.txt +0 -0
|
@@ -528,7 +528,7 @@ class ItemsTypesResourcesTemplatesApi(object):
|
|
|
528
528
|
:param str extended: Extended search (advanced query).
|
|
529
529
|
:param int related: Look only for entries linked to this entry id.
|
|
530
530
|
:param str related_origin: When using the \"related\" query parameter, select the type of the related ID (experiments or items)
|
|
531
|
-
:param str
|
|
531
|
+
:param str category: Add a filter on the Category. Supports comma separated list of numbers, including \"null\".
|
|
532
532
|
:param str status: Add a filter on the Status. Supports comma separated list of numbers, including \"null\".
|
|
533
533
|
:param list[str] tags: An array of tags for filtering results containing all of these tags.
|
|
534
534
|
:param int limit: Limit the number of results.
|
|
@@ -562,7 +562,7 @@ class ItemsTypesResourcesTemplatesApi(object):
|
|
|
562
562
|
:param str extended: Extended search (advanced query).
|
|
563
563
|
:param int related: Look only for entries linked to this entry id.
|
|
564
564
|
:param str related_origin: When using the \"related\" query parameter, select the type of the related ID (experiments or items)
|
|
565
|
-
:param str
|
|
565
|
+
:param str category: Add a filter on the Category. Supports comma separated list of numbers, including \"null\".
|
|
566
566
|
:param str status: Add a filter on the Status. Supports comma separated list of numbers, including \"null\".
|
|
567
567
|
:param list[str] tags: An array of tags for filtering results containing all of these tags.
|
|
568
568
|
:param int limit: Limit the number of results.
|
|
@@ -577,7 +577,7 @@ class ItemsTypesResourcesTemplatesApi(object):
|
|
|
577
577
|
returns the request thread.
|
|
578
578
|
"""
|
|
579
579
|
|
|
580
|
-
all_params = ['q', 'extended', 'related', 'related_origin', '
|
|
580
|
+
all_params = ['q', 'extended', 'related', 'related_origin', 'category', 'status', 'tags', 'limit', 'offset', 'owner', 'scope', 'order', 'sort', 'state'] # noqa: E501
|
|
581
581
|
all_params.append('async_req')
|
|
582
582
|
all_params.append('_return_http_data_only')
|
|
583
583
|
all_params.append('_preload_content')
|
|
@@ -606,8 +606,8 @@ class ItemsTypesResourcesTemplatesApi(object):
|
|
|
606
606
|
query_params.append(('related', params['related'])) # noqa: E501
|
|
607
607
|
if 'related_origin' in params:
|
|
608
608
|
query_params.append(('related_origin', params['related_origin'])) # noqa: E501
|
|
609
|
-
if '
|
|
610
|
-
query_params.append(('
|
|
609
|
+
if 'category' in params:
|
|
610
|
+
query_params.append(('category', params['category'])) # noqa: E501
|
|
611
611
|
if 'status' in params:
|
|
612
612
|
query_params.append(('status', params['status'])) # noqa: E501
|
|
613
613
|
if 'tags' in params:
|
|
@@ -128,7 +128,7 @@ class NotificationsApi(object):
|
|
|
128
128
|
collection_formats=collection_formats)
|
|
129
129
|
|
|
130
130
|
def patch_notification(self, id, subid, **kwargs): # noqa: E501
|
|
131
|
-
"""
|
|
131
|
+
"""Update the acknowledgment status of a notification. # noqa: E501
|
|
132
132
|
|
|
133
133
|
This method makes a synchronous HTTP request by default. To make an
|
|
134
134
|
asynchronous HTTP request, please pass async_req=True
|
|
@@ -138,6 +138,7 @@ class NotificationsApi(object):
|
|
|
138
138
|
:param async_req bool
|
|
139
139
|
:param Id4 id: ID of the user or `me`. (required)
|
|
140
140
|
:param int subid: ID of the notification. (required)
|
|
141
|
+
:param NotificationsSubidBody body: Defines whether the notification is acknowledged.
|
|
141
142
|
:return: Notification
|
|
142
143
|
If the method is called asynchronously,
|
|
143
144
|
returns the request thread.
|
|
@@ -150,7 +151,7 @@ class NotificationsApi(object):
|
|
|
150
151
|
return data
|
|
151
152
|
|
|
152
153
|
def patch_notification_with_http_info(self, id, subid, **kwargs): # noqa: E501
|
|
153
|
-
"""
|
|
154
|
+
"""Update the acknowledgment status of a notification. # noqa: E501
|
|
154
155
|
|
|
155
156
|
This method makes a synchronous HTTP request by default. To make an
|
|
156
157
|
asynchronous HTTP request, please pass async_req=True
|
|
@@ -160,12 +161,13 @@ class NotificationsApi(object):
|
|
|
160
161
|
:param async_req bool
|
|
161
162
|
:param Id4 id: ID of the user or `me`. (required)
|
|
162
163
|
:param int subid: ID of the notification. (required)
|
|
164
|
+
:param NotificationsSubidBody body: Defines whether the notification is acknowledged.
|
|
163
165
|
:return: Notification
|
|
164
166
|
If the method is called asynchronously,
|
|
165
167
|
returns the request thread.
|
|
166
168
|
"""
|
|
167
169
|
|
|
168
|
-
all_params = ['id', 'subid'] # noqa: E501
|
|
170
|
+
all_params = ['id', 'subid', 'body'] # noqa: E501
|
|
169
171
|
all_params.append('async_req')
|
|
170
172
|
all_params.append('_return_http_data_only')
|
|
171
173
|
all_params.append('_preload_content')
|
|
@@ -205,10 +207,16 @@ class NotificationsApi(object):
|
|
|
205
207
|
local_var_files = {}
|
|
206
208
|
|
|
207
209
|
body_params = None
|
|
210
|
+
if 'body' in params:
|
|
211
|
+
body_params = params['body']
|
|
208
212
|
# HTTP header `Accept`
|
|
209
213
|
header_params['Accept'] = self.api_client.select_header_accept(
|
|
210
214
|
['application/json']) # noqa: E501
|
|
211
215
|
|
|
216
|
+
# HTTP header `Content-Type`
|
|
217
|
+
header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
|
|
218
|
+
['application/json']) # noqa: E501
|
|
219
|
+
|
|
212
220
|
# Authentication setting
|
|
213
221
|
auth_settings = ['token'] # noqa: E501
|
|
214
222
|
|
|
@@ -130,7 +130,7 @@ class StorageUnitsApi(object):
|
|
|
130
130
|
def patch_storage_unit(self, id, **kwargs): # noqa: E501
|
|
131
131
|
"""Modify a storage unit. # noqa: E501
|
|
132
132
|
|
|
133
|
-
Update the name of a storage unit. Requires permission to manage inventory locations.
|
|
133
|
+
Update the name and/or the parent of a storage unit. Setting `parent_id` reparents the unit (and everything under it) in place. Pass `parent_id: null` to move the unit to the root. Requires permission to manage inventory locations. # noqa: E501
|
|
134
134
|
This method makes a synchronous HTTP request by default. To make an
|
|
135
135
|
asynchronous HTTP request, please pass async_req=True
|
|
136
136
|
>>> thread = api.patch_storage_unit(id, async_req=True)
|
|
@@ -153,7 +153,7 @@ class StorageUnitsApi(object):
|
|
|
153
153
|
def patch_storage_unit_with_http_info(self, id, **kwargs): # noqa: E501
|
|
154
154
|
"""Modify a storage unit. # noqa: E501
|
|
155
155
|
|
|
156
|
-
Update the name of a storage unit. Requires permission to manage inventory locations.
|
|
156
|
+
Update the name and/or the parent of a storage unit. Setting `parent_id` reparents the unit (and everything under it) in place. Pass `parent_id: null` to move the unit to the root. Requires permission to manage inventory locations. # noqa: E501
|
|
157
157
|
This method makes a synchronous HTTP request by default. To make an
|
|
158
158
|
asynchronous HTTP request, please pass async_req=True
|
|
159
159
|
>>> thread = api.patch_storage_unit_with_http_info(id, async_req=True)
|
elabapi_python/api_client.py
CHANGED
|
@@ -72,7 +72,7 @@ class ApiClient(object):
|
|
|
72
72
|
self.default_headers[header_name] = header_value
|
|
73
73
|
self.cookie = cookie
|
|
74
74
|
# Set default User-Agent.
|
|
75
|
-
self.user_agent = 'Swagger-Codegen/5.
|
|
75
|
+
self.user_agent = 'Swagger-Codegen/5.6.0/python'
|
|
76
76
|
|
|
77
77
|
def __del__(self):
|
|
78
78
|
self.pool.close()
|
elabapi_python/configuration.py
CHANGED
|
@@ -250,5 +250,5 @@ class Configuration(six.with_metaclass(TypeWithDefault, object)):
|
|
|
250
250
|
"OS: {env}\n"\
|
|
251
251
|
"Python Version: {pyversion}\n"\
|
|
252
252
|
"Version of the API: 2.0.0\n"\
|
|
253
|
-
"SDK Package Version: 5.
|
|
253
|
+
"SDK Package Version: 5.6.0".\
|
|
254
254
|
format(env=sys.platform, pyversion=sys.version)
|
|
@@ -14,9 +14,11 @@
|
|
|
14
14
|
from __future__ import absolute_import
|
|
15
15
|
|
|
16
16
|
# import models into model package
|
|
17
|
+
from elabapi_python.models.all_ofentity_editable_metadatamerge import AllOfentityEditableMetadatamerge
|
|
17
18
|
from elabapi_python.models.any_ofuploads_subid_body1 import AnyOfuploadsSubidBody1
|
|
18
19
|
from elabapi_python.models.apikey import Apikey
|
|
19
20
|
from elabapi_python.models.apikeys_body import ApikeysBody
|
|
21
|
+
from elabapi_python.models.branding_id_body import BrandingIdBody
|
|
20
22
|
from elabapi_python.models.changelog import Changelog
|
|
21
23
|
from elabapi_python.models.comment import Comment
|
|
22
24
|
from elabapi_python.models.compound import Compound
|
|
@@ -95,6 +97,7 @@ from elabapi_python.models.inline_response2008 import InlineResponse2008
|
|
|
95
97
|
from elabapi_python.models.inline_response2009 import InlineResponse2009
|
|
96
98
|
from elabapi_python.models.inline_response2009_embedded import InlineResponse2009Embedded
|
|
97
99
|
from elabapi_python.models.inline_response2009_embedded_entries import InlineResponse2009EmbeddedEntries
|
|
100
|
+
from elabapi_python.models.instance_body import InstanceBody
|
|
98
101
|
from elabapi_python.models.item import Item
|
|
99
102
|
from elabapi_python.models.item_editable import ItemEditable
|
|
100
103
|
from elabapi_python.models.items_links_subid_body import ItemsLinksSubidBody
|
|
@@ -105,6 +108,7 @@ from elabapi_python.models.metadata_elabftw import MetadataElabftw
|
|
|
105
108
|
from elabapi_python.models.metadata_elabftw_extra_fields_groups import MetadataElabftwExtraFieldsGroups
|
|
106
109
|
from elabapi_python.models.metadata_extra_fields import MetadataExtraFields
|
|
107
110
|
from elabapi_python.models.notification import Notification
|
|
111
|
+
from elabapi_python.models.notifications_subid_body import NotificationsSubidBody
|
|
108
112
|
from elabapi_python.models.patch_action import PatchAction
|
|
109
113
|
from elabapi_python.models.revision import Revision
|
|
110
114
|
from elabapi_python.models.revisions_subid_body import RevisionsSubidBody
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
eLabFTW REST API v2 Documentation
|
|
5
|
+
|
|
6
|
+
This document describes all available endpoints and methods for eLabFTW's API version 2. # noqa: E501
|
|
7
|
+
|
|
8
|
+
OpenAPI spec version: 2.0.0
|
|
9
|
+
|
|
10
|
+
Generated by: https://github.com/swagger-api/swagger-codegen.git
|
|
11
|
+
"""
|
|
12
|
+
|
|
13
|
+
import pprint
|
|
14
|
+
import re # noqa: F401
|
|
15
|
+
|
|
16
|
+
import six
|
|
17
|
+
from elabapi_python.models.metadata import Metadata # noqa: F401,E501
|
|
18
|
+
|
|
19
|
+
class AllOfentityEditableMetadatamerge(Metadata):
|
|
20
|
+
"""NOTE: This class is auto generated by the swagger code generator program.
|
|
21
|
+
|
|
22
|
+
Do not edit the class manually.
|
|
23
|
+
"""
|
|
24
|
+
"""
|
|
25
|
+
Attributes:
|
|
26
|
+
swagger_types (dict): The key is attribute name
|
|
27
|
+
and the value is attribute type.
|
|
28
|
+
attribute_map (dict): The key is attribute name
|
|
29
|
+
and the value is json key in definition.
|
|
30
|
+
"""
|
|
31
|
+
swagger_types = {
|
|
32
|
+
}
|
|
33
|
+
if hasattr(Metadata, "swagger_types"):
|
|
34
|
+
swagger_types.update(Metadata.swagger_types)
|
|
35
|
+
|
|
36
|
+
attribute_map = {
|
|
37
|
+
}
|
|
38
|
+
if hasattr(Metadata, "attribute_map"):
|
|
39
|
+
attribute_map.update(Metadata.attribute_map)
|
|
40
|
+
|
|
41
|
+
def __init__(self, *args, **kwargs): # noqa: E501
|
|
42
|
+
"""AllOfentityEditableMetadatamerge - a model defined in Swagger""" # noqa: E501
|
|
43
|
+
self.discriminator = None
|
|
44
|
+
Metadata.__init__(self, *args, **kwargs)
|
|
45
|
+
|
|
46
|
+
def to_dict(self):
|
|
47
|
+
"""Returns the model properties as a dict"""
|
|
48
|
+
result = {}
|
|
49
|
+
|
|
50
|
+
for attr, _ in six.iteritems(self.swagger_types):
|
|
51
|
+
value = getattr(self, attr)
|
|
52
|
+
if isinstance(value, list):
|
|
53
|
+
result[attr] = list(map(
|
|
54
|
+
lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
|
|
55
|
+
value
|
|
56
|
+
))
|
|
57
|
+
elif hasattr(value, "to_dict"):
|
|
58
|
+
result[attr] = value.to_dict()
|
|
59
|
+
elif isinstance(value, dict):
|
|
60
|
+
result[attr] = dict(map(
|
|
61
|
+
lambda item: (item[0], item[1].to_dict())
|
|
62
|
+
if hasattr(item[1], "to_dict") else item,
|
|
63
|
+
value.items()
|
|
64
|
+
))
|
|
65
|
+
else:
|
|
66
|
+
result[attr] = value
|
|
67
|
+
if issubclass(AllOfentityEditableMetadatamerge, dict):
|
|
68
|
+
for key, value in self.items():
|
|
69
|
+
result[key] = value
|
|
70
|
+
|
|
71
|
+
return result
|
|
72
|
+
|
|
73
|
+
def to_str(self):
|
|
74
|
+
"""Returns the string representation of the model"""
|
|
75
|
+
return pprint.pformat(self.to_dict())
|
|
76
|
+
|
|
77
|
+
def __repr__(self):
|
|
78
|
+
"""For `print` and `pprint`"""
|
|
79
|
+
return self.to_str()
|
|
80
|
+
|
|
81
|
+
def __eq__(self, other):
|
|
82
|
+
"""Returns true if both objects are equal"""
|
|
83
|
+
if not isinstance(other, AllOfentityEditableMetadatamerge):
|
|
84
|
+
return False
|
|
85
|
+
|
|
86
|
+
return self.__dict__ == other.__dict__
|
|
87
|
+
|
|
88
|
+
def __ne__(self, other):
|
|
89
|
+
"""Returns true if both objects are not equal"""
|
|
90
|
+
return not self == other
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
eLabFTW REST API v2 Documentation
|
|
5
|
+
|
|
6
|
+
This document describes all available endpoints and methods for eLabFTW's API version 2. # noqa: E501
|
|
7
|
+
|
|
8
|
+
OpenAPI spec version: 2.0.0
|
|
9
|
+
|
|
10
|
+
Generated by: https://github.com/swagger-api/swagger-codegen.git
|
|
11
|
+
"""
|
|
12
|
+
|
|
13
|
+
import pprint
|
|
14
|
+
import re # noqa: F401
|
|
15
|
+
|
|
16
|
+
import six
|
|
17
|
+
|
|
18
|
+
class BrandingIdBody(object):
|
|
19
|
+
"""NOTE: This class is auto generated by the swagger code generator program.
|
|
20
|
+
|
|
21
|
+
Do not edit the class manually.
|
|
22
|
+
"""
|
|
23
|
+
"""
|
|
24
|
+
Attributes:
|
|
25
|
+
swagger_types (dict): The key is attribute name
|
|
26
|
+
and the value is attribute type.
|
|
27
|
+
attribute_map (dict): The key is attribute name
|
|
28
|
+
and the value is json key in definition.
|
|
29
|
+
"""
|
|
30
|
+
swagger_types = {
|
|
31
|
+
'action': 'str',
|
|
32
|
+
'file': 'str'
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
attribute_map = {
|
|
36
|
+
'action': 'action',
|
|
37
|
+
'file': 'file'
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
def __init__(self, action='update', file=None): # noqa: E501
|
|
41
|
+
"""BrandingIdBody - a model defined in Swagger""" # noqa: E501
|
|
42
|
+
self._action = None
|
|
43
|
+
self._file = None
|
|
44
|
+
self.discriminator = None
|
|
45
|
+
if action is not None:
|
|
46
|
+
self.action = action
|
|
47
|
+
self.file = file
|
|
48
|
+
|
|
49
|
+
@property
|
|
50
|
+
def action(self):
|
|
51
|
+
"""Gets the action of this BrandingIdBody. # noqa: E501
|
|
52
|
+
|
|
53
|
+
Update a branding asset. Requires Sysadmin permissions. # noqa: E501
|
|
54
|
+
|
|
55
|
+
:return: The action of this BrandingIdBody. # noqa: E501
|
|
56
|
+
:rtype: str
|
|
57
|
+
"""
|
|
58
|
+
return self._action
|
|
59
|
+
|
|
60
|
+
@action.setter
|
|
61
|
+
def action(self, action):
|
|
62
|
+
"""Sets the action of this BrandingIdBody.
|
|
63
|
+
|
|
64
|
+
Update a branding asset. Requires Sysadmin permissions. # noqa: E501
|
|
65
|
+
|
|
66
|
+
:param action: The action of this BrandingIdBody. # noqa: E501
|
|
67
|
+
:type: str
|
|
68
|
+
"""
|
|
69
|
+
allowed_values = ["update"] # noqa: E501
|
|
70
|
+
if action not in allowed_values:
|
|
71
|
+
raise ValueError(
|
|
72
|
+
"Invalid value for `action` ({0}), must be one of {1}" # noqa: E501
|
|
73
|
+
.format(action, allowed_values)
|
|
74
|
+
)
|
|
75
|
+
|
|
76
|
+
self._action = action
|
|
77
|
+
|
|
78
|
+
@property
|
|
79
|
+
def file(self):
|
|
80
|
+
"""Gets the file of this BrandingIdBody. # noqa: E501
|
|
81
|
+
|
|
82
|
+
Branding file. Accepted types are SVG, PNG, JPEG, WebP and ICO. Maximum size is 1 MiB. # noqa: E501
|
|
83
|
+
|
|
84
|
+
:return: The file of this BrandingIdBody. # noqa: E501
|
|
85
|
+
:rtype: str
|
|
86
|
+
"""
|
|
87
|
+
return self._file
|
|
88
|
+
|
|
89
|
+
@file.setter
|
|
90
|
+
def file(self, file):
|
|
91
|
+
"""Sets the file of this BrandingIdBody.
|
|
92
|
+
|
|
93
|
+
Branding file. Accepted types are SVG, PNG, JPEG, WebP and ICO. Maximum size is 1 MiB. # noqa: E501
|
|
94
|
+
|
|
95
|
+
:param file: The file of this BrandingIdBody. # noqa: E501
|
|
96
|
+
:type: str
|
|
97
|
+
"""
|
|
98
|
+
if file is None:
|
|
99
|
+
raise ValueError("Invalid value for `file`, must not be `None`") # noqa: E501
|
|
100
|
+
|
|
101
|
+
self._file = file
|
|
102
|
+
|
|
103
|
+
def to_dict(self):
|
|
104
|
+
"""Returns the model properties as a dict"""
|
|
105
|
+
result = {}
|
|
106
|
+
|
|
107
|
+
for attr, _ in six.iteritems(self.swagger_types):
|
|
108
|
+
value = getattr(self, attr)
|
|
109
|
+
if isinstance(value, list):
|
|
110
|
+
result[attr] = list(map(
|
|
111
|
+
lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
|
|
112
|
+
value
|
|
113
|
+
))
|
|
114
|
+
elif hasattr(value, "to_dict"):
|
|
115
|
+
result[attr] = value.to_dict()
|
|
116
|
+
elif isinstance(value, dict):
|
|
117
|
+
result[attr] = dict(map(
|
|
118
|
+
lambda item: (item[0], item[1].to_dict())
|
|
119
|
+
if hasattr(item[1], "to_dict") else item,
|
|
120
|
+
value.items()
|
|
121
|
+
))
|
|
122
|
+
else:
|
|
123
|
+
result[attr] = value
|
|
124
|
+
if issubclass(BrandingIdBody, dict):
|
|
125
|
+
for key, value in self.items():
|
|
126
|
+
result[key] = value
|
|
127
|
+
|
|
128
|
+
return result
|
|
129
|
+
|
|
130
|
+
def to_str(self):
|
|
131
|
+
"""Returns the string representation of the model"""
|
|
132
|
+
return pprint.pformat(self.to_dict())
|
|
133
|
+
|
|
134
|
+
def __repr__(self):
|
|
135
|
+
"""For `print` and `pprint`"""
|
|
136
|
+
return self.to_str()
|
|
137
|
+
|
|
138
|
+
def __eq__(self, other):
|
|
139
|
+
"""Returns true if both objects are equal"""
|
|
140
|
+
if not isinstance(other, BrandingIdBody):
|
|
141
|
+
return False
|
|
142
|
+
|
|
143
|
+
return self.__dict__ == other.__dict__
|
|
144
|
+
|
|
145
|
+
def __ne__(self, other):
|
|
146
|
+
"""Returns true if both objects are not equal"""
|
|
147
|
+
return not self == other
|
|
@@ -29,23 +29,28 @@ class ContainersSubidBody1(object):
|
|
|
29
29
|
"""
|
|
30
30
|
swagger_types = {
|
|
31
31
|
'qty_stored': 'float',
|
|
32
|
-
'qty_unit': 'str'
|
|
32
|
+
'qty_unit': 'str',
|
|
33
|
+
'storage_id': 'int'
|
|
33
34
|
}
|
|
34
35
|
|
|
35
36
|
attribute_map = {
|
|
36
37
|
'qty_stored': 'qty_stored',
|
|
37
|
-
'qty_unit': 'qty_unit'
|
|
38
|
+
'qty_unit': 'qty_unit',
|
|
39
|
+
'storage_id': 'storage_id'
|
|
38
40
|
}
|
|
39
41
|
|
|
40
|
-
def __init__(self, qty_stored=None, qty_unit=None): # noqa: E501
|
|
42
|
+
def __init__(self, qty_stored=None, qty_unit=None, storage_id=None): # noqa: E501
|
|
41
43
|
"""ContainersSubidBody1 - a model defined in Swagger""" # noqa: E501
|
|
42
44
|
self._qty_stored = None
|
|
43
45
|
self._qty_unit = None
|
|
46
|
+
self._storage_id = None
|
|
44
47
|
self.discriminator = None
|
|
45
48
|
if qty_stored is not None:
|
|
46
49
|
self.qty_stored = qty_stored
|
|
47
50
|
if qty_unit is not None:
|
|
48
51
|
self.qty_unit = qty_unit
|
|
52
|
+
if storage_id is not None:
|
|
53
|
+
self.storage_id = storage_id
|
|
49
54
|
|
|
50
55
|
@property
|
|
51
56
|
def qty_stored(self):
|
|
@@ -93,6 +98,29 @@ class ContainersSubidBody1(object):
|
|
|
93
98
|
|
|
94
99
|
self._qty_unit = qty_unit
|
|
95
100
|
|
|
101
|
+
@property
|
|
102
|
+
def storage_id(self):
|
|
103
|
+
"""Gets the storage_id of this ContainersSubidBody1. # noqa: E501
|
|
104
|
+
|
|
105
|
+
New storage unit id. Moves the container to that storage unit. Requires write access on the parent entity and (when `inventory_require_edit_rights=1`) the `can_manage_inventory_locations` permission. # noqa: E501
|
|
106
|
+
|
|
107
|
+
:return: The storage_id of this ContainersSubidBody1. # noqa: E501
|
|
108
|
+
:rtype: int
|
|
109
|
+
"""
|
|
110
|
+
return self._storage_id
|
|
111
|
+
|
|
112
|
+
@storage_id.setter
|
|
113
|
+
def storage_id(self, storage_id):
|
|
114
|
+
"""Sets the storage_id of this ContainersSubidBody1.
|
|
115
|
+
|
|
116
|
+
New storage unit id. Moves the container to that storage unit. Requires write access on the parent entity and (when `inventory_require_edit_rights=1`) the `can_manage_inventory_locations` permission. # noqa: E501
|
|
117
|
+
|
|
118
|
+
:param storage_id: The storage_id of this ContainersSubidBody1. # noqa: E501
|
|
119
|
+
:type: int
|
|
120
|
+
"""
|
|
121
|
+
|
|
122
|
+
self._storage_id = storage_id
|
|
123
|
+
|
|
96
124
|
def to_dict(self):
|
|
97
125
|
"""Returns the model properties as a dict"""
|
|
98
126
|
result = {}
|
|
@@ -38,7 +38,10 @@ class EntityAndItemEditable(EntityEditable):
|
|
|
38
38
|
'book_users_can_in_past': 'int',
|
|
39
39
|
'book_is_cancellable': 'int',
|
|
40
40
|
'book_cancel_minutes': 'int',
|
|
41
|
-
'booking_window_days': 'int'
|
|
41
|
+
'booking_window_days': 'int',
|
|
42
|
+
'booking_hourly_rate_notax': 'float',
|
|
43
|
+
'booking_hourly_rate_tax': 'float',
|
|
44
|
+
'booking_hourly_rate_currency': 'int'
|
|
42
45
|
}
|
|
43
46
|
if hasattr(EntityEditable, "swagger_types"):
|
|
44
47
|
swagger_types.update(EntityEditable.swagger_types)
|
|
@@ -53,12 +56,15 @@ class EntityAndItemEditable(EntityEditable):
|
|
|
53
56
|
'book_users_can_in_past': 'book_users_can_in_past',
|
|
54
57
|
'book_is_cancellable': 'book_is_cancellable',
|
|
55
58
|
'book_cancel_minutes': 'book_cancel_minutes',
|
|
56
|
-
'booking_window_days': 'booking_window_days'
|
|
59
|
+
'booking_window_days': 'booking_window_days',
|
|
60
|
+
'booking_hourly_rate_notax': 'booking_hourly_rate_notax',
|
|
61
|
+
'booking_hourly_rate_tax': 'booking_hourly_rate_tax',
|
|
62
|
+
'booking_hourly_rate_currency': 'booking_hourly_rate_currency'
|
|
57
63
|
}
|
|
58
64
|
if hasattr(EntityEditable, "attribute_map"):
|
|
59
65
|
attribute_map.update(EntityEditable.attribute_map)
|
|
60
66
|
|
|
61
|
-
def __init__(self, is_bookable=None, canbook_base=None, canbook=None, book_max_minutes=None, book_max_slots=None, book_can_overlap=None, book_users_can_in_past=None, book_is_cancellable=None, book_cancel_minutes=None, booking_window_days=None, *args, **kwargs): # noqa: E501
|
|
67
|
+
def __init__(self, is_bookable=None, canbook_base=None, canbook=None, book_max_minutes=None, book_max_slots=None, book_can_overlap=None, book_users_can_in_past=None, book_is_cancellable=None, book_cancel_minutes=None, booking_window_days=None, booking_hourly_rate_notax=None, booking_hourly_rate_tax=None, booking_hourly_rate_currency=None, *args, **kwargs): # noqa: E501
|
|
62
68
|
"""EntityAndItemEditable - a model defined in Swagger""" # noqa: E501
|
|
63
69
|
self._is_bookable = None
|
|
64
70
|
self._canbook_base = None
|
|
@@ -70,6 +76,9 @@ class EntityAndItemEditable(EntityEditable):
|
|
|
70
76
|
self._book_is_cancellable = None
|
|
71
77
|
self._book_cancel_minutes = None
|
|
72
78
|
self._booking_window_days = None
|
|
79
|
+
self._booking_hourly_rate_notax = None
|
|
80
|
+
self._booking_hourly_rate_tax = None
|
|
81
|
+
self._booking_hourly_rate_currency = None
|
|
73
82
|
self.discriminator = None
|
|
74
83
|
if is_bookable is not None:
|
|
75
84
|
self.is_bookable = is_bookable
|
|
@@ -91,6 +100,12 @@ class EntityAndItemEditable(EntityEditable):
|
|
|
91
100
|
self.book_cancel_minutes = book_cancel_minutes
|
|
92
101
|
if booking_window_days is not None:
|
|
93
102
|
self.booking_window_days = booking_window_days
|
|
103
|
+
if booking_hourly_rate_notax is not None:
|
|
104
|
+
self.booking_hourly_rate_notax = booking_hourly_rate_notax
|
|
105
|
+
if booking_hourly_rate_tax is not None:
|
|
106
|
+
self.booking_hourly_rate_tax = booking_hourly_rate_tax
|
|
107
|
+
if booking_hourly_rate_currency is not None:
|
|
108
|
+
self.booking_hourly_rate_currency = booking_hourly_rate_currency
|
|
94
109
|
EntityEditable.__init__(self, *args, **kwargs)
|
|
95
110
|
|
|
96
111
|
@property
|
|
@@ -313,6 +328,81 @@ class EntityAndItemEditable(EntityEditable):
|
|
|
313
328
|
|
|
314
329
|
self._booking_window_days = booking_window_days
|
|
315
330
|
|
|
331
|
+
@property
|
|
332
|
+
def booking_hourly_rate_notax(self):
|
|
333
|
+
"""Gets the booking_hourly_rate_notax of this EntityAndItemEditable. # noqa: E501
|
|
334
|
+
|
|
335
|
+
The hourly rate of booked resource, without taxes. # noqa: E501
|
|
336
|
+
|
|
337
|
+
:return: The booking_hourly_rate_notax of this EntityAndItemEditable. # noqa: E501
|
|
338
|
+
:rtype: float
|
|
339
|
+
"""
|
|
340
|
+
return self._booking_hourly_rate_notax
|
|
341
|
+
|
|
342
|
+
@booking_hourly_rate_notax.setter
|
|
343
|
+
def booking_hourly_rate_notax(self, booking_hourly_rate_notax):
|
|
344
|
+
"""Sets the booking_hourly_rate_notax of this EntityAndItemEditable.
|
|
345
|
+
|
|
346
|
+
The hourly rate of booked resource, without taxes. # noqa: E501
|
|
347
|
+
|
|
348
|
+
:param booking_hourly_rate_notax: The booking_hourly_rate_notax of this EntityAndItemEditable. # noqa: E501
|
|
349
|
+
:type: float
|
|
350
|
+
"""
|
|
351
|
+
|
|
352
|
+
self._booking_hourly_rate_notax = booking_hourly_rate_notax
|
|
353
|
+
|
|
354
|
+
@property
|
|
355
|
+
def booking_hourly_rate_tax(self):
|
|
356
|
+
"""Gets the booking_hourly_rate_tax of this EntityAndItemEditable. # noqa: E501
|
|
357
|
+
|
|
358
|
+
The hourly rate of booked resource, with taxes. # noqa: E501
|
|
359
|
+
|
|
360
|
+
:return: The booking_hourly_rate_tax of this EntityAndItemEditable. # noqa: E501
|
|
361
|
+
:rtype: float
|
|
362
|
+
"""
|
|
363
|
+
return self._booking_hourly_rate_tax
|
|
364
|
+
|
|
365
|
+
@booking_hourly_rate_tax.setter
|
|
366
|
+
def booking_hourly_rate_tax(self, booking_hourly_rate_tax):
|
|
367
|
+
"""Sets the booking_hourly_rate_tax of this EntityAndItemEditable.
|
|
368
|
+
|
|
369
|
+
The hourly rate of booked resource, with taxes. # noqa: E501
|
|
370
|
+
|
|
371
|
+
:param booking_hourly_rate_tax: The booking_hourly_rate_tax of this EntityAndItemEditable. # noqa: E501
|
|
372
|
+
:type: float
|
|
373
|
+
"""
|
|
374
|
+
|
|
375
|
+
self._booking_hourly_rate_tax = booking_hourly_rate_tax
|
|
376
|
+
|
|
377
|
+
@property
|
|
378
|
+
def booking_hourly_rate_currency(self):
|
|
379
|
+
"""Gets the booking_hourly_rate_currency of this EntityAndItemEditable. # noqa: E501
|
|
380
|
+
|
|
381
|
+
The currency of the hourly rate: - 0: CAD - 1: CHF - 2: CNY - 3: DKK - 4: EUR - 5: GBP - 6: JPY - 7: USD - 8: SEK - 9: NOK # noqa: E501
|
|
382
|
+
|
|
383
|
+
:return: The booking_hourly_rate_currency of this EntityAndItemEditable. # noqa: E501
|
|
384
|
+
:rtype: int
|
|
385
|
+
"""
|
|
386
|
+
return self._booking_hourly_rate_currency
|
|
387
|
+
|
|
388
|
+
@booking_hourly_rate_currency.setter
|
|
389
|
+
def booking_hourly_rate_currency(self, booking_hourly_rate_currency):
|
|
390
|
+
"""Sets the booking_hourly_rate_currency of this EntityAndItemEditable.
|
|
391
|
+
|
|
392
|
+
The currency of the hourly rate: - 0: CAD - 1: CHF - 2: CNY - 3: DKK - 4: EUR - 5: GBP - 6: JPY - 7: USD - 8: SEK - 9: NOK # noqa: E501
|
|
393
|
+
|
|
394
|
+
:param booking_hourly_rate_currency: The booking_hourly_rate_currency of this EntityAndItemEditable. # noqa: E501
|
|
395
|
+
:type: int
|
|
396
|
+
"""
|
|
397
|
+
allowed_values = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] # noqa: E501
|
|
398
|
+
if booking_hourly_rate_currency not in allowed_values:
|
|
399
|
+
raise ValueError(
|
|
400
|
+
"Invalid value for `booking_hourly_rate_currency` ({0}), must be one of {1}" # noqa: E501
|
|
401
|
+
.format(booking_hourly_rate_currency, allowed_values)
|
|
402
|
+
)
|
|
403
|
+
|
|
404
|
+
self._booking_hourly_rate_currency = booking_hourly_rate_currency
|
|
405
|
+
|
|
316
406
|
def to_dict(self):
|
|
317
407
|
"""Returns the model properties as a dict"""
|
|
318
408
|
result = {}
|