Разработка #5935
открыто[Взаимодействие с ЛК Заказчика] Тестирование и внесение исправление в функциональность, связанную с Личным кабинетом заказчика в ДТ-Синтезе
0%
Описание
Со стороны ДТ-Синтеза в разделе "Заказы" появился новый пункт меню "Заявки на синтез".
На данной странице подгружается список заявок, созданных в Личном кабинете заказчика.
ДТ-Синтез раз в минуту запрашивает новый список заявок со статусом "На рассмотрении" из Личного кабинета закачзика.
1. Детали заявки на синтез¶
Нажав на строку с соответствующей заявкой будет выполнен переход на страницу "Деталей заявки на синтез" . В верхней части страницы располагается блок с общими параметрами заявки , которые можно редактировать посредством соответствующей кнопки . При редактировании параметров, - изменения должны примениться и у соответствующей заявки в Личном кабинете заказчика. Раз в минуту ДТ-Синтез отправляет в Личный кабинет запрос на синхронизацию, поэтому ориентировочно в течение этого времени соответствующая запись заявки должна обновиться в Личном кабинете.
В Личном кабинете с заявкой связан определённый Email пользователя , а в ДТ-Синтезе, есть сущность Клиент , которая связана с заказами и указывается при их создании. По сути это одно и тоже, но в разных приложениях, поэтому если мы однажды для определённого Email'а в заявке выберем определённое значение заказчика, - это соответствие сохранится и впоследствии поле "Заказчик" будет заполняться автоматически ранее выбранным значением, соответствующих определённому Email'у, для новых заявок.
По поводу деталей заявки также стоит упомянуть, что ниже располагается блок со Списком олигов в заявке, - исходно с теми же параметрами, что были указаны при создании заявки в Личном кабинете.
Важный момент. В ДТ-Синтезе есть своя сущность олига , с системным названием, из Справочника олигонуклеотидов, а при создании заявки пользователь (внешний заказчик) не имеет представления о том, какие названия олигов зарегистрированы в ДТ-Синтезе для определённых последовательностей олигов, и тем более, между разными проектами одна и та же последовательность может называться по-разному. В связи с этим, для олигов в заявке, в ДТ-Синтезе, было введено поле "Проектное название" , которое может отличаться от названия сущности Олига в справочнике.
Данное проектное название можно редактировать, нажав на правую кнопку мыши по значению проектного названия, в тех местах, где оно используется.
Данное название отображается:
1. На странице Деталей заявки (/synthesisRequests/<id>).
2. На всех страницах в разделе УВПН, где есть списки олигов (таблицы с олигами).
3. В компоненте деталей Научного заказа (/scientificOrders/<id>).
4. На странице информации о Пробирке и Планшете, при клике на ячейку.
В общем случае проектное название олига - редактируемое , одинаковым образом (с помощью правой кнопки мыши), а также, при отображении данного названия в таблицах используется общее правило: если Проектное название олига отличается от названия сущности Олига в системе, - отображается информация об обоих названиях, иначе - отображается только одно значение, но возможность редактирования остаётся.
Редактирование названия в общем случае автоматически сохраняется в базе при нажатии на кнопку "Подтвердить" в модальном окне редактирования.
За исключением ситуации, когда проектное название редактируется в момент создания заказа , связанного с заявкой в ДТ-Синтезе. Более подробно о данной функциональности постараюсь расписать в следующем пункте.
2. Создание заказа, связанного с заявкой на синтез.¶
При нажатии на кнопку "Создать заказ" на странице Деталей заявки на синтез, - пользователь перенаправляется на форму создания закза, похожую на стандартную, за тем исключением, что в верхней части страницы отображается блок с информацией о связанной заявке, а также информация о списке олигов в заявке. Данный блок - сворачиваемый.
Параметры заказа должны заполняться соответствующими параметрами из заявки (при их наличии).
При открытии страницы создания заказа, связанного с заявкой, - система автоматически пробует найти сущности Олигов, имеющиеся в системе , и сопоставить их с сущностями Олигов в заявке. Автоматическое добавление олигов в заказ, в блок "Список олигонуклеотидов" работает аналогично стандартному созданию заказа, за тем исключением, что в качестве параметров добавляемых олигов система использует значения, указанные для соответствующего олига в заявке. В качестве названия сущности Олига в ДТ-Синтезе система подставляет проектное название олига из заявки. В связи с чем, в нижней таблице со списком олигов могут отображаться несоответствия, аналогичные тем, что есть при создании стандартного заказа в системе.


