«Сметтер» — система для контроля производства работ, финансов, прибыли и расчетов по объектам и сметам в строительстве, ремонте, отделке и благоустройстве. О том, как мы начинали работу над проект, можно прочитать в кейсе.
Активные пользователи «Сметтера» сообщают о недочетах и высказывают пожелания о том, какие опции стоит добавить. На основе фидбека мы продолжили развивать продукт и внедрять новый функционал. Вот список обновлений, реализованных с февраля по май 2018 года:
- Возможность добавить реквизиты и логотип компании. Они появляются во вкладке «Смета» заказчика и на печатных бланках смет и актов выполненных работ.
- Подстановка позиций из справочника расценок при добавлении новой позиции в смете.
-
Удобное копирование данных в смету из таблицы Excel.
Нужно просто скопировать данные из таблицы Excel или других таблиц и вставить в «Сметтер».
-
Справочник расценок.
Добавлена возможность загружать в «Сметтер» расценки для работ, которые выполняются из проекта в проект. Теперь пользователи «Сметтера» могут быстро составлять сметы и не забывать включить в смету все необходимые работы, так как весь список возможных работ будет у них перед глазами.
Наиболее сложной доработкой из перечисленных оказался «Справочник расценок», а именно функционал, отвечающий за сортировку и редактирование позиций в справочнике. Разработка справочника затянулась на долгих три месяца, хотя мы рассчитывали уложиться за месяц.
«Поскольку это
веб-приложение и была выбрана схема работы по протоколу HTTP, у нас возникли трудности с отслеживанием очередности запросов. Все действия по изменению сметы на сервере должны выполняться точно в такой же последовательности, что и на клиенте. Так, например, мы не можем изменить название позиции раньше, чем эта позиция появится в базе данных сервера. Запросы с клиента отправляются асинхронно и мы не знаем, в какой последовательности они придут на сервер, также не знаем, с какой скоростью сервер их обработает и отдаст ответ. Таковы особенности работы сети и протокола HTTP, в частности. Поэтому могла возникнуть ситуация, когда данные на сервере начинают отличаться от данных на клиенте, и это особенно касается сортировки.Позиции в справочнике имеют жесткую двухуровневую структуру, целостность которой обеспечена индексами сортировки и привязкой к родителю (если есть). Нарушение этой структуры может привести (и приводило в сметах) к различным негативным эффектам: например, таким, как неправильный расчет по смете, „пропажа“ позиций на клиенте, либо просто к невозможности продолжить работу по смете на стороне клиента. Таким образом, узким местом стало сохранение структуры позиций в смете. На изменение структуры позиций влияют три действия: добавление, удаление и сама сортировка непосредственно. Кроме того, оставалась нерешенной проблема, когда запрос на обновление позиции приходил раньше, чем запрос на добавление позиции.»
Артем Михайлов, программист
В связи с этим было принято решение разработать новую схему сортировки позиций в справочнике, которая отличается от схемы сортировки позиций в сметах. На проработку, внедрение и тестирование и ушло много часов. В дальнейшем, по мере увеличения количества пользователей, редактирование справочника расценок и смет для пользователей будет удобным, быстрым и не давать сбоев.
- Руководитель проекта — Наталья Воропаева
- Дизайнер — Ирина Окулова
- Верстальщики — Кирилл Дятлов, Максим Сафаралиев
- Технический директор — Сергей Трифонов
- Программист — Артем Михайлов