public ICommandResult Handler(CadastrarProfessorCommand command) { command.Validar(); if (command.Invalid) { return(new GenericCommandResult(false, "Dados Inválidos!", command.Notifications)); } var professorExiste = _professorRepositorio.BuscarProfessorPorEmail(command.Email); if (professorExiste != null) { return(new GenericCommandResult(false, "Email já cadastrado", null)); } command.Senha = Senha.CriptografarSenha(command.Senha); var professor = new Professor(command.Nome, command.Email, command.Email, command.Telefone, command.FotoProfessor); if (professor.Valid) { _professorRepositorio.AdicionarProfessor(professor); } _ = SendEmailGrid.EnviarEmail(professor.Email, professor.NomeUsuario, "Criação de conta na plataforma carometro", "Seu cadastro foi realizado", "Seu cadastro foi realizado", "Olá, é um grande prazer receber você na nossa plataforma Carometro, para acessar nossa plataforma basta inserir seu email de contrato para os pametros de email e senha" ); return(new GenericCommandResult(true, "Professor cadastrado com sucesso", professor)); }
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)); }
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 IQueryResult Handle(BuscarProfessorQuery command) { command.Validate(); if (command.BuscarEmail != null) { if (command.Invalid) { return(new GenericQueryResult(false, "Dados inválidos", command.Notifications)); } var professorProcuradoEmail = _repositorio.BuscarProfessorPorEmail(command.BuscarEmail); if (professorProcuradoEmail == null) { return(new GenericQueryResult(false, "Professor não encontrado", null)); } var professorEmailResult = new BuscarProfessorResult { Id = professorProcuradoEmail.Id, NomeUsuario = professorProcuradoEmail.NomeUsuario, Email = professorProcuradoEmail.Email, Telefone = professorProcuradoEmail.Telefone, FotoProfessor = professorProcuradoEmail.FotoProfessor, }; return(new GenericQueryResult(true, "Dados do professor", professorEmailResult)); } var professorProcurado = _repositorio.BuscarProfessorPorId(command.BuscarId); if (professorProcurado == null) { return(new GenericQueryResult(false, "Professor não encontrado", null)); } var professorResult = new BuscarProfessorResult { Id = professorProcurado.Id, NomeUsuario = professorProcurado.NomeUsuario, Email = professorProcurado.Email, Telefone = professorProcurado.Telefone, FotoProfessor = professorProcurado.FotoProfessor, }; return(new GenericQueryResult(true, "Dados do professor", professorResult)); }
public ICommandResult Handler(LogarCommand command) { command.Validar(); if (command.Invalid) { return(new GenericCommandResult(false, "Dados Inválidos", command.Notifications)); } var usuarioAdminExiste = _adminRepositorio.BuscarPorEmail(command.Email); if (usuarioAdminExiste != null) { if (!Senha.Validar(command.Senha, usuarioAdminExiste.Senha)) { return(new GenericCommandResult(false, "Senha inválida", command.Notifications)); } return(new GenericCommandResult(true, "Usuário Logado com sucesso", usuarioAdminExiste)); } var usuarioAlunoExiste = _alunoRepositorio.BuscarPorEmail(command.Email); if (usuarioAlunoExiste != null) { if (!Senha.Validar(command.Senha, usuarioAlunoExiste.Senha)) { return(new GenericCommandResult(false, "Senha inválida", command.Notifications)); } return(new GenericCommandResult(true, "Usuário Logado com sucesso", usuarioAlunoExiste)); } var usuarioProfessorExiste = _professorRepositorio.BuscarProfessorPorEmail(command.Email); if (usuarioProfessorExiste != null) { if (!Senha.Validar(command.Senha, usuarioProfessorExiste.Senha)) { return(new GenericCommandResult(false, "Senha inválida", command.Notifications)); } return(new GenericCommandResult(true, "Professor logado com sucesoo", usuarioProfessorExiste)); } return(new GenericCommandResult(false, "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)); }