Пример #1
0
 def update_estimate(self, estimate_id, **kwargs):
     url = '/estimates/{0}'.format(estimate_id)
     return from_dict(data_class=Estimate,
                      data=self._patch(url, data=kwargs))
Пример #2
0
    def billable_rates(self, user_id, page=1, per_page=100):
        url = '/users/{0}/billable_rates'.format(user_id)
        url = '{0}?page={1}'.format(url, page)
        url = '{0}&per_page={1}'.format(url, per_page)

        return from_dict(data_class=BillableRates, data=self._get(url))
Пример #3
0
 def create_billable_rate(self, user_id, amount, **kwargs):
     url = '/users/{0}/billable_rates'.format(user_id)
     kwargs.update({'amount': amount})
     return from_dict(data_class=BillableRate,
                      data=self._post(url, data=kwargs))
Пример #4
0
    def roles(self, page=1, per_page=100):
        url = '/roles?page={0}'.format(page)
        url = '{0}&per_page={1}'.format(url, per_page)

        return from_dict(data_class=Roles, data=self._get(url))
Пример #5
0
 def create_role(self, name, **kwargs):
     url = '/roles'
     kwargs.update({'name': name})
     return from_dict(data_class=Role, data=self._post(url, data=kwargs))
Пример #6
0
 def get_task_assignment(self, project_id, task_assignment_id):
     return from_dict(data_class=TaskAssignment,
                      data=self._get(
                          '/projects/{0}/task_assignments/{1}'.format(
                              project_id, task_assignment_id)))
Пример #7
0
 def get_project(self, project_id):
     return from_dict(data_class=Project,
                      data=self._get('/projects/{0}'.format(project_id)))
Пример #8
0
 def create_expense_category(self, name, **kwargs):
     url = '/expense_categories'
     kwargs.update({'name': name})
     return from_dict(data_class=ExpenseCategory,
                      data=self._post(url, data=kwargs))
Пример #9
0
 def update_expense_category(self, expense_category_id, **kwargs):
     url = '/expense_categories/{0}'.format(expense_category_id)
     return from_dict(data_class=ExpenseCategory,
                      data=self._patch(url, data=kwargs))
Пример #10
0
 def get_expense(self, expense_id):
     return from_dict(data_class=Expense,
                      data=self._get('/expenses/{0}'.format(expense_id)))
Пример #11
0
 def get_expense_category(self, expense_category_id):
     return from_dict(
         data_class=ExpenseCategory,
         data=self._get(
             '/expense_categories/{0}'.format(expense_category_id)))
Пример #12
0
 def update_estimate_item_category(self, estimate_item_category_id, name):
     url = '/estimate_item_categories/{0}'.format(estimate_item_category_id)
     return from_dict(data_class=EstimateItemCategory,
                      data=self._patch(url, data={'name': name}))
Пример #13
0
 def create_estimate_item_category(self, name):
     url = '/estimate_item_categories'
     return from_dict(data_class=EstimateItemCategory,
                      data=self._post(url, data={'name': name}))
Пример #14
0
 def get_estimate_item_category(self, estimate_item_category_id):
     url = '/estimate_item_categories/{0}'.format(estimate_item_category_id)
     return from_dict(data_class=EstimateItemCategory, data=self._get(url))
Пример #15
0
 def get_user_assignment(self, project_id, user_assignment_id):
     return from_dict(data_class=UserAssignment,
                      data=self._get(
                          '/projects/{0}/user_assignments/{1}'.format(
                              project_id, user_assignment_id)))
Пример #16
0
 def get_task(self, task_id):
     return from_dict(data_class=Task,
                      data=self._get('/tasks/{0}'.format(task_id)))
Пример #17
0
 def create_user_assignment(self, project_id, user_id, **kwargs):
     url = '/projects/{0}/user_assignments'.format(project_id)
     kwargs.update({'user_id': user_id})
     return from_dict(data_class=UserAssignment,
                      data=self._post(url, data=kwargs))
Пример #18
0
 def create_task(self, name, **kwargs):
     url = '/tasks'
     kwargs.update({'name': name})
     return from_dict(data_class=Task, data=self._post(url, data=kwargs))
Пример #19
0
 def update_task_assignment(self, project_id, task_assignment_id, **kwargs):
     url = '/projects/{0}/task_assignments/{1}'.format(
         project_id, task_assignment_id)
     return from_dict(data_class=TaskAssignment,
                      data=self._patch(url, data=kwargs))
Пример #20
0
 def update_task(self, task_id, **kwargs):
     url = '/tasks/{0}'.format(task_id)
     return from_dict(data_class=Task, data=self._patch(url, data=kwargs))
Пример #21
0
 def update_project(self, project_id, **kwargs):
     url = '/projects/{0}'.format(project_id)
     return from_dict(data_class=Project,
                      data=self._patch(url, data=kwargs))
Пример #22
0
 def get_time_entry(self, time_entry_id):
     return from_dict(data_class=TimeEntry,
                      data=self._get(
                          '/time_entries/{0}'.format(time_entry_id)))
Пример #23
0
 def get_role(self, role_id):
     return from_dict(data_class=Role,
                      data=self._get('/roles/{0}'.format(role_id)))
Пример #24
0
 def update_time_entry(self, time_entry_id, **kwargs):
     url = '/time_entries/{0}'.format(time_entry_id)
     return from_dict(data_class=TimeEntry,
                      data=self._patch(url, data=kwargs))
Пример #25
0
 def update_role(self, role_id, name, **kwargs):
     url = '/roles/{0}'.format(role_id)
     kwargs.update({'name': name})
     return from_dict(data_class=Role, data=self._patch(url, data=kwargs))
Пример #26
0
 def restart_a_stopped_time_entry(self, time_entry_id):
     return from_dict(
         data_class=TimeEntry,
         data=self._patch(
             '/time_entries/{0}/restart'.format(time_entry_id)))
Пример #27
0
 def get_billable_rate(self, user_id, billable_rate_id):
     url = '/users/{0}/billable_rates/{1}'.format(user_id, billable_rate_id)
     return from_dict(data_class=BillableRate, data=self._get(url))
Пример #28
0
 def stop_a_running_time_entry(self, time_entry_id):
     return from_dict(data_class=TimeEntry,
                      data=self._patch(
                          '/time_entries/{0}/stop'.format(time_entry_id)))
Пример #29
0
    def user_cost_rates(self, user_id, page=1, per_page=100):
        url = '/users/{0}/cost_rates'.format(user_id)
        url = '{0}?page={1}'.format(url, page)
        url = '{0}&per_page={1}'.format(url, per_page)

        return from_dict(data_class=UserCostRates, data=self._get(url))
Пример #30
0
    def create_estimate(self, client_id, **kwargs):
        url = '/estimates'
        kwargs.update({'client_id': client_id})

        return from_dict(data_class=Estimate,
                         data=self._post(url, data=kwargs))