
о клиенте
NDA
Крупная научно-производственная корпорация, лидер российского инновационного вагоностроения.
контроль продукции
Компания ежегодно производит тысячи грузовых вагонов, а также запасные части, узлы и расходные материалы. В процессе эксплуатации продукции нужно регулярно идентифицировать изделие и проверять его подлинность. Производитель маркирует каждое изделие этикеткой с 2D-кодом.
Необходимо создать приложение, которое поможет контролировать происхождение продукции на протяжении её жизненного цикла. Приложение должно выполнять функцию мобильного рабочего места для специалистов, которые работают с продукцией и отслеживают её подлинность.

пользователи
В системе реализована модель разграничения доступа на основе ролей. К каждой роли привязан набор доступных функциональных блоков и прав. Ролей пользователей три: сотрудники, ответственные за обслуживание и ремонт вагонов, аудиторы и администраторы системы. Для каждой роли мы написали user stories и составили Customer Journey Map.
сканирование
Сканирование кода на изделиях и запрос информации об изделии в базу данных — основной функционал приложения.
2D-код представлен в формате DataMatrix ECC 200, данные кода — в формате binary/raw data. Код нанесен на устойчивую к механическому воздействию полимерную наклейку.


Работать с приложением может только зарегистрированный и авторизованный пользователь
После успешной авторизации открывается экран сканирования, где пользователь видит не только рамку видоискателя, но и кнопку включения фонарика, которая располагается внизу экрана. Это заметно облегчает работу, поскольку часто осмотр изделий происходит не в самых комфортных условиях — в том числе при плохом освещении.

Если сканирование прошло успешно, пользователь видит экран «Результат сканирования», где приведены коды изделия по ключевым для индустрии реестрам, описание и изображение детали.
также предусмотрены сценарии, когда предоставить информацию по изделию невозможно:
Код не соответствует формату DataMatrix ECC 200: пользователь видит сообщение об ошибке, информация об инциденте отправляется команде технической поддержки.
Запросить информацию об изделии на сервере не удалось (нет соединения или сервер недоступен): пользователь видит информацию об изделии, которую можно получить напрямую из кода — название и код производителя, тип и код изделия и т. д.
Код соответствует стандарту, но не зашифрован согласно алгоритму заказчика: пользователь видит сообщение об ошибке, информация об ошибке раскодирования отправляется команде технической поддержки.

логирование событий
Результаты каждого сканирования заносятся в журнал
в административной панели. В табличном виде хранятся:
- Дата и время события в часовом поясе устройства.
- Фамилия и первая буква имени пользователя.
- Наименование события.
- Результат — «Успешно» или «Неуспешно».
- Геопозиция в виде точки на Яндекс.Картах.
уведомления
Результаты сканирования приходят пользователю в заранее выбранные каналы — на почту, в Telegram-бот или в виде СМС.
Сотрудники компании получили удобный мобильный инструмент проверки подлинности продукции
Приложение помогает идентифицировать детали и контролировать жизненный цикл продукции. Логика расшифровки кодов реализована в виде универсальной библиотеки на C++. Это даёт возможность не только использовать ключевую фичу продукта в рамках мобильного приложения, но и встраивать её практически в любую мобильную или веб-форму.

компоненты системы
Веб-сайт пользователя
Веб-сайт администратора
Мобильные приложения
Сервер мобильных приложений
Blockchain
Телеграм-бот
Сервер СУБД
Сервера для отправки СМС и email
стек
