lib/money_s3/builders/firma.rb in money_s3-0.4.0 vs lib/money_s3/builders/firma.rb in money_s3-0.5.0

- old
+ new

@@ -11,73 +11,275 @@ module MoneyS3 module Builders class Firma include BaseBuilder - attr_accessor :guid, :nazev, :skupina_id, :obch_nazev, :fakt_nazev, :e_mail, :www, :spojeni, :ico, :dic, :dicsk, :platce_dph, :fyz_osoba, :kod_dan_ur, :banka, :ucet, :kod_banky, :v_symb, :spec_sym, :cinnosti, :adr_klice, :ceny, :ceniky, :kredit, :kredit_val, :splat_poh, :splat_zav, :spl_poh_dni, :spl_zav_dni, :sleva, :flag_sleva, :mail, :zprava, :poznamka, :kod_partn, :adresa, :obch_adresa, :fakt_adresa, :tel, :fax, :mobil, :isdoc, :eshop, :skupina, :vlajky, :osoba, :seznam_bank_spojeni, :dokumenty - def builder root = Ox::Element.new(element_name) - root << (Ox::Element.new('GUID') << guid) if guid - root << (Ox::Element.new('Nazev') << nazev) if nazev - root << (Ox::Element.new('SkupinaID') << skupina_id) if skupina_id - root << (Ox::Element.new('ObchNazev') << obch_nazev) if obch_nazev - root << (Ox::Element.new('FaktNazev') << fakt_nazev) if fakt_nazev - root << (Ox::Element.new('EMail') << e_mail) if e_mail - root << (Ox::Element.new('WWW') << www) if www - root << (Ox::Element.new('Spojeni') << spojeni) if spojeni - root << (Ox::Element.new('ICO') << ico) if ico - root << (Ox::Element.new('DIC') << dic) if dic - root << (Ox::Element.new('DICSK') << dicsk) if dicsk - root << (Ox::Element.new('PlatceDPH') << platce_dph) if platce_dph - root << (Ox::Element.new('FyzOsoba') << fyz_osoba) if fyz_osoba - root << (Ox::Element.new('KodDanUr') << kod_dan_ur) if kod_dan_ur - root << (Ox::Element.new('Banka') << banka) if banka - root << (Ox::Element.new('Ucet') << ucet) if ucet - root << (Ox::Element.new('KodBanky') << kod_banky) if kod_banky - root << (Ox::Element.new('VSymb') << v_symb) if v_symb - root << (Ox::Element.new('SpecSym') << spec_sym) if spec_sym - root << (Ox::Element.new('Cinnosti') << cinnosti) if cinnosti - root << (Ox::Element.new('AdrKlice') << adr_klice) if adr_klice - root << (Ox::Element.new('Ceny') << ceny) if ceny - root << (Ox::Element.new('Ceniky') << ceniky) if ceniky - root << (Ox::Element.new('Kredit') << kredit) if kredit - root << (Ox::Element.new('KreditVal') << kredit_val) if kredit_val - root << (Ox::Element.new('SplatPoh') << splat_poh) if splat_poh - root << (Ox::Element.new('SplatZav') << splat_zav) if splat_zav - root << (Ox::Element.new('SplPohDni') << spl_poh_dni) if spl_poh_dni - root << (Ox::Element.new('SplZavDni') << spl_zav_dni) if spl_zav_dni - root << (Ox::Element.new('Sleva') << sleva) if sleva - root << (Ox::Element.new('FlagSleva') << flag_sleva) if flag_sleva - root << (Ox::Element.new('Mail') << mail) if mail - root << (Ox::Element.new('Zprava') << zprava) if zprava - root << (Ox::Element.new('Poznamka') << poznamka) if poznamka - root << (Ox::Element.new('KodPartn') << kod_partn) if kod_partn - root << AdresaType.new(adresa, 'Adresa').builder if adresa - root << AdresaType.new(obch_adresa, 'ObchAdresa').builder if obch_adresa - root << AdresaType.new(fakt_adresa, 'FaktAdresa').builder if fakt_adresa - root << TelefonType.new(tel, 'Tel').builder if tel - root << TelefonType.new(fax, 'Fax').builder if fax - root << TelefonType.new(mobil, 'Mobil').builder if mobil - root << ISDOC.new(isdoc, 'ISDOC').builder if isdoc - root << Eshop.new(eshop, 'eshop').builder if eshop - root << SkupinaFiremType.new(skupina, 'Skupina').builder if skupina - root << Vlajky.new(vlajky, 'Vlajky').builder if vlajky + if attributes.key? :guid + element = Ox::Element.new('GUID') + element << attributes[:guid] if attributes[:guid] + root << element + end - if osoba - osoba.each { |i| root << OsobaType.new(i, 'Osoba').builder } + if attributes.key? :nazev + element = Ox::Element.new('Nazev') + element << attributes[:nazev] if attributes[:nazev] + root << element end - if seznam_bank_spojeni + if attributes.key? :skupina_id + element = Ox::Element.new('SkupinaID') + element << attributes[:skupina_id] if attributes[:skupina_id] + root << element + end + + if attributes.key? :obch_nazev + element = Ox::Element.new('ObchNazev') + element << attributes[:obch_nazev] if attributes[:obch_nazev] + root << element + end + + if attributes.key? :fakt_nazev + element = Ox::Element.new('FaktNazev') + element << attributes[:fakt_nazev] if attributes[:fakt_nazev] + root << element + end + + if attributes.key? :e_mail + element = Ox::Element.new('EMail') + element << attributes[:e_mail] if attributes[:e_mail] + root << element + end + + if attributes.key? :www + element = Ox::Element.new('WWW') + element << attributes[:www] if attributes[:www] + root << element + end + + if attributes.key? :spojeni + element = Ox::Element.new('Spojeni') + element << attributes[:spojeni] if attributes[:spojeni] + root << element + end + + if attributes.key? :ico + element = Ox::Element.new('ICO') + element << attributes[:ico] if attributes[:ico] + root << element + end + + if attributes.key? :dic + element = Ox::Element.new('DIC') + element << attributes[:dic] if attributes[:dic] + root << element + end + + if attributes.key? :dicsk + element = Ox::Element.new('DICSK') + element << attributes[:dicsk] if attributes[:dicsk] + root << element + end + + if attributes.key? :platce_dph + element = Ox::Element.new('PlatceDPH') + element << attributes[:platce_dph] if attributes[:platce_dph] + root << element + end + + if attributes.key? :fyz_osoba + element = Ox::Element.new('FyzOsoba') + element << attributes[:fyz_osoba] if attributes[:fyz_osoba] + root << element + end + + if attributes.key? :kod_dan_ur + element = Ox::Element.new('KodDanUr') + element << attributes[:kod_dan_ur] if attributes[:kod_dan_ur] + root << element + end + + if attributes.key? :banka + element = Ox::Element.new('Banka') + element << attributes[:banka] if attributes[:banka] + root << element + end + + if attributes.key? :ucet + element = Ox::Element.new('Ucet') + element << attributes[:ucet] if attributes[:ucet] + root << element + end + + if attributes.key? :kod_banky + element = Ox::Element.new('KodBanky') + element << attributes[:kod_banky] if attributes[:kod_banky] + root << element + end + + if attributes.key? :v_symb + element = Ox::Element.new('VSymb') + element << attributes[:v_symb] if attributes[:v_symb] + root << element + end + + if attributes.key? :spec_sym + element = Ox::Element.new('SpecSym') + element << attributes[:spec_sym] if attributes[:spec_sym] + root << element + end + + if attributes.key? :cinnosti + element = Ox::Element.new('Cinnosti') + element << attributes[:cinnosti] if attributes[:cinnosti] + root << element + end + + if attributes.key? :adr_klice + element = Ox::Element.new('AdrKlice') + element << attributes[:adr_klice] if attributes[:adr_klice] + root << element + end + + if attributes.key? :ceny + element = Ox::Element.new('Ceny') + element << attributes[:ceny] if attributes[:ceny] + root << element + end + + if attributes.key? :ceniky + element = Ox::Element.new('Ceniky') + element << attributes[:ceniky] if attributes[:ceniky] + root << element + end + + if attributes.key? :kredit + element = Ox::Element.new('Kredit') + element << attributes[:kredit] if attributes[:kredit] + root << element + end + + if attributes.key? :kredit_val + element = Ox::Element.new('KreditVal') + element << attributes[:kredit_val] if attributes[:kredit_val] + root << element + end + + if attributes.key? :splat_poh + element = Ox::Element.new('SplatPoh') + element << attributes[:splat_poh] if attributes[:splat_poh] + root << element + end + + if attributes.key? :splat_zav + element = Ox::Element.new('SplatZav') + element << attributes[:splat_zav] if attributes[:splat_zav] + root << element + end + + if attributes.key? :spl_poh_dni + element = Ox::Element.new('SplPohDni') + element << attributes[:spl_poh_dni] if attributes[:spl_poh_dni] + root << element + end + + if attributes.key? :spl_zav_dni + element = Ox::Element.new('SplZavDni') + element << attributes[:spl_zav_dni] if attributes[:spl_zav_dni] + root << element + end + + if attributes.key? :sleva + element = Ox::Element.new('Sleva') + element << attributes[:sleva] if attributes[:sleva] + root << element + end + + if attributes.key? :flag_sleva + element = Ox::Element.new('FlagSleva') + element << attributes[:flag_sleva] if attributes[:flag_sleva] + root << element + end + + if attributes.key? :mail + element = Ox::Element.new('Mail') + element << attributes[:mail] if attributes[:mail] + root << element + end + + if attributes.key? :zprava + element = Ox::Element.new('Zprava') + element << attributes[:zprava] if attributes[:zprava] + root << element + end + + if attributes.key? :poznamka + element = Ox::Element.new('Poznamka') + element << attributes[:poznamka] if attributes[:poznamka] + root << element + end + + if attributes.key? :kod_partn + element = Ox::Element.new('KodPartn') + element << attributes[:kod_partn] if attributes[:kod_partn] + root << element + end + + if attributes.key? :adresa + root << AdresaType.new(attributes[:adresa], 'Adresa').builder + end + + if attributes.key? :obch_adresa + root << AdresaType.new(attributes[:obch_adresa], 'ObchAdresa').builder + end + + if attributes.key? :fakt_adresa + root << AdresaType.new(attributes[:fakt_adresa], 'FaktAdresa').builder + end + + if attributes.key? :tel + root << TelefonType.new(attributes[:tel], 'Tel').builder + end + + if attributes.key? :fax + root << TelefonType.new(attributes[:fax], 'Fax').builder + end + + if attributes.key? :mobil + root << TelefonType.new(attributes[:mobil], 'Mobil').builder + end + + if attributes.key? :isdoc + root << ISDOC.new(attributes[:isdoc], 'ISDOC').builder + end + + if attributes.key? :eshop + root << Eshop.new(attributes[:eshop], 'eshop').builder + end + + if attributes.key? :skupina + root << SkupinaFiremType.new(attributes[:skupina], 'Skupina').builder + end + + if attributes.key? :vlajky + root << Vlajky.new(attributes[:vlajky], 'Vlajky').builder + end + + if attributes.key? :osoba + attributes[:osoba].each { |i| root << OsobaType.new(i, 'Osoba').builder } + end + + if attributes.key? :seznam_bank_spojeni element = Ox::Element.new('SeznamBankSpojeni') - seznam_bank_spojeni.each { |i| element << BankSpojeniType.new(i, 'BankSpojeni').builder } + attributes[:seznam_bank_spojeni].each { |i| element << BankSpojeniType.new(i, 'BankSpojeni').builder } root << element end - if dokumenty + if attributes.key? :dokumenty element = Ox::Element.new('Dokumenty') - dokumenty.map { |i| Ox::Element.new('Dokument') << i }.each { |i| element << i } + attributes[:dokumenty].map { |i| Ox::Element.new('Dokument') << i }.each { |i| element << i } root << element end root end \ No newline at end of file