Одно из решений компании позволяет контролировать работу промышленного транспорта, например, бульдозеров и экскаваторов. Система собирает информацию о маршрутах, местах погрузки и разгрузки, показывает маршрут на карте, рассчитывает ежедневную нагрузку как по каждой единице транспорта, так и по всему парку. Однако система была разработана много лет назад и имела серьезные ограничения:
Чтобы получить новые возможности для управления транспортом, «Союзтехноком» обратился в Nord Clan с запросом на разработку веб-АРМ.
Для решения задачи Nord Clan разработал веб-АРМ, которое позволяет мониторить промышленный транспорт в реальном времени из любой точки мира, отслеживать состояние техники, ее статусы и формировать отчеты с актуальными данными в виде диаграмм и графиков. Веб-формат приложения устраняет проблему локальности, давая доступ из любой точки и с любого устройства, что облегчает управление и взаимодействие между сотрудниками.
Для улучшения юзабилити мы подключили к команде UX-дизайнера, который учел все сценарии использования и создал простой и интуитивно понятный интерфейс.
Мы использовали существующую базу данных, которая ранее наполнялась другими службами. На основе этих данных мы воссоздали функционал старой десктопной версии, адаптировав его под веб-приложение.
Схема бизнес-процесса после разработки веб-приложения
Информация о ТС собирается в разделах «Карты», «Сменная информация» и «Статистика».
Одна из ключевых особенностей системы — мониторинг в реальном времени. Для этого используется библиотека SignalR, которая позволяет оперативно получать и отображать данные о местоположении техники. Это позволяет операторам и менеджерам отслеживать движение транспортных единиц без задержек, что критично для оперативного принятия решений.
Модуль «Карты» реализован с помощью библиотеки Leaflet (React-Leaflet). В этом модуле можно выбрать разные типы карт: Google, Яндекс и векторные карты. Векторные карты отображаются по данным, полученным из базы данных, с использованием leaflet-vector-tile-layer. На карте отображаются маркеры для каждого транспортного средства (ТС), их треки, события, происходящие во время работы, зоны работ и другая информация в реальном времени или для любой выбранной смены, если используется фильтрация.
Интерфейс до:
Интерфейс после:
На карте отображаются все транспортные средства, подключенные к системе. Каждый маркер имеет цветовое обозначение, указывающее статус транспортного средства: едет с грузом, едет пустой, разгружается, загружается или стоит.
Отображаются маршруты, места погрузки/разгрузки, простоя. При клике на иконки на карте можно увидеть точное время разгрузки, тип и массу груза.
С помощью фильтров можно отобразить только выбранные ТС, найти их на карте, управлять отображением треков и зон, а также настроить отображаемую карту.
Для более детального контроля можно выбрать отображение конкретных участков: например, только карьеры или автодороги.
Можно настроить фильтр, чтобы отображался трек и скорость ТС на разных участках маршрута.
При выборе конкретного ТС можно посмотреть все события за смену. Например, здесь ТС несколько раз разгружалось.
Пользователь может выбрать ТС и посмотреть информацию о нём: дату и время последнего выхода водителя на связь, дату и время последней передачи координат.
Все данные о машинах, включая их местоположение, статусы и маршруты, сохраняются в базе данных на протяжении 30 дней. Это позволяет не только мониторить технику в реальном времени, но и просматривать прошедшие смены.
Модуль «Сменная информация» представляет собой самописную диаграмму, которая отображает периоды работы ТС по сменам. Диаграмма показывает данные как в реальном времени, так и за любую выбранную смену. Пользователь может управлять диаграммой с помощью фильтров, изменять масштаб и просматривать информацию о периодах работы, кликнув на интересующий сегмент. Также есть возможность отображения выбранного сегмента на карте для более наглядного анализа.
Интерфейс до:
Интерфейс после:
Модуль «Статистика» позволяет пользователям легко анализировать работу техники с помощью удобных диаграмм и графиков. Для их отображения используется библиотека Recharts.
Интерфейс до:
Интерфейс после:
Модуль отображает данные в наглядной форме, включая:
Такая детализация помогает быстро оценить эффективность работы и выявить отклонения от планов.
В результате работы над проектом команда Nord Clan модернизировала старую десктопную систему и создала современное веб-приложение, которое стало доступным из любой точки и с любого устройства. Это устранило ключевую проблему локальности и открыло новые возможности для управления промышленным транспортом.
Back-end: ASP.NET Core, SignalR, Entity Framework Core, MsSql Server.
Front-end: React, TS, Zustand, Leaflet, Recharts, Styled-components, Mui, SignalR.