Во всех модальных окнах по разрешению таких несоответствий добавлена возможность редактирования "Проектного названия" олига. Соответствующая возможность с указанием проектного названия добавлена и в стандартное модальное окно Добавления олига в заказ.
При импорте информации из .csv также добавлена функциональность автоматического сопоставления Олигов из ДТ-Синтеза с олигами в заявке, а также в .csv-файл добавлена поддержка дополнительного поля "projectName", соответствующего проектному названию олига.
На всякий случай напомню , что в отличие от всех остальных мест в системе, - изменения после редактирования проектного названия олига во время создания заказа будут применены только при нажатии на кнопку "Сохранить изменения и сформировать заказ".
У пользователя в ДТ-Синтезе при создании заказа есть возможность полностью изменить состав олигов в рамках заказа, а следовательно и в рамках заявки . То есть пользователь может удалить информацию из таблицы "Список олигонуклеотидов", а также удалить информацию из Списка олигов в заявке, после этого добавить те олиги, которые посчитает нужным, и после сохранения информации о новом заказе, - обновлённая информация о составе олигов в заявке должна появиться на страницах Деталей заявки, как в ДТ-Синтезе, так и в Личном кабинете заказчика.
В блоке "Список олигов в заявке" для дополнительной индикации разработаны следующие обозначения.- Значок галочки сигнализирует о том, для записи олига в заявке была добавлена запись сущности Олига из ДТ-Синтеза.

Если для всех олигов в заявке были выбраны записи Олигов из ДТ-Синтеза, - тот же значок начинает отображаться и справа от заголовка данного блока.
- Для олигов, которые исходно не находились в заявке, но были добавлены во время создания заказа предусмотрена отдельная иконка.

