Гибкая автоматическая проверка сводных таблиц технического обследования домов — десятки живых, активно используемых правил, продвинутый поиск по содержимому и подсветка нарушений прямо в файле.
Сервис принимает сводную таблицу технического обследования дома и проверяет её на нарушения: обязательные поля, диапазоны значений, математические соотношения между площадью и объёмом, согласованность состояния конструктивных элементов с назначенным ремонтом, логику инженерных сетей. Найденные нарушения подсвечиваются прямо в файле — данные не исправляются автоматически, решение остаётся за человеком.
Правила выведены из реального технического задания с рукописными правками эксперта — вычеркнутыми неверными формулами, уточнёнными диапазонами. Это не придуманная спецификация, а формализация того, как реально принимаются технические паспорта домов.
Не по букве столбца — колонки можно переставить местами, проверка всё равно найдёт нужное поле, включая составные двухстрочные заголовки.
Проверка ищет нужные значения по содержимому ячеек, устойчиво к вариациям реальных выгрузок.
Нарушения отмечены цветом на отдельном листе ошибок — понятно с первого взгляда, что и где проверить.
Проверки здоровья сервиса, единый регламент dev/prod — сервис в работе.
Проверка исполнителей, группы подвала — новые категории правил по запросу.
Каждая правка правил — прослеживаемая, с понятной историей.
Границы значений для полевиков и камеральщиков уточнены, добавлена ручная проверка по году — несколько итераций подряд по замечаниям пользователей.
Автоматические проверки переведены на инфраструктуру флота.
Сервис переведён на новую инфраструктуру вместе с остальными продуктами организации.
Архитектура сервиса уже стандартизирована и готова к продуктивной эксплуатации: модульный движок правил, простой файловый конвейер без лишней инфраструктуры, полное покрытие тестами перед каждой выкладкой.
Сервис работает на боевом адресе и отдельном адресе для разработки. Развитие не остановилось — донастройка правил продолжается по мере поступления новых замечаний от коллег, без пауз между итерациями.