Sha256: 01a90d910762488874ecff6835d82325c5a580561f02abc3944e8292e8b7b6d7

Contents?: true

Size: 1.94 KB

Versions: 1

Compression:

Stored size: 1.94 KB

Contents

require 'money_s3/builders/base_builder'
require 'money_s3/builders/sklad_type'
require 'money_s3/builders/km_karta_type'
require 'money_s3/builders/vyrobni_cislo'
require 'money_s3/builders/subpol_inv_d_type'

module MoneyS3
  module Builders
    class PolInvDoklType
      include BaseBuilder

      def builder
        root = Ox::Element.new(element_name)

        if attributes.key? :popis
          element = Ox::Element.new('Popis')
          element << attributes[:popis] if attributes[:popis]
          root << element
        end

        if attributes.key? :zkrat
          element = Ox::Element.new('Zkrat')
          element << attributes[:zkrat] if attributes[:zkrat]
          root << element
        end

        if attributes.key? :slupina
          element = Ox::Element.new('Slupina')
          element << attributes[:slupina] if attributes[:slupina]
          root << element
        end

        if attributes.key? :mj
          element = Ox::Element.new('MJ')
          element << attributes[:mj] if attributes[:mj]
          root << element
        end

        if attributes.key? :mn_inv
          element = Ox::Element.new('MnInv')
          element << attributes[:mn_inv] if attributes[:mn_inv]
          root << element
        end

        if attributes.key? :sklad
          root << SkladType.new(attributes[:sklad], 'Sklad').builder
        end

        if attributes.key? :km_karta
          root << KmKartaType.new(attributes[:km_karta], 'KmKarta').builder
        end

        if attributes.key? :seznam_vc
          element = Ox::Element.new('SeznamVC')
          attributes[:seznam_vc].each { |i| element << VyrobniCislo.new(i, 'VyrobniCislo').builder }
          root << element
        end

        if attributes.key? :slozeni
          element = Ox::Element.new('Slozeni')
          attributes[:slozeni].each { |i| element << SubpolInvDType.new(i, 'SubPolozka').builder }
          root << element
        end

        root
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
money_s3-0.5.0 lib/money_s3/builders/pol_inv_dokl_type.rb