3. Формирование детального статуса олигов в заявке¶
После того, как заказ в ДТ-Синтезе будет создан, - ДТ-Синтез будет раз в минуту собирать информацию о заявках в своей базе с любым статусом, отличным от статуса "Выполнена" , и отправлять информацию для обновления соответствующей заявки в Личном кабинете. В рамках этой синхронизации могут обновляться как общие параметры заявки, отредактированные в ДТ-Синтезе, так и состав олигов, который был изменён в ДТ-Синтезе, а также их детальный статус по этапам, более подробно про отображение которого было указано в задаче https://redmine.dna-tech.dev/issues/5933.
Приведу краткое описание того, в какой момент в ДТ-Синтезе происходит фиксация дат завершения этапов синтеза для каждого из олигов в заявке .
Для олигов на текущий момент выделяются следующие стадии:
Для каждой из стадий есть своя теоретическая длительность выполнения:
1. Принят в работу.
В качестве фактической даты завершения данной стадии выступает дата создания заказа в ДТ-Синтезе .
2. Синтез.
В качестве фактической даты завершения данной стадии выступает дата последней передачи олига с УС (через стандартный функционал передачи или через концентрирование).
3. Очистка.
В качестве фактической даты завершения данной стадии выступает дата последней передачи олига с УПР (через стандартный функционал передачи или через концентрирование).
4. Клик.
В качестве фактической даты завершения данной стадии выступает дата последней передачи олига с УКХ (через стандартный функционал передачи или через концентрирование).
5. Повторная очистка.
В качестве фактической даты завершения данной стадии выступает дата последней передачи олига с УПР (через стандартный функционал передачи или через концентрирование), после того, как олиг побывал на УКХ и был принят там в работу через соответствующий функционал .
6. Контроль качества.
7. Выпуск.
Две данные стадии на текущий момент считаются завершёнными в одно и то же время.
В качестве фактической даты завершения данных стадий на текущий момент выступает следующее условие:
Если для олига была зафиксирована передача заказчику через функционал передачи олигов заказчику на странице Деталей научного заказа, или же соответствующий заказ был закрыт с помощью функциональности закрытия научного заказа, - из двух данных дат берётся наименьшая (но достаточно хотя бы одной).
После закрытия заказа у связанной заявки в ДТ-Синтезе обновляется статус на "Выполнена" , - после чего данный статус должен в течение ~1 минуты быть установлен и у заявки в Личном кабинете, вместе с текущими параметрами заявки в ДТ-Синтезе и детальными статусами олигонуклеотидов, после чего для данной заявки ДТ-Синтез перестаёт отправлять запросы на синхронизацию в Личный кабинет , так как для синхронизации выбираются только заявки, у которых статус отличен от статуса "Выполнена". Но смена статуса всё ещё доступна на Деталях заявки в ДТ-Синтезе, поэтому при необходимости синхронизацию всё ещё можно выполнить, но для этого необходимо вернуть статус заявки на "В работе".
В тестовых целях, для корректной работы закрытия заказа (и установки дат у финальных стадий синтеза олигов в заявках) можно было бы передать олиги на УВПН, после чего установить им статус по контролю "ОК" с помощью функциональности, представленной на скриншоте.
Затем, на деталях соответствующего Научного заказа, данным олигам в заказе необходимо установить "Статус ОК по контролю".
После чего, нажав на кнопку "Закрыть заказ", - появится возможность отсканировать все необходимые физические олиги и выполнить закрытие заказа.
Личный кабинет заказчика должен быть доступен по адресу:
https://customer-portal-feature-creatingrequests-cicd.dna-tech.dev/
Соответствующее ему приложение ДТ-Синтеза доступно по адресу:
https://sintez-oligs-customer-portal-managing-synthesis-reque.dna-tech.dev/
Файлы
Обновлено Андрей Ерзунов около 1 месяца назад
- Описание обновлено (Разница(diff))
- Файл clipboard-202604061125-rza6m.png clipboard-202604061125-rza6m.png добавлен
- Файл clipboard-202604061124-wilqj.png clipboard-202604061124-wilqj.png добавлен
Обновлено Андрей Ерзунов около 1 месяца назад
- Описание обновлено (Разница(diff))
- Файл clipboard-202604061136-rt1ro.png clipboard-202604061136-rt1ro.png добавлен
- Файл clipboard-202604061135-ubada.png clipboard-202604061135-ubada.png добавлен
- Файл clipboard-202604061128-ax0ca.png clipboard-202604061128-ax0ca.png добавлен
Обновлено Андрей Ерзунов около 1 месяца назад
- Описание обновлено (Разница(diff))
- Файл clipboard-202604061144-orsmj.png clipboard-202604061144-orsmj.png добавлен
- Файл clipboard-202604061143-ydu2q.png clipboard-202604061143-ydu2q.png добавлен
- Файл clipboard-202604061141-haslg.png clipboard-202604061141-haslg.png добавлен
Обновлено Андрей Ерзунов около 1 месяца назад
- Описание обновлено (Разница(diff))
- Файл clipboard-202604061246-czngh.png clipboard-202604061246-czngh.png добавлен
Обновлено Андрей Ерзунов около 1 месяца назад
- Описание обновлено (Разница(diff))
- Файл clipboard-202604061348-tvl0m.png clipboard-202604061348-tvl0m.png добавлен
- Файл clipboard-202604061347-gakyf.png clipboard-202604061347-gakyf.png добавлен
Обновлено Андрей Ерзунов около 1 месяца назад
- Описание обновлено (Разница(diff))
- Файл clipboard-202604061353-km6lu.png clipboard-202604061353-km6lu.png добавлен
- Файл clipboard-202604061353-fup29.png clipboard-202604061353-fup29.png добавлен
Обновлено Андрей Ерзунов около 1 месяца назад
- Параметр Ожидается содействие изменился на Альбина Полещук
- Параметр Тестировщик изменился на Анастасия Егорова
- Параметр Приоритет изменился с Обычный на Срочный
Обновлено Анастасия Егорова 26 дня назад
- Файл clipboard-202604131359-tspcy.png clipboard-202604131359-tspcy.png добавлен
- Файл clipboard-202604131359-wubjm.png clipboard-202604131359-wubjm.png добавлен
1. Некорректно передается информация о ДМТ, у первого олига в деталях заявки должно быть Да, у второго - Нет


Предлагаю в ЛК изменить название поля "Снять ДМТ-защиту" и варианты ответа "Снять/Оставить" на "ДМТ-защита" и варианты "Да/Нет" (как это отображается в Синтезе), т.к. первый вариант выглядит более запутанным
Обновлено Анастасия Егорова 26 дня назад
2. Сдвинуть стрелки сортировки ближе к названиям колонок, к которым они относятся. Сейчас последняя стрелка выглядит так, будто относится к полю комментарий

вижу, что так сделано во всем приложении, может можно с этим что-то сделать
Обновлено Анастасия Егорова 26 дня назад
3. Страница создания заказа - Список олигонуклеотидов. Выбрала ДМТ - "Да", Способ - "Вручную", Участок - "УС". Затем изменила ДМТ на "Нет" - поле Участок осталось разблокированным

Обновлено Анастасия Егорова 26 дня назад
- Файл clipboard-202604131515-ksjzi.png clipboard-202604131515-ksjzi.png добавлен
- Файл clipboard-202604131513-z2nih.png clipboard-202604131513-z2nih.png добавлен
- Файл clipboard-202604131513-4knzx.png clipboard-202604131513-4knzx.png добавлен
- Файл clipboard-202604131504-wz9se.png clipboard-202604131504-wz9se.png добавлен
- Файл clipboard-202604131504-eeknh.png clipboard-202604131504-eeknh.png добавлен
4. Значение ДМТ живет своей жизнью)) Изначально неправильно передалось из ЛК (см. п.1), затем при просмотре заказа ДМТ стал у обоих "Да":


