public ActionResult CadastroAdm([FromBody] ReqCadastroAdm usuario, [FromHeader] string token) { try { if (!Token.ValidarAdm(token)) { return(StatusCode(401, $"Usuário não autorizado para essa operação")); } return(Ok(this.SuperUsuarioHandler.Cadastro(usuario))); } catch (Exception ex) { return(StatusCode(500, $"Ocorreu uma falha na sua solicitação: {ex.Message}")); } }
public string Cadastro(ReqCadastroAdm usuario) { if (usuario == null) { return("Falha ao receber as informações do usuario"); } List <string> inconsistencias = new List <string>(); if (string.IsNullOrWhiteSpace(usuario.Login)) { inconsistencias.Add("Login não pode estar em branco"); } else { if (usuario.Login.Length < 4) { inconsistencias.Add("Login deve ter no mínimo 4 caracteres"); } else { if (this.UsuarioBD.PegarUsuarioPeloLoginEmail(usuario.Login) != null) { inconsistencias.Add("Este login já está em uso"); } } } if (string.IsNullOrWhiteSpace(usuario.Email)) { inconsistencias.Add("Email não pode estar em branco"); } else { if (!usuario.Email.Contains("@")) { inconsistencias.Add("Email inválido"); } else { if (this.UsuarioBD.PegarUsuarioPeloEmail(usuario.Email) != null) { inconsistencias.Add("Email já foi cadastrado"); } } } if (inconsistencias.Count > 0) { return(string.Join(" - ", inconsistencias)); } Usuario usuarioCadastro = new Usuario() { Email = usuario.Email, Experiencia = 0, Login = usuario.Login, Senha = Criptografia.Criptografar(Gerador.Palavra(8)), IsAdmin = true }; string retorno = this.UsuarioBD.CadastrarUsuario(usuarioCadastro); UsuarioHandler.LembrarSenha(usuarioCadastro.Email); return(retorno); }