diff --git a/stock_putaway_method/README.rst b/stock_putaway_method/README.rst new file mode 100644 index 000000000000..5a5fb32c7c1b --- /dev/null +++ b/stock_putaway_method/README.rst @@ -0,0 +1,50 @@ +.. image:: https://img.shields.io/badge/license-AGPL--3-blue.png + :target: https://www.gnu.org/licenses/agpl + :alt: License: AGPL-3 + +======================= +Putaway strategy method +======================= + +This module adds the putaway strategy method back, removed from the stock module in Odoo 11. + +Installation +============ + +To install this module, just click the install button. This module is automatically installed when installing relying modules such as *stock_putaway_product*. + +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 smash it by providing detailed and welcomed feedback. + +Credits +======= + +Images +------ + +* Odoo Community Association: `Icon `_. + +Contributors +------------ + +* Alexandre Saunier - Camptocamp SA + +Maintainer +---------- + +.. image:: https://odoo-community.org/logo.png + :alt: Odoo Community Association + :target: https://odoo-community.org + +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. + +To contribute to this module, please visit https://odoo-community.org. diff --git a/stock_putaway_method/__init__.py b/stock_putaway_method/__init__.py new file mode 100644 index 000000000000..02179fb0440b --- /dev/null +++ b/stock_putaway_method/__init__.py @@ -0,0 +1,2 @@ +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). +from . import models diff --git a/stock_putaway_method/__manifest__.py b/stock_putaway_method/__manifest__.py new file mode 100644 index 000000000000..5554a3a7f961 --- /dev/null +++ b/stock_putaway_method/__manifest__.py @@ -0,0 +1,21 @@ +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). +{ + 'name': 'Putaway strategy method', + 'summary': 'Add the putaway strategy method back, ' + 'removed from the stock module in Odoo 12', + 'version': '12.0.1.0.0', + 'category': 'Inventory', + 'website': 'https://github.com/OCA/stock-logistics-warehouse', + 'author': 'Camptocamp SA, ' + 'Odoo Community Association (OCA)', + 'license': 'AGPL-3', + 'depends': [ + 'product', + 'stock' + ], + 'data': [ + 'views/product_strategy_views.xml' + ], + 'development_status': 'Production/Stable', + 'maintainers': ['asaunier'], +} diff --git a/stock_putaway_method/i18n/cs_CZ.po b/stock_putaway_method/i18n/cs_CZ.po new file mode 100644 index 000000000000..dec245e21929 --- /dev/null +++ b/stock_putaway_method/i18n/cs_CZ.po @@ -0,0 +1,36 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * stock_putaway_method +# +# Translators: +# Lukáš Spurný , 2018 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 11.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2018-03-02 03:44+0000\n" +"PO-Revision-Date: 2018-03-02 03:44+0000\n" +"Last-Translator: Lukáš Spurný , 2018\n" +"Language-Team: Czech (Czech Republic) (https://www.transifex.com/oca/" +"teams/23907/cs_CZ/)\n" +"Language: cs_CZ\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" + +#. module: stock_putaway_method +#: model:ir.model.fields,field_description:stock_putaway_method.field_product_putaway_method +msgid "Method" +msgstr "Metoda" + +#. module: stock_putaway_method +#: model:ir.model,name:stock_putaway_method.model_product_putaway +msgid "Put Away Strategy" +msgstr "Strategie vyřazení" + +#~ msgid "Fixed Locations Per Categories" +#~ msgstr "Upravené umístění podle kategorií" + +#~ msgid "Putaway" +#~ msgstr "Dát pryč" diff --git a/stock_putaway_method/i18n/fr.po b/stock_putaway_method/i18n/fr.po new file mode 100644 index 000000000000..7bd7d6f536b2 --- /dev/null +++ b/stock_putaway_method/i18n/fr.po @@ -0,0 +1,35 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * stock_putaway_method +# +# Translators: +# Quentin THEURET , 2018 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 11.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2018-03-02 03:44+0000\n" +"PO-Revision-Date: 2018-03-02 03:44+0000\n" +"Last-Translator: Quentin THEURET , 2018\n" +"Language-Team: French (https://www.transifex.com/oca/teams/23907/fr/)\n" +"Language: fr\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_putaway_method +#: model:ir.model.fields,field_description:stock_putaway_method.field_product_putaway_method +msgid "Method" +msgstr "Méthode" + +#. module: stock_putaway_method +#: model:ir.model,name:stock_putaway_method.model_product_putaway +msgid "Put Away Strategy" +msgstr "Stratégie de rangement" + +#~ msgid "Fixed Locations Per Categories" +#~ msgstr "Emplacement fixe par catégories" + +#~ msgid "Putaway" +#~ msgstr "Rangement" diff --git a/stock_putaway_method/i18n/stock_putaway_method.pot b/stock_putaway_method/i18n/stock_putaway_method.pot new file mode 100644 index 000000000000..feae8b84c9c7 --- /dev/null +++ b/stock_putaway_method/i18n/stock_putaway_method.pot @@ -0,0 +1,25 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * stock_putaway_method +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 11.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_putaway_method +#: model:ir.model.fields,field_description:stock_putaway_method.field_product_putaway_method +msgid "Method" +msgstr "" + +#. module: stock_putaway_method +#: model:ir.model,name:stock_putaway_method.model_product_putaway +msgid "Put Away Strategy" +msgstr "" + diff --git a/stock_putaway_method/models/__init__.py b/stock_putaway_method/models/__init__.py new file mode 100644 index 000000000000..39f0f528bb2f --- /dev/null +++ b/stock_putaway_method/models/__init__.py @@ -0,0 +1,2 @@ +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). +from . import product_strategy diff --git a/stock_putaway_method/models/product_strategy.py b/stock_putaway_method/models/product_strategy.py new file mode 100644 index 000000000000..c16b179fee5a --- /dev/null +++ b/stock_putaway_method/models/product_strategy.py @@ -0,0 +1,17 @@ +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). +from odoo import api, fields, models + + +class PutAwayStrategy(models.Model): + _inherit = 'product.putaway' + + method = fields.Selection( + selection='_get_putaway_options', + string='Method', + default='fixed', + required=True, + ) + + @api.model + def _get_putaway_options(self): + return [('fixed', 'Fixed Location')] diff --git a/stock_putaway_method/readme/CONTRIBUTORS.rst b/stock_putaway_method/readme/CONTRIBUTORS.rst new file mode 100644 index 000000000000..010c07023f9e --- /dev/null +++ b/stock_putaway_method/readme/CONTRIBUTORS.rst @@ -0,0 +1,7 @@ +* Camptocamp + + * Alexandre Saunier + +* Open Source Integrators + + * Maxime Chambreuil diff --git a/stock_putaway_method/readme/DESCRIPTION.rst b/stock_putaway_method/readme/DESCRIPTION.rst new file mode 100644 index 000000000000..5853ff4bad9c --- /dev/null +++ b/stock_putaway_method/readme/DESCRIPTION.rst @@ -0,0 +1 @@ +This module adds the putaway strategy method back, removed from the stock module in Odoo 12. diff --git a/stock_putaway_method/readme/USAGE.rst b/stock_putaway_method/readme/USAGE.rst new file mode 100644 index 000000000000..7fb629644bc2 --- /dev/null +++ b/stock_putaway_method/readme/USAGE.rst @@ -0,0 +1,3 @@ +* Create your own new module to implement new putaway strategies +* Extend the method `_get_putaway_options` to add your new method in the list + of available strategies diff --git a/stock_putaway_method/static/description/icon.png b/stock_putaway_method/static/description/icon.png new file mode 100644 index 000000000000..3a0328b516c4 Binary files /dev/null and b/stock_putaway_method/static/description/icon.png differ diff --git a/stock_putaway_method/tests/__init__.py b/stock_putaway_method/tests/__init__.py new file mode 100644 index 000000000000..9b98682b00b1 --- /dev/null +++ b/stock_putaway_method/tests/__init__.py @@ -0,0 +1,2 @@ +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). +from . import test_putaway_method diff --git a/stock_putaway_method/tests/test_putaway_method.py b/stock_putaway_method/tests/test_putaway_method.py new file mode 100644 index 000000000000..75f85762b49e --- /dev/null +++ b/stock_putaway_method/tests/test_putaway_method.py @@ -0,0 +1,12 @@ +# Copyright 2018 Camptocamp SA +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from odoo.tests.common import TransactionCase + + +class TestPutawayMethod(TransactionCase): + + # Check if "fixed" is a valid putaway method + def test_01_putaway_methods(self): + field_method = self.env['product.putaway']._fields.get('method') + self.assertIn('fixed', field_method.get_values(self.env)) diff --git a/stock_putaway_method/views/product_strategy_views.xml b/stock_putaway_method/views/product_strategy_views.xml new file mode 100644 index 000000000000..e4edfbd432d7 --- /dev/null +++ b/stock_putaway_method/views/product_strategy_views.xml @@ -0,0 +1,17 @@ + + + + product.putaway.form.method + product.putaway + + + + + + + {'invisible': [('method', '!=', 'fixed')]} + + + + +