class Fiscalizer::Serializers::Invoice
Private Instance Methods
add_body(xml)
click to toggle source
# File lib/fiscalizer/serializers/invoice.rb, line 22 def add_body(xml) xml['tns'].Racun do add_general_invoice_info(xml) add_invoice_number_info(xml) add_invoice_tax_info(xml) add_invoice_fee_info(xml) add_invoice_summary(xml) add_paragon_label(xml) add_specific_purpose(xml) end end
add_general_invoice_info(xml)
click to toggle source
# File lib/fiscalizer/serializers/invoice.rb, line 34 def add_general_invoice_info(xml) xml['tns'].Oib object.pin xml['tns'].USustPdv object.in_vat_system xml['tns'].DatVrijeme object.time_issued_str xml['tns'].OznSlijed object.consistance_mark end
add_invoice_fee_info(xml)
click to toggle source
# File lib/fiscalizer/serializers/invoice.rb, line 53 def add_invoice_fee_info(xml) return if object.fees.empty? xml['tns'].Naknade do object.fees.each do |fee| xml['tns'].Naknada do xml['tns'].NazivN fee.name xml['tns'].IznosN fee.value end end end end
add_invoice_number_info(xml)
click to toggle source
# File lib/fiscalizer/serializers/invoice.rb, line 41 def add_invoice_number_info(xml) xml['tns'].BrRac do xml['tns'].BrOznRac object.issued_number.to_s xml['tns'].OznPosPr object.issued_office.to_s xml['tns'].OznNapUr object.issued_machine.to_s end end
add_invoice_summary(xml)
click to toggle source
# File lib/fiscalizer/serializers/invoice.rb, line 66 def add_invoice_summary(xml) xml['tns'].IznosUkupno object.summed_total_str xml['tns'].NacinPlac object.payment_method xml['tns'].OibOper object.operator_pin xml['tns'].ZastKod object.security_code xml['tns'].NakDost object.subsequent_delivery end
add_invoice_tax_info(xml)
click to toggle source
# File lib/fiscalizer/serializers/invoice.rb, line 49 def add_invoice_tax_info(xml) Serializers::Tax.new(xml, object).call end
add_paragon_label(xml)
click to toggle source
# File lib/fiscalizer/serializers/invoice.rb, line 74 def add_paragon_label(xml) return if object.paragon_label.nil? xml['tns'].ParagonBrRac object.paragon_label end
add_specific_purpose(xml)
click to toggle source
# File lib/fiscalizer/serializers/invoice.rb, line 79 def add_specific_purpose(xml) return if object.specific_purpose.nil? xml['tns'].SpecNamj object.specific_purpose end
message_id()
click to toggle source
# File lib/fiscalizer/serializers/invoice.rb, line 6 def message_id 'RacunZahtjev' end
raw_xml()
click to toggle source
# File lib/fiscalizer/serializers/invoice.rb, line 10 def raw_xml @raw_xml ||= begin Nokogiri::XML::Builder.new(encoding: 'UTF-8') do |xml| xml['tns'].RacunZahtjev(root_hash) do add_header(xml) add_body(xml) add_signature(xml) end end end end