public JsonResult AgendarConsulta([FromBody] ConsultaModel consulta) { try { _pacienteService.Buscar(consulta.Paciente.Id); ConsultaModel consultaAgendada = _consultaService.AgendarConsulta(consulta); Response.Headers.Add("Location", $"api/consultas/{consultaAgendada.Id}"); return(new JsonResult("Consulta incluida com sucesso") { StatusCode = 201 }); } catch (PacienteNaoExisteException exception) { return(new JsonResult(exception.Message) { StatusCode = 406 }); } catch (ConsultasNoMesmoPeriodoException exception) { return(new JsonResult(exception.Message) { StatusCode = 406 }); } catch (DataFinalMenorQueDataInicialException exception) { return(new JsonResult(exception.Message) { StatusCode = 406 }); } catch (ConsultaNaoExisteException exception) { return(new JsonResult(exception.Message) { StatusCode = 406 }); } catch (NaoFoiPossivelConectarNoBancoDeDadosException exception) { return(new JsonResult(exception.Message) { StatusCode = 406 }); } catch (Exception exception) { return(new JsonResult(exception.Message) { StatusCode = 500 }); } }