Package instituicao

Source Code of instituicao.Turma

package instituicao;

import java.util.ArrayList;
import java.util.List;

import org.jdom2.Element;

/**Classe turma contem os dados de uma turma( nome e ano de ocorrência), além da lista de alunos e da lista de testes relacionados a esta turma.
*
* @author Equipe DSSkywalker.
*
*/
public class Turma {
 
  private String nome;
  private String ano;
  private ArrayList<Aluno> alunos;
  private ArrayList<String> testes;
 
  public Turma(){
    alunos = new ArrayList<Aluno>();
    testes = new ArrayList<String>();
  }
 
  public Turma(String nome, String ano){
    this.nome = nome;
    this.ano = ano;
    alunos = new ArrayList<Aluno>();
    testes = new ArrayList<String>();
  }
 
  public String getNome(){
    return nome;
  }
 
  public void setNome(String nome){
    this.nome = nome;
  }
 
  public String getAno(){
    return ano;
  }
 
  public void setAno(String ano){
    this.ano = ano;
  }
 
  public String[] getAlunos(){
    String[] retornaAlunos = new String[ alunos.size() ];
    int a = 0;
    for(Aluno aluno : alunos){
      retornaAlunos[a] = aluno.getNome();
      a++;
    }
    return retornaAlunos;
  }
 
  public Aluno getAluno(int id){
    return alunos.get(id);
  }

  public void setAlunos(ArrayList<Aluno> alunos){
    this.alunos.clear();
    for(Aluno aluno : alunos){
      this.alunos.add(aluno);
    }
  }
 
  public ArrayList<Aluno> getListaAlunos(){
    return this.alunos;
  }
 
  public void excluirAluno(String identificador){
    alunos.remove(Integer.parseInt(identificador));
  }
 
  public boolean criarNovoAluno(String nome, String dataNascimento, String nomeMae, String nomePai, String endereco, String rg, String cpf, String genero){
    for(Aluno aluno:alunos){
      if(aluno.getNome().equals(nome) && aluno.getNomeMae().equals(nomeMae) && aluno.getDataNascimento().equals(dataNascimento)){
        return false;
      }
    }
    Aluno aluno = new Aluno(nome, dataNascimento, nomeMae, nomePai, endereco, rg, cpf, genero);
    for(String teste : testes){
      String nomeTeste = teste.substring(0, teste.length() - 11);
      String dataTeste = teste.substring(teste.length() - 10);
      aluno.criarMedidasCrescimento(dataTeste, nomeTeste);
      aluno.criarTesteAptEsportivo(dataTeste, nomeTeste);
      aluno.criarTesteAptSaude(dataTeste, nomeTeste);
    }
    alunos.add(aluno);
    return true;
  }
 
  public boolean criarNovoTeste(String data, String nome){
    String[] data_formatada = data.split("/");
    if( Integer.parseInt(data_formatada[2]) < 2000 || Integer.parseInt(data_formatada[1]) > 12 || Integer.parseInt(data_formatada[0]) > 31){
      return false;
    };
    String novo_teste = nome+" "+data;
    for(String teste: testes){
      if(novo_teste.equals(teste)){
        return false;
      }
    }
    for(Aluno aluno : alunos){
      aluno.criarMedidasCrescimento(data, nome);
      aluno.criarTesteAptEsportivo(data, nome);
      aluno.criarTesteAptSaude(data, nome);
    }
    testes.add(nome + " " + data);
    return true;
  }
 
  public void excluirTeste(int id){
    int i;
    for(i = 0; i< alunos.size(); i++){
      alunos.get(i).excluirTeste(id);
    }
    testes.remove(id);
  }
 
  public String[] getTestes(){
    String[] retornaTestes = new String[ testes.size() ];
    int a = 0;
   
    for(String teste : testes){
      retornaTestes[a] = teste;
      a++;
    }
    return retornaTestes;
  }
 
  public int getNumeroDeAlunos() {
    return alunos.size();
  }
 
  public boolean setTeste(String nome, String data){
    testes.add(nome + " " + data);
    return true;
  }
 
  public boolean importarTurmaXml(List<Element> alunosDaTurma){
    String nomeAluno, dataNascimento, nomeMae, nomePai, endereco, registroGeral, cadPessoaFisica, genero;
    List<Element> testesDoAluno = null;
    ArrayList<Aluno> alunosDoXml = new ArrayList<Aluno>();
    Aluno instAluno;
   
    for(Element alunoTag: alunosDaTurma){
      nomeAluno = alunoTag.getChildText("nome");
      dataNascimento = alunoTag.getChildText("dataNascimento");
      nomeMae = alunoTag.getChildText("nomeMae");
      nomePai = alunoTag.getChildText("nomePai");
      endereco = alunoTag.getChildText("endereco");
      registroGeral = alunoTag.getChildText("registroGeral");
      cadPessoaFisica = alunoTag.getChildText("cadPessoaFisica");
      genero = alunoTag.getChildText("genero");
     
      instAluno = new Aluno(nomeAluno,
           dataNascimento,
           nomeMae,
           nomePai,
           endereco,
           registroGeral,
           cadPessoaFisica,
           genero);
   
      testesDoAluno = alunoTag.getChildren("teste");
      testes.clear();
      for(Element identificacaoTeste: testesDoAluno){
        setTeste(identificacaoTeste.getChildText("nome"), identificacaoTeste.getChildText("data"));
      }
      instAluno.importarAlunoXml(testesDoAluno);
     
      alunosDoXml.add(instAluno);
    }
    setAlunos(alunosDoXml);
    return true;
  }
 
  public Element exportarTurmaXml(){
    int i;
    Element turmaXML = new Element("turma");
   
    Element turmaNome = new Element("nome");
    turmaNome.setText(nome);
   
    Element turmaAno = new Element("ano");
    turmaAno.setText(ano);
   
    turmaXML.addContent(turmaNome);
    turmaXML.addContent(turmaAno);
   
    if(getNumeroDeAlunos() > 0){
      for(i=0;i<getNumeroDeAlunos();i++){
        Element alunoXML;
        alunoXML = alunos.get(i).exportarAlunoXML();
        turmaXML.addContent(alunoXML);
      }
    }
    return turmaXML;
  }
}
TOP

Related Classes of instituicao.Turma

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.