From ba1513368eeb52ab6fc194a5942fcfacaef81526 Mon Sep 17 00:00:00 2001 From: Aungkokolin1997 Date: Tue, 11 Jun 2024 04:44:26 +0000 Subject: [PATCH 1/7] [ADD] stock_picking_auto_create_lot_sequence --- .../README.rst | 71 +++ .../__init__.py | 1 + .../__manifest__.py | 11 + .../models/__init__.py | 1 + .../models/stock_move_line.py | 17 + .../readme/DESCRIPTION.rst | 1 + .../static/description/index.html | 413 ++++++++++++++++++ .../tests/__init__.py | 1 + ..._stock_picking_auto_create_lot_sequence.py | 67 +++ 9 files changed, 583 insertions(+) create mode 100644 stock_picking_auto_create_lot_sequence/README.rst create mode 100644 stock_picking_auto_create_lot_sequence/__init__.py create mode 100644 stock_picking_auto_create_lot_sequence/__manifest__.py create mode 100644 stock_picking_auto_create_lot_sequence/models/__init__.py create mode 100644 stock_picking_auto_create_lot_sequence/models/stock_move_line.py create mode 100644 stock_picking_auto_create_lot_sequence/readme/DESCRIPTION.rst create mode 100644 stock_picking_auto_create_lot_sequence/static/description/index.html create mode 100644 stock_picking_auto_create_lot_sequence/tests/__init__.py create mode 100644 stock_picking_auto_create_lot_sequence/tests/test_stock_picking_auto_create_lot_sequence.py diff --git a/stock_picking_auto_create_lot_sequence/README.rst b/stock_picking_auto_create_lot_sequence/README.rst new file mode 100644 index 000000000000..2efe5b2180a2 --- /dev/null +++ b/stock_picking_auto_create_lot_sequence/README.rst @@ -0,0 +1,71 @@ +====================================== +Stock Picking Auto Create Lot Sequence +====================================== + +.. + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! This file is generated by oca-gen-addon-readme !! + !! changes will be overwritten. !! + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! source digest: sha256:a9a6e7e2ceaf2cf58433b95148d16e50b1fb860af3ee29423c614f182b9a66c1 + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +.. |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/16.0/stock_picking_auto_create_lot_sequence + :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-16-0/stock-logistics-workflow-16-0-stock_picking_auto_create_lot_sequence + :alt: Translate me on Weblate +.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png + :target: https://runboat.odoo-community.org/builds?repo=OCA/stock-logistics-workflow&target_branch=16.0 + :alt: Try me on Runboat + +|badge1| |badge2| |badge3| |badge4| |badge5| + +This module acts as a bridge between the stock_picking_auto_create_lot and product_lot_sequence modules. + +**Table of contents** + +.. contents:: + :local: + +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 to smash it by providing a detailed and welcomed +`feedback `_. + +Do not contact contributors directly about support or help with technical issues. + +Credits +======= + +Authors +~~~~~~~ + +* Quartile + +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. + +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_auto_create_lot_sequence/__init__.py b/stock_picking_auto_create_lot_sequence/__init__.py new file mode 100644 index 000000000000..0650744f6bc6 --- /dev/null +++ b/stock_picking_auto_create_lot_sequence/__init__.py @@ -0,0 +1 @@ +from . import models diff --git a/stock_picking_auto_create_lot_sequence/__manifest__.py b/stock_picking_auto_create_lot_sequence/__manifest__.py new file mode 100644 index 000000000000..17147335b052 --- /dev/null +++ b/stock_picking_auto_create_lot_sequence/__manifest__.py @@ -0,0 +1,11 @@ +# Copyright 2024 Quartile (https://www.quartile.co) +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +{ + "name": "Stock Picking Auto Create Lot Sequence", + "version": "16.0.1.0.0", + "license": "AGPL-3", + "author": "Quartile, Odoo Community Association (OCA)", + "website": "https://github.com/OCA/stock-logistics-workflow", + "depends": ["product_lot_sequence", "stock_picking_auto_create_lot"], +} diff --git a/stock_picking_auto_create_lot_sequence/models/__init__.py b/stock_picking_auto_create_lot_sequence/models/__init__.py new file mode 100644 index 000000000000..431f51c27470 --- /dev/null +++ b/stock_picking_auto_create_lot_sequence/models/__init__.py @@ -0,0 +1 @@ +from . import stock_move_line diff --git a/stock_picking_auto_create_lot_sequence/models/stock_move_line.py b/stock_picking_auto_create_lot_sequence/models/stock_move_line.py new file mode 100644 index 000000000000..d95b56179be0 --- /dev/null +++ b/stock_picking_auto_create_lot_sequence/models/stock_move_line.py @@ -0,0 +1,17 @@ +# Copyright 2024 Quartile (https://www.quartile.co) +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo import models + + +class StockMoveLine(models.Model): + _inherit = "stock.move.line" + + def _get_lot_sequence(self): + self.ensure_one() + if not self.product_id.lot_sequence_id: + return super()._get_lot_sequence() + seq_policy = self.env["stock.lot"]._get_sequence_policy() + if seq_policy != "product": + return super()._get_lot_sequence() + return self.product_id.lot_sequence_id._next() diff --git a/stock_picking_auto_create_lot_sequence/readme/DESCRIPTION.rst b/stock_picking_auto_create_lot_sequence/readme/DESCRIPTION.rst new file mode 100644 index 000000000000..0c8b1aa1fbf3 --- /dev/null +++ b/stock_picking_auto_create_lot_sequence/readme/DESCRIPTION.rst @@ -0,0 +1 @@ +This module acts as a bridge between the stock_picking_auto_create_lot and product_lot_sequence modules. diff --git a/stock_picking_auto_create_lot_sequence/static/description/index.html b/stock_picking_auto_create_lot_sequence/static/description/index.html new file mode 100644 index 000000000000..e8ffff059929 --- /dev/null +++ b/stock_picking_auto_create_lot_sequence/static/description/index.html @@ -0,0 +1,413 @@ + + + + + +Stock Picking Auto Create Lot Sequence + + + +
+

Stock Picking Auto Create Lot Sequence

+ + +

Beta License: AGPL-3 OCA/stock-logistics-workflow Translate me on Weblate Try me on Runboat

+

This module acts as a bridge between the stock_picking_auto_create_lot and product_lot_sequence modules.

+

Table of contents

+ +
+

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 to smash it by providing a detailed and welcomed +feedback.

+

Do not contact contributors directly about support or help with technical issues.

+
+
+

Credits

+
+

Authors

+
    +
  • Quartile
  • +
+
+
+

Maintainers

+

This module is maintained by the OCA.

+Odoo Community Association +

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.

+

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_auto_create_lot_sequence/tests/__init__.py b/stock_picking_auto_create_lot_sequence/tests/__init__.py new file mode 100644 index 000000000000..a0302eac3484 --- /dev/null +++ b/stock_picking_auto_create_lot_sequence/tests/__init__.py @@ -0,0 +1 @@ +from . import test_stock_picking_auto_create_lot_sequence diff --git a/stock_picking_auto_create_lot_sequence/tests/test_stock_picking_auto_create_lot_sequence.py b/stock_picking_auto_create_lot_sequence/tests/test_stock_picking_auto_create_lot_sequence.py new file mode 100644 index 000000000000..2e01fb409f8e --- /dev/null +++ b/stock_picking_auto_create_lot_sequence/tests/test_stock_picking_auto_create_lot_sequence.py @@ -0,0 +1,67 @@ +# Copyright 2024 Quartile (https://www.quartile.co) +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo.tests.common import Form, TransactionCase + + +class TestStockPickingProductLotSequence(TransactionCase): + @classmethod + def setUpClass(cls): + super().setUpClass() + supplier_location = cls.env.ref("stock.stock_location_suppliers") + stock_location = cls.env.ref("stock.stock_location_stock") + picking_type_in = cls.env.ref("stock.picking_type_in") + picking_type_in.auto_create_lot = True + cls.product = cls.env["product.product"].create( + { + "name": "Test Product", + "type": "product", + "tracking": "serial", + "auto_create_lot": True, + } + ) + cls.product.lot_sequence_id.write( + { + "prefix": "Test/", + "padding": 5, + "number_increment": 1, + "number_next_actual": 1, + } + ) + cls.picking = cls.env["stock.picking"].create( + { + "location_id": supplier_location.id, + "location_dest_id": stock_location.id, + "picking_type_id": picking_type_in.id, + } + ) + cls.env["stock.move"].create( + { + "name": "Test Move", + "product_id": cls.product.id, + "product_uom_qty": 10, + "product_uom": cls.product.uom_id.id, + "picking_id": cls.picking.id, + "location_id": supplier_location.id, + "location_dest_id": stock_location.id, + } + ) + + def test_stock_picking_product_lot_sequence(self): + self.assertTrue(self.product.lot_sequence_id) + next_serial = self.env["stock.lot"]._get_next_serial( + self.env.company, self.product + ) + self.assertRegex(next_serial, r"Test/\d{5}") + self.picking.action_confirm() + self.picking.action_assign() + immediate_wizard = self.picking.button_validate() + self.assertEqual(immediate_wizard.get("res_model"), "stock.immediate.transfer") + immediate_wizard_form = Form( + self.env[immediate_wizard["res_model"]].with_context( + **immediate_wizard["context"] + ) + ).save() + immediate_wizard_form.process() + for move_line in self.picking.move_line_ids: + self.assertRegex(move_line.lot_name, r"Test/\d{5}") From e3e6ac5085c99043bd0fd86d8192a0c488d3e9ed Mon Sep 17 00:00:00 2001 From: oca-ci Date: Tue, 23 Jul 2024 08:39:17 +0000 Subject: [PATCH 2/7] [UPD] Update stock_picking_auto_create_lot_sequence.pot --- ...stock_picking_auto_create_lot_sequence.pot | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 stock_picking_auto_create_lot_sequence/i18n/stock_picking_auto_create_lot_sequence.pot diff --git a/stock_picking_auto_create_lot_sequence/i18n/stock_picking_auto_create_lot_sequence.pot b/stock_picking_auto_create_lot_sequence/i18n/stock_picking_auto_create_lot_sequence.pot new file mode 100644 index 000000000000..214e499ec6b4 --- /dev/null +++ b/stock_picking_auto_create_lot_sequence/i18n/stock_picking_auto_create_lot_sequence.pot @@ -0,0 +1,19 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * stock_picking_auto_create_lot_sequence +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 16.0\n" +"Report-Msgid-Bugs-To: \n" +"Last-Translator: \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: \n" + +#. module: stock_picking_auto_create_lot_sequence +#: model:ir.model,name:stock_picking_auto_create_lot_sequence.model_stock_move_line +msgid "Product Moves (Stock Move Line)" +msgstr "" From 338c1c92dd923a596e8c6cb260ee44f3dfe078d9 Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Tue, 23 Jul 2024 08:45:23 +0000 Subject: [PATCH 3/7] [BOT] post-merge updates --- .../README.rst | 2 +- .../static/description/icon.png | Bin 0 -> 9455 bytes .../static/description/index.html | 13 ++++++++----- 3 files changed, 9 insertions(+), 6 deletions(-) create mode 100644 stock_picking_auto_create_lot_sequence/static/description/icon.png diff --git a/stock_picking_auto_create_lot_sequence/README.rst b/stock_picking_auto_create_lot_sequence/README.rst index 2efe5b2180a2..55b512926553 100644 --- a/stock_picking_auto_create_lot_sequence/README.rst +++ b/stock_picking_auto_create_lot_sequence/README.rst @@ -7,7 +7,7 @@ Stock Picking Auto Create Lot Sequence !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:a9a6e7e2ceaf2cf58433b95148d16e50b1fb860af3ee29423c614f182b9a66c1 + !! source digest: sha256:432100edad9c4ed252748f4b9571cd930f89b105bcfdeb988b7ca6877147deaf !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png diff --git a/stock_picking_auto_create_lot_sequence/static/description/icon.png b/stock_picking_auto_create_lot_sequence/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_auto_create_lot_sequence/static/description/index.html b/stock_picking_auto_create_lot_sequence/static/description/index.html index e8ffff059929..63a3e03ddd92 100644 --- a/stock_picking_auto_create_lot_sequence/static/description/index.html +++ b/stock_picking_auto_create_lot_sequence/static/description/index.html @@ -8,10 +8,11 @@ /* :Author: David Goodger (goodger@python.org) -:Id: $Id: html4css1.css 8954 2022-01-20 10:10:25Z milde $ +:Id: $Id: html4css1.css 9511 2024-01-13 09:50:07Z milde $ :Copyright: This stylesheet has been placed in the public domain. Default cascading style sheet for the HTML output of Docutils. +Despite the name, some widely supported CSS2 features are used. See https://docutils.sourceforge.io/docs/howto/html-stylesheets.html for how to customize this style sheet. @@ -274,7 +275,7 @@ margin-left: 2em ; margin-right: 2em } -pre.code .ln { color: grey; } /* line numbers */ +pre.code .ln { color: gray; } /* line numbers */ pre.code, code { background-color: #eeeeee } pre.code .comment, code .comment { color: #5C6576 } pre.code .keyword, code .keyword { color: #3B0D06; font-weight: bold } @@ -300,7 +301,7 @@ span.pre { white-space: pre } -span.problematic { +span.problematic, pre.problematic { color: red } span.section-subtitle { @@ -366,7 +367,7 @@

Stock Picking Auto Create Lot Sequence

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!! source digest: sha256:a9a6e7e2ceaf2cf58433b95148d16e50b1fb860af3ee29423c614f182b9a66c1 +!! source digest: sha256:432100edad9c4ed252748f4b9571cd930f89b105bcfdeb988b7ca6877147deaf !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->

Beta License: AGPL-3 OCA/stock-logistics-workflow Translate me on Weblate Try me on Runboat

This module acts as a bridge between the stock_picking_auto_create_lot and product_lot_sequence modules.

@@ -400,7 +401,9 @@

Authors

Maintainers

This module is maintained by the OCA.

-Odoo Community Association + +Odoo Community Association +

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.

From 62fb19dc5f04506bbabce1beaba9bbb410e71bac Mon Sep 17 00:00:00 2001 From: mymage Date: Mon, 29 Jul 2024 06:25:01 +0000 Subject: [PATCH 4/7] Added translation using Weblate (Italian) --- .../i18n/it.po | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 stock_picking_auto_create_lot_sequence/i18n/it.po diff --git a/stock_picking_auto_create_lot_sequence/i18n/it.po b/stock_picking_auto_create_lot_sequence/i18n/it.po new file mode 100644 index 000000000000..7096b0e17443 --- /dev/null +++ b/stock_picking_auto_create_lot_sequence/i18n/it.po @@ -0,0 +1,20 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * stock_picking_auto_create_lot_sequence +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 16.0\n" +"Report-Msgid-Bugs-To: \n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" + +#. module: stock_picking_auto_create_lot_sequence +#: model:ir.model,name:stock_picking_auto_create_lot_sequence.model_stock_move_line +msgid "Product Moves (Stock Move Line)" +msgstr "" From 6627d1271b86ed774a37178d10adf0be6daf5dfd Mon Sep 17 00:00:00 2001 From: mymage Date: Mon, 29 Jul 2024 06:25:10 +0000 Subject: [PATCH 5/7] Translated using Weblate (Italian) Currently translated at 100.0% (1 of 1 strings) Translation: stock-logistics-workflow-16.0/stock-logistics-workflow-16.0-stock_picking_auto_create_lot_sequence Translate-URL: https://translation.odoo-community.org/projects/stock-logistics-workflow-16-0/stock-logistics-workflow-16-0-stock_picking_auto_create_lot_sequence/it/ --- stock_picking_auto_create_lot_sequence/i18n/it.po | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/stock_picking_auto_create_lot_sequence/i18n/it.po b/stock_picking_auto_create_lot_sequence/i18n/it.po index 7096b0e17443..ff7a3f8205e3 100644 --- a/stock_picking_auto_create_lot_sequence/i18n/it.po +++ b/stock_picking_auto_create_lot_sequence/i18n/it.po @@ -6,15 +6,17 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 16.0\n" "Report-Msgid-Bugs-To: \n" -"Last-Translator: Automatically generated\n" +"PO-Revision-Date: 2024-07-29 08:58+0000\n" +"Last-Translator: mymage \n" "Language-Team: none\n" "Language: it\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" "Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 5.6.2\n" #. module: stock_picking_auto_create_lot_sequence #: model:ir.model,name:stock_picking_auto_create_lot_sequence.model_stock_move_line msgid "Product Moves (Stock Move Line)" -msgstr "" +msgstr "Movimenti prodotto (riga movimento di magazzino)" From 5f01d21e60ad801d4df3d361990271939484e687 Mon Sep 17 00:00:00 2001 From: sygel Date: Mon, 3 Feb 2025 18:33:44 +0100 Subject: [PATCH 6/7] [IMP] stock_picking_auto_create_lot_sequence: pre-commit auto fixes --- .../README.rst | 17 +++++++++-------- .../pyproject.toml | 3 +++ .../readme/{DESCRIPTION.rst => DESCRIPTION.md} | 3 ++- .../static/description/index.html | 9 +++++---- 4 files changed, 19 insertions(+), 13 deletions(-) create mode 100644 stock_picking_auto_create_lot_sequence/pyproject.toml rename stock_picking_auto_create_lot_sequence/readme/{DESCRIPTION.rst => DESCRIPTION.md} (60%) diff --git a/stock_picking_auto_create_lot_sequence/README.rst b/stock_picking_auto_create_lot_sequence/README.rst index 55b512926553..37f8964da0b1 100644 --- a/stock_picking_auto_create_lot_sequence/README.rst +++ b/stock_picking_auto_create_lot_sequence/README.rst @@ -17,18 +17,19 @@ Stock Picking Auto Create Lot Sequence :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/16.0/stock_picking_auto_create_lot_sequence + :target: https://github.com/OCA/stock-logistics-workflow/tree/17.0/stock_picking_auto_create_lot_sequence :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-16-0/stock-logistics-workflow-16-0-stock_picking_auto_create_lot_sequence + :target: https://translation.odoo-community.org/projects/stock-logistics-workflow-17-0/stock-logistics-workflow-17-0-stock_picking_auto_create_lot_sequence :alt: Translate me on Weblate .. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png - :target: https://runboat.odoo-community.org/builds?repo=OCA/stock-logistics-workflow&target_branch=16.0 + :target: https://runboat.odoo-community.org/builds?repo=OCA/stock-logistics-workflow&target_branch=17.0 :alt: Try me on Runboat |badge1| |badge2| |badge3| |badge4| |badge5| -This module acts as a bridge between the stock_picking_auto_create_lot and product_lot_sequence modules. +This module acts as a bridge between the stock_picking_auto_create_lot +and product_lot_sequence modules. **Table of contents** @@ -41,7 +42,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 to smash it by providing a detailed and welcomed -`feedback `_. +`feedback `_. Do not contact contributors directly about support or help with technical issues. @@ -49,12 +50,12 @@ Credits ======= Authors -~~~~~~~ +------- * Quartile Maintainers -~~~~~~~~~~~ +----------- This module is maintained by the OCA. @@ -66,6 +67,6 @@ 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. -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_auto_create_lot_sequence/pyproject.toml b/stock_picking_auto_create_lot_sequence/pyproject.toml new file mode 100644 index 000000000000..4231d0cccb3d --- /dev/null +++ b/stock_picking_auto_create_lot_sequence/pyproject.toml @@ -0,0 +1,3 @@ +[build-system] +requires = ["whool"] +build-backend = "whool.buildapi" diff --git a/stock_picking_auto_create_lot_sequence/readme/DESCRIPTION.rst b/stock_picking_auto_create_lot_sequence/readme/DESCRIPTION.md similarity index 60% rename from stock_picking_auto_create_lot_sequence/readme/DESCRIPTION.rst rename to stock_picking_auto_create_lot_sequence/readme/DESCRIPTION.md index 0c8b1aa1fbf3..db8d23dc83a4 100644 --- a/stock_picking_auto_create_lot_sequence/readme/DESCRIPTION.rst +++ b/stock_picking_auto_create_lot_sequence/readme/DESCRIPTION.md @@ -1 +1,2 @@ -This module acts as a bridge between the stock_picking_auto_create_lot and product_lot_sequence modules. +This module acts as a bridge between the stock_picking_auto_create_lot +and product_lot_sequence modules. diff --git a/stock_picking_auto_create_lot_sequence/static/description/index.html b/stock_picking_auto_create_lot_sequence/static/description/index.html index 63a3e03ddd92..e1637155d776 100644 --- a/stock_picking_auto_create_lot_sequence/static/description/index.html +++ b/stock_picking_auto_create_lot_sequence/static/description/index.html @@ -369,8 +369,9 @@

