Реализован следующий функционал:
- Автоматический сбор данных с сайтов информационных систем Консультант Плюс и Гарант в таблицы nosql бд Mongodb.
- Написан питон скрипт для трансформации сущностей "ключ" - "значение" из бд mongo в sql ориентированную бд postres в 3 нормальной форме.
- Сделан дамп бд из postgres и выложен в репозиторий в папку docs/database.
- Реализован REST API для загрузки информации из МИС и выгрузки результата сравнения в наш сервис.
- Реализована загрузка историй болезни в БД postgres для хранения истории.
- Реализован интерфейс сайта сервиса с возможностью загрузки данных конкретного случая с выводом информации о расхождении с нормативной документацией (протокол сверки).
Основной стек технологий: css, js, html, python pandas, mongodb, postgres, C#, docker, REST, Entity Framework.
Среда запуска:
- развертывание сервиса производится в среде windows;
- требуется установленные СУБД mongodb и postgres;
- требуется установленные пакеты pandas, selenium, sqlalchemy, pymongo, beautyfulsoup, lxml;
- Требуется скачать chromedriver.exe нужной версии с сайта хрома.
База данных PostgreSQL Необходимо создать пустую бд med_expert, а подключение к ней указать следующим образом: 'postgresql://postgres:123@localhost:5432/med_expert'
Выполнение миграций Для выпуснения миграций необходимо последовательно запускать следующие питон скрипты: consultant_plus_parser.py garant_parser.py document_standart_parser.py
Для заполнения бд Postgres необходимо запутить скрипт create_tables.py
Для генерации фейковых историй болезни необходимо запустить скрипт generate_fake_cases.py
Как запустить приложение
Наше приложение состоят из двух подсистем. Часть на питоне собирающая и трансформирующая данные запускается скриптами из PyCharm. Часть на C# запускается из Visual Studio, главный файл проекта med_expert\IntellMedREST\IntellMedREST\IntellMedREST.sln
Разработчики: Алсадаева Людмила @heezzinpang Сыч Григорий @SychGrigoriy Сыч Гульнара @SychGrigoriy