From 8984335e3c4fb7e538d9074e488795fe16de2bf6 Mon Sep 17 00:00:00 2001
From: sergio-teruel
Date: Thu, 8 Sep 2022 01:06:36 +0200
Subject: [PATCH 1/2] [ADD]
stock_picking_product_assortment_availavility_inline: Glue module to display
availability quantities in pickings for a partner with a assortment defined
TT37820
---
.../README.rst | 93 ++++
.../__init__.py | 0
.../__manifest__.py | 21 +
.../readme/CONTRIBUTORS.rst | 3 +
.../readme/DESCRIPTION.rst | 2 +
.../readme/USAGE.rst | 5 +
.../static/description/icon.png | Bin 0 -> 9455 bytes
.../static/description/index.html | 436 ++++++++++++++++++
.../tests/__init__.py | 2 +
..._product_assortment_availability_inline.py | 42 ++
.../views/stock_picking_view.xml | 50 ++
11 files changed, 654 insertions(+)
create mode 100644 stock_picking_product_assortment_availability_inline/README.rst
create mode 100644 stock_picking_product_assortment_availability_inline/__init__.py
create mode 100644 stock_picking_product_assortment_availability_inline/__manifest__.py
create mode 100644 stock_picking_product_assortment_availability_inline/readme/CONTRIBUTORS.rst
create mode 100644 stock_picking_product_assortment_availability_inline/readme/DESCRIPTION.rst
create mode 100644 stock_picking_product_assortment_availability_inline/readme/USAGE.rst
create mode 100644 stock_picking_product_assortment_availability_inline/static/description/icon.png
create mode 100644 stock_picking_product_assortment_availability_inline/static/description/index.html
create mode 100644 stock_picking_product_assortment_availability_inline/tests/__init__.py
create mode 100644 stock_picking_product_assortment_availability_inline/tests/test_stock_picking_product_assortment_availability_inline.py
create mode 100644 stock_picking_product_assortment_availability_inline/views/stock_picking_view.xml
diff --git a/stock_picking_product_assortment_availability_inline/README.rst b/stock_picking_product_assortment_availability_inline/README.rst
new file mode 100644
index 000000000000..76e46fecb43a
--- /dev/null
+++ b/stock_picking_product_assortment_availability_inline/README.rst
@@ -0,0 +1,93 @@
+====================================================
+Stock Picking Product Assortment Availability Inline
+====================================================
+
+.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+ !! This file is generated by oca-gen-addon-readme !!
+ !! changes will be overwritten. !!
+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+
+.. |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-AGPL--3-blue.png
+ :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
+ :alt: License: AGPL-3
+.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fstock--logistics--workflow-lightgray.png?logo=github
+ :target: https://github.com/OCA/stock-logistics-workflow/tree/13.0/stock_picking_product_assortment_availability_inline
+ :alt: OCA/stock-logistics-workflow
+.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
+ :target: https://translation.odoo-community.org/projects/stock-logistics-workflow-13-0/stock-logistics-workflow-13-0-stock_picking_product_assortment_availability_inline
+ :alt: Translate me on Weblate
+.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
+ :target: https://runboat.odoo-community.org/webui/builds.html?repo=OCA/stock-logistics-workflow&target_branch=13.0
+ :alt: Try me on Runboat
+
+|badge1| |badge2| |badge3| |badge4| |badge5|
+
+This is a glue module to allows to display available quantities in picking lines if the
+partner have a product assortment defined.
+
+**Table of contents**
+
+.. contents::
+ :local:
+
+Usage
+=====
+
+#. Go to Inventory.
+#. Create a new outgoing picking.
+#. Select one of the partners defined on product_assortment.
+#. Add products in picking operations or detailed operations.
+#. The availability quantities for product are displayed.
+
+Bug Tracker
+===========
+
+Bugs are tracked on `GitHub Issues `_.
+In case of trouble, please check there if your issue has already been reported.
+If you spotted it first, help us smashing it by providing a detailed and welcomed
+`feedback `_.
+
+Do not contact contributors directly about support or help with technical issues.
+
+Credits
+=======
+
+Authors
+~~~~~~~
+
+* Tecnativa
+
+Contributors
+~~~~~~~~~~~~
+
+* `Tecnativa `_:
+
+ * Sergio Teruel
+
+Maintainers
+~~~~~~~~~~~
+
+This module is maintained by the OCA.
+
+.. image:: https://odoo-community.org/logo.png
+ :alt: Odoo Community Association
+ :target: https://odoo-community.org
+
+OCA, or the Odoo Community Association, is a nonprofit organization whose
+mission is to support the collaborative development of Odoo features and
+promote its widespread use.
+
+.. |maintainer-Sergio-teruel| image:: https://github.com/Sergio-teruel.png?size=40px
+ :target: https://github.com/Sergio-teruel
+ :alt: Sergio-teruel
+
+Current `maintainer `__:
+
+|maintainer-Sergio-teruel|
+
+This module is part of the `OCA/stock-logistics-workflow `_ project on GitHub.
+
+You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/stock_picking_product_assortment_availability_inline/__init__.py b/stock_picking_product_assortment_availability_inline/__init__.py
new file mode 100644
index 000000000000..e69de29bb2d1
diff --git a/stock_picking_product_assortment_availability_inline/__manifest__.py b/stock_picking_product_assortment_availability_inline/__manifest__.py
new file mode 100644
index 000000000000..6c473b1dc1f8
--- /dev/null
+++ b/stock_picking_product_assortment_availability_inline/__manifest__.py
@@ -0,0 +1,21 @@
+# Copyright 2022 Tecnativa - Sergio Teruel
+# License AGPL-3.0 or later (http://www.gnu.org/licenses/lgpl).
+
+{
+ "name": "Stock Picking Product Assortment Availability Inline",
+ "summary": "Glue module to display stock available when an assortment is defined "
+ "for a partner",
+ "version": "13.0.1.0.0",
+ "category": "Warehouse Management",
+ "website": "https://github.com/OCA/stock-logistics-workflow",
+ "author": "Tecnativa, Odoo Community Association (OCA)",
+ "maintainers": ["Sergio-teruel"],
+ "license": "AGPL-3",
+ "installable": True,
+ "depends": [
+ "stock_picking_product_assortment",
+ "stock_picking_product_availability_inline",
+ ],
+ "data": ["views/stock_picking_view.xml"],
+ "auto_install": True,
+}
diff --git a/stock_picking_product_assortment_availability_inline/readme/CONTRIBUTORS.rst b/stock_picking_product_assortment_availability_inline/readme/CONTRIBUTORS.rst
new file mode 100644
index 000000000000..e88095e5f3c9
--- /dev/null
+++ b/stock_picking_product_assortment_availability_inline/readme/CONTRIBUTORS.rst
@@ -0,0 +1,3 @@
+* `Tecnativa `_:
+
+ * Sergio Teruel
diff --git a/stock_picking_product_assortment_availability_inline/readme/DESCRIPTION.rst b/stock_picking_product_assortment_availability_inline/readme/DESCRIPTION.rst
new file mode 100644
index 000000000000..ea9dff0e7ebd
--- /dev/null
+++ b/stock_picking_product_assortment_availability_inline/readme/DESCRIPTION.rst
@@ -0,0 +1,2 @@
+This is a glue module to allows to display available quantities in picking lines if the
+partner have a product assortment defined.
diff --git a/stock_picking_product_assortment_availability_inline/readme/USAGE.rst b/stock_picking_product_assortment_availability_inline/readme/USAGE.rst
new file mode 100644
index 000000000000..942f786927b4
--- /dev/null
+++ b/stock_picking_product_assortment_availability_inline/readme/USAGE.rst
@@ -0,0 +1,5 @@
+#. Go to Inventory.
+#. Create a new outgoing picking.
+#. Select one of the partners defined on product_assortment.
+#. Add products in picking operations or detailed operations.
+#. The availability quantities for product are displayed.
diff --git a/stock_picking_product_assortment_availability_inline/static/description/icon.png b/stock_picking_product_assortment_availability_inline/static/description/icon.png
new file mode 100644
index 0000000000000000000000000000000000000000..3a0328b516c4980e8e44cdb63fd945757ddd132d
GIT binary patch
literal 9455
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
z
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
Xviia!U7SGha1wx#SCgwmn*{w2TRX*I
literal 0
HcmV?d00001
diff --git a/stock_picking_product_assortment_availability_inline/static/description/index.html b/stock_picking_product_assortment_availability_inline/static/description/index.html
new file mode 100644
index 000000000000..0ff4911cd85d
--- /dev/null
+++ b/stock_picking_product_assortment_availability_inline/static/description/index.html
@@ -0,0 +1,436 @@
+
+
+
+
+
+
+Stock Picking Product Assortment Availability Inline
+
+
+
+
+
Stock Picking Product Assortment Availability Inline
+
+
+
+
This is a glue module to allows to display available quantities in picking lines if the
+partner have a product assortment defined.
+
Table of contents
+
+
+
+
+- Go to Inventory.
+- Create a new outgoing picking.
+- Select one of the partners defined on product_assortment.
+- Add products in picking operations or detailed operations.
+- The availability quantities for product are displayed.
+
+
+
+
+
Bugs are tracked on GitHub Issues.
+In case of trouble, please check there if your issue has already been reported.
+If you spotted it first, help us smashing it by providing a detailed and welcomed
+feedback.
+
Do not contact contributors directly about support or help with technical issues.
+
+
+
+
+
+
+
+
This module is maintained by the OCA.
+
+
OCA, or the Odoo Community Association, is a nonprofit organization whose
+mission is to support the collaborative development of Odoo features and
+promote its widespread use.
+
Current maintainer:
+
+
This module is part of the OCA/stock-logistics-workflow project on GitHub.
+
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
+
+
+
+
+
diff --git a/stock_picking_product_assortment_availability_inline/tests/__init__.py b/stock_picking_product_assortment_availability_inline/tests/__init__.py
new file mode 100644
index 000000000000..7d5c82a509db
--- /dev/null
+++ b/stock_picking_product_assortment_availability_inline/tests/__init__.py
@@ -0,0 +1,2 @@
+# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
+from . import test_stock_picking_product_assortment_availability_inline
diff --git a/stock_picking_product_assortment_availability_inline/tests/test_stock_picking_product_assortment_availability_inline.py b/stock_picking_product_assortment_availability_inline/tests/test_stock_picking_product_assortment_availability_inline.py
new file mode 100644
index 000000000000..076a3d903702
--- /dev/null
+++ b/stock_picking_product_assortment_availability_inline/tests/test_stock_picking_product_assortment_availability_inline.py
@@ -0,0 +1,42 @@
+# Copyright 2022 Tecnativa - Sergio Teruel
+# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
+
+from odoo.tests import Form, SavepointCase, tagged
+
+
+@tagged("post_install", "-at_install")
+class TestStockPickingProductAssortmentAvailabilityInline(SavepointCase):
+ @classmethod
+ def setUpClass(cls):
+ super().setUpClass()
+ cls.partner = cls.env["res.partner"].create({"name": "Partner"})
+ cls.product = cls.env["product.product"].create(
+ {"name": "Product", "type": "product"}
+ )
+ cls.warehouse1 = cls.env["stock.warehouse"].create(
+ {"name": "Warehouse 1", "code": "AI1"}
+ )
+ StockQuant = cls.env["stock.quant"]
+ StockQuant.create(
+ {
+ "product_id": cls.product.id,
+ "product_uom_id": cls.product.uom_id.id,
+ "location_id": cls.warehouse1.lot_stock_id.id,
+ "quantity": 10.00,
+ }
+ )
+
+ def test_stock_picking_product_rec_name(self):
+ self.env.ref("product.decimal_product_uom").write({"digits": 3})
+ picking_form = Form(
+ self.env["stock.picking"].with_context(
+ warehouse=self.warehouse1.id, sp_product_stock_inline=True
+ )
+ )
+ picking_form.partner_id = self.partner
+ picking_form.picking_type_id = self.env.ref("stock.picking_type_out")
+ with picking_form.move_ids_without_package.new() as line_form:
+ line_form.product_id = self.product
+ self.assertTrue(
+ line_form.product_id.display_name.endswith("(10.000 Units)")
+ )
diff --git a/stock_picking_product_assortment_availability_inline/views/stock_picking_view.xml b/stock_picking_product_assortment_availability_inline/views/stock_picking_view.xml
new file mode 100644
index 000000000000..72d34bbfdaef
--- /dev/null
+++ b/stock_picking_product_assortment_availability_inline/views/stock_picking_view.xml
@@ -0,0 +1,50 @@
+
+
+
+ stock.picking.form
+ stock.picking
+
+
+
+ True
+ parent.picking_type_warehouse_id
+
+
+
+
+ stock.move.line.operations.tree
+ stock.move.line
+
+
+
+ True
+ parent.picking_type_warehouse_id
+
+
+
+
From 1acb2f77ef8e93cc48a5f8c1f42748a03826c6a9 Mon Sep 17 00:00:00 2001
From: sergio-teruel
Date: Wed, 15 Feb 2023 12:36:41 +0100
Subject: [PATCH 2/2] [MIG]
stock_picking_product_assortment_availability_inline: Migration to v15.0
---
...ing_product_assortment_availability_inline | 1 +
.../setup.py | 6 +++
.../README.rst | 10 ++---
.../__manifest__.py | 2 +-
.../static/description/index.html | 6 +--
..._product_assortment_availability_inline.py | 4 +-
.../views/stock_picking_view.xml | 37 +++++--------------
7 files changed, 27 insertions(+), 39 deletions(-)
create mode 120000 setup/stock_picking_product_assortment_availability_inline/odoo/addons/stock_picking_product_assortment_availability_inline
create mode 100644 setup/stock_picking_product_assortment_availability_inline/setup.py
diff --git a/setup/stock_picking_product_assortment_availability_inline/odoo/addons/stock_picking_product_assortment_availability_inline b/setup/stock_picking_product_assortment_availability_inline/odoo/addons/stock_picking_product_assortment_availability_inline
new file mode 120000
index 000000000000..e051768c1223
--- /dev/null
+++ b/setup/stock_picking_product_assortment_availability_inline/odoo/addons/stock_picking_product_assortment_availability_inline
@@ -0,0 +1 @@
+../../../../stock_picking_product_assortment_availability_inline
\ No newline at end of file
diff --git a/setup/stock_picking_product_assortment_availability_inline/setup.py b/setup/stock_picking_product_assortment_availability_inline/setup.py
new file mode 100644
index 000000000000..28c57bb64031
--- /dev/null
+++ b/setup/stock_picking_product_assortment_availability_inline/setup.py
@@ -0,0 +1,6 @@
+import setuptools
+
+setuptools.setup(
+ setup_requires=['setuptools-odoo'],
+ odoo_addon=True,
+)
diff --git a/stock_picking_product_assortment_availability_inline/README.rst b/stock_picking_product_assortment_availability_inline/README.rst
index 76e46fecb43a..4b2d3bc3be65 100644
--- a/stock_picking_product_assortment_availability_inline/README.rst
+++ b/stock_picking_product_assortment_availability_inline/README.rst
@@ -14,13 +14,13 @@ Stock Picking Product Assortment Availability Inline
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fstock--logistics--workflow-lightgray.png?logo=github
- :target: https://github.com/OCA/stock-logistics-workflow/tree/13.0/stock_picking_product_assortment_availability_inline
+ :target: https://github.com/OCA/stock-logistics-workflow/tree/15.0/stock_picking_product_assortment_availability_inline
:alt: OCA/stock-logistics-workflow
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
- :target: https://translation.odoo-community.org/projects/stock-logistics-workflow-13-0/stock-logistics-workflow-13-0-stock_picking_product_assortment_availability_inline
+ :target: https://translation.odoo-community.org/projects/stock-logistics-workflow-15-0/stock-logistics-workflow-15-0-stock_picking_product_assortment_availability_inline
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
- :target: https://runboat.odoo-community.org/webui/builds.html?repo=OCA/stock-logistics-workflow&target_branch=13.0
+ :target: https://runboat.odoo-community.org/webui/builds.html?repo=OCA/stock-logistics-workflow&target_branch=15.0
:alt: Try me on Runboat
|badge1| |badge2| |badge3| |badge4| |badge5|
@@ -48,7 +48,7 @@ Bug Tracker
Bugs are tracked on `GitHub Issues `_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed
-`feedback `_.
+`feedback `_.
Do not contact contributors directly about support or help with technical issues.
@@ -88,6 +88,6 @@ Current `maintainer `__:
|maintainer-Sergio-teruel|
-This module is part of the `OCA/stock-logistics-workflow `_ project on GitHub.
+This module is part of the `OCA/stock-logistics-workflow `_ project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/stock_picking_product_assortment_availability_inline/__manifest__.py b/stock_picking_product_assortment_availability_inline/__manifest__.py
index 6c473b1dc1f8..eff7fed8dc05 100644
--- a/stock_picking_product_assortment_availability_inline/__manifest__.py
+++ b/stock_picking_product_assortment_availability_inline/__manifest__.py
@@ -5,7 +5,7 @@
"name": "Stock Picking Product Assortment Availability Inline",
"summary": "Glue module to display stock available when an assortment is defined "
"for a partner",
- "version": "13.0.1.0.0",
+ "version": "15.0.1.0.0",
"category": "Warehouse Management",
"website": "https://github.com/OCA/stock-logistics-workflow",
"author": "Tecnativa, Odoo Community Association (OCA)",
diff --git a/stock_picking_product_assortment_availability_inline/static/description/index.html b/stock_picking_product_assortment_availability_inline/static/description/index.html
index 0ff4911cd85d..d923f1a333d8 100644
--- a/stock_picking_product_assortment_availability_inline/static/description/index.html
+++ b/stock_picking_product_assortment_availability_inline/static/description/index.html
@@ -367,7 +367,7 @@ Stock Picking Product Assortment Availability Inline
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
-
+
This is a glue module to allows to display available quantities in picking lines if the
partner have a product assortment defined.
Table of contents
@@ -398,7 +398,7 @@
Bugs are tracked on GitHub Issues.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed
-feedback.
+feedback.
Do not contact contributors directly about support or help with technical issues.
diff --git a/stock_picking_product_assortment_availability_inline/tests/test_stock_picking_product_assortment_availability_inline.py b/stock_picking_product_assortment_availability_inline/tests/test_stock_picking_product_assortment_availability_inline.py
index 076a3d903702..fe1528c2d781 100644
--- a/stock_picking_product_assortment_availability_inline/tests/test_stock_picking_product_assortment_availability_inline.py
+++ b/stock_picking_product_assortment_availability_inline/tests/test_stock_picking_product_assortment_availability_inline.py
@@ -1,11 +1,11 @@
# Copyright 2022 Tecnativa - Sergio Teruel
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
-from odoo.tests import Form, SavepointCase, tagged
+from odoo.tests import Form, TransactionCase, tagged
@tagged("post_install", "-at_install")
-class TestStockPickingProductAssortmentAvailabilityInline(SavepointCase):
+class TestStockPickingProductAssortmentAvailabilityInline(TransactionCase):
@classmethod
def setUpClass(cls):
super().setUpClass()
diff --git a/stock_picking_product_assortment_availability_inline/views/stock_picking_view.xml b/stock_picking_product_assortment_availability_inline/views/stock_picking_view.xml
index 72d34bbfdaef..40b86fcda1a3 100644
--- a/stock_picking_product_assortment_availability_inline/views/stock_picking_view.xml
+++ b/stock_picking_product_assortment_availability_inline/views/stock_picking_view.xml
@@ -5,20 +5,11 @@
stock.picking
-
- True
- parent.picking_type_warehouse_id
+
+
+ {'sp_product_stock_inline': True, 'warehouse': parent.picking_type_warehouse_id}
+
+
@@ -30,20 +21,10 @@
ref="stock.view_stock_move_line_detailed_operation_tree"
/>
-
- True
- parent.picking_type_warehouse_id
+
+
+ {'sp_product_stock_inline': True, 'warehouse': parent.picking_type_warehouse_id}
+