public IActionResult InitStatusChange([FromBody] ChangeRequest changeRequest) { var userToken = User.FindFirst("sub")?.Value; try { OperationResult operationResult = infectionService.InitStatusChange(userToken, changeRequest, out ChangeResponse initResponse); if (operationResult.Succeeded) { logger.LogInformation("Change request is saved"); return(new OkObjectResult(initResponse)); } logger.LogWarning("Status change request is rejected."); return(InternalServerError(new InnerError( operationResult.ErrorTarget ?? ErrorTarget.MedicalCodeNotGenerated, operationResult.ErrorMessage))); } catch (Exception e) { logger.LogError(e, $"Unhandled exception: {e.Message}"); return(InternalServerError(new InnerError(ErrorTarget.StatusChangeRequestRejected, "Unhandled exception."))); } }