package br.gov.al.saude.test.builder;
import static br.gov.al.saude.test.util.ConversorDeTipo.converterStringParaBoolean;
import static br.gov.al.saude.test.util.ConversorDeTipo.converterStringParaInteger;
import static br.gov.al.saude.test.util.ConversorDeTipo.converterStringParaLong;
import static br.gov.al.saude.test.util.StringUtils.valueLong;
import br.gov.al.saude.framework.core.util.VerificadorUtil;
import br.gov.al.saude.scg.model.view.PessoaFisicaView;
import br.gov.al.saude.scs.model.Perfil;
import br.gov.al.saude.scs.model.Turma;
import br.gov.al.saude.scs.model.TurmaParticipante;
import br.gov.al.saude.test.unidade.generic.builder.AbstractEntidadeBuilder;
public class TurmaParticipanteBuilder
extends AbstractEntidadeBuilder
<TurmaParticipante
> {
@
Override
protected void inicializarDadosDefault
() {
entidade =
new TurmaParticipante
();
}
public TurmaParticipanteBuilder comSequencialTurma
(Long sequencial
) {
if(VerificadorUtil.
naoEstaNuloOuVazio(sequencial
)){
Turma turma =
new Turma
();
turma.
setSequencial(sequencial
);
entidade.
setTurma(turma
);
}
return this;
}
public TurmaParticipanteBuilder comSequencialTurma
(String sequencial
) {
if(VerificadorUtil.
naoEstaNuloOuVazio(sequencial
)){
Turma turma =
new Turma
();
turma.
setSequencial(valueLong
(sequencial
));
entidade.
setTurma(turma
);
}
return this;
}
public TurmaParticipanteBuilder comTurma
(Turma turma
) {
if(VerificadorUtil.
naoEstaNulo(turma
)){
entidade.
setTurma(turma
);
}
return this;
}
public TurmaParticipanteBuilder comPessoa
(String sequencialPessoa
) {
if(VerificadorUtil.
naoEstaNuloOuVazio(sequencialPessoa
)){
PessoaFisicaView pessoaFisica =
new PessoaFisicaView
();
pessoaFisica.
setSequencialPessoa(converterStringParaLong
(sequencialPessoa
));
entidade.
setPessoa(pessoaFisica
);
}
return this;
}
public TurmaParticipanteBuilder comPerfil
(String sequencialPerfil
) {
if(VerificadorUtil.
naoEstaNuloOuVazio(sequencialPerfil
)){
Perfil perfil =
new Perfil
();
perfil.
setSequencial(converterStringParaLong
(sequencialPerfil
));
entidade.
setPerfil(perfil
);
}
return this;
}
public TurmaParticipanteBuilder comPerfil
(Perfil perfil
) {
entidade.
setPerfil(perfil
);
return this;
}
public TurmaParticipanteBuilder comIndicadorRemunerado
(String indicadorRemunerado
) {
if(VerificadorUtil.
naoEstaNuloOuVazio(indicadorRemunerado
)){
entidade.
setIndicadorRemunerado(converterStringParaBoolean
(indicadorRemunerado
));
}
return this;
}
public TurmaParticipanteBuilder comIndicadorServidor
(String indicador
) {
if(VerificadorUtil.
naoEstaNuloOuVazio(indicador
)){
entidade.
setIndicadorServidor(converterStringParaBoolean
(indicador
));
}
return this;
}
public TurmaParticipanteBuilder comCargaHorariaEspecifica
(String cargaHorariaEspecifica
) {
if(VerificadorUtil.
naoEstaNuloOuVazio(cargaHorariaEspecifica
)){
entidade.
setCargaHorariaEspecifica(converterStringParaInteger
(cargaHorariaEspecifica
));
}
return this;
}
public TurmaParticipanteBuilder comSequencial
(String sequencial
) {
if(!"null".
equals(sequencial
)){
entidade.
setSequencial(converterStringParaLong
(sequencial
));
}
return this;
}
}