Непереносимые лекарства
Контекст: пользователь системы открывает вкладку «Непереносимые лекарства».
Основное действующее лицо: пользователь системы «Тамбов. Сердце».
Область действия: открытие вкладки «Непереносимые лекарства».
Предусловия: пользователь авторизован в системе, находится на странице «Карточка пациента».
Гарантии успеха: Пользователь успешно открыл вкладку «Непереносимые лекарства»
Основной сценарий:
1. Пользователь на странице «Карточка пациента» нажимает на кнопку «Непереносимые лекарства». Система открывает вкладку «Непереносимые лекарства», загружая в нее информацию о непереносимых лекарствах выбранного пациента с информацией по каждому:
код лекарственного средства;
тип патологической реакции для сбора аллергоанамнеза;
комментарий;
дата выполнения;
код реакции.
2.Пользователь просматривает информацию, при необходимости используя скролл «вверх-вниз».
Альтернативный сценарий:
1.а. В случае, если непереносимых лекарственных средства нет, система выводит пустое окно с сообщением: «Непереносимых лекарственных средства нет».
1.б. В случае, если в системе произошел сбой, система выводит сообщение об ошибка: «Ошибка», пользователь нажимает кнопку «Готово», информационное окно закрывается.
Минимум требуемых запросов на сервер:
- по нажатию на кнопку "Непереносимые лекарства" на странице мед. карты пациента
- входные данные:
- ID аккаунта системы, отправившего запрос
- ID пациента
- возвращаемый результат:
- HTML-документ со списком непереносимых пациентом лекарств
- Если список пустой, то соответствующее сообщение
- алгоритм обработки запроса:
- проверить, что пользователь, отправивший данный запрос, авторизован в системе.
- Если пользователь не авторизован, выполнить перенаправление на страницу авторизации пользователя с отображением на ней сообщения о необходимости авторизации.
- Иначе перейти к следующему шагу
- проверить, что пользователь, отправивший данный запрос, является администратором системы. для этого
- получить id роли доступа аккаунта пользователя по полученному в запросе id аккаунта, сделав запрос в таблицу users
- сделать запрос в таблицу access_role_permissions на наличие в данной таблице соответствующего разрешения для полученной на предыдущем шаге роли
- Если разрешение не найдено, вернуть текстовое сообщение об ошибке доступа и выполнить перенаправление пользователя на предыдущую страницу
- Если разрешение найдено, перейти на следующий шаг
- получить информацию о непереносимых пациентом лекарств с помощью запроса "Получение общего количества AllergyIntollerance по пациенту" к сервису N3: http://api.n3med.ru/api/iemk/fhirproxy/#id-КопияAPIсервисаFhirProxy(версия2020)-AllergyIntolerance (описание запроса - внизу страницы, ссылка на описание запроса почему-то не работает)
- сформировать HTML-документ со списком непереносимых пациентом лекарств
- проверить, что пользователь, отправивший данный запрос, авторизован в системе.
- входные данные: