public async Task <string> Handle(ProdutoDeleteCommand request, CancellationToken cancellationToken) { var produto = await _repository.GetByIdAsync(request.Id); await _mediator.Publish(new ProdutoActionNotification { Produto = produto, Action = EActionNotification.Excluido }); return(await Task.FromResult("Produto excluido com sucesso")); }
public async Task <IActionResult> Delete(string id) { var command = new ProdutoDeleteCommand { Id = Guid.Parse(id) }; var response = await mediator.Send(command); return(Ok(response)); }
public IHttpActionResult Delete(ProdutoDeleteCommand produto) { var validator = produto.Validar(); if (!validator.IsValid) { return(HandleValidationFailure(validator.Errors)); } return(HandleCallback(() => _produtoService.Delete(produto))); }
public bool Delete(ProdutoDeleteCommand produtos) { var isRemovedAll = true; foreach (var produtoId in produtos.ProdutoIds) { var isRemoved = _repository.Delete(produtoId); // Aqui poderia dar o tramento adequado, armazenado quais ids foram removidos // e quais não forma removidos (e buscar o porquê). // Como é somente um exemplo, vamos somente retornar false (que não foi totalmente concluído) isRemovedAll = isRemoved ? isRemovedAll : false; } return(isRemovedAll); }
public async Task <ActionResult <Produto> > DeleteProduto(int id) { try { var command = new ProdutoDeleteCommand { Id = id }; var response = await _mediator.Send(command); return(Ok(response)); } catch (Exception ex) { return(BadRequest(ex.Message)); } }