package br.com.ec.controller;
import java.io.Serializable;
import java.util.List;
import javax.inject.Inject;
import javax.inject.Named;
import org.springframework.context.annotation.Scope;
import br.com.ec.core.generic.GenericService;
import br.com.ec.domain.dto.FuncionarioEventoDTO;
import br.com.ec.domain.dto.VigenciaDTO;
import br.com.ec.domain.model.FuncionarioEvento;
import br.com.ec.domain.model.tipos.TipoFuncionarioEvento;
import br.com.ec.domain.model.tipos.TipoFuncionarioEventoStatus;
import br.com.ec.domain.service.FuncionarioEventoService;
import br.com.ec.domain.service.UsuarioService;
import br.com.ec.web.exception.VerificadorLancamentoException;
import br.com.ec.web.exception.VerificadorLancamentoException.CommandBean;
import br.com.ec.web.generic.AbstractBean;
import br.com.ec.web.message.LancadorMensagem;
import br.com.ec.web.util.TipoOperacao;
@Named
@Scope
("view")
public class FuncionarioEventoBean
extends AbstractBean
<FuncionarioEvento
> implements Serializable {
private static final long serialVersionUID = 1L
;
private FuncionarioEventoService funcionarioEventoService
;
private UsuarioService usuarioService
;
private FuncionarioEventoDTO entidadeDTO =
new FuncionarioEventoDTO
();
private VigenciaDTO vigenciaDTO
;
private List<FuncionarioEventoDTO
> eventosDTO
;
@Inject
public FuncionarioEventoBean
(FuncionarioEventoService funcionarioEventoService, UsuarioService usuarioService
) {
this.
funcionarioEventoService = funcionarioEventoService
;
this.
usuarioService = usuarioService
;
}
@
Override
public void preCarregamento
() {
limparEntidade
();
}
@
Override
public void limparEntidade
() {
setEntidade
(new FuncionarioEvento
());
}
@
Override
public GenericService
<FuncionarioEvento
> getService
() {
return funcionarioEventoService
;
}
@
Override
public FuncionarioEvento getEntidade
() {
return entidade
;
}
@
Override
public void preConsultar
() {
setTipoOperacao
(TipoOperacao.
CONSULTAR);
}
@
Override
public FuncionarioEvento getId
() {
return getEntidade
();
}
public TipoFuncionarioEvento
[] getTiposFuncionarioEvento
() {
return TipoFuncionarioEvento.
values();
}
public TipoFuncionarioEventoStatus
[] getTiposFuncionarioEventoStatus
() {
return TipoFuncionarioEventoStatus.
values();
}
/*************************************************/
public FuncionarioEventoDTO getEntidadeDTO
() {
return entidadeDTO
;
}
public void setEntidadeDTO
(FuncionarioEventoDTO entidadeDTO
) {
this.
entidadeDTO = entidadeDTO
;
}
public VigenciaDTO getVigenciaDTO
() {
return vigenciaDTO
;
}
public void setVigenciaDTO
(VigenciaDTO vigenciaDTO
) {
this.
vigenciaDTO = vigenciaDTO
;
}
public List<FuncionarioEventoDTO
> getEventosDTO
() {
return eventosDTO
;
}
public void setEventosDTO
(List<FuncionarioEventoDTO
> eventosDTO
) {
this.
eventosDTO = eventosDTO
;
}
/*************************************************/
public void consultarEventos
() {
setEventosDTO
(funcionarioEventoService.
consultarEventos(getVigenciaDTO
(), getEntidadeDTO
()));
}
}