Контекст: пользователь системы просматривает и настраивает вид страницы общего списка пациентов.

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

Область действия: просмотр и настройка страницы общего списка пациентов.

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

Гарантии успеха: пользователь успешно просмотрел таблицу, настроил вид таблицы.

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

1. Пользователь находится на странице «Список пациентов», где загружена в виде таблицы информацию о пациентах (по умолчанию отображаются все столбцы: Ф.И.О, дата рождения, дата смерти, пол, СНИЛС, диагноз по МКБ-10, взят на дн, снят с дн, дата начала лечения, территория проживания, телефон, обращения в МО, обращения к врачу, МО наблюдения, МО установления диагноза, МО первого обращения).

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

3. Пользователь нажимает кнопку «Настройка таблицы», во всплывающем окне появляются параметры отображения таблицы, которые необходимо выбрать путем нажатия на чекбоксы (дата смерти, пол, СНИЛС, госпиталь на дому, диагноз по МКБ-10, взят на ДН, снят с дн, дата начала лечения, территория проживания, телефон, обращения В МО, обращения к врачу, МО наблюдения, МО установления диагноза) и установить, нажав на кнопку «Установить».

4. Система формирует таблицу со столбцами, выбранными пользователем системы. Меню «Настройка таблицы» сворачивается.

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

6. Пользователь может выгрузить сформированную таблицу в формате "csv, xls, xlsx" путем нажатия в левом нижнем углу кнопки «Выгрузить список». (use case: Выгрузка списка пациентов )

Успешный сценарий: пользователь настроил столбцы в таблице и просматривает необходимую информацию.

Расширения:

4.а.1. Система не может найти информацию о пациентах по заданным условиям фильтрации:

4.а.1.1. Система формирует пустую таблицу. Система формирует окно с сообщением «Пациенты не найдены» и кнопкой «Готово»

4.а.1.2. Пользователь нажимает на кнопку «Готово»; окно с сообщением «Пациенты не найдены» исчезает.

Высота строк должна быть динамической исходя от количеста символов, внесенных в нее.

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

  • При переходе на страницу просмотра пациентов либо по нажатию кнопки "Поиск" на данной странице:
    • входные данные:
      • ID аккаунта системы, отправившего запрос
    • возвращаемый результат:
    • алгоритм обработки запроса:
      • проверить, что пользователь, отправивший данный запрос, авторизован в системе.
        • Если пользователь не авторизован, выполнить перенаправление на страницу авторизации пользователя с отображением на ней сообщения о необходимости авторизации.
        • Иначе перейти к следующему шагу
      • проверить, что пользователь, отправивший данный запрос, является администратором системы. для этого
        • получить id роли доступа аккаунта пользователя по полученному в запросе id аккаунта, сделав запрос в таблицу users
        • сделать запрос в таблицу access_role_permissions на наличие в данной таблице соответствующего разрешения для полученной на предыдущем шаге роли
        • Если разрешение не найдено, вернуть текстовое сообщение об ошибке доступа и выполнить перенаправление пользователя на предыдущую страницу
        • Если разрешение найдено, перейти на следующий шаг
      • проверить наличие на сервере кешированных данных о списке пациентов с ССЗ, полученных по запросу от текущего пользователя системы.
        • в случае успешной проверки (т.е. в кеше сервера уже есть список пациентов) перейти на шаг vi
        • в случае отсутствия списка в кеше сервера получить список диагнозов и подозрений на ССЗ за последние 6 месяцев. Для этого необходимо сделать запрос (описание по ссылке) к сервису N3 со следующими значениями параметров:
          • начало рассматриваемого временного промежутка: дата, предшествующая текущей дате на 6 месяцев
            • необходимо предусмотреть возможность в будущем изменять данный параметр поиска. Т.е. значение данного параметра не должно хардкодиться!
          • конец рассматриваемого временного промежутка: текущая дата
          • категория: diagnosis
          • коды диагнозов по МКБ-10: I00-I99, G45-G46, Q20-Q28. (т.е. группа I целиком, а также диагнозы G45, G46, Q20, Q21, Q22, Q23, Q24, Q25, Q26, Q27, Q28)
      • из полученного списка набора диагнозов извлечь список ID карт пациентов и убрать из него повторяющиеся элементы
        • для оптимизации работы системы необходимо предусмотреть кеширование в течение небольшого времени (5-10 минут) на стороне сервера системы полученных на данном шаге списков диагнозов и пациентов
      • получить личную информацию каждого пациента из данного списка пациентов. Для этого:
        • Если в сервисе N3 недоступно получение множества ресурсов Patient по списку их ID, то для каждого пациента из имеющегося списка выполнить отдельный запрос к сервису N3 по получению ресурса Patient с соответствующим ID
        • Если же такой функционал в сервисе N3 присутствует, то необходимо задействовать его для получения данных о пациентах из имеющегося списка.
      • сформировать из полученной информации о пациентах HTML-документ, содержащий полученный список пациентов в виде таблицы с требуемыми данными, и вернуть его пользователю
