ГИС-Скрипты

СКР-01 Договоры и акты

Автоматическая загрузка договоров и актов в ГИС ЖКХ

Программа с окном: сначала размещает договоры, потом прикрепляет к ним акты. Работает в вашем Chrome, пароль не просит.

Какую задачу решает

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

В ГИС ЖКХ акт привязывается к договору, поэтому порядок жёсткий: пока договор не размещён, акт по нему не загрузить. Программа держит этот порядок за вас и показывает, что именно пошло не так.

Что делает скрипт

  1. Берёт из вашей учётной системы договоры и акты, которые ожидают размещения.
  2. Скачивает сканы из файлового хранилища во временную папку; сканы прошлого запуска удаляются в начале нового, чтобы документы клиентов не копились на диске.
  3. Открывает реестр договоров в ГИС ЖКХ и размещает договоры, заполняя формы так, как это делал бы оператор.
  4. Затем по уже размещённым договорам прикрепляет акты.
  5. Пишет журнал прямо в окне: ошибки красным, пропуски жёлтым. Ошибки дополнительно уходят в Telegram, после каждого этапа печатается сводка.

Что понадобится

  • Windows и Google Chrome.
  • Готовый файл .exe — или Python 3 и Playwright, если запускаете из исходников.
  • Доступ в личный кабинет организации в ГИС ЖКХ через Госуслуги с правами на размещение договоров и актов.
  • Источник данных: договоры и акты в учётной системе и их сканы в файловом хранилище. В нашей реализации договоры и акты приходят из 1С в REST-сервис, откуда их забирает скрипт.

Как запустить

  1. Запустите программу и нажмите кнопку открытия Chrome: откроется отдельный Chrome с отладочным портом 9222, своим профилем и одной вкладкой dom.gosuslugi.ru.
  2. Войдите в ГИС ЖКХ вручную: «Войти» → Госуслуги → выберите организацию и дождитесь личного кабинета (адрес my.dom.gosuslugi.ru).
  3. Нажмите «Проверить вход»: программа убедится, что открыт личный кабинет, и закроет лишние вкладки.
  4. Оставьте галочки «Договоры» и «Акты» (по умолчанию включены обе) и нажмите «Запустить загрузку».

Общая подготовка — Chrome, Python, Playwright — описана на странице «Как запустить».

Что пишет скрипт и как реагировать

СообщениеЧто значитЧто делает скрипт / что делать вам
connect EACCES ::1:9222Chrome слушает отладочный порт только по IPv4, а localhost на части компьютеров сначала превращается в IPv6.В скриптах используется адрес 127.0.0.1 вместо localhost — ошибка исчезает.
Не открыт личный кабинетПрограмма не начинает загрузку, пока первая вкладка не на my.dom.gosuslugi.ru.Войдите в ГИС ЖКХ и нажмите «Проверить вход».

Ограничения и на что обратить внимание

  • Кнопка «Остановить» срабатывает между договорами и между актами: посреди размещения обрывать нельзя — в ГИС остался бы полусохранённый документ.
  • Если этап договоров упал, этап актов всё равно запускается: по уже размещённым договорам актам есть куда грузиться.
  • Скрипт опирается на текущую вёрстку ГИС ЖКХ. Если её изменят, селекторы придётся поправить.
  • Источник данных у каждой организации свой, поэтому подключение к вашей учётной системе настраивается отдельно.

Вопросы и ответы

Нужно ли отдавать скрипту пароль от Госуслуг?

Нет. Вход выполняете вы сами в окне Chrome. Программа подключается к уже открытому браузеру и авторизацию не трогает, ИНН организации она читает со страницы.

Можно ли остановить загрузку в процессе?

Да, кнопка «Остановить» срабатывает между договорами и между актами. Необработанные акты остаются в базе со старым статусом и уйдут следующим запуском.

Почему сначала договоры, а потом акты?

Акт в ГИС ЖКХ вешается на договор. Пока договор не размещён, акт по нему загрузить нельзя, поэтому программа сначала размещает договоры.

Подойдёт ли программа к моей учётной системе?

Сама загрузка в ГИС ЖКХ от системы не зависит. Источник данных можно подключить любой: 1С, Excel, REST API. Мы настраиваем это под вашу организацию.