Sha256: 20d7e75b87a410af014aa63c70b00e5b250f893c07be15de238d93589c8552bf

Contents?: true

Size: 1.33 KB

Versions: 4

Compression:

Stored size: 1.33 KB

Contents

module Imasei

  module Estruturas

    class Procedimento

      def id_tipo_procedimento(id_tipo_procedimento)
        @id_tipo_procedimento = id_tipo_procedimento
        self
      end

      def especificacao(especificacao)
        @especificacao = especificacao
        self
      end

      def assunto(codigo_estruturado, descricao)
        @assuntos ||= []
        @assuntos << {
          assunto: {
            codigo_estruturado: codigo_estruturado,
            descricao: descricao
          }
        }
        self
      end

      def interessado(sigla, nome)
        @interessados ||= {}
        unless sigla.nil? || nome.empty?
        @interessados << {
          interessado: {
            sigla: sigla,
            nome: nome
          }
        }
        end
        self
      end

      def observacao(observacao)
        @observacao = observacao
        self
      end

      def nivel_de_acesso(nivel_de_acesso)
        @nivel_de_acesso = nivel_de_acesso
        self
      end

      def to_h
        {
          id_tipo_procedimento: @id_tipo_procedimento,
          especificacao: @especificacao,
          assuntos: @assuntos.nil? ? {} : @assuntos,
          interessados: @interessados.nil? ? {} : @interessados,
          observacao: @observacao,
          nivel_de_acesso: @nivel_de_acesso
        }
      end

    end

  end

end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
imasei-0.2.10 lib/imasei/estruturas/procedimento.rb
imasei-0.2.9 lib/imasei/estruturas/procedimento.rb
imasei-0.2.8 lib/imasei/estruturas/procedimento.rb
imasei-0.2.7 lib/imasei/estruturas/procedimento.rb