public ICommandResult <Notificacao> Handler(AtualizarUsuarioCommand command) { try { Usuario usuario = UsuarioHelper.GerarEntidade(command); AddNotificacao(usuario.Login.Notificacoes); AddNotificacao(usuario.Senha.Notificacoes); if (!_repository.CheckId(usuario.Id)) { AddNotificacao("Id", "Id inválido. Este id não está cadastrado!"); } if (_repository.CheckLogin(usuario.Login.ToString())) { AddNotificacao("Login", "Esse login não está disponível pois já está sendo usado por outro usuário"); } if (Invalido) { return(new CommandResult <Notificacao>("Inconsistência(s) no(s) dado(s)", Notificacoes)); } _repository.Atualizar(usuario); AtualizarUsuarioCommandOutput dadosRetorno = UsuarioHelper.GerarDadosRetornoUpdate(usuario); return(new CommandResult <Notificacao>("Usuário atualizado com sucesso!", dadosRetorno)); } catch (Exception e) { throw new Exception(e.Message); } }
public ICommandResult <Notificacao> Handler(AdicionarUsuarioCommand command) { try { Usuario usuario = UsuarioHelper.GerarEntidade(command); AddNotificacao(usuario.Login.Notificacoes); AddNotificacao(usuario.Senha.Notificacoes); if (_repository.CheckLogin(usuario.Login.ToString())) { AddNotificacao("Login", "Esse login não está disponível pois já está sendo usado por outro usuário"); } if (Invalido) { return(new CommandResult <Notificacao>("Inconsistência(s) no(s) dado(s)", Notificacoes)); } _repository.Salvar(usuario); usuario.Id = _repository.LocalizarMaxId(); AdicionarUsuarioCommandOutput dadosRetorno = UsuarioHelper.GerarDadosRetornoInsert(usuario); return(new CommandResult <Notificacao>("Usuário gravado com sucesso!", dadosRetorno)); } catch (Exception e) { throw new Exception(e.Message); } }