Exemplo n.º 1
0
        public ActionResult GerenciarContasLst(int?Pagina, int?Contratantes, string Nome, string Login, string CPF, string MensagemSucesso)
        {
            int contratanteId = (int)Geral.PegaAuthTicket("ContratanteId");
            int grupoId       = (int)Geral.PegaAuthTicket("Grupo");
            int UsuarioId     = (int)Geral.PegaAuthTicket("UsuarioId");
            int pagina        = Pagina ?? 1;

            ViewBag.Nome         = Nome;
            ViewBag.Login        = Login;
            ViewBag.CPF          = CPF;
            ViewBag.Contratantes = Contratantes;

            GerenciarContasFiltrosDTO filtros = new GerenciarContasFiltrosDTO
            {
                UsuarioId          = UsuarioId,
                ContratanteUsuario = contratanteId,
                Nome          = Nome,
                Login         = Login,
                CPF           = CPF,
                ContratanteId = Contratantes,
                GrupoId       = grupoId
            };
            var pesquisa = usuarioBP.PesquisarUsuarios(filtros, pagina, 10);

            List <UsuarioAdministracaoModel> usuarioList = UsuarioAdministracaoModel.ModelToViewModel(pesquisa.RegistrosPagina, Url);

            ViewBag.MensagemSucesso = MensagemSucesso ?? "";
            ViewBag.Pagina          = pagina;
            ViewBag.TotalPaginas    = pesquisa.TotalPaginas;
            ViewBag.TotalRegistros  = pesquisa.TotalRegistros;

            ViewBag.Contratantes = new SelectList(contratanteBP.ListarTodos(grupoId), "ID", "RAZAO_SOCIAL");

            return(View(usuarioList));
        }
Exemplo n.º 2
0
        private void IncluirHistoricoSenhaUsuario(UsuarioAdministracaoModel usuario)
        {
            WFD_USUARIO_SENHAS_HIST historico = new WFD_USUARIO_SENHAS_HIST
            {
                SENHA       = usuario.Senha,
                SENHA_DT    = usuario.DtCriacao,
                WFD_USUARIO = Mapper.Map <WFD_USUARIO>(usuario)
                              //USUARIO_ID = usuario.ID
            };

            db.Entry(historico).State = EntityState.Added;
        }
Exemplo n.º 3
0
        private void IncluirPerfilUsuario(int idPerfil, UsuarioAdministracaoModel usuario)
        {
            WAC_PERFIL perfil = db.WAC_PERFIL.FirstOrDefault(x => x.ID == idPerfil && x.CONTRATANTE_ID == usuario.ContratanteID);

            if (perfil != null)
            {
                perfil.WFD_USUARIO.Add(Mapper.Map <WFD_USUARIO>(usuario));
                db.Entry(perfil).State = EntityState.Modified;
            }
            else
            {
                throw new Exception("Problemas relacionados ao Perfil");
            }
        }
Exemplo n.º 4
0
        private void IncluirPapelUsuario(int idPapel, UsuarioAdministracaoModel usuario)
        {
            WFL_PAPEL papel = db.WFL_PAPEL.FirstOrDefault(x => x.ID == idPapel);

            if (papel != null)
            {
                papel.WFD_USUARIO.Add(Mapper.Map <WFD_USUARIO>(usuario));
                db.Entry(papel).State = EntityState.Modified;
            }
            else
            {
                throw new Exception("Problemas relacionados ao Papel");
            }
        }
