Сущность "Запись на визит"

Модель: Appointment.

Описание

Данная сущность хранит данные о записи на прием (визит) пациента. Возможно получить как записи на будущие приемы и визиты, так и на уже состоявшиеся (история визитов).

В общем случае, в рамках данной документации считать термины "визит" и "прием" синонимами, если не оговорено обратное.

Сущность "Запись на визит" соответствует ресурсу FHIR см. http://hl7.org/fhir/appointment.html

Свойства сущности

Название Тип Описание
id string
patientId string
business BusinessInfo
created Date
start Date
doctor Doctor Врач, на которого произведена запись на визит
services Service[] Услуги, которые были указаны при создании записи. Выполненные услуги, а также их реальная стоимость находятся в модели AppointmentResult
duration int Ориентировочная продолжительность записи (по умолчанию вычисляется как сумма длительностей услуг)
confirmationStatus AppointmentConfirmationStatus Подтвержден ли визит клиникой?
clientAppear boolean Клиент пришел на визит?
resultId string Если данное поле указано, то это значит, что визит состоялся. Данные о визите хранятся в модели результаты визита
clientPrice ClientPrice Суммарная стоимость визита для пациента (для ознакомительных целей)
source AppointmentSource Источник записи

Статус записи на прием

Тип данных AppointmentStatus

Название Значение Описание
TENTATIVE 0
CONFIRMED_BY_CLIENT 1
CONFIRMED_BY_BUSINESS 2
CANCELLED_BY_CLIENT 3
CANCELLED_BY_BUSINESS 4

Источник записи

Справочник AppointmentSource

Значение Описание
MOBILE_CLINIC_WEBSITE
DESKTOP_CLINIC_WEBSITE
MOBILE_CLINIC_APP
YA_MAP
ALLIANZ
NA_POPRAVKU
...

Действия над сущностью

Получение записи по идентификатору

Метод: appointment.get_appointment_by_id

Параметры запроса

Название Значение Описание
id string

Параметры ответа

Название Значение Описание
appointment Appointment

Пример запроса

{
    "jsonrpc":"2.0",
    "id": 1,
    "method": "appointment.get_appointment_by_id",
    "cred":{
        "user": "556af17b2507b0c50de4fa2e",
        "token": "17a3b6c735d71b15686f4598cd7d030220755498"
    },
    "params": {
        "id": "199"
    }
}

Пример ответа

{
    "jsonrpc": "2.0",
    "result": {
        "appointment": {
            "id": "199",
            "business": {
                "id": "1",
                "name": "Клиника Ромашка",
                "location": "Красная площадь, 9 3/4",
                "networkId": null
            },
            "created": "2019-07-11T14:48:17.0049625",
            "start": "2019-07-11T14:48:16.9713428",
            "doctor": {
                "id": "1",
                "surname": "Иванов",
                "name": "Епифан",
                "specialization": null
            },
            "services": [
                {
                    "id": "1",
                    "name": "Первичный приём терапевта",
                    "price": {
                        "currency": 0,
                        "originValue": 0.0,
                        "discountValue": 0.0,
                        "value": 0.0,
                        "discount": null
                    },
                    "duration": 20
                }
            ],
            "duration": 35,
            "status": 0,
            "clientAppear": false,
            "patientId": "2",
            "patient": null,
            "resultId": "0",
            "clientPrice": {
                "currency": 0,
                "originValue": 321.0,
                "discountValue": 0.0,
                "value": 321.0,
                "discount": null
            },
            "source": 0,
            "history": null
        }
    },
    "id": "1"
}

Возможные типы ошибок

Название Значение Когда происходит
AccessForbidden -33403 идентификатор записи, которая не принадлежит пациенту
AppointmentNotFound -34005 идентификатор несуществующей записи

Получение списка записей пациента

Метод: appointment.get_patient_appointments

Параметры запроса

Название Значение Описание
patientId string
limit int
offset int

Параметры ответа

Название Значение Описание
appointments Appointment[]

Пример запроса

{
    "jsonrpc":"2.0",
    "id": 1,
    "method": "appointment.get_patient_appointments",
    "cred":{
        "user": "556af17b2507b0c50de4fa2e",
        "token": "17a3b6c735d71b15686f4598cd7d030220755498"
    },
    "params": {
        "patientId": "2",
        "limit": 10,
        "offset": 0
    }
}

Пример ответа

{
    "jsonrpc": "2.0",
    "result": {
        "appointments": [
            {
                "id": "199",
                "business": {
                    "id": "1",
                    "name": "Клиника Ромашка",
                    "location": "Красная площадь, 9 3/4",
                    "networkId": null
                },
                "created": "2019-07-11T14:48:17.0049625",
                "start": "2019-07-11T14:48:16.9713428",
                "doctor": {
                    "id": "1",
                    "surname": "Иванов",
                    "name": "Епифан",
                    "specialization": null
                },
                "services": [
                    {
                        "id": "1",
                        "name": "Первичный приём терапевта",
                        "price": {
                            "currency": 0,
                            "originValue": 0.0,
                            "discountValue": 0.0,
                            "value": 0.0,
                            "discount": null
                        },
                        "duration": 20
                    }
                ],
                "duration": 35,
                "status": 0,
                "clientAppear": false,
                "patientId": "2",
                "patient": null,
                "resultId": "0",
                "clientPrice": {
                    "currency": 0,
                    "originValue": 321.0,
                    "discountValue": 0.0,
                    "value": 321.0,
                    "discount": null
                },
                "source": 0,
                "history": null
            }
        ]
    },
    "id": "1"
}

Возможные типы ошибок

Название Значение Когда происходит
AccessForbidden -33403 идентификатор пациента не соответствует креденшиалам