Подавайте работы до 11 октября (вс) — 19 000 Р,
с 12 октября (пнд) — 28 000 Р
Церемония награждения
4 декабря 2026
Крупнейшая digital-премия в Европе

Единое приложение для медиапланов: как мы заменили устаревшую систему для агентства радиорекламы

Заказчик: PWD
Исполнитель: PWD
Share
Share
Единое приложение для медиапланов: как мы заменили устаревшую систему для агентства радиорекламы

Главное о кейсе

Федеральное агентство радиорекламы занимается размещением сетевой и мультилокальной рекламы на радио, а также рекламой в Digital Audio. Для такого бизнеса прайс-лист радиостанции - не просто файл с ценами. В нем хранится город, станция, период действия, стоимость спотов, НДС, скидки, сезонные коэффициенты, наценки и другие параметры, которые влияют на итоговый бюджет рекламной кампании.

До проекта команда работала в старой десктопной системе на Delphi и Firebird. Система была создана примерно 10-15 лет назад: она закрывала базовый процесс, но ее интерфейс, техническая база и внутренняя логика уже не соответствовали текущим задачам. Поддерживать и развивать такое решение было сложно: по системе оставалось мало документации, а часть знаний была завязана на разработчика, который давно не участвовал в проекте.

Нужно было не просто “перерисовать интерфейс”, а заменить старое приложение полноценным рабочим инструментом: сохранить накопленную бизнес-логику, перенести данные, собрать ключевые процессы в одном месте и заложить основу для дальнейшего развития продукта.

Мы спроектировали и разработали модульное веб-приложение на PHP/Symfony и Vue/PrimeVue. Бэкенд отвечает за бизнес-логику, расчеты, работу с данными и REST API. Фронтенд дает пользователям современный интерфейс для управления прайс-листами, медиапланами, письмами и справочниками.

Отдельно мы разработали дизайн приложения с нуля. Бизнес-аналитик подготовил прототипы, дизайнер собрал интерфейсы на UI-ките, а команда разработки реализовала их в продукте.

Как проект изменил жизнь пользователей

После проекта команда работает не с разрозненными файлами и старой системой, а с единым веб-приложением. В нем можно вести базу прайс-листов, связывать прайсы с городами и радиостанциями, хранить исходные письма и вложения, выбирать параметры рекламной кампании и формировать медиаплан в Excel.

Пользователь может создать прайс или черновик, указать период действия, тип прайса, НДС, инфляцию, предоплату, скидки, наценки, сезонные коэффициенты и другие коммерческие условия. Система помогает контролировать актуальность прайсов, подсвечивает статусы, не дает использовать заблокированные прайсы в расчете и проверяет дубли активных прайс-листов в связке “город + радиостанция”.

Генератор медиапланов собирает данные из выбранных прайсов и формирует Excel-файл в нужном формате. В одном медиаплане может быть до 100-200 прайс-листов. По каждому листу доступны расчетные блоки, месяцы, споты, минуты, скидки, НДС и итоговый бюджет.

Excel остался финальным рабочим документом, потому что для рынка это привычный формат согласования с клиентами и контрагентами. Но теперь файл создается из централизованных данных, а не собирается вручную с нуля.

Что изменилось для команды заказчика:

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

Бизнес-задача и ее решение

Бизнес-задача была в том, чтобы перенести ежедневную работу с прайс-листами и медиапланами из устаревшего приложения в современную систему, не потеряв привычную логику процесса.

Решение должно было:

— заменить старую десктопную систему;
— перенести исторические данные;
— сохранить привычный Excel-формат медиапланов;
— централизовать хранение прайс-листов и исходных писем;
— автоматизировать генерацию медиапланов;
— поддержать роли специалистов и администраторов;
— дать заказчику базу для последующего развития системы.

Мы разделили решение на несколько ключевых модулей. Модуль прайс-листов стал единой базой коммерческих условий. Модуль писем помогает хранить источники данных и связывать их с прайсами. Генератор медиапланов собирает условия из базы и формирует Excel-документ. Справочники городов, радиостанций и пользователей поддерживают структуру данных. Ролевая модель разграничивает доступ к функциям системы.

