From Grupo6 Especoo
package sistemaordemservico;
import java.util.ArrayList;
public class Chamados
{
public static Chamados instance = new Chamados();
private ArrayList<Chamado> chamados = new ArrayList<Chamado>();
private static int nroChamado = 1;
public static Chamados getInstance()
{
return instance;
}
private Chamados()
{
}
public Integer inserirChamado(Chamado chamado)
{
System.out.println("Chamados.inserirChamado(Chamado)");
//comando: insert
//tabela: chamados
//retorno: numero do chamado inserido
if(chamado.getIdFunc() == null ||
chamado.getDepartamento() == null ||
chamado.getDescricao() == null)
{
return null;
}
//auto incremento
chamado.setNroChamado(nroChamado++);
//insere o chamado aberto
chamado.setIdStatus(StatusChamado.ABERTO);
chamados.add(chamado);
return chamado.getNroChamado();
}
public void inserirChamadoTeste(Chamado chamado)
{
System.out.println("Chamados.inserirChamadoTeste(Chamado)");
chamados.add(chamado);
}
public void removerChamadoTeste(Chamado chamado)
{
System.out.println("Chamados.removerChamadoTeste(Chamado)");
chamados.remove(chamado);
}
public ArrayList<Chamado> selectChamadosAbertos()
{
System.out.println("Chamados.selectChamadosAbertos()");
//comando: select
//tabela: chamados
//clausula: IdStatus = status de chamado aberto
//retorno: lista de chamados
ArrayList<Chamado> chamadosAbertos = new ArrayList<Chamado>();
for (Chamado chamado: chamados)
{
if (chamado.getIdStatus().equals(StatusChamado.ABERTO))
{
chamadosAbertos.add(chamado);
}
}
if(chamadosAbertos.isEmpty())
{
return null;
}
return chamadosAbertos;
}
public boolean updateChamado(Chamado chamado)
{
System.out.println("Chamados.updateChamado(Chamado)");
//comando: update
//tabela: chamados
//clausula: NroChamado = chamado.getNroChamado()
//retorno: true/false
boolean chamadoAtualizado = false;
for (Chamado chamadoAux: chamados)
{
if (chamadoAux.getNroChamado().equals(chamado.getNroChamado()))
{
chamadoAux = chamado;
chamadoAtualizado = true;
}
}
return chamadoAtualizado;
}
public ArrayList<Chamado> selectChamadosAtendente(Integer idAtend)
{
System.out.println("Chamados.selectChamadosAtendente(Integer)");
//comando: select
//tabela: chamados
//clausula: chamado.getAtendente().getIdAtend() = idAtend && chamado.getIdStatus() != StatusChamado.FINALIZADO
//retorno: lista de chamados
ArrayList<Chamado> chamadosAtendente = new ArrayList<Chamado>();
for (Chamado chamado: chamados)
{
if (chamado.getAtendente().getIdAtend().equals(idAtend) &&
!chamado.getIdStatus().equals(StatusChamado.FINALIZADO))
{
chamadosAtendente.add(chamado);
}
}
if(chamadosAtendente.isEmpty())
{
return null;
}
return chamadosAtendente;
}
public Chamado selectChamado(Integer nroChamado)
{
System.out.println("Chamados.selectChamado(Integer)");
//comando: select
//tabela: chamados
//clausula: chamado.getNroChamado() = nroChamado
//retorno: chamado
for (Chamado chamado: chamados)
{
if (chamado.getNroChamado().equals(nroChamado))
{
return chamado;
}
}
return null;
}
}