Stock Picking Auto Create Lot Sequence

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !! source digest: sha256:432100edad9c4ed252748f4b9571cd930f89b105bcfdeb988b7ca6877147deaf !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --> -

Beta License: AGPL-3 OCA/stock-logistics-workflow Translate me on Weblate Try me on Runboat

-

This module acts as a bridge between the stock_picking_auto_create_lot and product_lot_sequence modules.

+

Beta License: AGPL-3 OCA/stock-logistics-workflow Translate me on Weblate Try me on Runboat

+

This module acts as a bridge between the stock_picking_auto_create_lot +and product_lot_sequence modules.

Table of contents

    @@ -387,7 +388,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 to smash it by providing a detailed and welcomed -feedback.

    +feedback.

    Do not contact contributors directly about support or help with technical issues.

@@ -407,7 +408,7 @@

Maintainers

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.

-

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.

From 0ea430fd50463fdcedb1f1440283ec76b36cbc0e Mon Sep 17 00:00:00 2001 From: sygel Date: Mon, 3 Feb 2025 18:34:14 +0100 Subject: [PATCH 7/7] [MIG] stock_picking_auto_create_lot_sequence: Migration to 17.0 --- .../__manifest__.py | 2 +- .../test_stock_picking_auto_create_lot_sequence.py | 11 ++--------- 2 files changed, 3 insertions(+), 10 deletions(-) diff --git a/stock_picking_auto_create_lot_sequence/__manifest__.py b/stock_picking_auto_create_lot_sequence/__manifest__.py index 17147335b052..998ba6c3514e 100644 --- a/stock_picking_auto_create_lot_sequence/__manifest__.py +++ b/stock_picking_auto_create_lot_sequence/__manifest__.py @@ -3,7 +3,7 @@ { "name": "Stock Picking Auto Create Lot Sequence", - "version": "16.0.1.0.0", + "version": "17.0.1.0.0", "license": "AGPL-3", "author": "Quartile, Odoo Community Association (OCA)", "website": "https://github.com/OCA/stock-logistics-workflow", diff --git a/stock_picking_auto_create_lot_sequence/tests/test_stock_picking_auto_create_lot_sequence.py b/stock_picking_auto_create_lot_sequence/tests/test_stock_picking_auto_create_lot_sequence.py index 2e01fb409f8e..b4ac7dcb8b79 100644 --- a/stock_picking_auto_create_lot_sequence/tests/test_stock_picking_auto_create_lot_sequence.py +++ b/stock_picking_auto_create_lot_sequence/tests/test_stock_picking_auto_create_lot_sequence.py @@ -1,7 +1,7 @@ # Copyright 2024 Quartile (https://www.quartile.co) # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). -from odoo.tests.common import Form, TransactionCase +from odoo.tests.common import TransactionCase class TestStockPickingProductLotSequence(TransactionCase): @@ -55,13 +55,6 @@ def test_stock_picking_product_lot_sequence(self): self.assertRegex(next_serial, r"Test/\d{5}") self.picking.action_confirm() self.picking.action_assign() - immediate_wizard = self.picking.button_validate() - self.assertEqual(immediate_wizard.get("res_model"), "stock.immediate.transfer") - immediate_wizard_form = Form( - self.env[immediate_wizard["res_model"]].with_context( - **immediate_wizard["context"] - ) - ).save() - immediate_wizard_form.process() + self.picking.button_validate() for move_line in self.picking.move_line_ids: self.assertRegex(move_line.lot_name, r"Test/\d{5}")