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,106 @@
=================================
РуОду — Контроль отгрузки заказов
=================================
.. |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|
Расширение продаж для контроля финансовых условий отгрузки и приёма
закрывающих документов. Заказ подтверждается к отгрузке только при
выполнении условий по балансу клиента; не прошедший проверку заказ
переводится в состояние «Ожидание оплаты».
Порт модуля ``gok_sale`` (Odoo 17) на платформу РуОду (Odoo 19).
**Содержание**
.. contents::
:local:
Возможности
===========
* Контроль отгрузки заказа по выбранному типу:
* *По подтверждению* — отгрузка разрешена всегда
* *По балансу* — долг клиента покрывает сумму заказа
* *По балансу + овердрафт* — с учётом лимита кредита
* Перевод не прошедшего проверку заказа в состояние «Ожидание оплаты»
с записью в чаттер
* Повторная проверка всех ожидающих заказов одним действием
(``validate_all``) — удобно для планировщика
* Активность «Допущено до отгрузки» на подтверждённом заказе
* Подсветка заказов с ценами ниже ранее согласованных для клиента
* Автоматическая генерация артикула (SKU) для новой номенклатуры
* Приём закрывающих документов по счетам (почта, ЭДО, оригинал, скан),
в том числе загрузка скан-копий клиентом из портала
Зависимости
===========
* ``sale_stock`` — заказы на продажу и отгрузка
* ``account`` — счета (``account.move``)
* ``portal`` — загрузка закрывающих документов из портала клиента
Настройка
=========
#. В заказе на продажу выберите *Тип контроля отгрузки* (по умолчанию
«По подтверждению»).
#. Для контроля по балансу заполните на контрагенте лимит кредита и
отслеживайте долг (поля выведены в карточку партнёра).
Использование
=============
#. Оформите заказ на продажу и нажмите «Подтвердить».
#. Если условия выполнены — заказ подтверждается штатно, создаётся
активность «Допущено до отгрузки».
#. Если условия не выполнены — заказ переходит в «Ожидание оплаты».
После поступления оплаты повторно подтвердите заказ вручную или
запустите повторную проверку всех ожидающих заказов.
#. Закрывающие документы регистрируются на счёте (поле «Закрывающий
документ») либо загружаются клиентом из портала счёта — тогда
создаётся запись со скан-копией.
Отличия от исходного модуля
===========================
При портировании исправлены дефекты оригинала:
* контроль баланса ведётся в контексте компании заказа
(``with_company``) без изменения текущей компании среды;
* тип активности задаётся data-записью, а не поиском по названию;
* последовательность SKU поставляется модулем;
* приём документов из портала вынесен на отдельный маршрут
``/my/closing_document`` (только для авторизованных пользователей).
Тестирование
============
Модуль покрыт тестами ``TransactionCase`` (генерация SKU, состояние
«Ожидание оплаты», проверки отгрузки по типам, повторная валидация,
подсветка цен, закрывающие документы). Запуск::
docker compose run --rm odoo odoo -d <db> -i ruodoo_sale_control \
--test-enable --test-tags=/ruodoo_sale_control --stop-after-init
Авторы
======
* MK.Lab, RuOdoo
Модуль сопровождается MK.Lab, RuOdoo.
.. image:: https://ruodoo.ru/logo.png
:alt: MK.Lab, RuOdoo
:target: https://ruodoo.ru
Модуль является частью решения РуОду.