public void Persistir(ProjetoEntidade projeto, UsuarioEntidade usuarioLogado) { if (projeto.Id == 0) { var usuarioDaBase = usuarioRepositorio.BuscarPorEmail(usuarioLogado); projeto.Usuario = usuarioDaBase; projetoRepositorio.Criar(projeto); } else { this.verificarPermissao(projeto, usuarioLogado); projetoRepositorio.Editar(projeto); } }
public ICommandResult Handle(LogarCommand command) { //Validações no Sistema command.Validar(); if (command.Invalid) { return(new GenericCommandResult(false, "Email ou senha Inválidos", command.Notifications)); } //Verifica a existencia do Email var usuarioexiste = _repositorio.BuscarPorEmail(command.Email); if (usuarioexiste == null) { return(new GenericCommandResult(false, "Email inválido", command.Notifications)); } //Validação da Senha if (!Senha.Validar(command.Senha, usuarioexiste.Senha)) { return(new GenericCommandResult(false, "Senha inválida", command.Notifications)); } return(new GenericCommandResult(true, "Usuário logado", usuarioexiste)); }
public ICommandResult Handle(LogarCommand command) { //Comand é valido command.Validar(); if (command.Invalid) { return(new GenericCommandResult(false, "Dados inválidos", command.Notifications)); } //Buscar usuario pelo email var usuario = _repositorio.BuscarPorEmail(command.Email); //Usuario existe if (usuario == null) { return(new GenericCommandResult(false, "Email inválido", null)); } //Validar Senha if (!Senha.Validar(command.Senha, usuario.Senha)) { return(new GenericCommandResult(false, "Senha inválida", null)); } //retorna true com os dados do usuário return(new GenericCommandResult(true, "Usuário Logado", usuario)); }
public ICommandResult Handle(CriarUsuarioCommand command) { command.Validar(); if (command.Invalid) { return(new GerencCommandResult(false, "informe corretamente os dados", command.Notifications)); } var usarioExiste = _usuarioRepositorio.BuscarPorEmail(command.Email); if (usarioExiste != null) { return(new GerencCommandResult(false, "Email ja cadastrado, informe outro email", null)); } command.Senha = Senha.Criptografar(command.Senha); var usuario = new Usuario(command.Nome, command.Email, command.Senha, command.TipoUsuario); if (!string.IsNullOrEmpty(command.Telefone)) { usuario.AdicionarTelefone(command.Telefone); } if (usuario.Invalid) { return(new GerencCommandResult(false, "Dados de usuario Invalidos", usuario.Notifications)); } _usuarioRepositorio.Adicionar(usuario); return(new GerencCommandResult(true, "Usuario", usuario)); }
public ICommandResult Handle(EsqueciSenhaCommadn command) { command.Validar(); if (command.Invalid) { return(new GerencCommandResult(false, "Dados inválidos", command.Notifications)); } var usuario = _repositorio.BuscarPorEmail(command.Email); if (usuario == null) { return(new GerencCommandResult(false, "Email inválido", null)); } string senha = Senha.Gerar(); usuario.AlterarSenha(Senha.Criptografar(senha)); if (usuario.Invalid) { return(new GerencCommandResult(false, "Dados inválidos", usuario.Notifications)); } _repositorio.Alterar(usuario); return(new GerencCommandResult(true, "Uma nova senha foi criada e enviada para o seu e-mail, verifique!!!", null)); }
public ICommandResult Handle(CriarContaCommand command) { //Faz as Validações command.Validar(); if (command.Invalid) { return(new GenericCommandResult(false, "Dados inválidos", command.Notifications)); } //Verificação de Emails já existentes var usuarioExiste = _repositorio.BuscarPorEmail(command.Email); if (usuarioExiste != null) { return(new GenericCommandResult(false, "Email já cadastrado", null)); } //Produz a entidade Usuario var usuario = new Codetur.Dominio.Entidades.Usuario(command.Nome, command.Email, command.Senha, command.TipoUsuario); if (usuario.Invalid) { return(new GenericCommandResult(false, "Dados inválidos", usuario.Notifications)); } if (!string.IsNullOrEmpty(command.Telefone)) { usuario.AdicionarTelefone(command.Telefone); } //Criptografa a Senha usuario.AlterarSenha(Senha.CriptografarSenha(command.Senha)); if (usuario.Invalid) { return(new GenericCommandResult(false, "Dados inválidos", usuario.Notifications)); } //Salva o novo Usuario no Banco _repositorio.Adicionar(usuario); //Email de Boas Vindas return(new GenericCommandResult(true, "Conta criada com Sucesso", null)); }
public ICommandResult Handle(AlterarUsuarioCommand command) { // Validações no Sitema command.Validar(); if (command.Invalid) { return(new GenericCommandResult(false, "Dados inválidos", command.Notifications)); } //Verificação de Email já existentes var usuario = _repositorio.BuscarPorId(command.IdUsuario); if (usuario == null) { return(new GenericCommandResult(false, "Usuário não encontrado", null)); } //Verifica se Outro Usuario já tem o mesmo e-mail cadastrado if (usuario.Email != command.Email) { var emailExiste = _repositorio.BuscarPorEmail(command.Email); if (emailExiste != null) { return(new GenericCommandResult(false, "Email já cadastrado", null)); } } usuario.AlterarUsuario(command.Nome, command.Email); if (!string.IsNullOrEmpty(command.Telefone)) { usuario.AdicionarTelefone(command.Telefone); } if (usuario.Invalid) { return(new GenericCommandResult(false, "Dados inválidos", usuario.Notifications)); } //Salva as Alterações do Usuario no bando _repositorio.Alterar(usuario); //Manda email de boas vindas return(new GenericCommandResult(true, "Conta alterada com Sucesso", null)); }
public Usuario BuscarPorAutenticacao(string login, string password) { var usuario = usuarioRepositorio.BuscarPorEmail(login); if (usuario != null) { string senhaCriptografada = servicoCriptografia.CriptografarSenha(password); if (senhaCriptografada == usuario.Senha) { return(usuario); } } return(null); }
public IComandResult Handle(EmailEsqueceuSenhaComand comand) { //verificar se tem notificação no comand if (!comand.IsValid()) { return(new ComandResult(false, "Por favor corrija os campos abaixo", comand.Notifications)); } //verifica se o usuário ja existe var usuario = _repository.BuscarPorEmail(comand.Email); if (usuario == null) { AddNotification("Usuario", "Email não cadastrado!"); } else { usuario.GerarRecuperSenha(); _repository.Alterar(usuario); } if (Invalid) { return(new ComandResult(false, "Por favor corrija os campos abaixo", Notifications)); } var resultato = new ComandResult(true, "Um e-mail foi enviado para o e-email " + usuario.Login, new { usuario.Id, usuario.Login }); if (resultato.Success) { var enviou = _enviarEmailServices.EnviarCodigo("*****@*****.**", new List <string>() { usuario.Login }, "*****@*****.**", null, true, "teste", "<html><body><a href='http://localhost:4200/recuperar-senha/" + usuario.RecuperarSenha + "'><button>Texto do botão</button></a></body></html>", "smtp.gmail.com"); if (enviou) { return(resultato); } } else { AddNotification("Erro", "Email não enviado!"); } return(new ComandResult(false, "Falha em enviar o e-email,tente novamente!", Notifications)); }
public ICommandResult Handle(CriarUsuarioCommand command) { //Cria a instancia do usuario passando os parametros //Verifica se os dados são válidos e se sim, envia um email de boas vindas //Validar command ---------------------------- command.Validar(); //GenericCommandResult - Padronizar as respostas if (command.Invalid) { return(new GenericCommandResult(false, "Dados do usuário inválidos", command.Notifications)); } //Verifica email existe ---------------------------- //Regra de negócio var usuarioExiste = _usuariorepositorio.BuscarPorEmail(command.Email); if (usuarioExiste != null) { return(new GenericCommandResult(false, "Email já cadastrado", null)); } //Criptografar senha --------------------------- command.Senha = Senha.Criptografar(command.Senha); // Salvar Usuario -------------------------- var usuario = new Usuario(command.Nome, command.Email, command.Senha, command.TipoUsuario); //Verifica se passou telefone ou não if (!string.IsNullOrEmpty(command.Telefone)) { usuario.AdicionarTelefone(command.Telefone); } if (usuario.Invalid) { return(new GenericCommandResult(false, "Dados do usuário inválidos", command.Notifications)); } _usuariorepositorio.Adicionar(usuario); //TODO: Enviar Email Boas Vindas ------------------------- //Desafio SendGrid return(new GenericCommandResult(true, "Usuário Criado", null)); }
public ICommandResult Handle(AlterarUsuarioCommand command) { command.Validar(); if (command.Invalid) { return(new GerencCommandResult(false, "Dados inválidos", command.Notifications)); } var usuario = _repositorio.BuscarPorId(command.IdUsuario); if (usuario == null) { return(new GerencCommandResult(false, "Usuário não encontrado", null)); } if (usuario.Email != command.Email) { var emailExiste = _repositorio.BuscarPorEmail(command.Email); if (emailExiste != null) { return(new GerencCommandResult(false, "Email já cadastrado", null)); } } usuario.AlterarUsuario(command.Nome, command.Email); if (!string.IsNullOrEmpty(command.Telefone)) { usuario.AlterarTelefone(command.Telefone); } if (usuario.Invalid) { return(new GerencCommandResult(false, "Dados inválidos", usuario.Notifications)); } _repositorio.Alterar(usuario); return(new GerencCommandResult(true, "Conta alterada com Sucesso", null)); }
public ICommandResult Handle(CriarUsuarioCommand command) { //Fail Fast Validation //Validar command command.Validar(); if (command.Invalid) { return(new GenericCommandResult(false, "Dados inválidos", command.Notifications)); } //Verifica Email Existe var usuarioExiste = _usuarioRepositorio.BuscarPorEmail(command.Email); if (usuarioExiste != null) { return(new GenericCommandResult(false, "Email já cadastrado", null)); } //Criptografar Senha command.Senha = Senha.Criptografar(command.Senha); //Cria instancia do usuario passando os parametros var usuario = new Usuario(command.Nome, command.Email, command.Senha, command.TipoUsuario); //Se passou o telefone altera if (!string.IsNullOrEmpty(command.Telefone)) { usuario.AdicionarTelefone(command.Telefone); } //verifica se os dados do usuario sao validos if (usuario.Invalid) { return(new GenericCommandResult(false, "Usuário inválido", usuario.Notifications)); } _usuarioRepositorio.Adicionar(usuario); //Enviar Email Boas Vinhas return(new GenericCommandResult(true, "Usuário Criado", usuario)); }
public ICommandResult Handle(CriarUsuarioCommand command) { //Fail Fast Validation //Verifica se o command recebido é válido command.Validar(); if (command.Invalid) { return(new GenericCommandResult(false, "Dados inválidos", command.Notifications)); } var usuarioExiste = _usuarioRepositorio.BuscarPorEmail(command.Email); if (usuarioExiste != null) { return(new GenericCommandResult(false, "E-mail já cadastrado, informe outro e-mail", null)); } //TODO: Criptografar Senha //command.Senha = Senha.Criptografar(command.Senha); // Salvar o Banco var usuario = new Usuario(command.Nome, command.Email, command.Senha, command.TipoUsuario); //Verifica se foi passado o telefone, caso sim inclui o mesmo if (!string.IsNullOrEmpty(command.Telefone)) { usuario.AdicionarTelefone(command.Telefone); } if (usuario.Invalid) { return(new GenericCommandResult(false, "Dados inválidos", usuario.Notifications)); } _usuarioRepositorio.Adicionar(usuario); //TODO : Enviar Email de boas Vindas para o meu usuário return(new GenericCommandResult(true, "Usuário Criado", null)); }
public ICommandResult Handle(CriarContaCommand command) { // Validar Command command.Validar(); if (command.Invalid) { return(new GenericCommandResult(false, "Dados do usuário Inválidos", command.Notifications)); } //Verifica se email existe var usuarioExiste = _usuarioRepositorio.BuscarPorEmail(command.Email); if (usuarioExiste != null) { return(new GenericCommandResult(false, "Email já cadastrado", null)); } //Criptografar Senha command.Senha = Senha.Criptografar(command.Senha); //Salvar Usuário var usuario = new Usuario(command.Nome, command.Email, command.Senha, command.TipoUsuario); if (!string.IsNullOrEmpty(command.Telefone)) { usuario.AdicionarTelefone(command.Telefone); } if (usuario.Invalid) { return(new GenericCommandResult(false, "Usuário Inválido", usuario.Notifications)); } _usuarioRepositorio.Adicionar(usuario); //Enviar Email de Boas Vindas //Send Grid return(new GenericCommandResult(true, "Usuário Criado", null)); }
public ICommandResult Handle(ResetarSenhaCommand command) { //Validações no Sistema command.Validar(); if (command.Invalid) { return(new GenericCommandResult(false, "Dados inválidos", command.Notifications)); } //Verificação do Email var usuario = _repositorio.BuscarPorEmail(command.Email); if (usuario == null) { return(new GenericCommandResult(false, "Email inválido", null)); } //Gera a nova senha para o acesso do Usuario string senha = Senha.Gerar(); //Criptografa a Senha usuario.AlterarSenha(Senha.CriptografarSenha(senha)); if (usuario.Invalid) { return(new GenericCommandResult(false, "Dados inválidos", usuario.Notifications)); } //Salvar usuario banco _repositorio.Alterar(usuario); //Envia o email mostrando a nova senha do Usuario return(new GenericCommandResult(true, "Uma nova senha foi criada e enviada para o seu e-mail, verifique!!!", null)); }
public ICommandResult Handle(LoginCommand command) { command.Validar(); if (command.Invalid) { return(new GenericCommandResult(false, "Dados inválidos", command.Notifications)); } var usuario = _usuarioRepositorio.BuscarPorEmail(command.Email); if (usuario == null) { return(new GenericCommandResult(false, "E-mail inválido", null)); } if (!Senha.Validar(command.Senha, usuario.Senha)) { return(new GenericCommandResult(false, "Senha inválida", null)); } return(new GenericCommandResult(true, "Usuário Logado", usuario)); }
public ICommandResult Handle(LogarCommand command) { command.Validar(); if (command.Invalid) { return(new GerencCommandResult(false, "Dados Invalidos", command.Notifications)); } var usuario = _repositorio.BuscarPorEmail(command.Email); if (usuario == null) { return(new GerencCommandResult(false, "Email Invalido", null)); } if (!Senha.Validar(command.Senha, usuario.Senha)) { return(new GerencCommandResult(false, "Senha Invalida", null)); } return(new GerencCommandResult(true, "Usuario Logado", null)); }
public ICommandResult Handle(CriarContaCommand command) { command.Validar(); if (command.Invalid) { return(new GenericCommandResult(false, "Informe corretamente os dados do usuário!", command.Notifications)); } var usuarioExiste = _usuarioRepositorio.BuscarPorEmail(command.Email); if (usuarioExiste != null) { return(new GenericCommandResult(false, "E-mail já cadastrado no sistema, informe outro e-mail!", null)); } command.Senha = Senha.Criptografar(command.Senha); var usuario = new Usuario(command.Nome, command.Email, command.Senha, command.TipoUsuario); if (!string.IsNullOrEmpty(command.Telefone)) { usuario.AlterarTelefone(command.Telefone); } if (usuario.Invalid) { return(new GenericCommandResult(false, "Dados de usuário inválidos!", usuario.Notifications)); } _usuarioRepositorio.Adicionar(usuario); //EMAIL DE BOAS VINDAS ---- SENDGRID return(new GenericCommandResult(true, "Usuário Criado com sucesso!", usuario)); }