Project

iesde

0.0
No commit activity in last 3 years
No release in over 3 years
Esta não é uma versão oficial
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 1.8
>= 0
~> 10.0
>= 0
>= 0

Runtime

 Project Readme

Iesde

Interface para acesso ao WebService do IESDE para sistemas Rails. Não se trata de uma ferramenta oficial pois foi desenvolvida por necessidade dos nossos desenvolvedores. Sintam-se livres para contribuir.

Versão

2.0.1 - Seguindo a nova documentação WebService REST. Caso esteja usando o antigo WebService SOAP utilize a documentação da versão 1.1.1

Instalação

gem install iesde -v 2.0.1

Ou no seu Gemfile

gem 'iesde', '~> 2.0.1'

Default Configs

Caso você utilize apenas um usuário do WebService em sua aplicação, seria interessante não passar as chaves de acesso em toda busca.

Você pode configurar num initializer esses parâmetros:

# config/initializers/iesde.rb

Iesde.configure do |c|
  c.user        = "1234567890123456"
  c.password    = "1234567890123456"
  c.ead_api_key = "1234567890123456"
end

Listagem de Disciplinas

Retorna um array de Iesde::Model::Disciplina

disciplinas = Iesde::Model::Disciplina.buscar
=> [#<Iesde::Model::Disciplina>, #<Iesde::Model::Disciplina>, #<Iesde::Model

::Disciplina>, ...]

disciplina = disciplinas.first

disciplina.curso_id
=> "123456"

disciplina.computed
=> "ELABORAÇÃO DE ROTEIROS E PACOTES"

Listagem de Matrículas

Retorna um array de Iesde::Model::Matricula

Matriculas = Iesde::Model::Matricula.buscar
=> [#<Iesde::Model::Matricula>, #<Iesde::Model::Matricula>, #<Iesde::Model::Matricula>, ...]

matricula = matriculas.first

matricula.matricula_id
=> "123456"

matricula.aluno
=> "Fulano da Silva"

matricula.situacao
=> "A"

Criar uma Matrícula

Retorna a Iesde::Model::Matricula criada quando parâmetros enviados corretamente.

params = {
  'CursoID'     => 123456 ,
  'PoloID'      => 123,
  'Nome'        => 'Aluno da Silva',
  'CPF'         => '12345678900',
  'Email'       => 'aluno@email.com',
  'RG'          => '2003000152000',
  'OrgaoRG'     => 'ABC',
  'UFRG'        => 'CE',
  'CEP'         => '60120-140',
  'Endereco'    => 'Rua dos Anzois Pereira',
  'Bairro'      => 'Bairroso',
  'Numero'      => 123,
  'Compl'       => 'Bloco Z apto 500',
  'Telefone'    => '8588889999',
  'Celular'     => '8599999999',
  'DtNascto'    => '06/01/1966',
  'EstadoCivil' => 1,
  'Sexo'        => 'M'
}

matricula = Iesde::Model::Matricula.criar(params)
=> #<Iesde::Model::Matricula>

Se não, uma Iesde::Error::WSError é lançada com a mensagem do erro.

Iesde::Model::Matricula.criar(parametros)
=> CPF inválido! (Iesde::Error::WSError)

Iesde::Model::Matricula.criar(parametros2)
=> Erro: Encontramos o CPF ( 12345678900 ) para o E-MAIL ( usuario@outro.com ) (Iesde::Error::WSError)

Iesde::Model::Matricula.criar(parametros)
=> Curso é um campo obrigatório! (Iesde::Error::WSError)

Nem todos os parâmetros são obrigatórios. Você pode utilizar o método:

criar_com_campos_obrigatorios(id_curso, nome, cpf, email, cep, numero_casa)

que retorna matrícula

  matricula = Iesde::Model::Matricula.criar_com_campos_obrigatorios(123456, 'Fulan Da Silva', '12345678900', 'fulan@email.com','60120-140', 123)
  => #<Iesde::Model::Matricula>

Você pode ativar ou desativar uma matrícula através dos métodos

  matricula = matricula.ativar!
  => #<Iesde::Model::Matricula>

  matricula.situacao
  => "A"

  matricula = matricula.inativar!
  => #<Iesde::Model::Matricula>

  matricula.situacao
  => "I"

Listagem de Aulas

Retorna um array de Iesde::Model::Aula para a matrícula cujo id é passado como parâmetro.

# Pega uma disciplina

disciplina = Iesde::Model::Disciplina.buscar.first
=> #<Iesde::Model::Disciplina>

# Lista suas aulas

disciplina.aulas(matricula.matricula_id)
=> [#<Iesde::Model::Aula>, #<Iesde::Model::Aula>, #<Iesde::Model::Aula>, ...]

Link para o PDF da Disciplina

Recebe o id da matricula e retorna o link para o download do PDF

# Pega uma disciplina

disciplina = Iesde::Model::Disciplina.buscar.first
=> #<Iesde::Model::Disciplina>

# obtem link do pdf

disciplina.pdf(matricula.matricula_id)
=> "https:://linkparao.pdf"

Link para o vídeo da aula

Retorna o link para o video da aula

# Pega uma disciplina

disciplina = Iesde::Model::Disciplina.buscar.first
=> #<Iesde::Model::Disciplina>

# Pega uma aula
aula = disciplina.aulas.first

# obtem link do video

aula.link_video
=> "https:://linkparaovideo.mp4"

Passando chaves de acesso dinamicamente

Todas as funções do sistema permitem que sejam passadas as chaves de acesso de forma dinâmica limitando-se àquela ação.

Ex:

aulas = Iesde::Model::Aula.buscar({
    'MatriculaID'  => 12345,
    'DisciplinaID' => 123,
    config: {
      user:         ENV['IESDE_USER'],
      password:     ENV['IESDE_PWD'],
      ead_api_key:  ENV['EAD_API_KEY']
    }
  })

Exemplos

Você pode ver exemplos de utilização da gem na pasta examples.

Licença

MIT Licence. Copyright (c) 2017 Elore Tecnologia. http://www.elore.com.br

el ft