Настройка столбцов таблицы со списком пациентов на соответствующей странице должна происходить динамически целиком на стороне пользователя (т.е. в браузере с использованием Javascript). При этом при последующих запросах на получение либо фильтрацию списка пациентов с ССЗ должны использоваться уже установленные настройки отображения столбцов. Т.е. сервер системы при запросах на список пациентов должен отдавать полную таблицу со всеми необходимыми данными, и только на стороне клиента (т.е. в веб-браузере) Javascript должен скрыть "лишние" столбцы, а при изменении набора отображаемых столбцов - изменять видимость соответствующих столбцов без нового запроса к серверу систему на получение списка пациентов.
4 года назад
guest_15287238561124
7 лет в сервисе
Был
3 года назад
1 отзыв

Заявки фрилансеров

Нет заявок фрилансеров
  • Похожие заказы

  • $3000

    Требуются 4 Java разработчика для работы над кредитным конвейером юридических лиц. Проект находится в переходе на микросервисную архитектуру. Основные задачи включают совершенствование алгоритмов оценки благонадежности, контроль документооборота и разработку парсеров. Необходим опыт коммерческой разработки от 2-х лет, отличные знания JAVA и SQL.

    Базы данных3 заявки
    Закрыт
    3 года назад
  • Требуется создать сравнительную таблицу показателей Core Web Vitals по более чем 300 страницам сайта. Необходим еженедельный сбор данных по заданным URL, возможность ручного указания адресов для сбора, а также сравнительный график показателей Pagespeed. Реализация должна быть в Google Таблицах или Google Data Studio с отображением основных показателей на первом листе.

    Базы данныхнет заявок
    Закрыт
    3 года назад
  • Требуется разработать программы для автоматической отправки сообщений в личные сообщения ВКонтакте, Facebook, Одноклассники и Instagram. Программы должны поддерживать подмену пользователей и использовать прокси для увеличения скорости рассылки. Каждое решение должно быть адаптировано под конкретную платформу.

    Базы данных1 заявка
    Закрыт
    4 года назад
  • $30

    Необходим парсер на PHP для извлечения информации о товарах и продавцах с англоязычного маркетплейса. Парсер должен получать ссылки на страницы товаров из базы данных MySQL (формат JSON) и обновлять данные в той же базе. Подробности будут предоставлены в переписке.

    Базы данных1 заявка
    Закрыт
    4 года назад
  • Требуется разработка программы CRM для управления базой данных клиентов и составления ежемесячных отчетов. Важна возможность экспорта данных в формате Word. Программа должна поддерживать добавление и удаление данных, комментарии и общий доступ для сотрудников компании. Приложены примеры базы данных и отчетов.

    Базы данных15 заявок
    Закрыт
    4 года назад
  • Разработать простую веб-страницу на PHP с использованием Laravel для отображения статистики пожертвований. Страница должна включать график временных рядов с ежедневными итогами и список всех пожертвований с пагинацией. Данные должны обновляться по мере поступления новых пожертвований, используя фейковую информацию.

    Базы данных4 заявки
    Закрыт
    4 года назад
  • Создать MySQL базу данных и три веб-страницы: первую для заполнения данных клиентами, вторую для подтверждения администратором и третью для верификации данных с выдачей результата. Реализовать автогенерацию PDF файла с данными клиента и QR-кодом, который будет сохранен на хостинге.

    Базы данных3 заявки
    Закрыт
    4 года назад
  • Необходимо автоматизировать процесс переноса данных из рекламных кабинетов Facebook и TikTok, а также из CRM МойСклад в Google Sheets. Данные по показателям рекламы (бюджет, показы, клики) и продажам должны заполняться автоматически. Также требуется составить инструкцию по добавлению новых товаров в отчет.

    Базы данных1 заявка
    Закрыт
    4 года назад
  • Необходимо создать новый XML-файл для Авито или выявить и исправить ошибки в существующем. Также требуется настроить профиль на платформе. Обеспечьте корректное отображение данных согласно требованиям Авито.

    Базы данных3 заявки
    Закрыт
    4 года назад
  • Создайте сайт 'Группы иврита', который будет переводить слова с русского, украинского и английского на иврит. Программа должна находить и сортировать слова по введенному запросу, используя базу данных Access. Необходимо реализовать функционал для работы с группами слов по принадлежности.

    Базы данных2 заявки
    Закрыт
    4 года назад