Руководство к использованию стандарта FHIR в ЦИСЗ
0.2.6803 - ci-build

OperationDefinition: Операция ответа на приглашение пациента в очереди

Официальный URL: https://fhir.by/OperationDefinition/answer-invitation
Unknown as of 2026-06-25 Имя: answer

Операция ответа на приглашение пациента в очереди

Операция позволяет получить ответ на приглашение RejectionHospitalisation.

Операция выполняется в контексте пациента.

Выполняется в отношении ресурса RejectionHospitalisation, id которого указан в параметре invitation.

Применяется только к ресурсам RejectionHospitalisation со статусом executable.

Для вызова операции используется POST запрос:

POST [FHIR_BASE]/Patient/[patient_id]/Contract/[RejectionHospitalisation_id]/$answer-invitation

Body:

{
  "resourceType": "Parameters",
  "parameter": [
    {
      "name": "answer",
      "valueBoolean": "true or false"
    },
    {
      "name": "author",
      "valueCanonical": "[RelatedPerson_id or Patient_id or PractitionerRole_id]"
    },
    {
      "name": "comment",
      "valueString": "[Дополнительная информация по ответу текстом]"
    }
  ]
}

В случае успешного выполнения операции система возвращает ресурс OperationOutcome с информацией о получении ответа.

HTTP code 200 OK

issue
    severity = success
    code = success

    details 
        text = "Ваш ответ на приглашение {RejectionHospitalisation_id} успешно получен."

Маппинг RejectionHospitalisation на EncounterPatientQueue

В результате операции ресурс RejectionHospitalisation дополняется по элементам:

Operation param Resource element
answer - true status = executed
answer - false status = rejected
author - Patient_id author = Patient_id
author - RelatedPerson_id author.extension[RelatedPersonPermanentExt] = RelatedPerson_id + author = Patient_id
author - PractitionerRole_id author = PractitionerRole_id
comment = {text} subtitile = {text}

изменяет дату в lastUpdated на время изменения ресурса.

В случае, если обращение происходит к ресурсу RejectionHospitalisation со статусом executed (согласие), возвращается ресурс OperationOutcome с информацией об ошибке.

HTTP code 400 Bad Request

issue
    severity = error
    code = code-invalid

    details 
        text = "Статус ресурса {RejectionHospitalisation_id} `executed` (согласие). Проверьте id ресурса, к которому вы обращаетесь."

В случае, если обращение происходит к ресурсу RejectionHospitalisation со статусом rejected (отказ), возвращается ресурс OperationOutcome с информацией об ошибке.

HTTP code 400 Bad Request

issue
    severity = error
    code = code-invalid

    details 
        text = "Статус ресурса {RejectionHospitalisation_id} `rejected` (отказ). Проверьте id ресурса, к которому вы обращаетесь."

Если искомый ресурс RejectionHospitalisation не найден, возвращается ресурс OperationOutcome с информацией об отсутствии ресурса с указанным в операции id:

HTTP code 404 Not found

issue
    severity = error
    code = not-found

    details 
        text = "Ресурс {RejectionHospitalisation} не найден. Проверьте правильность указанного id."

В случае, если обращение происходит к ресурсу RejectionHospitalisation с указанием автора - ресурса ReleatedPerson, не связанного с ресурсом Patient, возвращается ресурс OperationOutcome с информацией об ошибке.

HTTP code 400 Bad Request

issue
    severity = error
    code = code-invalid

    details 
        text = "Ресурс {RelatedPerson_id} не связан с русурсом {Patient_id}. Проверьте id ресурса в параметре author."

Если токен организации не соответствует правам, по которым возможно присвоение ответа:

HTTP code 403 forbidden

issue
    severity = error
    code = forbidden 

    details 
        text = "Нет прав на изменение статуса {RejectionHospitalisation_Id}. Проверьте access token организации."

Если токен медработника не соответствует правам, по которым возможно присвоение ответа:

HTTP code 403 forbidden

issue
    severity = error
    code = forbidden 

    details 
        text = "Нет прав на изменение статуса {RejectionHospitalisation_Id}. Проверьте access token медицинского работника."

Если токен медработника не соответствует ресурсу PractitionerRole, который указан в параметре author:

HTTP code 403 forbidden

issue
    severity = error
    code = security 

    details 
        text = "Роль медицинского работника не соответствует access token медицинского работника."

Если токен пациента не соответствует правам, по которым возможно присвоение ответа:

HTTP code 403 forbidden

issue
    severity = error
    code = forbidden 

    details 
        text = "Нет прав на изменение статуса {RejectionHospitalisation_Id}. Проверьте access token пациента."

Если в параметре comment передается слишком большое сообщение >500 символов:

HTTP code 400 Bad request

issue
    severity = error
    code = too-long

    details 
        text = "Комментарий должен содержать не более 500 символов."

URL: [base]/$answer-invitation

Параметры

ИспользоватьНаименованиеСфера действияКардинальностьТипПривязкаДокументация
INanswer1..1boolean

Ответ, который необходимо присвоить приглашению. Согласен - true, отказ - false.

INauthor1..1canonical

Автор, который дал ответ, пациент, его представитель, или роль медработника.

INcomment1..1string

Дополнительная информация по ответу текстом. Комментарий должен содержать не более 500 символов.

OUTreturn1..1OperationOutcome

Операция возвращает ресурс OperationOutcome, который может содержать информацию об успешном выполнении операции или перечень ошибок, которые возникли при получении запроса на выполнение операции или в результате ее выполнения

Необходимо добавить дополнительную информацию!!!!!!

Для добавления дополнительной информации нужно добавить файл input/intro-notes/OperationDefinition-answer-invitation-notes.md