Корпоративное ПО, Производство
.NET Core
«Союзтехноком» специализируется на автоматизации производственных процессов: организации систем контроля, диагностики и управления подвижным составом и технологическим автомобильным транспортом на предприятиях различных отраслей промышленности. У компании есть собственные производства электронного и электротехнического оборудования, а также собственные цифровые решения для горнодобывающей промышленности и железнодорожного транспорта.
Одно из решений компании позволяет контролировать работу промышленного транспорта, например, бульдозеров и экскаваторов. Система собирает информацию о маршрутах, местах погрузки и разгрузки, показывает маршрут на карте, рассчитывает ежедневную нагрузку как по каждой единице транспорта, так и по всему парку. Однако система была разработана много лет назад и имела серьезные ограничения:
Чтобы получить новые возможности для управления транспортом, «Союзтехноком» обратился в Nord Clan с запросом на разработку веб-АРМ.
Для решения задачи Nord Clan разработал веб-АРМ, которое позволяет мониторить промышленный транспорт в реальном времени из любой точки мира, отслеживать состояние техники, ее статусы и формировать отчеты с актуальными данными в виде диаграмм и графиков. Веб-формат приложения устраняет проблему локальности, давая доступ из любой точки и с любого устройства, что облегчает управление и взаимодействие между сотрудниками.
Для улучшения юзабилити мы подключили к команде UX-дизайнера, который учел все сценарии использования и создал простой и интуитивно понятный интерфейс.
Мы использовали существующую базу данных, которая ранее наполнялась другими службами. На основе этих данных мы воссоздали функционал старой десктопной версии, адаптировав его под веб-приложение.
Информация о ТС собирается в разделах «Карты», «Сменная информация» и «Статистика».
Одна из ключевых особенностей системы — мониторинг в реальном времени. Для этого используется библиотека SignalR, которая позволяет оперативно получать и отображать данные о местоположении техники. Это позволяет операторам и менеджерам отслеживать движение транспортных единиц без задержек, что критично для оперативного принятия решений.
Модуль «Карты» реализован с помощью библиотеки Leaflet (React-Leaflet). В этом модуле можно выбрать разные типы карт: Google, Яндекс и векторные карты. Векторные карты отображаются по данным, полученным из базы данных, с использованием leaflet-vector-tile-layer. На карте отображаются маркеры для каждого транспортного средства (ТС), их треки, события, происходящие во время работы, зоны работ и другая информация в реальном времени или для любой выбранной смены, если используется фильтрация.
Интерфейс до:
Интерфейс после:
На карте отображаются все транспортные средства, подключенные к системе. Каждый маркер имеет цветовое обозначение, указывающее статус транспортного средства: едет с грузом, едет пустой, разгружается, загружается или стоит.
Модуль «Сменная информация» представляет собой самописную диаграмму, которая отображает периоды работы ТС по сменам. Диаграмма показывает данные как в реальном времени, так и за любую выбранную смену. Пользователь может управлять диаграммой с помощью фильтров, изменять масштаб и просматривать информацию о периодах работы, кликнув на интересующий сегмент. Также есть возможность отображения выбранного сегмента на карте для более наглядного анализа.
Интерфейс до:
Интерфейс после:
Модуль «Статистика» позволяет пользователям легко анализировать работу техники с помощью удобных диаграмм и графиков. Для их отображения используется библиотека 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.