public async Task <IActionResult> Remove([FromRoute] string id) { var command = InactivePointCommand.Create(id); var result = await _bus.Send(command); return(result.Success ? NoContent() : Error(result.ErrorMessage)); }
public async Task <DomainResult> Handle(InactivePointCommand command, CancellationToken cancellationToken) { var point = await _pointRepository.FindAsync(command.Id); if (point is null) { return(DomainResult.Failure <string>("Point not found")); } point.Inactive(); await _pointRepository.UpdateAsync(point); await _mediator.Publish(new PointInactivatedEvent(point)); return(DomainResult.Ok()); }