Отдел ПТО — это люди, которые ведут исполнительную документацию: акты, объёмы, ППР, формы КС. Работа устроена так, что один и тот же факт кочует между договором, заданием, актом и счётом. Пока всё это живёт в папках на диске и переписке в мессенджере, любая сверка превращается в расследование.
PTO.pro — попытка собрать эту цепочку в одном месте так, чтобы у каждого документа было понятное место в иерархии.
Цепочка вместо папок
Ключевая идея простая: документы не лежат рядом, они связаны. Договор порождает задания, задание порождает акты, из заданий собираются счета, а поступления денег разносятся обратно по счетам.
Договор → Задание → Акты → Счёт → Поступление. Пять сущностей, у каждой есть родитель — и любой вопрос «откуда взялась эта сумма» имеет ответ за два клика.
Когда связь явная, появляются вещи, которые руками почти никто не делает: автоматическая привязка поступления к счёту, разбивка платежа между несколькими счетами, статусы «Новый / Ожидает оплаты / Оплачен», которые проставляются сами.
Реестр документов качества
Отдельная боль — входящие документы качества: сертификаты, паспорта, протоколы испытаний. Приходят пачкой сканов, и кто-то должен разобрать, что это за документ и к какому контрагенту он относится.
В реестре это делает фоновая очередь распознавания: файл загружается, уходит в обработку, возвращается с типом документа и предполагаемым контрагентом — человеку остаётся подтвердить или поправить. Не «магия вместо работы», а снятие самой скучной её части.
Три контура в одном приложении
- Публичный сайт — то, что видит любой посетитель.
- Рабочая зона сотрудников — проекты, планировщик задач, контрагенты, документы, карта объектов, чат.
- Личный кабинет клиента — те же данные, но только на чтение и только по своему контрагенту.
Последний пункт оказался важнее, чем казалось на старте: заказчику не нужно писать «пришлите статус» — он просто открывает кабинет.
Живые обновления и ЭДО
Внутри — Express и PostgreSQL, тот же намеренно простой стек, что и в PrintCalc. Обновления
в реальном времени сделаны на Server-Sent Events: одностороннего потока от сервера
к браузеру хватает для чата, уведомлений и подсветки изменений, а сложности WebSocket
при этом не нужны.
Отдельная история — электронный документооборот. Задания, акты и счета уходят контрагенту через Диадок с подписью аппаратным ключом, прямо из карточки документа. Здесь больше всего неочевидных деталей: формат печатной формы, обязательные поля, выбор нужного ящика ЭДО у получателя. Каждая мелочь всплывает только на реальной отправке.
Чему научил проект
Главный вывод: в корпоративных инструментах выигрывает не количество функций, а честность связей между данными. Как только связь есть в базе — интерфейс, отчёты и автоматизация получаются почти сами. Как только связи нет — никакой красивый экран её не заменит.
Все записи