Packages

Elixir client for Medplum's FHIR API with resource and workflow helpers.

Current section

Files

Jump to
medplum_elixir lib medplum workflows intake.ex
Raw

lib/medplum/workflows/intake.ex

defmodule Medplum.Workflows.Intake do
@moduledoc """
Intake and assessment workflow helpers built on `QuestionnaireResponse`.
"""
alias Medplum.Client
alias Medplum.Resources.QuestionnaireResponse
@spec submit_questionnaire_response(Client.t(), map()) :: Medplum.result()
def submit_questionnaire_response(%Client{} = client, attrs) do
QuestionnaireResponse.create(client, attrs)
end
@spec questionnaire_responses_for_subject(Client.t(), String.t(), map()) :: Medplum.result()
def questionnaire_responses_for_subject(%Client{} = client, subject, params \\ %{}) do
QuestionnaireResponse.search_by_subject(client, subject, params)
end
@spec questionnaire_responses_for_encounter(Client.t(), String.t(), map()) :: Medplum.result()
def questionnaire_responses_for_encounter(%Client{} = client, encounter, params \\ %{}) do
QuestionnaireResponse.search_by_encounter(client, encounter, params)
end
@spec questionnaire_responses_for_questionnaire(Client.t(), String.t(), map()) ::
Medplum.result()
def questionnaire_responses_for_questionnaire(%Client{} = client, questionnaire, params \\ %{}) do
QuestionnaireResponse.search_by_questionnaire(client, questionnaire, params)
end
end