public async Task <ActionResult> DeleteEstablishment([FromRoute(Name = "EstablishmentId")] Guid establishmentId) { var establishmentToDelete = await _establishmentService.GetById(establishmentId); if (establishmentToDelete == null) { return(NotFound()); } var currentUserId = Guid.Parse(User.FindFirst(ClaimTypes.NameIdentifier).Value); try { await _establishmentService.Delete(establishmentToDelete, currentUserId); return(NoContent()); } catch (UserIdMismatchException ex) { return(new JsonResult(new { ex.Message }) { StatusCode = StatusCodes.Status403Forbidden }); } catch (EstablishmentServiceException ex) { return(new JsonResult(new { ex.Message }) { StatusCode = StatusCodes.Status500InternalServerError }); } }