Subversion Repositories Integrator Subversion

Rev

Blame | Last modification | View Log | Download | RSS feed

package br.gov.al.saude.test.builder;

import br.gov.al.saude.rhd.model.Cronograma;
import br.gov.al.saude.rhd.model.GrupoAvaliacao;
import br.gov.al.saude.rhd.model.ServidorAvaliacao;
import br.gov.al.saude.rhd.model.ServidorAvaliacaoId;
import br.gov.al.saude.rhd.model.view.ServidorDadoFuncionalView;
import br.gov.al.saude.rhd.model.view.ServidorView;
import br.gov.al.saude.test.unidade.generic.builder.AbstractEntidadeBuilder;

public class ServidorAvaliacaoBuilder extends AbstractEntidadeBuilder<ServidorAvaliacao> {
       
        public ServidorAvaliacaoBuilder() {}
       
        public ServidorAvaliacaoBuilder(Cronograma cronograma, ServidorView servidorAvaliador, String tipoEfetivoExercicio, GrupoAvaliacao grupoAvaliacao) {
                this.comCronograma(cronograma);
                this.comGrupoAvaliacao(grupoAvaliacao);
                this.comServidor(servidorAvaliador);
                this.comTipoEfetivoExercicio(tipoEfetivoExercicio);
                ServidorAvaliacaoId servidorAvaliacaoId = new ServidorAvaliacaoId();
                servidorAvaliacaoId.setNumeroAno(cronograma.getNumeroAno());
                servidorAvaliacaoId.setSequencialDadoFuncionalServidor(servidorAvaliador.getSequencialDaPessoa());
                this.comServidorAvaliacaoId(servidorAvaliacaoId);
        }
       
        public ServidorAvaliacaoBuilder comServidorAvaliacaoId(ServidorAvaliacaoId servidorAvaliacaoId) {
                entidade.setServidorAvaliacaoId(servidorAvaliacaoId);
                return this;
        }
       
        public ServidorAvaliacaoBuilder comCronograma(Cronograma cronograma) {
                entidade.setCronograma(cronograma);
                entidade.getServidorAvaliacaoId().setNumeroAno(cronograma.getNumeroAno());
                return this;
        }
       
        public ServidorAvaliacaoBuilder comDadoFuncional(ServidorDadoFuncionalView dadoFuncional) {
                entidade.setServidorDadoFuncional(dadoFuncional);
                entidade.getServidorAvaliacaoId().setSequencialDadoFuncionalServidor(dadoFuncional.getSequencial());
                return this;
        }

        public ServidorAvaliacaoBuilder comServidor(ServidorView servidor) {
                entidade.getServidorDadoFuncional().setServidorView(servidor);
                return this;
        }
       
        public ServidorAvaliacaoBuilder comTipoEfetivoExercicio(String tipoEfetivoExercicio) {
                entidade.setTipoEfetivoExercicio(tipoEfetivoExercicio);
                return this;
        }
       
        public ServidorAvaliacaoBuilder comGrupoAvaliacao(GrupoAvaliacao grupoAvaliacao) {
                entidade.setGrupoAvaliacao(grupoAvaliacao);
                return this;
        }
       
        public ServidorAvaliacaoBuilder comDescricaoJustificativa(String justificativa) {
                entidade.setDescricaoJustificativa(justificativa);
                return this;
        }
       
        @Override
        protected void inicializarDadosDefault() {
                entidade = new ServidorAvaliacao();
                entidade.setServidorAvaliacaoId(new ServidorAvaliacaoId());
        }

       

}