Отдельной частью проекта стала миграция. В новую систему перенесли города, радиостанции, пользователей, медиапланы и прайс-листы. В рабочем списке прайс-листов отображалось 506 страниц по 50 элементов, то есть более 25 тысяч записей с разными статусами: устаревшие, текущие и будущие.

Крафт (мастерство), реализация, технические детали

На старте мы разобрали старую систему, восстановили ключевые пользовательские сценарии и описали будущую архитектуру. Важно было сохранить смысл привычного процесса, но убрать ограничения старого приложения: устаревший интерфейс, сложность поддержки, зависимость от легаси-логики и недостаток документации.

Новое приложение построено как модульная веб-система. Серверная часть реализована на PHP/Symfony, клиентская - на Vue/PrimeVue. Обмен между фронтендом и бэкендом идет через REST API.

В рамках проекта мы:

— разработали новый интерфейс и дизайн приложения;
— реализовали модуль управления прайс-листами;
— добавили создание черновиков прайс-листов;
— настроили поиск, фильтрацию, сортировку и пагинацию списков;
— реализовали детальную карточку прайс-листа с вкладками по смысловым блокам;
— добавили привязку писем и файлов к конкретным прайс-листам;
— реализовали статусы и визуальную подсветку прайсов по актуальности;
— добавили контроль дублей активных прайс-листов в связке “город + радиостанция”;
— реализовали генератор медиапланов с выгрузкой в Excel;
— добавили модуль писем и вложений;
— перенесли исторические данные из старой системы;
— заложили ролевую модель для специалистов и администраторов.

Прайс-листы могут приходить не только по почте. Радиостанция может направить файл менеджеру по любому рабочему каналу, поэтому система не сводит процесс только к email. При этом письма и вложения остаются важным источником исходных данных: приложение может автоматически подгружать письма по настройкам почты, запускать синхронизацию вручную, загружать письма с устройства в форматах OFT, MSG и TXT, исключать повторную загрузку уже существующих писем и привязывать письма к прайс-листам.

После первого релиза появились дополнительные запросы. В медиаплан добавили брендирование, чтобы сохранить авторство документа и снизить риск некорректного использования. Также появилась задача ограничить редактирование файла, чтобы контрагенты не могли произвольно менять суммы и другие расчетные данные.

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

Инсайты, гипотезы, процесс создания и взаимодействия с заказчиком

Главный инсайт проекта: в таких системах нельзя просто заменить интерфейс и назвать это модернизацией. Старая логика может быть неудобной технически, но она часто отражает реальные правила бизнеса. Поэтому сначала нужно понять, какие сценарии действительно должны сохраниться, а какие ограничения появились только из-за старой технологии.

Второй важный вывод - Excel не всегда нужно убирать из процесса. В этом проекте Excel остался нормальным и полезным финальным форматом, потому что через него заказчик взаимодействует с клиентами и контрагентами. Ценность нового приложения не в том, чтобы отменить Excel, а в том, чтобы убрать ручную подготовку данных и сделать генерацию файла управляемой.

Третий вывод связан с миграцией. Для заказчика была важна не только новая система, но и преемственность: накопленная база городов, радиостанций, медиапланов и прайс-листов должна была продолжить жить в новом продукте. Поэтому миграция стала не техническим приложением к проекту, а одной из центральных задач.

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

Результат проекта - не разовая автоматизация отдельной операции, а новая рабочая основа для команды заказчика. Старое приложение заменено, данные перенесены, ежедневные сценарии собраны в одном интерфейсе, а система подготовлена к дальнейшему развитию после запуска.

Скриншоты

Share
Share

Дата запуска

15 июля 2026 года

Авторы

Команда PWD
✔ Фейк (работа не была принята клиентом, не была доведена до запуска или отсутствовал факт заказа работы)

Ссылки

pwd.ru
Крупнейший digital-конкурс в Европе
Подавайте работы до 11 октября (вс) — 19 000 Р,
с 12 октября (пнд) — 28 000 Р

Церемония награждения — 4 декабря (пт)  •  Москва и онлайн
Купить билет
Количество билетов ограниченно, торопитесь!