5. В деталях заявки на синтез нет пометки о срочности, а в составе заказа - есть:


+ информация о ДМТ разная
В ЛК срочности нет, ДМТ - неважно

Обновлено Анастасия Егорова 26 дня назад
6. Нужна ли дата готовности, которую вводит пользователь при создании заказа, если дата выполнения рассчитывается по алгоритму, не зависящему от этой даты + в нее можно поставить прошедшее число
Ответ: Дата указанная заказчиком служит работникам ОСО (со стороны ДтСинтез) показателем приоритета

Обновлено Анастасия Егорова 26 дня назад
- Параметр Статус изменился с Ожидает тестирования на Требуется доработка (тест)
Обновлено Анастасия Егорова 26 дня назад
7. Состав заказа. Вместо буквы n - русская буква п

Обновлено Анастасия Егорова 23 дня назад
8. Ошибка при переходе на "УВПН - Список научных олигов" на вкладки Прошли контроль, Брак, Все олиги:

Обновлено Глеб Карпов 16 дня назад
- Параметр Статус изменился с Требуется доработка (тест) на Ожидает тестирования
Обновлено Андрей Ерзунов 16 дня назад
Анастасия Егорова писал(а) (#note-23):
1. Некорректно передается информация о ДМТ, у первого олига в деталях заявки должно быть Да, у второго - Нет
Предлагаю в ЛК изменить название поля "Снять ДМТ-защиту" и варианты ответа "Снять/Оставить" на "ДМТ-защита" и варианты "Да/Нет" (как это отображается в Синтезе), т.к. первый вариант выглядит более запутанным
По поводу варианта отображения для данного поля согласовал этот момент с коллегами с ОСО, в скором времени обновление будет добавлено в тестовую версию.
Анастасия Егорова писал(а) (#note-23):
1. Некорректно передается информация о ДМТ, у первого олига в деталях заявки должно быть Да, у второго - Нет
Предлагаю в ЛК изменить название поля "Снять ДМТ-защиту" и варианты ответа "Снять/Оставить" на "ДМТ-защита" и варианты "Да/Нет" (как это отображается в Синтезе), т.к. первый вариант выглядит более запутанным
Обновлено Андрей Ерзунов 16 дня назад
Анастасия Егорова писал(а) (#note-26):
4. Значение ДМТ живет своей жизнью)) Изначально неправильно передалось из ЛК (см. п.1), затем при просмотре заказа ДМТ стал у обоих "Да":
5. В деталях заявки на синтез нет пометки о срочности, а в составе заказа - есть:
+ информация о ДМТ разная
В ЛК срочности нет, ДМТ - неважно
Предполагаю, что значения были прочитаны корректно, так как "Снять" в ЛК эквивалентно "Да" в ДТ-Синтезе, а "Оставить" в ЛК эквивалентно "Нет" в ДТ-Синтезе.
По поводу отображения на Деталях научного заказа, - на текущий момент в данном столбце используется другой компонент, который для физического олига сигнализирует о том, была ли фактически с него снята ДМТ-защита, и если она была снята - отображается OFF, иначе - ON.
Пока что от коллег не было запроса на изменения отображения информации о фактическом статусе ДМТ для олигов на данной странице.
А на деталях заявки в колонке с информацией о снятии ДМТ отображается то, что заказчик указал по поводу необходимости снятия ДМТ для олига, в данном случае имеется ввиду, как необходимо поступить с ДМТ-защитой для олига: снять или же оставить.
По поводу отображения срочности, - на текущий момент у заявки нет отдельного поля "Срочность", но соответствующее поле есть у заказа. Пока что не добавлял данное поле в заявку, так как не поступало такого запроса от коллег.
Внесли исправления в отображение информации о срочности для заказа.
Обновлено Андрей Ерзунов 15 дня назад
- Параметр Статус изменился с Ожидает тестирования на В работе
Обновлено Андрей Ерзунов 15 дня назад
- Параметр Статус изменился с В работе на Ожидает тестирования
Обновлено Анастасия Егорова 4 дня назад
- Параметр Статус изменился с Ожидает тестирования на Требуется доработка (тест)
- Файл clipboard-202605051517-96xgo.png clipboard-202605051517-96xgo.png добавлен
- Файл clipboard-202605051516-8xpq5.png clipboard-202605051516-8xpq5.png добавлен
1. Пустые места в списке олигонуклеотидов, как будто можно обойтись без скролла, если сделать выравнивание чуть компактнее

2. Ошибка при нажатии кнопки [Сохранить и сформировать заказ]:

3. Не приходят заявки из личного кабинета (более 30 минут прошло)