История диагнозов (4ч) 40$
Контекст: пользователь системы просматривает подробную информацию о диагнозах на странице «История диагнозов», .
Основное действующее лицо: пользователь системы «Тамбов. Сердце».
Область действия: просмотр подробной информации о диагнозах на странице «История диагнозов».
Предусловия: пользователь авторизован в системе, находится на странице «Карточка пациента».
Гарантии успеха: Пользователь успешно открыл вкладку «История диагнозов», просмотрел подробную информацию о любом диагнозе.
Основной сценарий:
1. Пользователь на странице «Карточка пациента» нажимает на кнопку «История диагнозов». Система открывает вкладку «История диагнозов», загружая в нее информацию о диагнозах выбранного пациента:
диагноз по МКБ-10;
дата постановки;
ФИО врача;
МО;
2.Пользователь просматривает информацию, при необходимости используя скролл «вверх-вниз»
3.Пользователь нажимает на поле одного из диагнозов. Поле расширяется, в нём появляется подробная информация о выбранном диагнозе.
4. Пользователь нажимает на поле с подробной информацией о выбранном диагнозе. Поле уменьшается до начального состояния.
Альтернативный сценарий:
3.а.1 В случае, если в системе произошел сбой, система выводит сообщение об ошибка: «Ошибка», пользователь нажимает кнопку «Готово», информационное окно закрывается.
3.б.1. В случае, если диагнозов нет, система выводит пустое окно с сообщением: «Диагнозов нет».
Минимум требуемых запросов на сервер:
- По нажатию на кнопку "История диагнозов" на странице мед. карты пациента - переход на страницу со списком диагнозов пациента
- входные данные:
- ID аккаунта системы, отправившего запрос
- ID пациента
- возвращаемый результат:
- HTML-документ со списком диагнозов пациента
- алгоритм обработки запроса:
- проверить, что пользователь, отправивший данный запрос, авторизован в системе.
- Если пользователь не авторизован, выполнить перенаправление на страницу авторизации пользователя с отображением на ней сообщения о необходимости авторизации.
- Иначе перейти к следующему шагу
- проверить, что пользователь, отправивший данный запрос, является администратором системы. для этого
- получить id роли доступа аккаунта пользователя по полученному в запросе id аккаунта, сделав запрос в таблицу users
- сделать запрос в таблицу access_role_permissions на наличие в данной таблице соответствующего разрешения для полученной на предыдущем шаге роли
- Если разрешение не найдено, вернуть текстовое сообщение об ошибке доступа и выполнить перенаправление пользователя на предыдущую страницу
- Если разрешение найдено, перейти на следующий шаг
- получить историю диагнозов пациента с помощью соответствующего запроса к сервису N3 со следующими параметрами:
- patients: ID пациента
- сортировка списка диагнозов - по убыванию даты
- сформировать HTML-документ со списком диагнозов и вернуть его пользователю
- проверить, что пользователь, отправивший данный запрос, авторизован в системе.
- входные данные: