/// <summary> /// Exibe login do operador e pede usuário e senha /// </summary> /// <param name="pListOperadores">Lista de operadores</param> /// <returns></returns> public static Operador ExecutaLoginOperador(List <Operador> pListOperadores) { Operador operador = null; string user = null; do { Console.WriteLine(); Console.WriteLine("---- LOGIN DO OPERADOR ----"); Console.Write("Usuário: "); user = EeS.ReadConsoleLine(); operador = Operador.BuscaOperador(pListOperadores, user); } while (operador == null); string pass = null; bool senhaCorreta = true; do { if (!senhaCorreta) { Console.WriteLine("Senha incorreta!"); } Console.Write("Senha: "); pass = EeS.ReadConsoleLine(); } while (!(senhaCorreta = Password.CompararSenhas(pass, operador.Salt, operador.Senha))); return(operador); }
/// <summary> /// Solicita dados e insere novo operador /// </summary> private static void InserirOperador() { try { Console.WriteLine("Inserir novo operador"); Console.WriteLine("Digite o usuário: "); string entradaUsuario = EeS.ReadConsoleLine(); bool operadorDisponivel = false; Operador operador = null; do { operadorDisponivel = true; if ((operador = Operador.BuscaOperador(pListOperadores: listOperadores, entradaUsuario, pVerboseForAvailability: true)) != null) { operadorDisponivel = false; Console.WriteLine("Tente outro usuário: "); entradaUsuario = EeS.ReadConsoleLine(); } } while (operadorDisponivel == false); Console.Write("Digite o Nome do Operador: "); string entradaNome = EeS.ReadConsoleLine(); Console.Write("Crie a senha do operador: "); String entradaSenha = EeS.ReadConsoleLine(); Operador novoOperador = new Operador(pUsuario: entradaUsuario, pSenha: entradaSenha, pNome: entradaNome); listOperadores.Add(novoOperador); //salva o arquivo incluindo o novo operador ArmazenaDados.SaveList(pathListOperadoresFile, listOperadores); logger.Trace("Operador Criado: " + novoOperador.ToString()); } catch (Exception ex) { logger.Error(ex); } }
/// <summary> /// solicita dados e exclui operador /// </summary> private static void ExcluirOperador() { try { Console.WriteLine("Excluir Operador"); Operador operador = null; Console.WriteLine("Digite o usuário a ser excluído: "); string entradaUsuario = EeS.ReadConsoleLine(); if (operadorLogado.Usuario.Equals(entradaUsuario)) { Console.WriteLine("Você não pode excluir a si mesmo."); //todo incluir logoff automático em caso se autoexclusao return; } if ((operador = Operador.BuscaOperador(pListOperadores: listOperadores, pUsuario: entradaUsuario, pVerboseForAvailability: false)) == null) { return; } if (!operadorLogado.SolicitarSenha()) { return; } if (listOperadores.Remove(operador)) { //salva o arquivo incluindo o novo operador ArmazenaDados.SaveList(pathListOperadoresFile, listOperadores); logger.Trace($"Operador [{operador.Usuario}] removido com sucesso!"); } } catch (Exception ex) { logger.Error(ex); } }