public bool Autenticar(ref UsuarioAutenticarDTO usuarioDTO) { bool retorno; try { var usuarioModel = new UsuarioModel(usuarioDTO.Login, usuarioDTO.Senha); var usuario = _database.Usuario.FirstOrDefault(u => u.Login_Usuario.Equals(usuarioModel.Login_Usuario) && u.Senha.Equals(usuarioModel.Senha) && u.Ativo == false); if (usuario != null) { usuarioDTO.IdUsuario = usuario.Id_Usuario; usuarioDTO.Login = usuario.Login_Usuario; usuarioDTO.Senha = usuario.Senha; retorno = true; } else { retorno = false; } } catch (Exception e) { throw e; } return(retorno); }
private async void Login(UsuarioAutenticarDTO usuario, ListaPerfilsDeUsuarioResultadoDTO respostaPerfilUsuario) { var claims = new List <Claim> { new Claim(ClaimTypes.Name, usuario.Login), new Claim("IdUsuario", usuario.IdUsuario.ToString()) }; foreach (var perfil in respostaPerfilUsuario.PerfilsDeUsuario) { var claim = new Claim("IdPerfil", perfil.IdPerfil.ToString()); claims.Add(claim); } var identidadeDeUsuario = new ClaimsIdentity(claims, "Login"); ClaimsPrincipal claimPrincipal = new ClaimsPrincipal(identidadeDeUsuario); var propriedadesDeAutenticacao = new AuthenticationProperties { AllowRefresh = true, ExpiresUtc = DateTime.Now.ToLocalTime().AddHours(2), IsPersistent = true }; await HttpContext.SignInAsync(CookieAuthenticationDefaults.AuthenticationScheme, claimPrincipal, propriedadesDeAutenticacao); }
public List <PerfilDeUsuarioDTO> ListarPerfilsDeUsuario(UsuarioAutenticarDTO usuario) { List <PerfilDeUsuarioDTO> list = new List <PerfilDeUsuarioDTO>(); try { SqlCommand cmd = new SqlCommand(); cmd.Connection = con.Conectar(); cmd.CommandText = @"SELECT p.* FROM acesso a inner JOIN Usuario u ON (u.id_usuario = a.id_usuario) inner JOIN Perfil p ON (p.id_perfil = a.id_perfil) WHERE a.id_usuario = @idUsuario"; cmd.Parameters.AddWithValue("@idUsuario", usuario.IdUsuario); SqlDataReader dr = cmd.ExecuteReader(); while (dr.Read()) { PerfilDeUsuarioDTO perfilDeUsuarioDTO = new PerfilDeUsuarioDTO(); perfilDeUsuarioDTO.IdPerfil = Convert.ToInt32(dr["id_perfil"]); perfilDeUsuarioDTO.NomePerfil = dr["nome_perfil"].ToString(); list.Add(perfilDeUsuarioDTO); } con.Desconectar(); } catch (Exception e) { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine(e.Message); Console.ForegroundColor = ConsoleColor.White; } return(list); }
private static void ApresentarDadosUsuario(UsuarioAutenticarDTO usuarioAutenticarDTO, List <PerfilDeUsuarioDTO> list) { Console.WriteLine("\n\n<=====DADOS DO USUÁRIO=====>\n"); Console.WriteLine("Id: " + usuarioAutenticarDTO.IdUsuario); Console.WriteLine("Login: "******"Senha: " + usuarioAutenticarDTO.Senha); Console.WriteLine("Acesso:"); foreach (var item in list) { Console.WriteLine("\t- " + item.NomePerfil); } }
public IActionResult Autenticar(UsuarioAutenticarDTO usuario) { try { if (ModelState.IsValid) { var respostaAutenticarUsuario = _serviceUsuario.Autenticar(ref usuario); if (respostaAutenticarUsuario.Erros.Count() > 0) { ErrosView listaErros = new ErrosView(); listaErros.Erros.AddRange(Erros.ListarErros(respostaAutenticarUsuario.Erros)); return(View("../Home/ExibirErros", listaErros)); } else { if (respostaAutenticarUsuario.RetornoAutenticacaoUsuario) { var respostaPerfilUsuario = _serviceUsuario.ListarPerfilsDeUsuario(usuario); if (respostaPerfilUsuario.Erros.Count() > 0) { ErrosView listaErros = new ErrosView(); listaErros.Erros.AddRange(Erros.ListarErros(respostaPerfilUsuario.Erros)); return(View("../Home/ExibirErros", listaErros)); } else { Login(usuario, respostaPerfilUsuario); return(RedirectToAction("Clientes", "Home")); } } else { ViewBag.AcessoNegado = "Acesso negado"; return(View("../Home/Index")); } } } else { return(View("../Home/Index")); } } catch (Exception e) { ErrosView listaErros = new ErrosView(); listaErros.Erros.Add(e.Message); return(View("../Home/ExibirErros", listaErros)); } }
private static void CadastrarCliente(UsuarioAutenticarDTO usuario) { Console.WriteLine("\n\nCadastrar cliente"); ClienteCadastroDTO clienteDTO = new ClienteCadastroDTO(); try { Console.Write("Nome: "); clienteDTO.Nome = Console.ReadLine(); Console.Write("CPF: "); clienteDTO.Cpf = Console.ReadLine(); Console.Write("RG: "); clienteDTO.Rg = Console.ReadLine(); Console.Write("Data de nascimento: "); clienteDTO.DataNascimento = Convert.ToDateTime(Console.ReadLine()); Console.Write("Email: "); clienteDTO.Email = Console.ReadLine(); Console.Write("Número de telefone: "); clienteDTO.NumeroTelefone = Console.ReadLine(); Console.Write("CEP: "); clienteDTO.Cep = Console.ReadLine(); Console.Write("Rua: "); clienteDTO.Rua = Console.ReadLine(); Console.Write("Número da casa: "); clienteDTO.Numero = Console.ReadLine(); Console.Write("Complemento: "); clienteDTO.Complemento = Console.ReadLine(); Console.Write("Bairro: "); clienteDTO.Bairro = Console.ReadLine(); Console.Write("Id cidade: "); clienteDTO.IdCidade = int.Parse(Console.ReadLine()); clienteDTO.IdUsuario = usuario.IdUsuario; ClienteService cliente = new ClienteService(new ClienteDAL()); var respostaCadastro = cliente.CadastrarCliente(clienteDTO); if (respostaCadastro != null) { ExibirErros(respostaCadastro.Erros); } } catch (Exception e) { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine(e.Message); Console.ForegroundColor = ConsoleColor.White; } }
public ListaPerfilsDeUsuarioResultadoDTO ListarPerfilsDeUsuario(UsuarioAutenticarDTO usuarioDTO) { ListaPerfilsDeUsuarioResultadoDTO listaPerfilsDeUsuarioResultado = new ListaPerfilsDeUsuarioResultadoDTO(); var erros = ValidacaoService.ValidarErros(usuarioDTO); if (erros.Count() > 0) { listaPerfilsDeUsuarioResultado.Erros.AddRange(erros); return(listaPerfilsDeUsuarioResultado); } else { listaPerfilsDeUsuarioResultado.PerfilsDeUsuario.AddRange(_usuarioDAL.ListarPerfilsDeUsuario(usuarioDTO)); return(listaPerfilsDeUsuarioResultado); } }
public UsuarioAutenticarResultadoDTO Autenticar(ref UsuarioAutenticarDTO usuarioDTO) { UsuarioAutenticarResultadoDTO usuarioAutenticarResultado = new UsuarioAutenticarResultadoDTO(); var erros = ValidacaoService.ValidarErros(usuarioDTO); if (erros.Count() > 0) { usuarioAutenticarResultado.Erros.AddRange(erros); return(usuarioAutenticarResultado); } else { usuarioAutenticarResultado.RetornoAutenticacaoUsuario = _usuarioDAL.Autenticar(ref usuarioDTO); return(usuarioAutenticarResultado); } }
public bool Autenticar(ref UsuarioAutenticarDTO usuario) { try { SqlCommand cmd = new SqlCommand(); cmd.Connection = con.Conectar(); cmd.CommandText = @"SELECT * FROM Usuario WHERE login_usuario = @login AND senha = @senha AND ativo = 0"; cmd.Parameters.AddWithValue("@login", usuario.Login); cmd.Parameters.AddWithValue("@senha", usuario.Senha); SqlDataReader dr = cmd.ExecuteReader(); bool retorno; if (dr.HasRows) { dr.Read(); usuario.IdUsuario = Convert.ToInt32(dr["id_usuario"]); usuario.Login = dr["login_usuario"].ToString(); usuario.Senha = dr["senha"].ToString(); dr.Close(); retorno = true; } else { retorno = false; } con.Desconectar(); return(retorno); } catch (Exception e) { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine(e.Message); Console.ForegroundColor = ConsoleColor.White; return(false); } }
public List <PerfilDeUsuarioDTO> ListarPerfilsDeUsuario(UsuarioAutenticarDTO usuarioDTO) { List <PerfilDeUsuarioDTO> list = new List <PerfilDeUsuarioDTO>(); try { var usuarioModel = new UsuarioModel(usuarioDTO.IdUsuario, usuarioDTO.Login, null); var perfils = _database.Acesso.Where(a => a.Id_Usuario == usuarioModel.Id_Usuario).Include(a => a.Perfil).ToList(); foreach (var perfil in perfils) { PerfilDeUsuarioDTO perfilDeUsuarioDTO = new PerfilDeUsuarioDTO(); perfilDeUsuarioDTO.IdPerfil = perfil.Perfil.Id_Perfil; perfilDeUsuarioDTO.NomePerfil = perfil.Perfil.Nome_Perfil; list.Add(perfilDeUsuarioDTO); } } catch (Exception e) { throw e; } return(list); }
private static void EnviarAnaliseGerencia(UsuarioAutenticarDTO usuario) { Console.WriteLine("\n\nEnviar cliente para análise da gerência"); try { FluxoDTO fluxoDTO = new FluxoDTO(); fluxoDTO.IdCliente = InformarIdCliente(); fluxoDTO.IdUsuario = usuario.IdUsuario; FluxoService fluxo = new FluxoService(new FluxoDAL()); var respostaFluxo = fluxo.EnviarAnaliseGerencia(fluxoDTO); if (respostaFluxo != null) { ExibirErros(respostaFluxo.Erros); } } catch (Exception e) { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine(e.Message); Console.ForegroundColor = ConsoleColor.White; } }
private static void CorrecaoDeCadastro(UsuarioAutenticarDTO usuario) { Console.WriteLine("\n\nCorreção de cadastro"); try { FluxoDTO fluxoDTO = new FluxoDTO(); fluxoDTO.IdCliente = InformarIdCliente(); fluxoDTO.IdUsuario = usuario.IdUsuario; FluxoService fluxo = new FluxoService(new FluxoDAL()); var respostaFluxo = fluxo.CorrecaoDeCadastro(fluxoDTO); if (respostaFluxo != null) { ExibirErros(respostaFluxo.Erros); } } catch (Exception e) { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine(e.Message); Console.ForegroundColor = ConsoleColor.White; } }
static void Main(string[] args) { Console.WriteLine("\n\nAutenticação"); try { UsuarioAutenticarDTO usuarioAutenticarDTO = new UsuarioAutenticarDTO(); Console.Write("\nLogin: "******"\nSenha: "); usuarioAutenticarDTO.Senha = Console.ReadLine(); UsuarioService usuarioService = new UsuarioService(new UsuarioDAL()); Console.Clear(); var respostaAutenticarUsuario = usuarioService.Autenticar(ref usuarioAutenticarDTO); if (respostaAutenticarUsuario.Erros.Count() > 0) { ExibirErros(respostaAutenticarUsuario.Erros); } if (respostaAutenticarUsuario.RetornoAutenticacaoUsuario) { var respostaPerfilUsuario = usuarioService.ListarPerfilsDeUsuario(usuarioAutenticarDTO); if (respostaPerfilUsuario.Erros.Count() > 0) { ExibirErros(respostaPerfilUsuario.Erros); } ApresentarDadosUsuario(usuarioAutenticarDTO, respostaPerfilUsuario.PerfilsDeUsuario); int opcao = ObterOpcao(); while (opcao != 0) { Console.Clear(); switch (opcao) { case 1: if (respostaPerfilUsuario.PerfilsDeUsuario.Any(l => l.IdPerfil == (int)EPerfil.Operacao)) { CadastrarCliente(usuarioAutenticarDTO); } else { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine("\n\nAcesso negado"); Console.ForegroundColor = ConsoleColor.White; } break; case 2: if (respostaPerfilUsuario.PerfilsDeUsuario.Any(l => l.IdPerfil == (int)EPerfil.Operacao)) { EnviarAnaliseGerencia(usuarioAutenticarDTO); } else { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine("\n\nAcesso negado"); Console.ForegroundColor = ConsoleColor.White; } break; case 3: if (respostaPerfilUsuario.PerfilsDeUsuario.Any(l => l.IdPerfil == (int)EPerfil.Gerencia)) { EnviarAnaliseControleDeRisco(usuarioAutenticarDTO); // juntar com aprovar } else { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine("\n\nAcesso negado"); Console.ForegroundColor = ConsoleColor.White; } break; case 4: if (respostaPerfilUsuario.PerfilsDeUsuario.Any(l => l.IdPerfil == (int)EPerfil.Gerencia || l.IdPerfil == (int)EPerfil.Controle_de_risco)) { AprovarFluxo(usuarioAutenticarDTO); } else { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine("\n\nAcesso negado"); Console.ForegroundColor = ConsoleColor.White; } break; case 5: if (respostaPerfilUsuario.PerfilsDeUsuario.Any(l => l.IdPerfil == (int)EPerfil.Gerencia || l.IdPerfil == (int)EPerfil.Controle_de_risco)) { ReprovarFluxo(usuarioAutenticarDTO); } else { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine("\n\nAcesso negado"); Console.ForegroundColor = ConsoleColor.White; } break; case 6: if (respostaPerfilUsuario.PerfilsDeUsuario.Any(l => l.IdPerfil == (int)EPerfil.Gerencia || l.IdPerfil == (int)EPerfil.Controle_de_risco)) { CorrecaoDeCadastro(usuarioAutenticarDTO); } else { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine("\n\nAcesso negado"); Console.ForegroundColor = ConsoleColor.White; } break; case 7: if (respostaPerfilUsuario.PerfilsDeUsuario.Any(l => l.IdPerfil == (int)EPerfil.Operacao)) { DevolverCadastro(usuarioAutenticarDTO); } else { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine("\n\nAcesso negado"); Console.ForegroundColor = ConsoleColor.White; } break; default: Console.Clear(); Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine("\n\nOpção inválida!!!"); Console.ForegroundColor = ConsoleColor.White; break; } ApresentarDadosUsuario(usuarioAutenticarDTO, respostaPerfilUsuario.PerfilsDeUsuario); opcao = ObterOpcao(); } } else { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine("\n\nAcesso negado"); Console.ForegroundColor = ConsoleColor.White; } Console.WriteLine("\n\nAté a próxima!!!"); Console.ReadKey(); } catch (Exception e) { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine(e.Message); Console.ForegroundColor = ConsoleColor.White; } }