Skip to content
/ mkb10 Public

Международный классификатор болезней МКБ10

License

Notifications You must be signed in to change notification settings

ak4nv/mkb10

Repository files navigation

Международный классификатор болезней МКБ10 и МКБ-О

Установка

Для быстрой установки проекта используйте утилиту uv, доступную как из официальных репозиториев большинства популярных дистрибутивов, так и через скрипт установки на сайте разработчика.

git clone git@github.com:ak4nv/mkb10.git
cd mkb10
make
make run

Приложение будет доступно по адресу http://localhost:5000

API для построения дерева

URL
/api
Response
// Список классов
[
  {
    "id": 1,
    "name": "НЕКОТОРЫЕ ИНФЕКЦИОННЫЕ И ПАРАЗИТАРНЫЕ БОЛЕЗНИ (A00-B99)"
  },
  // ...
]
URL
/api/:id
Args
id:Идентификатор класса
Response
// Список блоков класса
[
  {
    "id": 2,
    "name": "КИШЕЧНЫЕ ИНФЕКЦИИ (A00-A09)"
  },
  // ...
]
URL
/api/:id/group
Args
id:Идентификатор блока
all:Вывести все коды (включая неактуальные). Аргумент необязательный.
Response
// Список групп блока
[
  {
    "actual": true, // Параметр доступен только при указании аргумента 'all'
    "code": "A00",
    "id": "3",
    "has_subgroup": true, // есть ли у группы подргуппа
    "name": "Холера"
  },
  // ...
]
URL
/api/:code/subgroup
Args
code:Код группы
all:Вывести все коды (включая неактуальные). Аргумент необязательный.
Response
// Список подргуппы заданной группы
[
  {
    "actual": true, // Параметр доступен только при указании аргумента 'all'
    "code": "A00.0",
    "id": "4",
    "name": "Холера, вызванная холерным вибрионом 01, биовар cholerae"
  },
  {
    "actual": true, // Параметр доступен только при указании аргумента 'all'
    "code": "A00.1",
    "id": "5",
    "name": "Холера, вызванная холерным вибрионом 01, биовар eltor"
  },
  {
    "actual": true, // Параметр доступен только при указании аргумента 'all'
    "code": "A00.9",
    "id": "6",
    "name": "Холера неуточненная"
  }
]
URL
/api/icdo/block
Response
// Список блоков справочника МКБ-О
[
  {
    "id": 1,
    "name": "800 Новообразования, БДУ"
  },
  {
    "id": 15,
    "name": "801—804 Эпителиальные  новообразования, БДУ"
  },
  // ...
]
URL
/api/icdo/block/:id
Args
id:Идентификатор блока
Response
// Список болезней блока
[
  {
    "code": "8140/0",
    "id": "107",
    "name": "Аденома БДУ"
  },
  {
    "code": "8140/1",
    "id": "108",
    "name": "Аденома бронхиальных желез БДУ (D38.1)"
  },
  // ...
]
Примеры

API для поиска и разрешения имён

URL
/api/lookup /api/icdo/lookup
Args
q:Строка поиска (обязательный аргумент). Если аргумент начинается на [a-z], то поиск осуществляется по кодам, иначе по названию
limit:Ограничение на количество выдаваемых кодов. Значение по-умолчанию: 50
Response
// http://localhost:5000/api/lookup?q=i&limit=1
[
    {
      "code": "I00",
      "name": "Ревматическая лихорадка без упоминания о вовлечении сердца"
    }
]
URL
/api/fetch /api/icdo/fetch
GET
codes:Список кодов через запятую
POST
[]:JSON-список кодов (пример ниже)
Response
// Оба запроса вернут одинаковый ответ
// curl http://localhost:5000/api/fetch?codes=A00,A01
// curl -H "Content-Type: application/javascript;X-Requested-With: XMLHttpResponse" -X POST -d '["A00","A01"]' http://localhost:5000/api/fetch

[
  {
    "code": "A00",
    "name": "Холера"
  },
  {
    "code": "A01",
    "name": "Тиф и паратиф"
  }
]

Дополнительно

Источник данных: https://nsi.rosminzdrav.ru

  • 1.2.643.5.1.13.13.11.1005_2.27.csv Международная статистическая классификация болезней и проблем, связанных со здоровьем (10-й пересмотр)
  • 1.2.643.5.1.13.13.11.1486_2.7.csv Международная классификация болезней – Онкология (3 издание). Морфологические коды
  • init_db Скрипт для создания базы данных

About

Международный классификатор болезней МКБ10

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •