package gcom.gui.seguranca.acesso.usuario;
import gcom.cadastro.empresa.Empresa;
import gcom.cadastro.empresa.FiltroEmpresa;
import gcom.cadastro.funcionario.FiltroFuncionario;
import gcom.cadastro.funcionario.Funcionario;
import gcom.cadastro.unidade.FiltroUnidadeOrganizacional;
import gcom.cadastro.unidade.UnidadeOrganizacional;
import gcom.fachada.Fachada;
import gcom.gui.ActionServletException;
import gcom.gui.GcomAction;
import gcom.seguranca.acesso.Grupo;
import gcom.seguranca.acesso.usuario.FiltroSolicitacaoAcesso;
import gcom.seguranca.acesso.usuario.FiltroSolicitacaoAcessoGrupo;
import gcom.seguranca.acesso.usuario.FiltroUsuario;
import gcom.seguranca.acesso.usuario.FiltroUsuarioGrupo;
import gcom.seguranca.acesso.usuario.FiltroUsuarioTipo;
import gcom.seguranca.acesso.usuario.SolicitacaoAcesso;
import gcom.seguranca.acesso.usuario.SolicitacaoAcessoGrupo;
import gcom.seguranca.acesso.usuario.Usuario;
import gcom.seguranca.acesso.usuario.UsuarioGrupo;
import gcom.seguranca.acesso.usuario.UsuarioTipo;
import gcom.util.ConstantesSistema;
import gcom.util.Util;
import gcom.util.filtro.ParametroSimples;
import gcom.util.filtro.ParametroSimplesDiferenteDe;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Collection;
import java.util.GregorianCalendar;
import java.util.Iterator;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
public class ExibirInserirUsuarioDadosGeraisAction extends GcomAction {
/**
* < <Descri��o do m�todo>>
*
* @param actionMapping
* Descri��o do par�metro
* @param actionForm
* Descri��o do par�metro
* @param httpServletRequest
* Descri��o do par�metro
* @param httpServletResponse
* Descri��o do par�metro
* @return Descri��o do retorno
*/
public ActionForward execute(ActionMapping actionMapping,
ActionForm actionForm, HttpServletRequest httpServletRequest,
HttpServletResponse httpServletResponse) {
// FachadaBatch.getInstancia().gerarResumoSituacaoEspecialFaturamento();
ActionForward retorno = actionMapping.findForward("inserirDadosGerais");
InserirUsuarioDadosGeraisActionForm form = (InserirUsuarioDadosGeraisActionForm) actionForm;
HttpSession sessao = httpServletRequest.getSession(false);
// Usuario logado no sistema
Usuario usuario = (Usuario) sessao.getAttribute("usuarioLogado");
// Usuario que vai ser cadastrado no sistema, usado s� nessa
// funcionalidade
Usuario usuarioCadastrar = (Usuario) sessao.getAttribute("usuarioCadastrar");
// Caso a funcionalidade origem for Cadastrar Solicita��o de Acesso,
// carregar a tela com os dados da solicita��o.
String idSolicitacaoAcesso = (String) httpServletRequest.getAttribute("idSolicitacaoAcesso");
if(idSolicitacaoAcesso != null){
form = this.setSolicitacaoAcesso(form, sessao, idSolicitacaoAcesso);
}
if (usuarioCadastrar == null) {
usuarioCadastrar = new Usuario();
}
if (usuarioCadastrar != null) {
if ("".equals(form.getUsuarioTipo())) {
// se o form nao tiver o usuario tipo
if (usuarioCadastrar.getUsuarioTipo() != null && usuarioCadastrar.getUsuarioTipo().getId() != null) {
form.setUsuarioTipo(usuarioCadastrar.getUsuarioTipo().getId().toString());
}
} else if(idSolicitacaoAcesso == null){
UsuarioTipo usuarioTipo = new UsuarioTipo();
usuarioTipo.setId(new Integer(form.getUsuarioTipo()));
usuarioTipo.setIndicadorFuncionario(new Short(form.getIndicadorFuncionario()));
usuarioCadastrar.setUsuarioTipo(usuarioTipo);
}
if (usuarioCadastrar.getEmpresa() != null && usuarioCadastrar.getEmpresa().getId() != null
&& idSolicitacaoAcesso == null) {
form.setEmpresa(usuarioCadastrar.getEmpresa().getId().toString());
}
if ("".equals(form.getIdFuncionario()) ) {
if (usuarioCadastrar.getFuncionario() != null && idSolicitacaoAcesso == null) {
if (usuarioCadastrar.getFuncionario().getId() != null)
form.setIdFuncionario(usuarioCadastrar.getFuncionario()
.getId().toString());
if (usuarioCadastrar.getFuncionario().getNome() != null)
form.setNomeFuncionario(usuarioCadastrar.getFuncionario().getNome());
}
} else if (form.getIdFuncionario() != null
&& (form.getNomeFuncionario() == null || form
.getNomeFuncionario().equals("")) ) {
FiltroFuncionario filtroFuncionario = new FiltroFuncionario();
filtroFuncionario.adicionarParametro(new ParametroSimples(
FiltroFuncionario.ID, form.getIdFuncionario()));
filtroFuncionario
.adicionarCaminhoParaCarregamentoEntidade(FiltroFuncionario.UNIDADE_ORGANIZACIONAL);
Collection coll = Fachada.getInstancia().pesquisar(
filtroFuncionario, Funcionario.class.getSimpleName());
if (coll != null && !coll.isEmpty()) {
Funcionario f = (Funcionario) coll.iterator().next();
usuarioCadastrar.setFuncionario(f);
form.setIdFuncionario(f.getId().toString());
form.setNomeFuncionario(f.getNome());
form.setLogin(f.getId().toString());
form.setFuncionarioNaoEncontrada("false");
} else {
usuarioCadastrar.setFuncionario(null);
form.setIdFuncionario("");
form.setNomeFuncionario("Funcionario inexistente.");
form.setFuncionarioNaoEncontrada("true");
form.setLogin("");
}
}
//Verifica se o funcionario ja esta cadastrado como usu�rio
//pela matr�cula
if(usuarioCadastrar.getFuncionario() != null ){
FiltroFuncionario filtroFuncionario = new FiltroFuncionario();
filtroFuncionario
.adicionarParametro(new ParametroSimples(
FiltroFuncionario.ID, form
.getIdFuncionario()));
filtroFuncionario
.adicionarCaminhoParaCarregamentoEntidade(FiltroFuncionario.UNIDADE_ORGANIZACIONAL);
Collection colecaoFuncionario = Fachada
.getInstancia().pesquisar(
filtroFuncionario,
Funcionario.class
.getSimpleName());
if (colecaoFuncionario != null
&& !colecaoFuncionario.isEmpty()) {
Funcionario f = (Funcionario) colecaoFuncionario
.iterator().next();
FiltroUsuario filtroUsuario = new FiltroUsuario();
filtroUsuario.adicionarParametro(new ParametroSimples(FiltroUsuario.FUNCIONARIO_ID, f.getId()));
Collection colecaoFuncUsuario =
Fachada.getInstancia().pesquisar(filtroUsuario, Usuario.class.getName());
if(!colecaoFuncUsuario.isEmpty()){
Usuario usuarioPesquisa =
(Usuario) Util.retonarObjetoDeColecao(colecaoFuncUsuario);
String nome =
f.getNome() +
" de login " +
usuarioPesquisa.getLogin();
throw new ActionServletException(
"atencao.usuario.funcionario.ja.existe",
null,
nome);
}
usuarioCadastrar.setFuncionario(f);
usuarioCadastrar.setNomeUsuario(f.getNome());
form.setIdFuncionario(f.getId().toString());
form.setNomeFuncionario(f.getNome());
} else {
throw new ActionServletException(
"atencao.required",
null,
"Matr�cula Funcion�rio");
}
}
// caso for funcionario pegar os dados a partir do funcionario
if (usuarioCadastrar != null
&& usuarioCadastrar.getUsuarioTipo() != null
&& usuarioCadastrar.getUsuarioTipo().getId() != null
&& usuarioCadastrar.getUsuarioTipo()
.getIndicadorFuncionario() == UsuarioTipo.INDICADOR_FUNCIONARIO) {
if (usuarioCadastrar.getFuncionario() != null) {
if (usuarioCadastrar.getFuncionario().getNome() != null)
form.setNome(usuarioCadastrar.getFuncionario()
.getNome());
if(usuarioCadastrar.getFuncionario().getNumeroCpf() != null){
form.setCpf(usuarioCadastrar.getFuncionario()
.getNumeroCpf());
}
if(usuarioCadastrar.getFuncionario().getDataNascimento() != null){
form.setDataNascimento(Util.formatarData(usuarioCadastrar.getFuncionario()
.getDataNascimento()));
}
if (usuarioCadastrar.getFuncionario()
.getUnidadeOrganizacional() != null && (form.getIdLotacao() == null || form.getIdLotacao().equals(""))) {
if (usuarioCadastrar.getFuncionario()
.getUnidadeOrganizacional().getId() != null)
form.setIdLotacao(usuarioCadastrar.getFuncionario()
.getUnidadeOrganizacional().getId()
.toString());
if (usuarioCadastrar.getFuncionario()
.getUnidadeOrganizacional().getDescricao() != null)
form.setNomeLotacao(usuarioCadastrar
.getFuncionario()
.getUnidadeOrganizacional().getDescricao());
}
}
} else {
if ("".equals(form.getIdLotacao())) {
if (usuarioCadastrar.getUnidadeOrganizacional() != null) {
if (usuarioCadastrar.getUnidadeOrganizacional().getId() != null)
form.setIdLotacao(usuarioCadastrar
.getUnidadeOrganizacional().getId()
.toString());
if (usuarioCadastrar.getUnidadeOrganizacional()
.getDescricao() != null)
form.setNomeLotacao(usuarioCadastrar
.getUnidadeOrganizacional().getDescricao());
}
} else if (form.getIdLotacao() != null
&& !form.getIdLotacao().equals("")
&& (usuarioCadastrar.getUnidadeOrganizacional() == null || (usuarioCadastrar
.getUnidadeOrganizacional() != null
&& usuarioCadastrar.getUnidadeOrganizacional()
.getId() != null && !form
.getIdLotacao().equals(
usuarioCadastrar
.getUnidadeOrganizacional()
.getId().toString())))) {
FiltroUnidadeOrganizacional filtroUnidadeEmpresa = new FiltroUnidadeOrganizacional();
filtroUnidadeEmpresa
.adicionarParametro(new ParametroSimples(
FiltroUnidadeOrganizacional.ID, form
.getIdLotacao()));
filtroUnidadeEmpresa
.adicionarCaminhoParaCarregamentoEntidade("unidadeTipo");
Collection coll = Fachada.getInstancia().pesquisar(
filtroUnidadeEmpresa,
UnidadeOrganizacional.class.getSimpleName());
if (coll != null && !coll.isEmpty()) {
UnidadeOrganizacional unidadeEmpresa = (UnidadeOrganizacional) coll
.iterator().next();
// caso o usu�rio que esteja efetuando a inser��o n�o
// seja
// do grupo de administradores
FiltroUsuarioGrupo filtroUsuarioGrupo = new FiltroUsuarioGrupo();
filtroUsuarioGrupo
.adicionarParametro(new ParametroSimples(
FiltroUsuarioGrupo.USUARIO_ID, usuario
.getId()));
filtroUsuarioGrupo
.adicionarParametro(new ParametroSimples(
FiltroUsuarioGrupo.GRUPO_ID,
Grupo.ADMINISTRADOR));
Collection colecaoUsuarioGrupo = Fachada.getInstancia()
.pesquisar(filtroUsuarioGrupo,
UsuarioGrupo.class.getName());
if (colecaoUsuarioGrupo == null
|| colecaoUsuarioGrupo.isEmpty()) {
// se a unidade de lotacao do usuario que estiver
// efetuando seja diferente da unidade de
// lota��o informada
if (usuario.getUnidadeOrganizacional() != null
&& usuario.getUnidadeOrganizacional()
.getId() != null
&& !usuario.getUnidadeOrganizacional()
.getId().equals(
new Integer(form
.getIdLotacao()))) {
// recupera a unidade do usu�rio
FiltroUnidadeOrganizacional filtroUnidadeEmpresaUsuario = new FiltroUnidadeOrganizacional();
filtroUnidadeEmpresaUsuario
.adicionarParametro(new ParametroSimples(
FiltroUnidadeOrganizacional.ID,
usuario
.getUnidadeOrganizacional()
.getId()));
filtroUnidadeEmpresaUsuario
.adicionarCaminhoParaCarregamentoEntidade("unidadeTipo");
Collection colecaoUnidadeEmpresa = Fachada
.getInstancia().pesquisar(
filtroUnidadeEmpresaUsuario,
UnidadeOrganizacional.class
.getName());
UnidadeOrganizacional unidadeEmpresaUsuario = null;
if (colecaoUnidadeEmpresa != null
&& !colecaoUnidadeEmpresa.isEmpty()) {
unidadeEmpresaUsuario = (UnidadeOrganizacional) Util
.retonarObjetoDeColecao(colecaoUnidadeEmpresa);
}
// se o nivel da unidade de lota��o do usu�rio
// que
// estiver efetuando a inser��o seja maior ou
// igual
// ao nivel de unidade de lota��o informada
if (unidadeEmpresaUsuario != null) {
if (unidadeEmpresaUsuario.getUnidadeTipo()
.getNivel() != null
&& unidadeEmpresa.getUnidadeTipo()
.getNivel() != null) {
if (unidadeEmpresaUsuario
.getUnidadeTipo().getNivel()
.intValue() >= unidadeEmpresa
.getUnidadeTipo().getNivel()
.intValue()) {
throw new ActionServletException(
"atencao.usuario.sem.permissao",
usuario.getLogin(),
unidadeEmpresa.getDescricao());
}
} else {
throw new ActionServletException(
"atencao.usuario.sem.permissao",
usuario.getLogin(),
unidadeEmpresa.getDescricao());
}
// ou a unidade superior da unidade de
// lota��o
// informada seja diferente da unidade de
// lota��o do usu�rio
// enquanto o nivel superior da unidade de
// lota��o n�o esteja no mesmo nivel da
// unidade
// de lota��o do usu�rio
boolean mesmoNivel = true;
int idNivelUsuario = unidadeEmpresaUsuario
.getUnidadeTipo().getNivel()
.intValue();
UnidadeOrganizacional unidadeEmpresaSuperior = null;
while (mesmoNivel) {
Integer idUnidadeEmpresaSuperior = null;
if (unidadeEmpresaSuperior == null) {
if (unidadeEmpresa
.getUnidadeSuperior() != null
&& !unidadeEmpresa
.getUnidadeSuperior()
.equals("")) {
idUnidadeEmpresaSuperior = unidadeEmpresa
.getUnidadeSuperior()
.getId();
}
} else {
if (unidadeEmpresaSuperior
.getUnidadeSuperior() != null
&& !unidadeEmpresaSuperior
.getUnidadeSuperior()
.equals("")) {
idUnidadeEmpresaSuperior = unidadeEmpresaSuperior
.getUnidadeSuperior()
.getId();
}
}
if (idUnidadeEmpresaSuperior == null) {
throw new ActionServletException(
"atencao.usuario.sem.permissao",
usuario.getLogin(),
unidadeEmpresa.getDescricao());
}
// recupera a unidade do usu�rio
FiltroUnidadeOrganizacional filtroUnidadeEmpresaSuperior = new FiltroUnidadeOrganizacional();
filtroUnidadeEmpresaSuperior
.adicionarParametro(new ParametroSimples(
FiltroUnidadeOrganizacional.ID,
idUnidadeEmpresaSuperior));
filtroUnidadeEmpresaSuperior
.adicionarCaminhoParaCarregamentoEntidade("unidadeTipo");
Collection colecaoUnidadeEmpresaSuperior = Fachada
.getInstancia()
.pesquisar(
filtroUnidadeEmpresaSuperior,
UnidadeOrganizacional.class
.getName());
if (colecaoUnidadeEmpresaSuperior != null
&& !colecaoUnidadeEmpresaSuperior
.isEmpty()) {
unidadeEmpresaSuperior = (UnidadeOrganizacional) Util
.retonarObjetoDeColecao(colecaoUnidadeEmpresaSuperior);
}
if (unidadeEmpresaSuperior != null) {
if (unidadeEmpresaSuperior
.getUnidadeTipo()
.getNivel() == null
|| unidadeEmpresaSuperior
.getUnidadeTipo()
.getNivel().equals(
"")) {
throw new ActionServletException(
"atencao.usuario.sem.permissao",
usuario.getLogin(),
unidadeEmpresa.getDescricao());
}
// caso seja o mesmo nivel
if (unidadeEmpresaSuperior
.getUnidadeTipo()
.getNivel().intValue() == idNivelUsuario) {
mesmoNivel = false;
// caso o id da unidade empresa
// informado for diferente do id
// da
// unidade empresa do usu�rio no
// mesmo nivel
if (!unidadeEmpresaSuperior
.getId()
.equals(
unidadeEmpresaUsuario
.getId())) {
throw new ActionServletException(
"atencao.usuario.sem.permissao",
usuario.getLogin(),
unidadeEmpresa.getDescricao());
}
}
}
}
}
}
}
usuarioCadastrar
.setUnidadeOrganizacional(unidadeEmpresa);
form.setIdLotacao(unidadeEmpresa.getId().toString());
form.setNomeLotacao(unidadeEmpresa.getDescricao());
form.setLotacaoNaoEncontrada("false");
} else {
usuarioCadastrar.setUnidadeOrganizacional(null);
form.setIdLotacao("");
form.setNomeLotacao("Lota��o inexistente.");
form.setLotacaoNaoEncontrada("true");
}
}
if (usuarioCadastrar.getNomeUsuario() != null)
form.setNome(usuarioCadastrar.getNomeUsuario());
if (usuarioCadastrar.getDataCadastroInicio() != null)
form.setDataInicial(Util.formatarData(usuarioCadastrar
.getDataCadastroInicio()));
if (usuarioCadastrar.getDataCadastroFim() != null)
form.setDataFinal(Util.formatarData(usuarioCadastrar
.getDataCadastroFim()));
}
if (usuarioCadastrar.getLogin() != null)
form.setLogin(usuarioCadastrar.getLogin());
if (usuarioCadastrar.getDescricaoEmail() != null)
form.setEmail(usuarioCadastrar.getDescricaoEmail());
}
if (sessao.getAttribute("collEmpresa") == null
|| !sessao.getAttribute("collEmpresa").equals("")) {
FiltroEmpresa filtroEmpresa = new FiltroEmpresa();
filtroEmpresa.adicionarParametro(new ParametroSimples(
FiltroEmpresa.INDICADORUSO,
ConstantesSistema.INDICADOR_USO_ATIVO));
Collection coll = Fachada.getInstancia().pesquisar(filtroEmpresa,
Empresa.class.getSimpleName());
if (coll == null || coll.isEmpty()) {
throw new ActionServletException(
"atencao.entidade_sem_dados_para_selecao", null,
" Empresa est� ");
}
sessao.setAttribute("collEmpresa", coll);
}
if (sessao.getAttribute("collUsuarioTipo") == null
|| !sessao.getAttribute("collUsuarioTipo").equals("")) {
FiltroUsuarioTipo filtroUsuarioTipo = new FiltroUsuarioTipo();
// caso o usu�rio n�o seja administrador ent�o
if (!usuario.getUsuarioTipo().getId().equals(
UsuarioTipo.USUARIO_TIPO_ADMINISTRADOR)) {
// n�o seta na cole��o de usu�rio tipo o tipo administrador
filtroUsuarioTipo
.adicionarParametro(new ParametroSimplesDiferenteDe(
FiltroUsuarioTipo.ID,
UsuarioTipo.USUARIO_TIPO_ADMINISTRADOR));
}
filtroUsuarioTipo.adicionarParametro(new ParametroSimples(
FiltroUsuarioTipo.INDICADOR_USO,
ConstantesSistema.INDICADOR_USO_ATIVO));
Collection coll = Fachada.getInstancia().pesquisar(
filtroUsuarioTipo, UsuarioTipo.class.getSimpleName());
if (coll == null || coll.isEmpty()) {
throw new ActionServletException(
"atencao.entidade_sem_dados_para_selecao", null,
" Tipo do Us�ario est� ");
}
sessao.setAttribute("collUsuarioTipo", coll);
}
sessao.setAttribute("usuarioCadastrar", usuarioCadastrar);
sessao.setAttribute("usuario", usuario);
sessao.setAttribute("idSolicitacaoAcesso", idSolicitacaoAcesso);
//DATA CORRENTE
SimpleDateFormat formatoData = new SimpleDateFormat("dd/MM/yyyy");
Calendar dataCorrente = new GregorianCalendar();
httpServletRequest.setAttribute("dataAtual", formatoData
.format(dataCorrente.getTime()));
//IDADE M�NIMA
httpServletRequest.setAttribute("idadeMinimaFuncionario", ConstantesSistema.IDADE_MINIMA_FUNCIONARIO);
httpServletRequest.setAttribute("idadeMinimaUsuario", ConstantesSistema.IDADE_MINIMA_USUARIO);
return retorno;
}
/**
* @author Hugo Leonardo
* @date 22/11/2010
*
* @param InserirUsuarioDadosGeraisActionForm, idSolicitacaoAcesso
* @return InserirUsuarioDadosGeraisActionForm
*/
private InserirUsuarioDadosGeraisActionForm setSolicitacaoAcesso(InserirUsuarioDadosGeraisActionForm form,
HttpSession sessao, String idSolicitacaoAcesso) {
SolicitacaoAcesso solicitacaoAcesso = null;
FiltroSolicitacaoAcesso filtroSolicitacaoAcesso = new FiltroSolicitacaoAcesso();
filtroSolicitacaoAcesso.adicionarCaminhoParaCarregamentoEntidade(
FiltroSolicitacaoAcesso.SOLICITACAO_ACESSO_SITUACAO);
filtroSolicitacaoAcesso.adicionarCaminhoParaCarregamentoEntidade(
FiltroSolicitacaoAcesso.FUNCIONARIO_RESPONSAVEL);
filtroSolicitacaoAcesso.adicionarCaminhoParaCarregamentoEntidade(
FiltroSolicitacaoAcesso.FUNCIONARIO_SOLICITANTE);
filtroSolicitacaoAcesso.adicionarCaminhoParaCarregamentoEntidade(
FiltroSolicitacaoAcesso.UNIDADE_ORGANIZACIONAL);
filtroSolicitacaoAcesso.adicionarCaminhoParaCarregamentoEntidade(
FiltroSolicitacaoAcesso.EMPRESA);
filtroSolicitacaoAcesso.adicionarParametro(
new ParametroSimples(FiltroSolicitacaoAcesso.ID, new Integer(idSolicitacaoAcesso)));
solicitacaoAcesso = (SolicitacaoAcesso) Fachada.getInstancia().pesquisar(filtroSolicitacaoAcesso,
SolicitacaoAcesso.class.getName()).iterator().next();
// pesquisar Funcion�rio
short indicadorFuncionario = ConstantesSistema.NAO;
if(solicitacaoAcesso.getFuncionario() != null){
FiltroFuncionario filtroFuncionario = new FiltroFuncionario();
filtroFuncionario.adicionarParametro(new ParametroSimples(
FiltroFuncionario.ID, solicitacaoAcesso.getFuncionario().getId()));
Collection<Funcionario> funcionarioPesquisado = Fachada.getInstancia().pesquisar(
filtroFuncionario, Funcionario.class.getName());
if (funcionarioPesquisado != null && !funcionarioPesquisado.isEmpty()) {
Funcionario funcionario = (Funcionario) Util.retonarObjetoDeColecao(funcionarioPesquisado);
form.setIdFuncionario(funcionario.getId().toString());
form.setNomeFuncionario(funcionario.getNome());
indicadorFuncionario = ConstantesSistema.SIM;
}
}
// Unidade de Lota��o
if(solicitacaoAcesso.getUnidadeOrganizacional() != null){
form.setIdLotacao(solicitacaoAcesso.getUnidadeOrganizacional().getId().toString());
form.setNomeLotacao(solicitacaoAcesso.getUnidadeOrganizacional().getDescricao());
}
// Empresa
form.setEmpresa(solicitacaoAcesso.getEmpresa().getId().toString());
// Tipo de Usu�rio
form.setUsuarioTipo(solicitacaoAcesso.getUsuarioTipo().getId().toString());
// Tipo de Usu�rio
form.setParmsUsuarioTipo(solicitacaoAcesso.getUsuarioTipo().getId().toString()+";"+indicadorFuncionario);
form.setIndicadorFuncionario(""+indicadorFuncionario);
// Nome Usu�rio
form.setNome(solicitacaoAcesso.getNomeUsuario());
// Login
form.setLogin(solicitacaoAcesso.getLogin());
// Email
form.setEmail(solicitacaoAcesso.getEmail());
// Confirma��o Email
form.setConfirmacaoEmail(solicitacaoAcesso.getEmail());
// Data Nascimento
if(solicitacaoAcesso.getDataNascimento() != null){
form.setDataNascimento( Util.formatarData(solicitacaoAcesso.getDataNascimento()));
}
// CPF
if(Util.verificarNaoVazio(solicitacaoAcesso.getCpf())){
form.setCpf(solicitacaoAcesso.getCpf());
}
// Per�odo de Cadastramento
if(solicitacaoAcesso.getPeriodoInicial() != null
&& solicitacaoAcesso.getPeriodoFinal() != null){
form.setDataInicial( Util.formatarData(solicitacaoAcesso.getPeriodoInicial()));
form.setDataFinal( Util.formatarData(solicitacaoAcesso.getPeriodoFinal()));
}
// Grupos
FiltroSolicitacaoAcessoGrupo filtroSolicitacaoAcessoGrupo = new FiltroSolicitacaoAcessoGrupo();
filtroSolicitacaoAcessoGrupo.setConsultaSemLimites(true);
filtroSolicitacaoAcessoGrupo.adicionarCaminhoParaCarregamentoEntidade(
FiltroSolicitacaoAcessoGrupo.GRUPO);
filtroSolicitacaoAcessoGrupo.adicionarParametro(new ParametroSimples(
FiltroSolicitacaoAcessoGrupo.SOLICITACAO_ACESSO_ID, solicitacaoAcesso.getId()) );
Collection colecaoSolicitacaoAcessoGrupo =
Fachada.getInstancia().pesquisar(
filtroSolicitacaoAcessoGrupo, SolicitacaoAcessoGrupo.class.getName());
Collection<Integer> colecaoIdsGrupos = new ArrayList();
if (colecaoSolicitacaoAcessoGrupo != null && !colecaoSolicitacaoAcessoGrupo.isEmpty()) {
Iterator iterator = colecaoSolicitacaoAcessoGrupo.iterator();
SolicitacaoAcessoGrupo solicitacaoAcessoGrupo = null;
while (iterator.hasNext()) {
solicitacaoAcessoGrupo = (SolicitacaoAcessoGrupo) iterator.next();
colecaoIdsGrupos.add(solicitacaoAcessoGrupo.getComp_id().getGrupo().getId());
}
}
if(!colecaoIdsGrupos.isEmpty()){
Object[] array = colecaoIdsGrupos.toArray();
String[] array2 = new String[array.length];
for (int i = 0; i < array.length; i++){
array2[i] = array[i].toString();
}
sessao.setAttribute("grupo", array2);
}
return form;
}
}