package br.com.ec.controller.managedbean;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import javax.faces.context.FacesContext;
import javax.inject.Inject;
import javax.inject.Named;
import javax.servlet.ServletContext;
import org.primefaces.model.DefaultStreamedContent;
import org.primefaces.model.StreamedContent;
import org.springframework.context.annotation.Scope;
import br.com.ec.core.consulta.ParametrosConsulta;
import br.com.ec.core.contantes.ContantesUtil;
import br.com.ec.core.exception.NegocioException;
import br.com.ec.core.generic.GenericService;
import br.com.ec.core.util.ArquivoUtil;
import br.com.ec.core.util.StringUtil;
import br.com.ec.core.util.TipoExtensao;
import br.com.ec.core.util.VerificadorUtil;
import br.com.ec.domain.dto.ParametrosConsultaVendasDTO;
import br.com.ec.domain.dto.ParametrosConsultaVendasVivoDTO;
import br.com.ec.domain.dto.RankingVendedorDTO;
import br.com.ec.domain.model.Avaliacao;
import br.com.ec.domain.model.AvaliacaoFuncionario;
import br.com.ec.domain.model.AvaliacaoFuncionarioItemAvaliacao;
import br.com.ec.domain.model.AvaliacaoLoja;
import br.com.ec.domain.model.Funcionario;
import br.com.ec.domain.model.ItemAvaliacao;
import br.com.ec.domain.model.Loja;
import br.com.ec.domain.model.Pessoa;
import br.com.ec.domain.model.Vendedor;
import br.com.ec.domain.model.Vigencia;
import br.com.ec.domain.model.tipos.TipoComissionamento;
import br.com.ec.domain.model.tipos.TipoFaixaComissao;
import br.com.ec.domain.service.avaliacao.AvaliacaoService;
import br.com.ec.domain.service.avaliacaofuncionario.AvaliacaoFuncionarioService;
import br.com.ec.domain.service.avaliacaoloja.AvaliacaoLojaService;
import br.com.ec.domain.service.itemavaliacao.ItemAvaliacaoService;
import br.com.ec.domain.service.venda.VendaService;
import br.com.ec.domain.service.vendavivo.VendaVivoService;
import br.com.ec.domain.service.vendedor.VendedorService;
import br.com.ec.domain.shared.ConstantesSEC;
import br.com.ec.relatorio.util.RelatorioUtils;
import br.com.ec.web.exception.VerificadorLancamentoException;
import br.com.ec.web.exception.VerificadorLancamentoException.CommandBean;
import br.com.ec.web.exception.VerificadorLancamentoException.CommandRelatorioStreamedContent;
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 AvaliacaoBean
extends AbstractBean
<Avaliacao
> implements Serializable {
private static final long serialVersionUID = 1L
;
private AvaliacaoService avaliacaoService
;
private AvaliacaoFuncionarioService avaliacaoFuncionarioService
;
private AvaliacaoLojaService avaliacaoLojaService
;
private ItemAvaliacaoService itemAvaliacaoService
;
private VendedorService vendedorService
;
private VendaService vendaService
;
private VendaVivoService vendaVivoService
;
private Avaliacao avaliacaoSelecionado
;
private AvaliacaoFuncionario participanteSelecionado
;
private AvaliacaoFuncionarioItemAvaliacao itemSelecionado
;
private AvaliacaoLoja lojaParticipanteSelecionada
;
private Avaliacao avaliacaoSelecionadaParaDuplicacao
;
private Vigencia vigenciaSelecionadaParaDuplicacao
;
private List<Avaliacao
> avaliacoesDivulgadas
;
private String reavaliacao
;
@Inject
public AvaliacaoBean
(AvaliacaoService avaliacaoService, AvaliacaoFuncionarioService avaliacaoFuncionarioService, AvaliacaoLojaService avaliacaoLojaService,
ItemAvaliacaoService itemAvaliacaoService, VendedorService vendedorService, VendaService vendaService, VendaVivoService vendaVivoService
) {
this.
avaliacaoService = avaliacaoService
;
this.
avaliacaoFuncionarioService = avaliacaoFuncionarioService
;
this.
avaliacaoLojaService = avaliacaoLojaService
;
this.
itemAvaliacaoService = itemAvaliacaoService
;
this.
vendedorService = vendedorService
;
this.
vendaService = vendaService
;
this.
vendaVivoService = vendaVivoService
;
}
@
Override
public void preCarregamento
() {
parametrosConsulta =
new ParametrosConsulta
<Avaliacao
>();
parametrosConsulta.
setEntidade(new Avaliacao
());
setParticipanteSelecionado
(new AvaliacaoFuncionario
());
}
@
Override
public void limparEntidade
() {
setEntidade
(new Avaliacao
());
}
@
Override
public GenericService
<Avaliacao
> getService
() {
return avaliacaoService
;
}
@
Override
public Avaliacao getEntidade
() {
return entidade
;
}
@
Override
public Avaliacao getId
() {
return getEntidade
();
}
public Avaliacao getAvaliacaoSelecionado
() {
return avaliacaoSelecionado
;
}
public void setAvaliacaoSelecionado
(Avaliacao avaliacaoSelecionado
) {
this.
avaliacaoSelecionado = avaliacaoSelecionado
;
}
public AvaliacaoFuncionario getParticipanteSelecionado
() {
return participanteSelecionado
;
}
public void setParticipanteSelecionado
(AvaliacaoFuncionario participanteSelecionado
) {
this.
participanteSelecionado = participanteSelecionado
;
}
public AvaliacaoFuncionarioItemAvaliacao getItemSelecionado
() {
return itemSelecionado
;
}
public void setItemSelecionado
(AvaliacaoFuncionarioItemAvaliacao itemSelecionado
) {
this.
itemSelecionado = itemSelecionado
;
}
public AvaliacaoLoja getLojaParticipanteSelecionada
() {
return lojaParticipanteSelecionada
;
}
public void setLojaParticipanteSelecionada
(AvaliacaoLoja lojaParticipanteSelecionada
) {
this.
lojaParticipanteSelecionada = lojaParticipanteSelecionada
;
}
public Avaliacao getAvaliacaoSelecionadaParaDuplicacao
() {
return avaliacaoSelecionadaParaDuplicacao
;
}
public void setAvaliacaoSelecionadaParaDuplicacao
(Avaliacao avaliacaoSelecionadaParaDuplicacao
) {
this.
avaliacaoSelecionadaParaDuplicacao = avaliacaoSelecionadaParaDuplicacao
;
}
public Vigencia getVigenciaSelecionadaParaDuplicacao
() {
return vigenciaSelecionadaParaDuplicacao
;
}
public void setVigenciaSelecionadaParaDuplicacao
(Vigencia vigenciaSelecionadaParaDuplicacao
) {
this.
vigenciaSelecionadaParaDuplicacao = vigenciaSelecionadaParaDuplicacao
;
}
public List<Avaliacao
> getAvaliacoesDivulgadas
() {
if (VerificadorUtil.
estaNulo(avaliacoesDivulgadas
)) {
setAvaliacoesDivulgadas
(consultarAvaliacoesDivulgadas
());
}
return avaliacoesDivulgadas
;
}
public void setAvaliacoesDivulgadas
(List<Avaliacao
> avaliacoesDivulgadas
) {
this.
avaliacoesDivulgadas = avaliacoesDivulgadas
;
}
public String getReavaliacao
() {
return reavaliacao
;
}
public void setReavaliacao
(String reavaliacao
) {
this.
reavaliacao = StringUtil.
setarUpperCaseComTrim(reavaliacao
);
}
/***************************************************************/
public TipoFaixaComissao
[] getTiposFaixaComissao
() {
return TipoFaixaComissao.
values();
}
@
Override
public void preDetalhar
(Avaliacao avaliacao
) {
detalhar
(avaliacao
);
setTipoOperacao
(TipoOperacao.
DETALHAR);
}
@
Override
public void preAlterar
(Avaliacao avaliacao
) {
detalhar
(avaliacao
);
setTipoOperacao
(TipoOperacao.
ALTERAR);
}
public void detalhar
(Avaliacao avaliacao
) {
setEntidade
(avaliacaoService.
detalhar(avaliacao
));
}
public void selecionarParticipante
(AvaliacaoFuncionario avaliacaoFuncionario
) {
setParticipanteSelecionado
(avaliacaoFuncionarioService.
detalhar(avaliacaoFuncionario
));
setItemSelecionado
(new AvaliacaoFuncionarioItemAvaliacao
());
getParticipanteSelecionado
().
setValorTotalVendido(consultarVendasDoPeriodo
(getParticipanteSelecionado
()));
getParticipanteSelecionado
().
setValorTotalVendidoVivo(consultarVendasVivoDoPeriodo
(getParticipanteSelecionado
()));
}
public void selecionarParticipante
(Pessoa pessoa, Avaliacao avaliacao
) {
setParticipanteSelecionado
(avaliacaoFuncionarioService.
detalhar(pessoa, avaliacao
));
setItemSelecionado
(new AvaliacaoFuncionarioItemAvaliacao
());
getParticipanteSelecionado
().
setValorTotalVendido(consultarVendasDoPeriodo
(getParticipanteSelecionado
()));
getParticipanteSelecionado
().
setValorTotalVendidoVivo(consultarVendasVivoDoPeriodo
(getParticipanteSelecionado
()));
}
public void selecionarLojaParticipante
(AvaliacaoLoja avaliacaoLoja
) {
setLojaParticipanteSelecionada
(avaliacaoLojaService.
detalhar(avaliacaoLoja
));
getLojaParticipanteSelecionada
().
setValorTotalVendido(consultarVendasDoPeriodo
(getLojaParticipanteSelecionada
()));
}
public void selecionarLojaParticipante
(Loja loja, Avaliacao avaliacao
) {
setLojaParticipanteSelecionada
(avaliacaoLojaService.
detalhar(loja, avaliacao
));
getLojaParticipanteSelecionada
().
setValorTotalVendido(consultarVendasDoPeriodo
(getLojaParticipanteSelecionada
()));
}
private Double consultarVendasDoPeriodo
(AvaliacaoFuncionario avaliacaoFuncionario
) {
Vendedor vendedor = vendedorService.
consultarVendedorPorPessoa(avaliacaoFuncionario.
getFuncionario().
getPessoa());
ParametrosConsultaVendasDTO parametrosConsultaVendasDTO =
new ParametrosConsultaVendasDTO
();
parametrosConsultaVendasDTO.
setVendedor(vendedor
);
parametrosConsultaVendasDTO.
setDataInicial(avaliacaoFuncionario.
getAvaliacao().
getVigencia().
getDataInicio());
parametrosConsultaVendasDTO.
setDataFinal(avaliacaoFuncionario.
getAvaliacao().
getVigencia().
getDataFim());
parametrosConsultaVendasDTO.
setIndicadorComissionado(true);
return vendaService.
obterValorTotalBrutoDeVendasPorLojaEePeriodo(parametrosConsultaVendasDTO
);
}
private Double consultarVendasVivoDoPeriodo
(AvaliacaoFuncionario avaliacaoFuncionario
) {
Vendedor vendedor = vendedorService.
consultarVendedorPorPessoa(avaliacaoFuncionario.
getFuncionario().
getPessoa());
ParametrosConsultaVendasVivoDTO parametrosConsultaVendasVivoDTO =
new ParametrosConsultaVendasVivoDTO
();
parametrosConsultaVendasVivoDTO.
setVendedor(vendedor
);
parametrosConsultaVendasVivoDTO.
setDataInicial(avaliacaoFuncionario.
getAvaliacao().
getVigencia().
getDataInicio());
parametrosConsultaVendasVivoDTO.
setDataFinal(avaliacaoFuncionario.
getAvaliacao().
getVigencia().
getDataFim());
return vendaVivoService.
obterValorTotalBrutoDeVendasPorLojaEePeriodo(parametrosConsultaVendasVivoDTO
);
}
private Double consultarVendasDoPeriodo
(AvaliacaoLoja avaliacaoLoja
) {
ParametrosConsultaVendasDTO parametrosConsultaVendasDTO =
new ParametrosConsultaVendasDTO
();
parametrosConsultaVendasDTO.
setLoja(avaliacaoLoja.
getLoja());
parametrosConsultaVendasDTO.
setDataInicial(avaliacaoLoja.
getAvaliacao().
getVigencia().
getDataInicio());
parametrosConsultaVendasDTO.
setDataFinal(avaliacaoLoja.
getAvaliacao().
getVigencia().
getDataFim());
parametrosConsultaVendasDTO.
setIndicadorComissionado(true);
return vendaService.
obterValorTotalBrutoDeVendasPorLojaEePeriodo(parametrosConsultaVendasDTO
);
}
public void adicionarParticipante
(final Funcionario funcionario
) {
new VerificadorLancamentoException
().
tratarIhRelancarExcecaoSemLimparEntidade(new CommandBean
() {
public void execute
() {
if (VerificadorUtil.
estaNuloOuVazio(getEntidade
().
getParticipantes())) {
getEntidade
().
setParticipantes(new HashSet<AvaliacaoFuncionario
>());
}
boolean adicionar =
true;
for (AvaliacaoFuncionario participante : getEntidade
().
getParticipantes()) {
if (participante.
getFuncionario().
equals(funcionario
)) {
adicionar =
false;
break;
}
}
if (adicionar
) {
AvaliacaoFuncionario avaliacaoFuncionario =
new AvaliacaoFuncionario
();
avaliacaoFuncionario.
setFuncionario(funcionario
);
avaliacaoFuncionario.
setAvaliacao(getEntidade
());
avaliacaoFuncionario.
setLoja(new Loja
(ConstantesSEC.
SEQUENCIAL_MATRIZ_ESTOQUE_9));
getEntidade
().
getParticipantes().
add(avaliacaoFuncionario
);
avaliacaoService.
alterar(getEntidade
());
detalhar
(getEntidade
());
LancadorMensagem.
lancarSucesso("PARTICIPANTE ADICIONADO COM SUCESSO");
} else {
LancadorMensagem.
lancarErro("PARTICIPANTE JÁ FOI ADICIONADO");
}
}
});
}
public void removerParticipante
(final AvaliacaoFuncionario avaliacaoFuncionario
) {
new VerificadorLancamentoException
().
tratarIhRelancarExcecaoSemLimparEntidade(new CommandBean
() {
public void execute
() {
if (VerificadorUtil.
naoEstaNuloOuVazio(getEntidade
().
getParticipantes())) {
getEntidade
().
getParticipantes().
remove(avaliacaoFuncionario
);
}
avaliacaoService.
alterar(getEntidade
());
detalhar
(getEntidade
());
LancadorMensagem.
lancarSucesso("PARTICIPANTE REMOVIDO COM SUCESSO");
}
});
}
public void alterarParticipante
() {
new VerificadorLancamentoException
().
tratarIhRelancarExcecaoSemLimparEntidade(new CommandBean
() {
public void execute
() {
avaliacaoService.
alterar(getEntidade
());
avaliacaoFuncionarioService.
alterar(getParticipanteSelecionado
());
detalhar
(getEntidade
());
LancadorMensagem.
lancarSucesso("PARTICIPANTE ALTERADO COM SUCESSO");
}
});
}
public Double consultarValorComissao
(AvaliacaoFuncionario avaliacaoFuncionario
) {
if (VerificadorUtil.
naoEstaNuloOuVazio(avaliacaoFuncionario.
getPorcentagemComissao())) {
return consultarVendasDoPeriodo
(avaliacaoFuncionario
) * avaliacaoFuncionario.
getPorcentagemComissao() /
100;
}
return null;
}
public void adicionarItem
(AvaliacaoFuncionarioItemAvaliacao avaliacaoFuncionarioItemAvaliacao
) {
if (VerificadorUtil.
estaNuloOuVazio(getParticipanteSelecionado
())) {
getParticipanteSelecionado
().
getItens().
add(avaliacaoFuncionarioItemAvaliacao
);
}
}
public void removerItem
(AvaliacaoFuncionarioItemAvaliacao avaliacaoFuncionarioItemAvaliacao
) {
if (VerificadorUtil.
naoEstaNuloOuVazio(getParticipanteSelecionado
())) {
if (VerificadorUtil.
naoEstaNuloOuVazio(getParticipanteSelecionado
().
getItens())) {
getParticipanteSelecionado
().
getItens().
remove(avaliacaoFuncionarioItemAvaliacao
);
}
}
}
public Double consultarPontuacao
(AvaliacaoFuncionario avaliacaoFuncionario
) {
try {
AvaliacaoFuncionario participanteDetalhado = avaliacaoFuncionarioService.
detalhar(avaliacaoFuncionario
);
return participanteDetalhado.
getPontuacao();
} catch (Exception ex
) {}
return null;
}
public Double consultarPontuacao
(Pessoa pessoa, Avaliacao avaliacao
) {
try {
AvaliacaoFuncionario participanteDetalhado = avaliacaoFuncionarioService.
detalhar(pessoa, avaliacao
);
return participanteDetalhado.
getPontuacao();
} catch (Exception ex
) {}
return null;
}
public void alterarItensDoParticipante
() {
new VerificadorLancamentoException
().
tratarIhRelancarExcecaoSemLimparEntidade(new CommandBean
() {
public void execute
() {
avaliacaoFuncionarioService.
alterar(getParticipanteSelecionado
());
LancadorMensagem.
lancarSucesso("AVALIAÇÃO DO PARTICIPANTE ALTERADA COM SUCESSO");
}
});
}
public List<ItemAvaliacao
> consultarItensAvaliacao
() {
return itemAvaliacaoService.
consultarTodosAtivos();
}
public void adicionarItemAvaliacao
() {
new VerificadorLancamentoException
().
tratarIhRelancarExcecaoSemLimparEntidade(new CommandBean
() {
public void execute
() {
getItemSelecionado
().
setAvaliacaoFuncionario(getParticipanteSelecionado
());
getParticipanteSelecionado
().
adicionarItemAvaliacao(getItemSelecionado
());
setItemSelecionado
(new AvaliacaoFuncionarioItemAvaliacao
());
LancadorMensagem.
lancarSucesso("ITEM DE AVALIAÇÃO ADICIONADO COM SUCESSO");
}
});
}
public void adicionarLojaParticipante
(final Loja loja
) {
new VerificadorLancamentoException
().
tratarIhRelancarExcecaoSemLimparEntidade(new CommandBean
() {
public void execute
() {
if (VerificadorUtil.
estaNuloOuVazio(getEntidade
().
getLojasParticipantes())) {
getEntidade
().
setLojasParticipantes(new HashSet<AvaliacaoLoja
>());
}
boolean adicionar =
true;
for (AvaliacaoLoja participante : getEntidade
().
getLojasParticipantes()) {
if (participante.
getLoja().
equals(loja
)) {
adicionar =
false;
break;
}
}
if (adicionar
) {
AvaliacaoLoja avaliacaoLoja =
new AvaliacaoLoja
();
avaliacaoLoja.
setLoja(loja
);
avaliacaoLoja.
setAvaliacao(getEntidade
());
getEntidade
().
getLojasParticipantes().
add(avaliacaoLoja
);
avaliacaoService.
alterar(getEntidade
());
detalhar
(getEntidade
());
LancadorMensagem.
lancarSucesso("LOJA PARTICIPANTE ADICIONADA COM SUCESSO");
} else {
LancadorMensagem.
lancarErro("LOJA PARTICIPANTE JÁ FOI ADICIONADA");
}
}
});
}
public void removerLojaParticipante
(final AvaliacaoLoja avaliacaoLoja
) {
new VerificadorLancamentoException
().
tratarIhRelancarExcecaoSemLimparEntidade(new CommandBean
() {
public void execute
() {
if (VerificadorUtil.
naoEstaNuloOuVazio(getEntidade
().
getLojasParticipantes())) {
getEntidade
().
getLojasParticipantes().
remove(avaliacaoLoja
);
}
avaliacaoService.
alterar(getEntidade
());
detalhar
(getEntidade
());
LancadorMensagem.
lancarSucesso("LOJA PARTICIPANTE REMOVIDA COM SUCESSO");
}
});
}
public void alterarLojaParticipante
() {
new VerificadorLancamentoException
().
tratarIhRelancarExcecaoSemLimparEntidade(new CommandBean
() {
public void execute
() {
avaliacaoService.
alterar(getEntidade
());
avaliacaoLojaService.
alterar(getLojaParticipanteSelecionada
());
detalhar
(getEntidade
());
LancadorMensagem.
lancarSucesso("LOJA PARTICIPANTE ALTERADA COM SUCESSO");
}
});
}
public List<Avaliacao
> consultarAvaliacoesDivulgadas
() {
return avaliacaoService.
consultarAvaliacoesDivulgadas();
}
public void prepararDuplicacaoAvaliacao
(Avaliacao avaliacao
) {
setAvaliacaoSelecionadaParaDuplicacao
(avaliacaoService.
detalhar(avaliacao
));
}
public void duplicarAvaliacao
() {
new VerificadorLancamentoException
().
tratarIhRelancarExcecaoSemLimparEntidade(new CommandBean
() {
public void execute
() {
Avaliacao avaliacaoNova =
new Avaliacao
();
avaliacaoNova.
setVigencia(vigenciaSelecionadaParaDuplicacao
);
avaliacaoService.
cadastrar(avaliacaoNova
);
List<AvaliacaoFuncionario
> participantesNovos =
new ArrayList<AvaliacaoFuncionario
>();
for (AvaliacaoFuncionario avaliacaoFuncionario : getAvaliacaoSelecionadaParaDuplicacao
().
getParticipantesOrdenados()) {
AvaliacaoFuncionario avaliacaoFuncionarioNovo =
new AvaliacaoFuncionario
();
avaliacaoFuncionarioNovo.
setAvaliacao(avaliacaoNova
);
avaliacaoFuncionarioNovo.
setFuncionario(avaliacaoFuncionario.
getFuncionario());
avaliacaoFuncionarioNovo.
setLoja(avaliacaoFuncionario.
getLoja());
avaliacaoFuncionarioNovo.
setValorMetaMensal(avaliacaoFuncionario.
getValorMetaMensal());
avaliacaoFuncionarioNovo.
setValorMetaMensalVivo(avaliacaoFuncionario.
getValorMetaMensalVivo());
participantesNovos.
add(avaliacaoFuncionarioNovo
);
}
avaliacaoNova.
getParticipantes().
addAll(participantesNovos
);
List<AvaliacaoLoja
> lojasParticipantesNovas =
new ArrayList<AvaliacaoLoja
>();
for (AvaliacaoLoja avaliacaoLoja : getAvaliacaoSelecionadaParaDuplicacao
().
getLojasParticipantesOrdenadas()) {
AvaliacaoLoja avaliacaoLojaNovo =
new AvaliacaoLoja
();
avaliacaoLojaNovo.
setAvaliacao(avaliacaoNova
);
avaliacaoLojaNovo.
setLoja(avaliacaoLoja.
getLoja());
avaliacaoLojaNovo.
setValorMetaMensal(avaliacaoLoja.
getValorMetaMensal());
avaliacaoLojaNovo.
setValorMargemContribuicao(avaliacaoLoja.
getValorMargemContribuicao());
lojasParticipantesNovas.
add(avaliacaoLojaNovo
);
}
avaliacaoNova.
getLojasParticipantes().
addAll(lojasParticipantesNovas
);
avaliacaoService.
alterar(avaliacaoNova
);
LancadorMensagem.
lancarSucesso("AVALIAÇÃO DUPLICADA COM SUCESSO");
}
});
}
public void atualizarValorComissao
() {
if (VerificadorUtil.
naoEstaNuloOuVazio(getParticipanteSelecionado
().
getPorcentagemComissao())) {
getParticipanteSelecionado
().
setValorComissao(consultarVendasDoPeriodo
(getParticipanteSelecionado
()) * getParticipanteSelecionado
().
getPorcentagemComissao() /
100);
}
}
public void enviarReavaliacao
(final RankingVendedorDTO rankingVendedor
) {
new VerificadorLancamentoException
().
tratarIhRelancarExcecaoSemLimparEntidade(new CommandBean
() {
public void execute
() {
avaliacaoService.
solicitarReavaliacao(rankingVendedor, getReavaliacao
());
LancadorMensagem.
lancarSucesso("REAVALIAÇÃO SOLICITADA COM SUCESSO");
}
});
}
public StreamedContent emitirRelatorioImportacaoFolhaPagamento
(final String codigoEmpresa
) {
return new VerificadorLancamentoException
().
verificarLancamentoException(new CommandRelatorioStreamedContent
() {
@
Override
public StreamedContent execute
() {
String nomeArquivo =
"";
Long empresa =
null;
if (ConstantesSEC.
Empresa.
CODIGO_EMPRESA_ESPACO_CASE_1.
equals(new Long(codigoEmpresa
))) {
nomeArquivo =
"Relatório de Importação - Folha de Pagamento Espaço Case.xls";
empresa = TipoComissionamento.
COMISSSIONAMENTO_ESPACO_CASE.
getEmpresa();
} else if (ConstantesSEC.
Empresa.
CODIGO_EMPRESA_CASA_DAS_CAPAS_4.
equals(new Long(codigoEmpresa
))) {
nomeArquivo =
"Relatório de Importação - Folha de Pagamento Casa das Capas.xls";
empresa = TipoComissionamento.
COMISSSIONAMENTO_CASA_DAS_CAPAS.
getEmpresa();
}
try {
ByteArrayInputStream input =
new ByteArrayInputStream(avaliacaoService.
emitirRelatorioImportacaoFolhaPagamento((ServletContext
)FacesContext.
getCurrentInstance().
getExternalContext().
getContext(), getEntidade
(), empresa
));
return new DefaultStreamedContent
(input, ArquivoUtil.
retornarContentTypeArquivo("xls"), nomeArquivo
);
} catch (IOException e
) {
e.
printStackTrace();
} catch (NegocioException nex
) {
LancadorMensagem.
lancarErro(nex.
getMessage());
}
return null;
}
});
}
}