class SunatInvoice::XmlDocument
Constants
- CUSTOMIZATION
- UBL_VERSION
Attributes
currency[RW]
date[RW]
lines[RW]
provider[RW]
signature[RW]
Public Class Methods
new(*args)
click to toggle source
Calls superclass method
SunatInvoice::Model::new
# File lib/sunat_invoice/xml_document.rb, line 15 def initialize(*args) super(*args) @date ||= Date.today end
Public Instance Methods
build_ext(xml) { |xml| ... }
click to toggle source
# File lib/sunat_invoice/xml_document.rb, line 31 def build_ext(xml, &block) xml['ext'].UBLExtensions do yield(xml) if block @signature.signature_ext(xml) end end
build_lines_xml(xml)
click to toggle source
# File lib/sunat_invoice/xml_document.rb, line 46 def build_lines_xml(xml) lines&.each_with_index do |line, index| line.xml(xml, index, currency) end end
build_number(xml)
click to toggle source
# File lib/sunat_invoice/xml_document.rb, line 38 def build_number(xml) xml['cbc'].ID document_number end
build_xml() { |xml| ... }
click to toggle source
# File lib/sunat_invoice/xml_document.rb, line 20 def build_xml(&block) Nokogiri::XML::Builder.new do |xml| xml.send(root_name, namespaces) do build_ext(xml) xml['cbc'].UBLVersionID UBL_VERSION xml['cbc'].CustomizationID CUSTOMIZATION yield(xml) if block end end end
formatted_date(date)
click to toggle source
# File lib/sunat_invoice/xml_document.rb, line 42 def formatted_date(date) date.strftime('%Y-%m-%d') end