package br.com.ec.controller.managedbean;
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.consulta.ParametrosConsulta;
import br.com.ec.core.generic.GenericService;
import br.com.ec.core.util.VerificadorUtil;
import br.com.ec.domain.model.Tributacao;
import br.com.ec.domain.service.tributacao.TributacaoService;
import br.com.ec.web.generic.AbstractBean;
@Named
@Scope
("view")
public class TributacaoBean
extends AbstractBean
<Tributacao
> implements Serializable {
private static final long serialVersionUID = 1L
;
private TributacaoService tributacaoService
;
private Tributacao tributacaoSelecionado
;
private List<Tributacao
> tributacoes
;
private List<Tributacao
> tributacoesAtivas
;
@Inject
public TributacaoBean
(TributacaoService tributacaoService
) {
this.
tributacaoService = tributacaoService
;
}
@
Override
public void preCarregamento
() {
if (VerificadorUtil.
estaNulo(parametrosConsulta
)) {
entidade =
new Tributacao
();
parametrosConsulta =
new ParametrosConsulta
<Tributacao
>();
parametrosConsulta.
setEntidade(entidade
);
}
}
@
Override
public void limparEntidade
() {
Tributacao tributacao =
new Tributacao
();
setEntidade
(tributacao
);
}
@
Override
public GenericService
<Tributacao
> getService
() {
return tributacaoService
;
}
@
Override
public Tributacao getEntidade
() {
return entidade
;
}
@
Override
public Tributacao getId
() {
return getEntidade
();
}
public List<Tributacao
> getTributacoes
() {
if (VerificadorUtil.
estaNuloOuVazio(tributacoes
)) {
setTributacoes
(tributacaoService.
consultarTodos(new Tributacao
()));
}
return tributacoes
;
}
public void setTributacoes
(List<Tributacao
> tributacoes
) {
this.
tributacoes = tributacoes
;
}
public List<Tributacao
> getTributacoesAtivas
() {
if (VerificadorUtil.
estaNuloOuVazio(tributacoesAtivas
)) {
Tributacao tributacaoSelecionado =
new Tributacao
();
tributacaoSelecionado.
setAtivo(true);
setTributacoesAtivas
(tributacaoService.
consultarPassandoEntidade(tributacaoSelecionado,
0, tributacaoService.
obterQuantidadeDeRegistrosPassandoEntidade(tributacaoSelecionado
)));
}
return tributacoesAtivas
;
}
public void setTributacoesAtivas
(List<Tributacao
> tributacoesAtivas
) {
this.
tributacoesAtivas = tributacoesAtivas
;
}
public Tributacao getTributacaoSelecionado
() {
return tributacaoSelecionado
;
}
public void setTributacaoSelecionado
(Tributacao tributacaoSelecionado
) {
this.
tributacaoSelecionado = tributacaoSelecionado
;
}
public void prepararConsulta
() {
setTributacoes
(tributacaoService.
consultarPassandoEntidade(getParametrosConsulta
().
getEntidade(),
0, tributacaoService.
obterQuantidadeDeRegistrosPassandoEntidade(getParametrosConsulta
().
getEntidade())));
}
public List<Tributacao
> listarTributacoes
() {
return tributacaoService.
consultarPassandoEntidade(getParametrosConsulta
().
getEntidade(),
0, tributacaoService.
obterQuantidadeDeRegistrosPassandoEntidade(getParametrosConsulta
().
getEntidade()));
}
public String retornarTributacaoPeloNCM
(String codigoNCM
) {
for (Tributacao tributacao : getTributacoes
()) {
if (tributacao.
getCodigoNCM().
equals(codigoNCM
)) {
return "(" + tributacao.
getCodigoNCM() +
") " + tributacao.
getDescricao();
}
}
return "(" + codigoNCM +
")";
}
/*
public void excluirTributacao(final Tributacao tributacao) {
new VerificadorLancamentoException().tratarIhRelancarExcecaoSemLimparEntidade(new CommandBean() {
public void execute() {
tributacaoService.excluir(tributacao);
setTributacoess(tributacaoService.consultarTodos(new Tributacao()));
LancadorMensagem.lancarSucesso("Tributacao excluĂda com sucesso");
}
});
}
*/
}