Skip to content

Commit 584d5ea

Browse files
dieckstanislavulrych
authored andcommitted
Added POST function and functions to create Holiday schemes and Holidays
1 parent 62418b7 commit 584d5ea

File tree

1 file changed

+41
-0
lines changed

1 file changed

+41
-0
lines changed

tempoapiclient/client.py

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,10 @@ def get(self, path, data=None, flags=None, params=None, headers=None, not_json_r
5757

5858
return results
5959

60+
def post(self, path, data=None, params=None, headers=None, not_json_response=None, trailing=None):
61+
path_absolute = super().url_joiner(self._base_url, path)
62+
return super().post(path_absolute, data=data, params=params, headers=headers, trailing=trailing)
63+
6064
# Accounts
6165

6266
def get_accounts(self):
@@ -282,6 +286,43 @@ def get_holiday_schemes(self, holidaySchemeId=None, year=None):
282286

283287
return self.get(url, params=params)
284288

289+
def create_holiday_scheme(self, schemeName, schemeDescription=None):
290+
"""
291+
Create holiday scheme
292+
:param name:
293+
:param description:
294+
"""
295+
296+
url = f"/holiday-schemes"
297+
298+
data = {"name": schemeName, "description": schemeDescription}
299+
300+
return self.post(url, data=data)
301+
302+
def create_holiday(self, holidaySchemeId, type=None, name=None, description=None, durationSeconds=None, date=None, data=None):
303+
"""
304+
Create holiday scheme
305+
:param name:
306+
:param description:
307+
"""
308+
309+
# either provide data, or build from other params
310+
if (not(data)):
311+
data = {
312+
"type": type,
313+
"name": name,
314+
"description": description,
315+
"durationSeconds": durationSeconds,
316+
"date": date
317+
}
318+
319+
url = f"/holiday-schemes/" + str(holidaySchemeId) + "/holidays"
320+
321+
return self.post(url, data=data)
322+
323+
324+
325+
285326
# Worklogs
286327

287328
def get_worklogs(self, dateFrom, dateTo, updatedFrom=None, worklogId=None, jiraWorklogId=None, jiraFilterId=None,

0 commit comments

Comments
 (0)