Exemplo n.º 5
0
        public ActionResult UsuarioLst(UsuarioAdministracaoModel modelo)
        {
            int grupoId = (int)Geral.PegaAuthTicket("Grupo");
            int pagina  = modelo.Pagina ?? 1;

            ViewBag.Page           = "Usuário";
            ViewBag.Title          = "Lista de usuários";
            ViewBag.CONTRATANTE_ID = new SelectList(contratanteBP.ListarTodos(grupoId), "ID", "RAZAO_SOCIAL", modelo.ContratanteId);
            GerenciarContasFiltrosDTO filtros = new GerenciarContasFiltrosDTO()
            {
                CPF           = modelo.CPF,
                Login         = modelo.Login,
                Email         = modelo.Email,
                ContratanteId = modelo.ContratanteId,
                Ativo         = modelo.Ativo,
                Administrador = modelo.Administrador
            };
            var pesquisaUsuario = usuarioBP.PesquisarUsuarios(filtros, pagina, 10);
            List <UsuarioAdministracaoModel> usuarioList = Mapper.Map <List <UsuarioAdministracaoModel> >(pesquisaUsuario.RegistrosPagina);

            usuarioList.ForEach(x =>
            {
                if (Request.Url == null)
                {
                    return;
                }
                x.UrlEditar = Url.Action("UsuarioEditarFrm", "Usuario",
                                         new
                {
                    chaveurl = Cripto.Criptografar(string.Format("id={0}", x.Id), Key)
                }, Request.Url.Scheme);
                x.UrlDetalhar = Url.Action("UsuarioDetalharFrm", "Usuario",
                                           new
                {
                    chaveurl = Cripto.Criptografar(string.Format("id={0}", x.Id), Key)
                }, Request.Url.Scheme);
                x.UrlExcluir = Url.Action("Delete", "Usuario",
                                          new
                {
                    chaveurl = Cripto.Criptografar(string.Format("id={0}", x.Id), Key)
                }, Request.Url.Scheme);
            }
                                );
            return(View(usuarioList));
        }
Exemplo n.º 6
0
        public ActionResult MinhaContaFrm(UsuarioAdministracaoModel modelo)
        {
            int grupoId = (int)Geral.PegaAuthTicket("Grupo");

            ViewBag.CONTRATANTE_ID = new SelectList(contratanteBP.ListarTodos(grupoId), "ID", "RAZAO_SOCIAL", modelo.ContratanteId);
            try
            {
                if (ModelState.IsValid)
                {
                    var usuario = Mapper.Map <Usuario>(modelo);
                    usuarioBP.AlterarMinhaConta(usuario, modelo.SelectedGroupsPapel, modelo.SelectedGroupsPerfil, modelo.ContratanteId);
                    return(RedirectToAction("MinhaContaFrm", new { MensagemSucesso = "Sua Conta foi alterada com sucesso!" }));
                }
            }
            catch (Exception ex)
            {
                Log.Error(ex);
            }
            return(View(modelo));
        }
Exemplo n.º 7
0
        public ActionResult MinhaContaFrm(string MensagemSucesso)
        {
            int usuarioId = (int)Geral.PegaAuthTicket("UsuarioId");
            int grupoId   = (int)Geral.PegaAuthTicket("Grupo");

            ViewBag.MensagemSucesso = MensagemSucesso ?? "";

            UsuarioAdministracaoModel modelo = UsuarioAdministracaoModel.ModelToViewModel(usuarioBP.BuscarPorId(usuarioId), Url);

            if (modelo == null)
            {
                return(HttpNotFound());
            }
            ViewBag.CONTRATANTE_ID = new SelectList(contratanteBP.ListarTodos(grupoId), "ID", "RAZAO_SOCIAL", modelo.ContratanteId);

            modelo.PapelList = papelBP.ListarTodos(modelo.ContratanteId)
                               .Where(x => x.PAPEL_TP_ID == null)
                               .Select(x => new PapelAdministracaoModel
            {
                Id          = x.ID,
                Selecionado = modelo.PapelList.FirstOrDefault(y => y.Id == x.ID) != null,
                Nome        = x.PAPEL_NM,
                Sigla       = x.PAPEL_SGL
            }).ToList();

            modelo.PerfilList = perfilBP.ListarTodosPorContratante(modelo.ContratanteId)
                                .Select(x => new PerfilAdministracaoModel
            {
                Id          = x.ID,
                Nome        = x.PERFIL_NM,
                Selecionado = modelo.PerfilList.FirstOrDefault(y => y.Id == x.ID) != null,
            }).ToList();

            modelo.SelectedGroupsPapel  = modelo.PapelList.Where(x => x.Selecionado).Select(x => x.Id).ToArray();
            modelo.SelectedGroupsPerfil = modelo.PerfilList.Where(x => x.Selecionado).Select(x => x.Id).ToArray();

            return(View(modelo));
        }
