Руководство по редактированию анализов: различия между версиями
Нет описания правки |
|||
| Строка 32: | Строка 32: | ||
* Локальная активность: Неизвестно | * Локальная активность: Неизвестно | ||
== | == Описание структуры JSON-поля <code>data</code> == | ||
<source lang="json"> | <source lang="json"> | ||
{ | { | ||
"group": "Биохимические исследования", | "group": "Биохимические исследования", | ||
"tests": [ | "selectable": true , | ||
"tests": [ /* ... */ ], | |||
"patient_options": { "oms": true, "address": true }, | |||
"custom": { | |||
"form": [ /* ... */ ], | |||
"print_results": { /* ... */ }, | |||
"print_referral": { /* ... */ } | |||
} | |||
} | |||
</source> | |||
=== Верхний уровень === | |||
'''group''' — Название группы анализов (заголовок раздела). | |||
Пример: <code>Биохимические исследования</code> | |||
'''tests''' — Массив описаний конкретных анализов. | |||
Подробности — см. раздел ниже. | |||
'''patient_options''' — Дополнительные параметры для отображения полей пациента: | |||
<code>oms</code> — отображать поле «ОМС» | |||
<code>address</code> — отображать поле «Адрес» | |||
'''custom''' — Конфигурация пользовательского поведения и шаблонов. | |||
См. вложенные секции ниже. | |||
'''selectable''' — Логическое значение (true/false), указывает, можно ли выбирать данный блок анализов вручную при создании назначения. | |||
<code>true</code> — отображается для выбора | |||
<code>false</code> — скрыт | |||
=== tests (Массив анализов) === | |||
Каждый элемент массива имеет следующую структуру: | |||
<source lang="json"> | |||
"tests": [ | |||
{ | { | ||
| Строка 55: | Строка 96: | ||
// ... | // ... | ||
], | ], | ||
</source> | |||
'''ref''' — Референсные значения (строка) | |||
'''code''' — Уникальный код теста | |||
'''name''' — Название теста | |||
'''unit''' — Единицы измерения | |||
'''selected''' — Булево значение (по умолчанию выбран) | |||
=== patient_options === | |||
<source lang="json"> | |||
"patient_options": { | "patient_options": { | ||
"oms": true, | "oms": true, | ||
"address": true | "address": true | ||
}, | } | ||
</source> | |||
Определяет, какие дополнительные поля отображать на форме пациента: | |||
<code>oms</code> — Показывать поле "ОМС" | |||
<code>address</code> — Показывать поле "Адрес" | |||
=== custom.form === | |||
Массив формовых компонентов (виджетов) для ввода дополнительных данных вручную: | |||
Пример одного виджета выбора группы крови: | |||
<source lang="json"> | |||
{ | |||
"custom": { | "custom": { | ||
"form": [ | "form": [ | ||
| Строка 115: | Строка 185: | ||
] | ] | ||
} | } | ||
], | ] | ||
} | |||
} | |||
</source> | |||
Пояснения: | |||
'''type''' — тип поля (например, <code>select</code>, <code>text</code>, <code>checkbox</code>) | |||
'''label''' — подпись к полю | |||
'''choices''' — массив доступных вариантов (для <code>select</code>) | |||
'''ng_model''' — AngularJS-модель для привязки данных | |||
'''snippet''' — тип используемого шаблона (чаще всего — <code>widget</code>) | |||
=== custom.print_results === | |||
Настройки печати результатов анализа: | |||
<source lang="json"> | |||
{ | |||
"custom": { | |||
"print_results": { | "print_results": { | ||
"class": "mono font-size-10", | "class": "mono font-size-10", | ||
| Строка 142: | Строка 235: | ||
} | } | ||
] | ] | ||
}, | } | ||
} | |||
} | |||
</source> | |||
'''class''' — CSS-классы всего блока | |||
'''widgets''' — массив печатных элементов: | |||
'''get''' — путь к значению (например, <code>blood_type.display</code>) | |||
'''title''' — заголовок поля | |||
'''class''' — CSS-класс для текста | |||
'''target''' — источник данных (обычно <code>record</code>) | |||
'''snippet''' — шаблон отображения (например, <code>p_entry</code>) | |||
=== custom.print_referral === | |||
Настройки шаблона печати направления: | |||
<source lang="json"> | |||
{ | |||
"custom": { | |||
"print_referral": { | "print_referral": { | ||
"widgets": [ | "widgets": [ | ||
| Строка 151: | Строка 268: | ||
] | ] | ||
} | } | ||
} | } | ||
} | } | ||
</source> | </source> | ||
'''widgets''' — массив блоков | |||
'''class''' — CSS-классы | |||
'''snippet''' — шаблон-фрагмент для рендеринга (например, <code>__div</code>) | |||
Версия от 00:26, 21 июля 2025
Основная информация об анализе
| Параметр | Значение |
|---|---|
| Справочник | LABORATORY_ANALYSES |
| Значение | Биохимический анализ крови |
| Название | Биохимический анализ крови |
| Данные |
Редактирование параметров
1. Основные настройки
- Активность:
* По умолчанию * Включено * Выключено
- Локальные переопределения:
* Локальное значение: [пусто] * Локальное название: [пусто] * Локальная активность: Неизвестно
Описание структуры JSON-поля data
{
"group": "Биохимические исследования",
"selectable": true ,
"tests": [ /* ... */ ],
"patient_options": { "oms": true, "address": true },
"custom": {
"form": [ /* ... */ ],
"print_results": { /* ... */ },
"print_referral": { /* ... */ }
}
}
Верхний уровень
group — Название группы анализов (заголовок раздела).
Пример: Биохимические исследования
tests — Массив описаний конкретных анализов.
Подробности — см. раздел ниже.
patient_options — Дополнительные параметры для отображения полей пациента:
oms — отображать поле «ОМС»
address — отображать поле «Адрес»
custom — Конфигурация пользовательского поведения и шаблонов.
См. вложенные секции ниже.
selectable — Логическое значение (true/false), указывает, можно ли выбирать данный блок анализов вручную при создании назначения.
true — отображается для выбора
false — скрыт
tests (Массив анализов)
Каждый элемент массива имеет следующую структуру:
"tests": [
{
"ref": "65-85",
"code": "TP",
"name": "Белок общий",
"unit": "г/л",
"selected": true
},
{
"ref": "35-50",
"code": "ALB",
"name": "Альбумин",
"unit": "г/л",
"selected": false
}
// ...
],
ref — Референсные значения (строка)
code — Уникальный код теста
name — Название теста
unit — Единицы измерения
selected — Булево значение (по умолчанию выбран)
patient_options
"patient_options": {
"oms": true,
"address": true
}
Определяет, какие дополнительные поля отображать на форме пациента:
oms — Показывать поле "ОМС"
address — Показывать поле "Адрес"
custom.form
Массив формовых компонентов (виджетов) для ввода дополнительных данных вручную:
Пример одного виджета выбора группы крови:
{
"custom": {
"form": [
{
"widgets": [
{
"options": {
"type": "select",
"label": "Группа крови",
"choices": [
{
"id": 1,
"code": "1",
"display": "I(0)"
},
{
"id": 2,
"code": "2",
"display": "II"
},
{
"id": 3,
"code": "3",
"display": "III"
},
{
"id": 4,
"code": "4",
"display": "IV"
}
],
"ng_model": "blood_type"
},
"snippet": "widget"
},
{
"options": {
"type": "select",
"label": "Резус-фактор",
"choices": [
{
"id": 1,
"code": "1",
"display": "Rh(+) положительный"
},
{
"id": 2,
"code": "2",
"display": "Rh(-) отрицательный"
}
],
"ng_model": "rh_factor"
},
"snippet": "widget"
}
]
}
]
}
}
Пояснения:
type — тип поля (например, select, text, checkbox)
label — подпись к полю
choices — массив доступных вариантов (для select)
ng_model — AngularJS-модель для привязки данных
snippet — тип используемого шаблона (чаще всего — widget)
custom.print_results
Настройки печати результатов анализа:
{
"custom": {
"print_results": {
"class": "mono font-size-10",
"widgets": [
{
"class": "pt5",
"options": {
"is_dl": true,
"items": [
{
"get": "blood_type.display",
"class": "text-danger font-size-9",
"title": "Группа крови",
"target": "record"
},
{
"get": "rh_factor.display",
"class": "text-danger font-size-9",
"title": "Резус-фактор",
"target": "record"
}
],
"full_body": true
},
"snippet": "p_entry"
}
]
}
}
}
class — CSS-классы всего блока
widgets — массив печатных элементов:
get — путь к значению (например, blood_type.display)
title — заголовок поля
class — CSS-класс для текста
target — источник данных (обычно record)
snippet — шаблон отображения (например, p_entry)
custom.print_referral
Настройки шаблона печати направления:
{
"custom": {
"print_referral": {
"widgets": [
{
"class": " h-100",
"snippet": "__div"
}
]
}
}
}
widgets — массив блоков
class — CSS-классы
snippet — шаблон-фрагмент для рендеринга (например, __div)