CRM решения

Создаем и внедряем CRM системы для автоматизации бизнес-процессов. Интегрируем системы с внешними и внутренними сервисами компании.

далее
далее
Кейс 11

Разработка системы автоматизации генерации отчетов RedReport для Kelnik Studios

Разработали систему RedReport, позволяющую максимально упростить и оптимизировать работу отдела продвижения по генерации отчетов клиентам.
Сроки
ПЕРВАЯ ВЕРСИЯ
3 месяцев
ПОДДЕРЖКА
6 месяцев
РЕЛИЗ
2014 год
Технологии
БЭКЕНД
Symfony, Doctrine (MySQL), phpdocx

RedReport — система автоматизации генерации отчетов по продвижению, выполненная для компании Kelnik Studios.

Задача

Задача проекта RedReport – максимально упростить и оптимизировать работу отдела продвижения по генерации отчетов клиентам.

Evercode Lab

Kelnik Studios – лидирующая компания по продвижению. Каждый месяц она подготавливала отчеты по результатам работы для каждого клиента. Это отнимало много ресурсов.

Глобальную задачу разбили на составляющие, вот основные:

  • управление проектами клиентов, возможность заполнения информации
  • сбор данных по проекту с Liveinternet
  • сбор данных по проекту с Google Analytics
  • генерация веб-версии отчетов с таблицами, графиками, текстовыми данными и возможностью редактирования"
  • генерация документа Microsoft Word в фирменном стиле Kelnik Studios для отправки клиентам

Взаимодействие на проекте

Работа осуществлялась без полного ТЗ. Мы встречались с руководителем отдела и обсуждали проект. Список задач фиксировали в виде соглашений, по которому в дальнейшем сверялись. Обзор готового функционала тестовой версии завершился запуском, затем подкрепился потребностями, обнаруженными при эксплуатации.

Каждая итерация занимала месяц. Разработка базовой тестовой версии заняла 3 месяца, примерно столько же было выделено на доработку. Также был период сопровождения. В конце мы передали проект самой компании, которая выделила программиста под нужды отдела.

Работа с заказчиком была организована в Basecamp. Мы фиксировали задачи в виде списков и по мере готовности сообщали об этом компании, оставляя комментарии. Обратная связь заводилась в отдельные листы задач. Каждый мог уточнить детали, поделиться информацией и сориентироваться по прогрессу.

Технологии

Проект разработан на Symfony версии 2.3. Работа с базой через Doctrine. Вот список, использованных бандлов Symfony:

  • friendsofsymfony/user-bundle – для организации работы пользователей, разделения прав доступа на сотрудников и админов
  • friendsofsymfony/jsrouting-bundle — для организации динамических действий в конструкторе отчетов
  • knplabs/knp-paginator-bundle — пагинация списков проектов и отчетов
  • knplabs/knp-menu-bundle — работа меню системы
  • doctrine/doctrine-fixtures-bundle — для организации тестовых данных
  • doctrine/doctrine-migrations-bundle — правильное управление изменениями структуры базы, используется по умолчанию во всех наших проектах на Symfony2
  • avalanche123/imagine-bundle — работа с изображениями
  • sensio/buzz-bundle — коннектор для библиотеки Buzz, используемой для сбора данных из внешних систем
  • fabpot/goutte — умная и легкая работа с парсингом данных
  • widop/google-analytics-bundle — работа с Google Analytics API
  • oldsound/rabbitmq-bundle — работа очереди для сбора данных
  • evercodelab/hipchat-monolog-bundle — наш бандл для отправки ошибок работы проект в рабочий чат
  • exercise/htmlpurifier-bundle — очистка данных

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

Особое внимание мы уделили генерации отчетов в формате Microsoft Word. Мы перепробовали все доступные варианты. В итоге остановились на платной библиотеке phpdocx. В процессе мы редактировали исходный код самой библиотеки. С момента сдачи проекта, библиотека активно развивалась.

Все оформление сделано на twitter bootstrap.

Результат

В итоге создание отчета свелось к нажатию одной кнопки.

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

Ниже скриншоты некоторых экранов системы

Evercode Lab
Evercode Lab
Evercode Lab
Evercode Lab

Отзыв

А вот какой отзыв нам оставила Елена, руководитель отдела продвижения Интерактивного агентства «Кельник»:

"Огромное спасибо Роману и команде программистов Evercode за профессионализм и ответственное и трепетное отношение к качеству своих проектов. При условиях неполного ТЗ на разработку и большого количества незафиксированных идей, когда многое приходилось обсуждать и делать «на ходу», специалистам Evercode удалось учесть в разработке весь необходимый объем информации, предложить наиболее подходящие и современные технологии и реализовать все наши идеи в полноценный рабочий продукт при минимальных усилиях с нашей стороны. Это особенно актуально при условии ограниченного количества выделенного времени. Очень хочется отметить качество нашего взаимодействия с компанией – отдельное спасибо Роману за внимательное отношение к нам, как к клиентам, "улавливание" иногда даже неоговоренных деталей, оперативность при решении срочных задач, возможность регулярных встреч, которые помогли охватить весь спектр важных деталей. Особенно хочется подчеркнуть, что с Evercode мы всегда находили оптимальное решение без торможения процесса - это было для нас очень важно в условиях сложности проекта. Кажется, что если специалисты Evercode берутся за проект, то приложат все усилия, и сделают его максимально профессионально, качественно, аккуратно и с душой :). Спасибо вам! Желаем больших и интересных проектов в настоящем и будущем! :)"

Расскажите нам о своих идеях, и мы предложим лучшие решения!
Напишите нам
Нажимая на кнопку “Отправить”, я принимаю пользовательское соглашение и политику конфиденциальности.
Evercode labs

Ваше сообщение было успешно отправлено.

Спасибо!

Mы свяжемся с Вами в ближайшее время!

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