Exemplo n.º 8
0
        private void ExcluirPrimeiroHistoricoSenhaUsuario(UsuarioAdministracaoModel usuario)
        {
            var ultimoHistoricoSenha = db.WFD_USUARIO_SENHAS_HIST.FirstOrDefault(x => x.USUARIO_ID == usuario.ID);

            db.Entry(ultimoHistoricoSenha).State = EntityState.Deleted;
        }
Exemplo n.º 9
0
        // GET: Administracao/Teste
        public ActionResult Index()
        {
            try
            {
                /*
                 * //PROFILE
                 * Mapper.CreateMap<string, DateTime>().ConvertUsing(new Mappers.DateTimeTypeConverter());
                 * Mapper.CreateMap<TextoModel, HorarioDB>()
                 *  .ForMember(dest => dest.dataTempo, src => src.MapFrom(x=>x.dataTexto));
                 * Mapper.AssertConfigurationIsValid();
                 *
                 * //INSTANCIA MODELO
                 * var modelo = new TextoModel
                 * {
                 *  dataTexto = "1980/04/12"
                 * };
                 * //
                 * HorarioDB modeloMapeado = Mapper.Map<TextoModel, HorarioDB>(modelo);
                 */

                int idPerfil = 1;
                //int idPapel = 1;
                UsuarioAdministracaoModel usuario = new UsuarioAdministracaoModel
                {
                    ContratanteID = 1,
                    Login         = "******",
                    Nome          = "Usuário Contas a pagar",
                    Email         = "*****@*****.**",
                    Senha         = "1000:kyImaCI1hPRxHR0XMAnok+Pojk9EIuBa:zPckmeapXHjxoCQIeyGcAWDnIq8hcfg8",
                    DtNascimento  = "31/12/1980",
                    Administrador = false,
                    CPF           = "245.572.631-27",
                    Cargo         = "MDM",
                };
                usuario.Ativo          = true;
                usuario.PrimeiroAcesso = false;
                usuario.DtCriacao      = DateTime.Now;
                usuario.ContaTentativa = 0;

                var usuarioMapeado = Mapper.Map <UsuarioAdministracaoModel, WFD_USUARIO>(usuario);

                db.Entry(usuarioMapeado).State = EntityState.Added;


                //int repeticoes = db.WFD_USUARIO_SENHAS_HIST.Count(x => x.USUARIO_ID == usuario.ID);
                //
                //if (repeticoes >= 6)
                //    ExcluirPrimeiroHistoricoSenhaUsuario(usuario); //Excluir senha mais antiga

                //IncluirHistoricoSenhaUsuario(usuario);
                //
                //IncluirPapelUsuario(idPapel, usuario);
                //
                //IncluirPerfilUsuario(idPerfil, usuario);
                //db.SaveChanges();
            }

            catch (Exception ex)
            {
                ViewBag.Erro = ex.Message;
            }

            return(View());
        }
Exemplo n.º 10
0
        public ActionResult UsuarioFrm(string chaveurl)
        {
            int    idUsuario = 0;
            string Acao      = "";

            if (!string.IsNullOrEmpty(chaveurl))
            {
                List <ParametroCriptografia> param = Cripto.DescriptografarUrl(chaveurl, Key);
                Int32.TryParse(param.First(p => p.Name == "idUsuario").Value, out idUsuario);
                Acao = param.First(p => p.Name == "Acao").Value;
            }

            ViewBag.Acao = Acao;

            int usuarioId     = (int)Geral.PegaAuthTicket("UsuarioId");
            int grupoId       = (int)Geral.PegaAuthTicket("Grupo");
            int contratanteId = (int)Geral.PegaAuthTicket("ContratanteId");

            UsuarioAdministracaoModel modelo;

            ViewBag.CONTRATANTE_ID = new SelectList(contratanteBP.ListarTodos(grupoId), "ID", "RAZAO_SOCIAL", contratanteId);

            //Incluir
            if (string.IsNullOrEmpty(Acao))
            {
                modelo = new UsuarioAdministracaoModel();
                modelo.SelectedGroupsPapel  = new int[0];
                modelo.SelectedGroupsPerfil = new int[0];
            }
            else
            {
                modelo = Mapper.Map <UsuarioAdministracaoModel>(usuarioBP.BuscarPorId(idUsuario));
                if (modelo == null)
                {
                    return(HttpNotFound());
                }

                modelo.SelectedGroupsPapel  = modelo.PapelList.Select(x => x.Id).ToArray();
                modelo.SelectedGroupsPerfil = modelo.PerfilList.Select(x => x.Id).ToArray();
            }

            modelo.PapelList = papelBP.ListarTodos(contratanteId)
                               .Where(x => x.PAPEL_TP_ID == null)
                               .Select(x => new PapelAdministracaoModel
            {
                Id          = x.ID,
                Selecionado = modelo.SelectedGroupsPapel.Contains(x.ID),
                Nome        = x.PAPEL_NM,
                Sigla       = x.PAPEL_SGL
            }).ToList();

            modelo.PerfilList = perfilBP.ListarTodosPorContratante(contratanteId)
                                .Select(x => new PerfilAdministracaoModel
            {
                Id          = x.ID,
                Nome        = x.PERFIL_NM,
                Selecionado = modelo.SelectedGroupsPerfil.Contains(x.ID),
            }).ToList();

            return(View(modelo));
        }
