Class: FreeAgent::TimeslipsResource
- Inherits:
-
Resource
- Object
- Resource
- FreeAgent::TimeslipsResource
show all
- Defined in:
- lib/free_agent/resources/timeslips.rb
Instance Attribute Summary
Attributes inherited from Resource
#client
Instance Method Summary
collapse
Methods inherited from Resource
#initialize
Instance Method Details
#create(task:, user:, project:, dated_on:, hours:, **params) ⇒ Object
28
29
30
31
32
33
|
# File 'lib/free_agent/resources/timeslips.rb', line 28
def create(task:, user:, project:, dated_on:, hours:, **params)
attributes = { task: task, user: user, project: project, dated_on: dated_on, hours: hours }
response = post_request("timeslips", body: attributes.merge(params))
Timeslip.new(response.body["timeslip"]) if response.success?
end
|
#delete(id:) ⇒ Object
40
41
42
43
|
# File 'lib/free_agent/resources/timeslips.rb', line 40
def delete(id:)
response = delete_request("timeslips/#{id}")
response.success?
end
|
#list(**params) ⇒ Object
3
4
5
6
|
# File 'lib/free_agent/resources/timeslips.rb', line 3
def list(**params)
response = get_request("timeslips", params: params)
Collection.from_response(response, type: Timeslip)
end
|
#list_for_project(project:, **params) ⇒ Object
18
19
20
21
|
# File 'lib/free_agent/resources/timeslips.rb', line 18
def list_for_project(project:, **params)
response = get_request("timeslips?project=#{project}", params: params)
Collection.from_response(response, type: Timeslip)
end
|
#list_for_task(task:, **params) ⇒ Object
13
14
15
16
|
# File 'lib/free_agent/resources/timeslips.rb', line 13
def list_for_task(task:, **params)
response = get_request("timeslips?task=#{task}", params: params)
Collection.from_response(response, type: Timeslip)
end
|
#list_for_user(user:, **params) ⇒ Object
8
9
10
11
|
# File 'lib/free_agent/resources/timeslips.rb', line 8
def list_for_user(user:, **params)
response = get_request("timeslips?user=#{user}", params: params)
Collection.from_response(response, type: Timeslip)
end
|
#retrieve(id:) ⇒ Object
23
24
25
26
|
# File 'lib/free_agent/resources/timeslips.rb', line 23
def retrieve(id:)
response = get_request("timeslips/#{id}")
Timeslip.new(response.body["timeslip"])
end
|
#update(id:, **params) ⇒ Object
35
36
37
38
|
# File 'lib/free_agent/resources/timeslips.rb', line 35
def update(id:, **params)
response = put_request("timeslips/#{id}", body: params)
Timeslip.new(response.body["timeslip"]) if response.success?
end
|