Exemple #1
0
        public ICommandResult Handler(AlterarSenhaCommand command)
        {
            command.Validar();

            if (command.Invalid)
            {
                return(new GenericCommandResult(false, "Dados Inválidos", command.Notifications));
            }

            var usuarioAdminExiste = _adminRepositorio.BuscarPorEmail(command.Email);

            if (usuarioAdminExiste != null)
            {
                _ = SendEmailGrid.EnviarEmail(usuarioAdminExiste.Email, usuarioAdminExiste.NomeUsuario,
                                              "Confirmação de alteração de senha", "Senha alterada com sucesso!", "Conforme a solicitação da alteração de senha, confirmamos que sua senha foi alterada com sucesso, faça o login na plataforma inserindo os novos dados, muito obrigado!", null);

                command.Senha = Senha.CriptografarSenha(command.Senha);

                usuarioAdminExiste.Alterarsenha(command.Senha);

                _adminRepositorio.Alterar(usuarioAdminExiste);

                return(new GenericCommandResult(true, "Senha alterada com sucesso", usuarioAdminExiste));
            }

            var usuarioAlunoExiste = _alunoRepositorio.BuscarPorEmail(command.Email);

            if (usuarioAlunoExiste != null)
            {
                _ = SendEmailGrid.EnviarEmail(usuarioAlunoExiste.Email, usuarioAlunoExiste.NomeUsuario,
                                              "Confirmação de alteração de senha", "Senha alterada com sucesso!", "Conforme a solicitação da alteração de senha, confirmamos que sua senha foi alterada com sucesso, faça o login na plataforma inserindo os novos dados, muito obrigado!", null);

                command.Senha = Senha.CriptografarSenha(command.Senha);

                usuarioAlunoExiste.Alterarsenha(command.Senha);

                _alunoRepositorio.Alterar(usuarioAlunoExiste);

                return(new GenericCommandResult(true, "Senha alterada com sucesso", usuarioAlunoExiste));
            }

            var usuarioProfessorExiste = _professorRepositorio.BuscarProfessorPorEmail(command.Email);

            if (usuarioProfessorExiste != null)
            {
                _ = SendEmailGrid.EnviarEmail(usuarioAlunoExiste.Email, usuarioAlunoExiste.NomeUsuario,
                                              "Confirmação de alteração de senha", "Senha alterada com sucesso!", "Conforme a solicitação da alteração de senha, confirmamos que sua senha foi alterada com sucesso, faça o login na plataforma inserindo os novos dados, muito obrigado!", null);

                command.Senha = Senha.CriptografarSenha(command.Senha);

                usuarioProfessorExiste.Alterarsenha(command.Senha);

                _professorRepositorio.AlterarProfessor(usuarioProfessorExiste);

                return(new GenericCommandResult(true, "Senha alterada com sucesso", usuarioProfessorExiste));
            }

            return(new GenericCommandResult(true, "Usuário não encontrado", null));
        }
Exemple #2
0
        public ICommandResult Handler(EsqueciSenhaCommand command)
        {
            command.Validar();

            if (command.Invalid)
            {
                return(new GenericCommandResult(false, "Dados Inválidos", command.Notifications));
            }

            var novaSenha = Senha.Gerar();

            var novaSenhaEncriptografada = Senha.CriptografarSenha(novaSenha);


            var usuarioAdminExiste = _adminRepositorio.BuscarPorEmail(command.Email);

            if (usuarioAdminExiste != null)
            {
                _ = SendEmailGrid.EnviarEmail(usuarioAdminExiste.Email, usuarioAdminExiste.NomeUsuario,
                                              "Confirmação de nova senha", "Senha alterada com sucesso!", $"Conforme a solicitação da alteração de senha, nos da plataforma CodeTur disponibizamos uma nova senha para você, faça o login na plataforma inserindo os novos dados e sinta-se a vontade para altera-lá quando precisar, muito obrigado!<br><br>Sua nova senha é: ", novaSenha);

                usuarioAdminExiste.Alterarsenha(novaSenhaEncriptografada);

                _adminRepositorio.Alterar(usuarioAdminExiste);

                return(new GenericCommandResult(true, "Nova senha gerada com sucesso", novaSenha));
            }

            var usuarioAlunoExiste = _alunoRepositorio.BuscarPorEmail(command.Email);

            if (usuarioAlunoExiste != null)
            {
                _ = SendEmailGrid.EnviarEmail(usuarioAlunoExiste.Email, usuarioAlunoExiste.NomeUsuario,
                                              "Confirmação de nova senha", "Senha alterada com sucesso!", $"Conforme a solicitação da alteração de senha, nos da plataforma CodeTur disponibizamos uma nova senha para você, faça o login na plataforma inserindo os novos dados e sinta-se a vontade para altera-lá quando precisar, muito obrigado!<br><br>Sua nova senha é: ", novaSenha);

                usuarioAlunoExiste.Alterarsenha(novaSenhaEncriptografada);

                _alunoRepositorio.Alterar(usuarioAlunoExiste);

                return(new GenericCommandResult(true, "Nova senha gerada com sucesso", novaSenha));
            }

            var usuarioProfessorExiste = _professorRepositorio.BuscarProfessorPorEmail(command.Email);

            if (usuarioProfessorExiste != null)
            {
                _ = SendEmailGrid.EnviarEmail(usuarioProfessorExiste.Email, usuarioProfessorExiste.NomeUsuario,
                                              "Confirmação de nova senha", "Senha alterada com sucesso!", $"Conforme a solicitação da alteração de senha, nos da plataforma CodeTur disponibizamos uma nova senha para você, faça o login na plataforma inserindo os novos dados e sinta-se a vontade para altera-lá quando precisar, muito obrigado!<br><br>Sua nova senha é: ", novaSenha);

                usuarioProfessorExiste.Alterarsenha(novaSenhaEncriptografada);

                _professorRepositorio.AlterarProfessor(usuarioProfessorExiste);

                return(new GenericCommandResult(true, "Nova senha gerada com sucesso", novaSenha));
            }

            return(new GenericCommandResult(true, "Usuário não encontrado", null));
        }
        public ICommandResult Handler(AlterarProfessorCommand command)
        {
            command.Validar();

            if (command.Invalid)
            {
                return(new GenericCommandResult(false, "Dados Inválidos!", command.Notifications));
            }

            var professorExiste = _professorRepositorio.BuscarProfessorPorId(command.Id);

            if (professorExiste == null)
            {
                return(new GenericCommandResult(false, "Professor não encontrado", null));
            }

            if (command.Email != professorExiste.Email)
            {
                var novoEmailExistente = _professorRepositorio.BuscarProfessorPorEmail(command.Email);

                if (novoEmailExistente != null)
                {
                    return(new GenericCommandResult(false, "Este e-mail já está vinculado a uma conta, informe outro email", command.Notifications));
                }
            }

            professorExiste.AlterarProfessor(command.Nome, command.Email, command.Telefone, command.FotoProfessor);

            if (professorExiste.Invalid)
            {
                return(new GenericCommandResult(false, "Dados inválidos", professorExiste.Notifications));
            }

            _professorRepositorio.AlterarProfessor(professorExiste);

            return(new GenericCommandResult(true, "Dados alterador com sucesso", professorExiste));
        }