Exemplo n.º 11
0
        public ActionResult UsuarioFrm(UsuarioAdministracaoModel modelo, string Acao)
        {
            ViewBag.Acao = Acao;
            try
            {
                if (Acao != "Excluir")
                {
                    if (modelo.Id == 0)
                    {
                        if (usuarioBP.VerificaLoginExistente(modelo.Login))
                        {
                            ModelState.AddModelError("", "O login já está sendo utilizado por outro usuário. Favor informar outro.");
                        }
                    }

                    if (!string.IsNullOrEmpty(modelo.Email))
                    {
                        if (!Validacao.ValidarEmail(modelo.Email))
                        {
                            ModelState.AddModelError("Email", "O e-mail informado não está em um formato válido.");
                        }
                    }

                    if (modelo.SelectedGroupsPerfil == null)
                    {
                        ModelState.AddModelError("ValidationPerfil", "Selecione ao Menos um Perfil.");
                    }
                }

                int grupoId = (int)Geral.PegaAuthTicket("Grupo");
                ViewBag.CONTRATANTE_ID = new SelectList(contratanteBP.ListarTodos(grupoId), "ID", "RAZAO_SOCIAL", modelo.ContratanteId);

                if (ModelState.IsValid)
                {
                    if (modelo.Id == 0)
                    {
                        string chave = Path.GetRandomFileName().Replace(".", "");
                        modelo.TrocarSenha    = chave;
                        modelo.Ativo          = true;
                        modelo.DataCriacao    = DateTime.Now;
                        modelo.PrimeiroAcesso = true;
                        modelo.ContaTentativa = 0;
                        modelo.Senha          = PasswordHash.CreateHash(modelo.Login);
                        modelo.DataAtivacao   = null;
                        modelo.Principal      = false;
                        modelo.CPF            = Mascara.RemoverMascaraCpfCnpj(modelo.CPF);

                        var usuario = Mapper.Map <Usuario>(modelo);
                        usuarioBP.IncluirUsuarioPadraoSenha(usuario, null, modelo.SelectedGroupsPapel, modelo.SelectedGroupsPerfil);
                        return(RedirectToAction("GerenciarContasLst", "Usuario", new { MensagemSucesso = "Usuário criado com Sucesso!" }));
                    }
                    else if (Acao == "Alterar")
                    {
                        usuarioBP.AlterarMinhaConta(Mapper.Map <Usuario>(modelo),
                                                    modelo.SelectedGroupsPapel,
                                                    modelo.SelectedGroupsPerfil,
                                                    modelo.ContratanteId);

                        return(RedirectToAction("GerenciarContasLst", "Usuario", new { MensagemSucesso = "Usuário alterado com Sucesso!" }));
                    }
                    else if (Acao == "Excluir")
                    {
                        usuarioBP.ExcluirUsuario(modelo.Id);

                        return(RedirectToAction("GerenciarContasLst", "Usuario", new { MensagemSucesso = "Usuário Excluir com Sucesso!" }));
                    }
                }
            }
            catch (Exception ex)
            {
                Log.Error(ex);

                if (Acao == "Excluir")
                {
                    ModelState.AddModelError("", "Não é possível excluir este Usuário.");
                }
                else
                {
                    throw ex;
                }
            }
            return(View(modelo));
        }