lib/billomat/models/invoice.rb in billomat-0.1.0 vs lib/billomat/models/invoice.rb in billomat-0.1.1

- old
+ new

@@ -1,31 +1,45 @@ # frozen_string_literal: true module Billomat module Models + ## + # Representation of the invoice resource class Invoice < Base + # @return [String] The resource's base path def self.base_path '/invoices' end + # @return [String] The resource's name def self.resource_name 'invoice' end + ## + # Completes the invoice by calling the Complete action def complete! Billomat::Actions::Complete.new(id).call end + ## + # Cancels the invoice by calling the Cancel action def cancel! Billomat::Actions::Cancel.new(id).call end + ## + # Sends the invoice as an email to the given recipient + # + # @param [String] recipient The email address of the recipient def send_email(recipient) email_params = { recipients: { to: recipient } } Billomat::Actions::Email.new(id, email_params).call end + ## + # Allows to download the invoice as an PDF def to_pdf Billomat::Actions::Pdf.new(id).call end end end