Public release from ruodoo-project: 19.0 - 2026-11-01 22:52:25 UTC

This commit is contained in:
CI Publish Bot
2026-11-01 22:54:30 +00:00
commit 26250aa580
2492 changed files with 664277 additions and 0 deletions

View File

@@ -0,0 +1,116 @@
====================================
РуОду — Аренда и коммунальные услуги
====================================
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
:alt: Beta
.. |badge2| image:: https://img.shields.io/badge/licence-LGPL--3-blue.png
:target: http://www.gnu.org/licenses/lgpl-3.0-standalone.html
:alt: License: LGPL-3
|badge1| |badge2|
Управление договорами аренды и коммунальных услуг: учёт объектов и
приборов учёта (счётчиков), ввод показаний по периодам и автоматическое
формирование счетов (``account.move``) — фиксированной суммой или по
расходу счётчика. Договор аренды связывается с российским договором
(``partner.contract.customer``), нативная бухгалтерия Odoo не затрагивается.
Порт коммерческого модуля ``comm_service`` (Odoo 17) на платформу РуОду
(Odoo 19) с согласованием с российской локализацией ``l10n_ru_*``.
**Содержание**
.. contents::
:local:
Возможности
===========
* Договоры аренды с привязкой к объектам (офисы, машиноместа и т. п.)
и статусами «Черновик / Действует / Не действует»
* Каталог объектов с признаком занятости и историей цен
* Приборы учёта (счётчики) и показания по периодам с контролем
корректности (год, месяц, монотонность показаний)
* Автоматическое формирование счетов за период:
* ежемесячно, ежеквартально или ежегодно
* фиксированной суммой либо по расходу счётчика (разница показаний)
* защита от повторного начисления за один и тот же период
* Мастер массового создания счетов по всем действующим договорам
* Мастер ввода показаний счётчиков за период
* Связь договора аренды с российским договором
(``partner.contract.customer``); поля периода и договора на счёте
* Печатная форма «Счёт по форме 1С» (устаревшая, см. ниже)
* Портал заказчика: отображение текущего долга
Зависимости
===========
* ``account`` — счета (``account.move``)
* ``l10n_ru_contract`` — российские договоры (``partner.contract.customer``),
реквизиты компании и контрагента (``chief_id``, ``inn``, ``kpp``)
* ``l10n_ru_contract_account`` — поле ``mt_contract_id`` и синхронизация
счёта с договором (``set_ons``)
Python-зависимости: ``pytils`` (суммы и даты прописью в печатной форме).
Использование
=============
#. Заведите типы объектов и объекты в *Аренда > Объекты*.
#. Создайте договор аренды в *Аренда > Договоры*: укажите заказчика,
компанию, объект и строки услуг (продукт, цена, период, при
необходимости — счётчик). Переведите договор в статус «Действует».
#. Вносите показания счётчиков вручную или через
*Аренда > Счётчики > Мастер ввода показаний*.
#. Формируйте счета кнопкой «Создать счета» в договоре или через
*Аренда > Договоры > Создание счетов* (массовый мастер по всем
действующим договорам).
#. При необходимости привяжите договор аренды к российскому договору
(кнопка «Договор не привязан. Создать?»).
Счета создаются в состоянии «Черновик»: их можно проверить и провести
штатными средствами Odoo. При проведении счёт попадает в РСБУ-слой через
коннектор документов (событие ``action_post``) — отдельных действий не
требуется.
Печатные формы
==============
Форма «Счёт по форме 1С» (``ruodoo_commservice.report_inv_1c``) помечена
**устаревшей**: печать в проекте переведена на DOCX. Форма скрыта из
интерфейса (сброшен ``binding_model_id``), но код сохранён и может быть
вызван программно. Планируемое удаление — в версии 20 (см.
``docs/research/11-qweb-reports-registry.md``).
Известные ограничения
=====================
* Учёт ведётся в рублях, ориентирован на российскую локализацию.
* Счёт дохода в строке счёта берётся из категории товара; если он не
задан, подставляется счёт по умолчанию из журнала продаж.
Тестирование
============
Модуль покрыт тестами ``TransactionCase`` (создание счетов по периодам и
по счётчикам, контроль дублей и показаний, мастера). Запуск::
docker compose run --rm odoo odoo -d <db> -i ruodoo_commservice \
--test-enable --test-tags=/ruodoo_commservice --stop-after-init
Авторы
======
* MK.Lab, RuOdoo
Модуль сопровождается MK.Lab, RuOdoo.
.. image:: https://ruodoo.ru/logo.png
:alt: MK.Lab, RuOdoo
:target: https://ruodoo.ru
Модуль является частью решения РуОду.