public async Task <string> SolicitarRecuperacaoSenha(string login) { var usuario = repositorioUsuario.ObterPorCodigoRfLogin(null, login); var usuarioCore = await servicoEOL.ObterMeusDados(login); if (usuarioCore == null) { throw new NegocioException("Usuário não encontrado."); } if (usuario == null) { usuario = servicoUsuario.ObterUsuarioPorCodigoRfLoginOuAdiciona(usuarioCore.CodigoRf, null, usuarioCore.Nome, usuarioCore.Email); } if (usuario.Perfis == null || !usuario.Perfis.Any()) { await servicoEOL.RelecionarUsuarioPerfis(login); } usuario.DefinirPerfis(await servicoUsuario.ObterPerfisUsuario(login)); usuario.DefinirEmail(usuarioCore.Email); usuario.IniciarRecuperacaoDeSenha(); repositorioUsuario.Salvar(usuario); EnviarEmailRecuperacao(usuario, usuarioCore.Email); return(usuarioCore.Email); }
public async Task <IActionResult> ListarPerfisUsuario(string login, [FromServices] IServicoUsuario servicoUsuario) { var retorno = await servicoUsuario.ObterPerfisUsuario(login); if (retorno == null || !retorno.Any()) { return(NoContent()); } return(Ok(retorno)); }