Class: Fakturoid::Client::Invoice
- Inherits:
-
Api
- Object
- Api
- Fakturoid::Client::Invoice
show all
- Defined in:
- lib/fakturoid/client/invoice.rb
Class Method Summary
collapse
Methods inherited from Api
config, configure
#permit_params, #validate_numerical_id, #validate_search_query
#delete_request, #get_request, #patch_request, #post_request
Class Method Details
.all(params = {}) ⇒ Object
4
5
6
7
8
|
# File 'lib/fakturoid/client/invoice.rb', line 4
def self.all(params = {})
request_params = permit_params(params, :page, :since, :updated_since, :number, :status, :subject_id) || {}
get_request('invoices.json', request_params: request_params)
end
|
.create(payload = {}) ⇒ Object
50
51
52
|
# File 'lib/fakturoid/client/invoice.rb', line 50
def self.create(payload = {})
post_request('invoices.json', payload: payload)
end
|
.delete(id) ⇒ Object
59
60
61
62
|
# File 'lib/fakturoid/client/invoice.rb', line 59
def self.delete(id)
validate_numerical_id(id)
delete_request("invoices/#{id}.json")
end
|
.deliver_message(invoice_id, payload = {}) ⇒ Object
45
46
47
48
|
# File 'lib/fakturoid/client/invoice.rb', line 45
def self.deliver_message(invoice_id, payload = {})
validate_numerical_id(invoice_id)
post_request("invoices/#{invoice_id}/message.json", payload: payload)
end
|
.download_pdf(id) ⇒ Object
32
33
34
35
|
# File 'lib/fakturoid/client/invoice.rb', line 32
def self.download_pdf(id)
validate_numerical_id(id)
get_request("invoices/#{id}/download.pdf", headers: { content_type: 'application/pdf' })
end
|
.find(id) ⇒ Object
22
23
24
25
|
# File 'lib/fakturoid/client/invoice.rb', line 22
def self.find(id)
validate_numerical_id(id)
get_request("invoices/#{id}.json")
end
|
.fire(id, event, params = {}) ⇒ Object
37
38
39
40
41
42
43
|
# File 'lib/fakturoid/client/invoice.rb', line 37
def self.fire(id, event, params = {})
request_params = permit_params(params, :paid_at, :paid_amount) || {}
request_params[:event] = event
validate_numerical_id(id)
post_request("invoices/#{id}/fire.json", request_params: request_params)
end
|
16
17
18
19
20
|
# File 'lib/fakturoid/client/invoice.rb', line 16
def self.proforma(params = {})
request_params = permit_params(params, :page, :since, :updated_since, :number, :status, :subject_id) || {}
get_request('invoices/proforma.json', request_params: request_params)
end
|
.regular(params = {}) ⇒ Object
10
11
12
13
14
|
# File 'lib/fakturoid/client/invoice.rb', line 10
def self.regular(params = {})
request_params = permit_params(params, :page, :since, :updated_since, :number, :status, :subject_id) || {}
get_request('invoices/regular.json', request_params: request_params)
end
|
.search(query) ⇒ Object
27
28
29
30
|
# File 'lib/fakturoid/client/invoice.rb', line 27
def self.search(query)
validate_search_query(query)
get_request('invoices/search.json', request_params: { query: query })
end
|
.update(id, payload = {}) ⇒ Object
54
55
56
57
|
# File 'lib/fakturoid/client/invoice.rb', line 54
def self.update(id, payload = {})
validate_numerical_id(id)
patch_request("invoices/#{id}.json", payload: payload)
end
|