История диагнозов (4ч) 40$

Гость7 лет в сервисе
Данные заказчика будут вам доступны после подачи заявки
13.09.2021

Контекст: пользователь системы просматривает подробную информацию о диагнозах на странице «История диагнозов», .

Основное действующее лицо: пользователь системы «Тамбов. Сердце».

Область действия: просмотр подробной информации о диагнозах на странице «История диагнозов».

Предусловия: пользователь авторизован в системе, находится на странице «Карточка пациента».

Гарантии успеха: Пользователь успешно открыл вкладку «История диагнозов», просмотрел подробную информацию о любом диагнозе.

Основной сценарий:

1. Пользователь на странице «Карточка пациента» нажимает на кнопку «История диагнозов». Система открывает вкладку «История диагнозов», загружая в нее информацию о диагнозах выбранного пациента:

диагноз по МКБ-10;

дата постановки;

ФИО врача;

МО;

2.Пользователь просматривает информацию, при необходимости используя скролл «вверх-вниз»

3.Пользователь нажимает на поле одного из диагнозов. Поле расширяется, в нём появляется подробная информация о выбранном диагнозе.

4. Пользователь нажимает на поле с подробной информацией о выбранном диагнозе. Поле уменьшается до начального состояния.

Альтернативный сценарий:

3.а.1 В случае, если в системе произошел сбой, система выводит сообщение об ошибка: «Ошибка», пользователь нажимает кнопку «Готово», информационное окно закрывается.

3.б.1. В случае, если диагнозов нет, система выводит пустое окно с сообщением: «Диагнозов нет».

Минимум требуемых запросов на сервер:

  • По нажатию на кнопку "История диагнозов" на странице мед. карты пациента - переход на страницу со списком диагнозов пациента
    • входные данные:
      • ID аккаунта системы, отправившего запрос
      • ID пациента
    • возвращаемый результат:
      • HTML-документ со списком диагнозов пациента
    • алгоритм обработки запроса:
      • проверить, что пользователь, отправивший данный запрос, авторизован в системе.
        • Если пользователь не авторизован, выполнить перенаправление на страницу авторизации пользователя с отображением на ней сообщения о необходимости авторизации.
        • Иначе перейти к следующему шагу
      • проверить, что пользователь, отправивший данный запрос, является администратором системы. для этого
        • получить id роли доступа аккаунта пользователя по полученному в запросе id аккаунта, сделав запрос в таблицу users
        • сделать запрос в таблицу access_role_permissions на наличие в данной таблице соответствующего разрешения для полученной на предыдущем шаге роли
        • Если разрешение не найдено, вернуть текстовое сообщение об ошибке доступа и выполнить перенаправление пользователя на предыдущую страницу
        • Если разрешение найдено, перейти на следующий шаг
      • получить историю диагнозов пациента с помощью соответствующего запроса к сервису N3 со следующими параметрами:
        • patients: ID пациента
        • сортировка списка диагнозов - по убыванию даты
      • сформировать HTML-документ со списком диагнозов и вернуть его пользователю