public async Task <Response> Handle(RemoverGrupoResquest request, CancellationToken cancellationToken)
        {
            //Valida se o objeto request esta nulo
            if (request == null)
            {
                AddNotification("Request", MSG.OBJETO_X0_E_OBRIGATORIO.ToFormat("Request"));
                return(new Response(this));
            }

            Entities.Grupo grupo = _repositoryGrupo.ObterPorId(request.Id);

            if (grupo == null)
            {
                AddNotification("Request", MSG.OBJETO_X0_E_OBRIGATORIO.ToFormat("Grupo"));
                return(new Response(this));
            }

            _repositoryGrupo.Remover(grupo);

            var result = new { Id = grupo.Id };

            //Cria objeto de resposta
            var response = new Response(this, result);

            //Cria e Dispara notificação
            RemoverGrupoNotification removerGrupoNotification = new RemoverGrupoNotification(grupo);
            await _mediator.Publish(removerGrupoNotification);

            ////Retorna o resultado
            return(await Task.FromResult(response));
        }
        public async Task <Response> Handle(AlterarGrupoRequest request, CancellationToken cancellationToken)
        {
            //Validar se o requeste veio preenchido
            if (request == null)
            {
                AddNotification("Resquest", "Informe os dados!");

                return(new Response(this));
            }

            var usuario = _repositoryUsuario.ObterPorId(request.IdUsuario.Value);


            if (usuario == null)
            {
                AddNotification("Usuario", ("Usuário não informado"));
                return(new Response(this));
            }


            Entities.Grupo grupo = _repositoryGrupo.ObterPorId(request.IdGrupo.Value);

            if (grupo == null)
            {
                AddNotification("Grupo", ("Grupo não informado"));
                return(new Response(this));
            }


            grupo.Atualizar(request.Nome, request.Nicho);
            grupo = _repositoryGrupo.Editar(grupo);


            var result = new { Id = grupo.Id, Nome = grupo.Nome, Nicho = grupo.Nicho };

            //Criar meu objeto de resposta
            var response = new Response(this, result);

            return(await Task.FromResult(response));
        }
        public async Task <Response> Handle(AlterarGrupoRequest request, CancellationToken cancellationToken)
        {
            //Validar se o requeste veio preenchido
            if (request == null)
            {
                AddNotification("Resquest", MSG.OBJETO_X0_E_OBRIGATORIO.ToFormat("Grupo"));
                return(new Response(this));
            }

            var usuario = _repositoryUsuario.ObterPorId(request.IdUsuario.Value);


            if (usuario == null)
            {
                AddNotification("Usuario", MSG.X0_NAO_INFORMADO.ToFormat("Usuário"));
                return(new Response(this));
            }


            VemDeZap.Domain.Entities.Grupo grupo = _repositoryGrupo.ObterPorId(request.Id);

            //grupo.AlterarGrupo(request.Nome, request.Nicho);


            if (grupo == null)
            {
                AddNotification("Grupo", MSG.X0_NAO_INFORMADO.ToFormat("Grupo"));
                return(new Response(this));
            }

            grupo = _repositoryGrupo.Editar(grupo);

            var result = new { grupo.Id, grupo.Nome, grupo.Nicho };

            //Criar meu objeto de resposta
            var response = new Response(this, result);

            return(await Task.FromResult(response));
        }
        public async Task <Response> Handle(RemoverGrupoRequest request, CancellationToken cancellationToken)
        {
            if (request == null)
            {
                AddNotification("Request", "Request é obrigatório");
                return(new Response(this));
            }
            Entities.Grupo grupo = _repository.ObterPorId(request.Id);

            if (grupo == null)
            {
                AddNotification("Request", "Grupo não encontrado!");
                return(new Response(this));
            }
            _repository.Remover(grupo);
            var result   = new { Id = grupo.Id };
            var response = new Response(this);

            RemoverGrupoNotification removerGrupoNotification = new RemoverGrupoNotification(grupo);
            await _mediator.Publish(removerGrupoNotification);

            return(await Task.FromResult(response));
        }
Example #5
0
 public async Task <Grupo> ObterPorId(Guid id)
 {
     return(await _repositoryGrupo.ObterPorId(id));
 }