Class: XmlLaborabrechnungsdaten::Rechnung

Inherits:
Object
  • Object
show all
Includes:
MemberContainer
Defined in:
lib/xml_laborabrechnungsdaten/rechnung.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from MemberContainer

#[], #[]=, included, #initialize, #members

Instance Attribute Details

#abrechnungsbereichString

Returns:

  • (String)


19
# File 'lib/xml_laborabrechnungsdaten/rechnung.rb', line 19

member :abrechnungsbereich, type: String

#auftragsnummerString

Returns:

  • (String)


31
# File 'lib/xml_laborabrechnungsdaten/rechnung.rb', line 31

member :auftragsnummer, type: String

#gesamtbetrag_bruttoString

Returns:

  • (String)


43
# File 'lib/xml_laborabrechnungsdaten/rechnung.rb', line 43

member :gesamtbetrag_brutto, type: String

#gesamtbetrag_nettoString

Returns:

  • (String)


35
# File 'lib/xml_laborabrechnungsdaten/rechnung.rb', line 35

member :gesamtbetrag_netto, type: String

#herstellungsortString

Returns:

  • (String)


15
# File 'lib/xml_laborabrechnungsdaten/rechnung.rb', line 15

member :herstellungsort, type: String

#labor_idString

Returns:

  • (String)


11
# File 'lib/xml_laborabrechnungsdaten/rechnung.rb', line 11

member :labor_id, type: String

#laborlieferdatumString

Returns:

  • (String)


23
# File 'lib/xml_laborabrechnungsdaten/rechnung.rb', line 23

member :laborlieferdatum, type: String

#labornameString

Returns:

  • (String)


7
# File 'lib/xml_laborabrechnungsdaten/rechnung.rb', line 7

member :laborname, type: String

#laborrechnungsnummerString

Returns:

  • (String)


27
# File 'lib/xml_laborabrechnungsdaten/rechnung.rb', line 27

member :laborrechnungsnummer, type: String

#laborsoftwareString

Returns:

  • (String)


51
# File 'lib/xml_laborabrechnungsdaten/rechnung.rb', line 51

member :laborsoftware, type: String

#laborsoftwareherstellerString

Returns:

  • (String)


47
# File 'lib/xml_laborabrechnungsdaten/rechnung.rb', line 47

member :laborsoftwarehersteller, type: String

#laborsoftwareversionString

Returns:

  • (String)


55
# File 'lib/xml_laborabrechnungsdaten/rechnung.rb', line 55

member :laborsoftwareversion, type: String

#mehrwertsteuer_gesamtString

Returns:

  • (String)


39
# File 'lib/xml_laborabrechnungsdaten/rechnung.rb', line 39

member :mehrwertsteuer_gesamt, type: String

#mwst_gruppenArray<MwstGruppe>

Returns List of VAT groups in this invoice.

Returns:

  • (Array<MwstGruppe>)

    List of VAT groups in this invoice



59
# File 'lib/xml_laborabrechnungsdaten/rechnung.rb', line 59

member :mwst_gruppen, type: Array, default: []

Instance Method Details

#add_mwst_gruppe(mwst_gruppe) ⇒ Array<MwstGruppe>

Adds a VAT group to the invoice

Parameters:

Returns:

  • (Array<MwstGruppe>)

    Updated list of VAT groups



64
65
66
67
68
# File 'lib/xml_laborabrechnungsdaten/rechnung.rb', line 64

def add_mwst_gruppe(mwst_gruppe)
  @mwst_gruppen ||= []
  @mwst_gruppen << mwst_gruppe
  @mwst_gruppen
end

#to_xml(xml) ⇒ void

This method returns an undefined value.

Generates XML representation of the invoice

Parameters:

  • xml (Builder::XmlMarkup)

    XML builder instance



73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
# File 'lib/xml_laborabrechnungsdaten/rechnung.rb', line 73

def to_xml(xml)
  attributes = {
    Laborsoftwarehersteller: laborsoftwarehersteller,
    Laborsoftware: laborsoftware,
    Laborsoftwareversion: laborsoftwareversion,
    Laborname: laborname,
    "Labor-ID": labor_id,
    Herstellungsort: herstellungsort,
    Abrechnungsbereich: abrechnungsbereich,
    Laborlieferdatum: laborlieferdatum,
    Laborrechnungsnummer: laborrechnungsnummer,
    Auftragsnummer: auftragsnummer,
    Gesamtbetrag_netto: gesamtbetrag_netto,
    Mehrwertsteuer_gesamt: mehrwertsteuer_gesamt,
    Gesamtbetrag_brutto: gesamtbetrag_brutto
  }.compact # Removes nil values

  xml.Rechnung(attributes) do
    # Add all VAT groups as child elements
    mwst_gruppen.each do |mwst_gruppe|
      mwst_gruppe.to_xml(xml)
    end
  end
end