From 6e50fc1826c9ac3de66bea30fa174338e996cbf1 Mon Sep 17 00:00:00 2001 From: Jordi Ballester Alomar Date: Wed, 16 May 2018 01:47:07 +0200 Subject: [PATCH 01/12] add stock_orderpoint_move_link and stock_orderpoint_purchase_link --- stock_orderpoint_move_link/README.rst | 51 ++++++++++++++++++ stock_orderpoint_move_link/__init__.py | 1 + stock_orderpoint_move_link/__manifest__.py | 21 ++++++++ stock_orderpoint_move_link/models/__init__.py | 2 + .../models/procurement_rule.py | 20 +++++++ .../models/stock_move.py | 25 +++++++++ .../static/description/icon.png | Bin 0 -> 9455 bytes .../views/stock_move_views.xml | 28 ++++++++++ 8 files changed, 148 insertions(+) create mode 100644 stock_orderpoint_move_link/README.rst create mode 100644 stock_orderpoint_move_link/__init__.py create mode 100644 stock_orderpoint_move_link/__manifest__.py create mode 100644 stock_orderpoint_move_link/models/__init__.py create mode 100644 stock_orderpoint_move_link/models/procurement_rule.py create mode 100644 stock_orderpoint_move_link/models/stock_move.py create mode 100644 stock_orderpoint_move_link/static/description/icon.png create mode 100644 stock_orderpoint_move_link/views/stock_move_views.xml diff --git a/stock_orderpoint_move_link/README.rst b/stock_orderpoint_move_link/README.rst new file mode 100644 index 000000000..95bd09558 --- /dev/null +++ b/stock_orderpoint_move_link/README.rst @@ -0,0 +1,51 @@ +.. image:: https://img.shields.io/badge/licence-LGPL--3-blue.svg + :target: https://www.gnu.org/licenses/lgpl-3.0-standalone.html + :alt: License: LGPL-3 + +============================== +Stock Orderpoint Move Link +============================== + +This module adds to stock moves a direct link to the reordering rules +that created them. In chained moves, the reordering rule is propagated. + + +Usage +===== + +.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas + :alt: Try me on Runbot + :target: https://runbot.odoo-community.org/runbot/153/11.0 + + +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 +======= + +Contributors +------------ + +* Jordi Ballester + +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_orderpoint_move_link/__init__.py b/stock_orderpoint_move_link/__init__.py new file mode 100644 index 000000000..0650744f6 --- /dev/null +++ b/stock_orderpoint_move_link/__init__.py @@ -0,0 +1 @@ +from . import models diff --git a/stock_orderpoint_move_link/__manifest__.py b/stock_orderpoint_move_link/__manifest__.py new file mode 100644 index 000000000..1b7ee7514 --- /dev/null +++ b/stock_orderpoint_move_link/__manifest__.py @@ -0,0 +1,21 @@ +# Copyright 2017 Eficent Business and IT Consulting Services, S.L. +# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html). + +{ + "name": "Stock Orderpoint Move Link", + "summary": "Link Reordering rules to stock moves", + "version": "11.0.1.0.0", + "license": "LGPL-3", + "website": "https://github.com/stock-logistics-warehouse", + "author": "Eficent, " + "Odoo Community Association (OCA)", + "category": "Warehouse Management", + "depends": [ + "stock", + ], + "data": [ + "views/stock_move_views.xml", + ], + "installable": True, + 'auto_install': True, +} diff --git a/stock_orderpoint_move_link/models/__init__.py b/stock_orderpoint_move_link/models/__init__.py new file mode 100644 index 000000000..0d85051fe --- /dev/null +++ b/stock_orderpoint_move_link/models/__init__.py @@ -0,0 +1,2 @@ +from . import procurement_rule +from . import stock_move diff --git a/stock_orderpoint_move_link/models/procurement_rule.py b/stock_orderpoint_move_link/models/procurement_rule.py new file mode 100644 index 000000000..0b5390e85 --- /dev/null +++ b/stock_orderpoint_move_link/models/procurement_rule.py @@ -0,0 +1,20 @@ +# Copyright 2017 Eficent Business and IT Consulting Services, S.L. +# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html). + +from odoo import models + + +class ProcurementRule(models.Model): + _inherit = 'procurement.rule' + + def _get_stock_move_values(self, product_id, product_qty, product_uom, + location_id, name, origin, values, group_id): + vals = super(ProcurementRule, self)._get_stock_move_values( + product_id, product_qty, product_uom, + location_id, name, origin, values, group_id) + if 'orderpoint_id' in values: + vals['orderpoint_ids'] = [(4, values['orderpoint_id'].id)] + elif 'orderpoint_ids' in values: + vals['orderpoint_ids'] = [(4, o.id) + for o in vals['orderpoint_ids']] + return vals diff --git a/stock_orderpoint_move_link/models/stock_move.py b/stock_orderpoint_move_link/models/stock_move.py new file mode 100644 index 000000000..56200d9c3 --- /dev/null +++ b/stock_orderpoint_move_link/models/stock_move.py @@ -0,0 +1,25 @@ +# Copyright 2018 Eficent Business and IT Consulting Services, S.L. +# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html). + +from odoo import fields, models + + +class StockMove(models.Model): + _inherit = 'stock.move' + + orderpoint_ids = fields.Many2many( + comodel_name='stock.warehouse.orderpoint', + string='Linked Reordering Rules', + ) + + def _prepare_procurement_values(self): + res = super(StockMove, self)._prepare_procurement_values() + if self.orderpoint_ids: + res['orderpoint_ids'] = self.orderpoint_ids + return res + + def _merge_moves_fields(self): + res = super(StockMove, self)._merge_moves_fields() + res['orderpoint_ids'] = [(4, m.id) + for m in self.mapped('orderpoint_ids')] + return res diff --git a/stock_orderpoint_move_link/static/description/icon.png b/stock_orderpoint_move_link/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_orderpoint_move_link/views/stock_move_views.xml b/stock_orderpoint_move_link/views/stock_move_views.xml new file mode 100644 index 000000000..7975bdedc --- /dev/null +++ b/stock_orderpoint_move_link/views/stock_move_views.xml @@ -0,0 +1,28 @@ + + + + + + stock.move.form + stock.move + + + + + + + + + + stock.move.form + stock.move + + + + + + + + + From 40d630ca8633dcf1346075c78c161ea6f716b8e5 Mon Sep 17 00:00:00 2001 From: Akim Juillerat Date: Fri, 18 May 2018 18:02:16 +0200 Subject: [PATCH 02/12] Fix read of wrong dictionnary --- stock_orderpoint_move_link/models/procurement_rule.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stock_orderpoint_move_link/models/procurement_rule.py b/stock_orderpoint_move_link/models/procurement_rule.py index 0b5390e85..7fe4a8759 100644 --- a/stock_orderpoint_move_link/models/procurement_rule.py +++ b/stock_orderpoint_move_link/models/procurement_rule.py @@ -16,5 +16,5 @@ class ProcurementRule(models.Model): vals['orderpoint_ids'] = [(4, values['orderpoint_id'].id)] elif 'orderpoint_ids' in values: vals['orderpoint_ids'] = [(4, o.id) - for o in vals['orderpoint_ids']] + for o in values['orderpoint_ids']] return vals From 2d2012410353822720df1401758ebe42b62b4149 Mon Sep 17 00:00:00 2001 From: Akim Juillerat Date: Fri, 18 May 2018 18:02:35 +0200 Subject: [PATCH 03/12] Remove auto-install feature --- stock_orderpoint_move_link/__manifest__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stock_orderpoint_move_link/__manifest__.py b/stock_orderpoint_move_link/__manifest__.py index 1b7ee7514..d79c9a2c4 100644 --- a/stock_orderpoint_move_link/__manifest__.py +++ b/stock_orderpoint_move_link/__manifest__.py @@ -17,5 +17,5 @@ "views/stock_move_views.xml", ], "installable": True, - 'auto_install': True, + 'auto_install': False, } From d3dff21866eac4af92acd81dc4ed8e2b34a7af82 Mon Sep 17 00:00:00 2001 From: Kitti U Date: Fri, 22 Feb 2019 15:11:03 +0700 Subject: [PATCH 04/12] [ADD] 12.0-mig-stock_orderpoint_move_link --- stock_orderpoint_move_link/README.rst | 72 ++- stock_orderpoint_move_link/__init__.py | 2 + stock_orderpoint_move_link/__manifest__.py | 7 +- stock_orderpoint_move_link/models/__init__.py | 4 +- .../models/{procurement_rule.py => stock.py} | 9 +- .../models/stock_move.py | 3 +- .../readme/CONTRIBUTORS.rst | 2 + .../readme/DESCRIPTION.rst | 2 + .../static/description/index.html | 421 ++++++++++++++++++ 9 files changed, 486 insertions(+), 36 deletions(-) rename stock_orderpoint_move_link/models/{procurement_rule.py => stock.py} (75%) create mode 100644 stock_orderpoint_move_link/readme/CONTRIBUTORS.rst create mode 100644 stock_orderpoint_move_link/readme/DESCRIPTION.rst create mode 100644 stock_orderpoint_move_link/static/description/index.html diff --git a/stock_orderpoint_move_link/README.rst b/stock_orderpoint_move_link/README.rst index 95bd09558..7629d0122 100644 --- a/stock_orderpoint_move_link/README.rst +++ b/stock_orderpoint_move_link/README.rst @@ -1,51 +1,75 @@ -.. image:: https://img.shields.io/badge/licence-LGPL--3-blue.svg - :target: https://www.gnu.org/licenses/lgpl-3.0-standalone.html - :alt: License: LGPL-3 - -============================== +========================== Stock Orderpoint Move Link -============================== +========================== -This module adds to stock moves a direct link to the reordering rules -that created them. In chained moves, the reordering rule is propagated. +.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! 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-LGPL--3-blue.png + :target: http://www.gnu.org/licenses/lgpl-3.0-standalone.html + :alt: License: LGPL-3 +.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fstock--logistics--warehouse-lightgray.png?logo=github + :target: https://github.com/OCA/stock-logistics-warehouse/tree/12.0/stock_orderpoint_move_link + :alt: OCA/stock-logistics-warehouse +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/stock-logistics-warehouse-12-0/stock-logistics-warehouse-12-0-stock_orderpoint_move_link + :alt: Translate me on Weblate +.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png + :target: https://runbot.odoo-community.org/runbot/153/12.0 + :alt: Try me on Runbot -Usage -===== +|badge1| |badge2| |badge3| |badge4| |badge5| -.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas - :alt: Try me on Runbot - :target: https://runbot.odoo-community.org/runbot/153/11.0 +This module adds to stock moves a direct link to the reordering rules that created them. +In chained moves, the reordering rule is propagated. +**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 smash it by providing detailed and welcomed feedback. +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 +~~~~~~~ + +* Eficent + Contributors ------------- +~~~~~~~~~~~~ -* Jordi Ballester +* Jordi Ballester Alomar +* Kitti Upariphutthiphong -Maintainer ----------- +Maintainers +~~~~~~~~~~~ + +This module is maintained by the OCA. .. 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. +This module is part of the `OCA/stock-logistics-warehouse `_ project on GitHub. + +You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/stock_orderpoint_move_link/__init__.py b/stock_orderpoint_move_link/__init__.py index 0650744f6..dc045bf6a 100644 --- a/stock_orderpoint_move_link/__init__.py +++ b/stock_orderpoint_move_link/__init__.py @@ -1 +1,3 @@ +# Copyright 2017 Eficent Business and IT Consulting Services, S.L. +# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html). from . import models diff --git a/stock_orderpoint_move_link/__manifest__.py b/stock_orderpoint_move_link/__manifest__.py index d79c9a2c4..f537b9752 100644 --- a/stock_orderpoint_move_link/__manifest__.py +++ b/stock_orderpoint_move_link/__manifest__.py @@ -4,11 +4,10 @@ { "name": "Stock Orderpoint Move Link", "summary": "Link Reordering rules to stock moves", - "version": "11.0.1.0.0", + "version": "12.0.1.0.0", "license": "LGPL-3", "website": "https://github.com/stock-logistics-warehouse", - "author": "Eficent, " - "Odoo Community Association (OCA)", + "author": "Eficent, Odoo Community Association (OCA)", "category": "Warehouse Management", "depends": [ "stock", @@ -17,5 +16,5 @@ "views/stock_move_views.xml", ], "installable": True, - 'auto_install': False, + "auto_install": False, } diff --git a/stock_orderpoint_move_link/models/__init__.py b/stock_orderpoint_move_link/models/__init__.py index 0d85051fe..197db3d45 100644 --- a/stock_orderpoint_move_link/models/__init__.py +++ b/stock_orderpoint_move_link/models/__init__.py @@ -1,2 +1,4 @@ -from . import procurement_rule +# Copyright 2017 Eficent Business and IT Consulting Services, S.L. +# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html). +from . import stock from . import stock_move diff --git a/stock_orderpoint_move_link/models/procurement_rule.py b/stock_orderpoint_move_link/models/stock.py similarity index 75% rename from stock_orderpoint_move_link/models/procurement_rule.py rename to stock_orderpoint_move_link/models/stock.py index 7fe4a8759..b1706a75f 100644 --- a/stock_orderpoint_move_link/models/procurement_rule.py +++ b/stock_orderpoint_move_link/models/stock.py @@ -1,15 +1,14 @@ -# Copyright 2017 Eficent Business and IT Consulting Services, S.L. +# Copyright 2017 Eficent Business, IT Consulting Services, S.L., Ecosoft # License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html). - from odoo import models -class ProcurementRule(models.Model): - _inherit = 'procurement.rule' +class StockRule(models.Model): + _inherit = 'stock.rule' def _get_stock_move_values(self, product_id, product_qty, product_uom, location_id, name, origin, values, group_id): - vals = super(ProcurementRule, self)._get_stock_move_values( + vals = super()._get_stock_move_values( product_id, product_qty, product_uom, location_id, name, origin, values, group_id) if 'orderpoint_id' in values: diff --git a/stock_orderpoint_move_link/models/stock_move.py b/stock_orderpoint_move_link/models/stock_move.py index 56200d9c3..7c5f8f309 100644 --- a/stock_orderpoint_move_link/models/stock_move.py +++ b/stock_orderpoint_move_link/models/stock_move.py @@ -1,6 +1,5 @@ -# Copyright 2018 Eficent Business and IT Consulting Services, S.L. +# Copyright 2017 Eficent Business, IT Consulting Services, S.L. # License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html). - from odoo import fields, models diff --git a/stock_orderpoint_move_link/readme/CONTRIBUTORS.rst b/stock_orderpoint_move_link/readme/CONTRIBUTORS.rst new file mode 100644 index 000000000..7ac2aa759 --- /dev/null +++ b/stock_orderpoint_move_link/readme/CONTRIBUTORS.rst @@ -0,0 +1,2 @@ +* Jordi Ballester Alomar +* Kitti Upariphutthiphong diff --git a/stock_orderpoint_move_link/readme/DESCRIPTION.rst b/stock_orderpoint_move_link/readme/DESCRIPTION.rst new file mode 100644 index 000000000..b6b601955 --- /dev/null +++ b/stock_orderpoint_move_link/readme/DESCRIPTION.rst @@ -0,0 +1,2 @@ +This module adds to stock moves a direct link to the reordering rules that created them. +In chained moves, the reordering rule is propagated. diff --git a/stock_orderpoint_move_link/static/description/index.html b/stock_orderpoint_move_link/static/description/index.html new file mode 100644 index 000000000..ee315b1bf --- /dev/null +++ b/stock_orderpoint_move_link/static/description/index.html @@ -0,0 +1,421 @@ + + + + + + +Stock Orderpoint Move Link + + + + + + From e2761eca43524372a87aefb2f76af79033a9dfab Mon Sep 17 00:00:00 2001 From: Lois Rilo Date: Thu, 28 Mar 2019 12:27:25 +0100 Subject: [PATCH 05/12] [12.0][IMP] stock_orderpoint_move_link: add simple test. --- stock_orderpoint_move_link/tests/__init__.py | 1 + .../tests/test_stock_orderpoint_move_link.py | 85 +++++++++++++++++++ 2 files changed, 86 insertions(+) create mode 100644 stock_orderpoint_move_link/tests/__init__.py create mode 100644 stock_orderpoint_move_link/tests/test_stock_orderpoint_move_link.py diff --git a/stock_orderpoint_move_link/tests/__init__.py b/stock_orderpoint_move_link/tests/__init__.py new file mode 100644 index 000000000..bc24fd9a5 --- /dev/null +++ b/stock_orderpoint_move_link/tests/__init__.py @@ -0,0 +1 @@ +from . import test_stock_orderpoint_move_link diff --git a/stock_orderpoint_move_link/tests/test_stock_orderpoint_move_link.py b/stock_orderpoint_move_link/tests/test_stock_orderpoint_move_link.py new file mode 100644 index 000000000..d479712da --- /dev/null +++ b/stock_orderpoint_move_link/tests/test_stock_orderpoint_move_link.py @@ -0,0 +1,85 @@ +# Copyright 2019 Eficent Business and IT Consulting Services S.L. +# License LGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from odoo.tests.common import SavepointCase + + +class TestStockOrderpointMoveLink(SavepointCase): + + @classmethod + def setUpClass(cls): + super().setUpClass() + + cls.product_obj = cls.env['product.product'] + cls.orderpoint_obj = cls.env['stock.warehouse.orderpoint'] + cls.loc_obj = cls.env['stock.location'] + cls.route_obj = cls.env['stock.location.route'] + cls.group_obj = cls.env['procurement.group'] + cls.move_obj = cls.env['stock.move'] + + cls.warehouse = cls.env.ref('stock.warehouse0') + cls.stock_loc = cls.env.ref('stock.stock_location_stock') + + # Create a new locations and routes: + cls.intermediate_loc = cls.loc_obj.create({ + 'name': 'Test location 1', + 'usage': 'internal', + 'location_id': cls.warehouse.view_location_id.id, + }) + test_route = cls.route_obj.create({ + 'name': 'Stock -> Test 1', + 'product_selectable': True, + 'rule_ids': [(0, 0, { + 'name': 'stock to test', + 'action': 'pull', + 'location_id': cls.intermediate_loc.id, + 'location_src_id': cls.stock_loc.id, + 'procure_method': 'make_to_stock', + 'picking_type_id': cls.env.ref( + 'stock.picking_type_internal').id, + 'propagate': True + })] + }) + cls.need_loc = cls.loc_obj.create({ + 'name': 'Test location 2', + 'usage': 'internal', + 'location_id': cls.warehouse.view_location_id.id, + }) + test_route_2 = cls.route_obj.create({ + 'name': 'Test 1 -> Test 2', + 'product_selectable': True, + 'rule_ids': [(0, 0, { + 'name': 'Test 1 to Test 2', + 'action': 'pull', + 'location_id': cls.need_loc.id, + 'location_src_id': cls.intermediate_loc.id, + 'procure_method': 'make_to_order', + 'picking_type_id': cls.env.ref( + 'stock.picking_type_internal').id, + 'propagate': True + })] + }) + + # Prepare Products: + routes = test_route_2 + test_route + cls.product = cls.product_obj.create({ + 'name': 'Test Product', + 'route_ids': [(6, 0, routes.ids)], + }) + + # Create Orderpoint: + cls.orderpoint_need_loc = cls.orderpoint_obj.create({ + 'warehouse_id': cls.warehouse.id, + 'location_id': cls.need_loc.id, + 'product_id': cls.product.id, + 'product_min_qty': 10.0, + 'product_max_qty': 50.0, + 'product_uom': cls.product.uom_id.id, + }) + cls.group_obj.run_scheduler() + + def test_01_stock_orderpoint_move_link(self): + """Tests if manual procurement fills orderpoint_ids field.""" + move = self.move_obj.search([ + ('orderpoint_ids', '=', self.orderpoint_need_loc.id)]) + self.assertTrue(len(move), 2) From 4c4da239f1aa6b4fb105236883bda2a6b7638a8e Mon Sep 17 00:00:00 2001 From: hveficent Date: Wed, 24 Apr 2019 13:48:16 +0200 Subject: [PATCH 06/12] [12.0][IMP] stock_orderpoint_move_link: View transfers on orderpoint --- stock_orderpoint_move_link/README.rst | 1 + stock_orderpoint_move_link/__init__.py | 2 +- stock_orderpoint_move_link/__manifest__.py | 2 +- stock_orderpoint_move_link/models/__init__.py | 3 ++- stock_orderpoint_move_link/models/stock.py | 2 +- .../models/stock_move.py | 2 +- .../models/stock_warehouse_orderpoint.py | 19 +++++++++++++++++++ .../readme/CONTRIBUTORS.rst | 1 + .../tests/test_stock_orderpoint_move_link.py | 18 ++++++++++++++---- .../views/stock_move_views.xml | 16 ++++++++++++++++ 10 files changed, 57 insertions(+), 9 deletions(-) create mode 100644 stock_orderpoint_move_link/models/stock_warehouse_orderpoint.py diff --git a/stock_orderpoint_move_link/README.rst b/stock_orderpoint_move_link/README.rst index 7629d0122..a8df3129f 100644 --- a/stock_orderpoint_move_link/README.rst +++ b/stock_orderpoint_move_link/README.rst @@ -56,6 +56,7 @@ Contributors * Jordi Ballester Alomar * Kitti Upariphutthiphong +* Héctor Villarreal Ortega Maintainers ~~~~~~~~~~~ diff --git a/stock_orderpoint_move_link/__init__.py b/stock_orderpoint_move_link/__init__.py index dc045bf6a..2fb88af91 100644 --- a/stock_orderpoint_move_link/__init__.py +++ b/stock_orderpoint_move_link/__init__.py @@ -1,3 +1,3 @@ -# Copyright 2017 Eficent Business and IT Consulting Services, S.L. +# Copyright 2019 Eficent Business and IT Consulting Services, S.L. # License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html). from . import models diff --git a/stock_orderpoint_move_link/__manifest__.py b/stock_orderpoint_move_link/__manifest__.py index f537b9752..85a39fc02 100644 --- a/stock_orderpoint_move_link/__manifest__.py +++ b/stock_orderpoint_move_link/__manifest__.py @@ -1,4 +1,4 @@ -# Copyright 2017 Eficent Business and IT Consulting Services, S.L. +# Copyright 2019 Eficent Business and IT Consulting Services, S.L. # License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html). { diff --git a/stock_orderpoint_move_link/models/__init__.py b/stock_orderpoint_move_link/models/__init__.py index 197db3d45..7f2c64d3c 100644 --- a/stock_orderpoint_move_link/models/__init__.py +++ b/stock_orderpoint_move_link/models/__init__.py @@ -1,4 +1,5 @@ -# Copyright 2017 Eficent Business and IT Consulting Services, S.L. +# Copyright 2019 Eficent Business and IT Consulting Services, S.L. # License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html). from . import stock from . import stock_move +from . import stock_warehouse_orderpoint diff --git a/stock_orderpoint_move_link/models/stock.py b/stock_orderpoint_move_link/models/stock.py index b1706a75f..937fdf2c8 100644 --- a/stock_orderpoint_move_link/models/stock.py +++ b/stock_orderpoint_move_link/models/stock.py @@ -1,4 +1,4 @@ -# Copyright 2017 Eficent Business, IT Consulting Services, S.L., Ecosoft +# Copyright 2019 Eficent Business, IT Consulting Services, S.L., Ecosoft # License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html). from odoo import models diff --git a/stock_orderpoint_move_link/models/stock_move.py b/stock_orderpoint_move_link/models/stock_move.py index 7c5f8f309..29c989783 100644 --- a/stock_orderpoint_move_link/models/stock_move.py +++ b/stock_orderpoint_move_link/models/stock_move.py @@ -1,4 +1,4 @@ -# Copyright 2017 Eficent Business, IT Consulting Services, S.L. +# Copyright 2019 Eficent Business, IT Consulting Services, S.L. # License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html). from odoo import fields, models diff --git a/stock_orderpoint_move_link/models/stock_warehouse_orderpoint.py b/stock_orderpoint_move_link/models/stock_warehouse_orderpoint.py new file mode 100644 index 000000000..4d0d4c4fe --- /dev/null +++ b/stock_orderpoint_move_link/models/stock_warehouse_orderpoint.py @@ -0,0 +1,19 @@ +# Copyright 2019 Eficent Business and IT Consulting Services S.L. +# (http://www.eficent.com) +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). + +from odoo import api, models + + +class StockWarehouseOrderpoint(models.Model): + _inherit = 'stock.warehouse.orderpoint' + + @api.multi + def action_view_stock_picking(self): + action = self.env.ref('stock.action_picking_tree_all') + result = action.read()[0] + result['context'] = {} + picking_ids = self.env['stock.move'].search( + [('orderpoint_ids', 'in', self.id)]).mapped('picking_id') + result['domain'] = "[('id','in',%s)]" % picking_ids.ids + return result diff --git a/stock_orderpoint_move_link/readme/CONTRIBUTORS.rst b/stock_orderpoint_move_link/readme/CONTRIBUTORS.rst index 7ac2aa759..7906762c1 100644 --- a/stock_orderpoint_move_link/readme/CONTRIBUTORS.rst +++ b/stock_orderpoint_move_link/readme/CONTRIBUTORS.rst @@ -1,2 +1,3 @@ * Jordi Ballester Alomar * Kitti Upariphutthiphong +* Héctor Villarreal Ortega diff --git a/stock_orderpoint_move_link/tests/test_stock_orderpoint_move_link.py b/stock_orderpoint_move_link/tests/test_stock_orderpoint_move_link.py index d479712da..e50166db0 100644 --- a/stock_orderpoint_move_link/tests/test_stock_orderpoint_move_link.py +++ b/stock_orderpoint_move_link/tests/test_stock_orderpoint_move_link.py @@ -1,6 +1,6 @@ # Copyright 2019 Eficent Business and IT Consulting Services S.L. # License LGPL-3.0 or later (http://www.gnu.org/licenses/agpl). - +import ast from odoo.tests.common import SavepointCase @@ -16,6 +16,7 @@ class TestStockOrderpointMoveLink(SavepointCase): cls.route_obj = cls.env['stock.location.route'] cls.group_obj = cls.env['procurement.group'] cls.move_obj = cls.env['stock.move'] + cls.picking_obj = cls.env['stock.picking'] cls.warehouse = cls.env.ref('stock.warehouse0') cls.stock_loc = cls.env.ref('stock.stock_location_stock') @@ -26,7 +27,7 @@ class TestStockOrderpointMoveLink(SavepointCase): 'usage': 'internal', 'location_id': cls.warehouse.view_location_id.id, }) - test_route = cls.route_obj.create({ + cls.test_route = cls.route_obj.create({ 'name': 'Stock -> Test 1', 'product_selectable': True, 'rule_ids': [(0, 0, { @@ -45,7 +46,7 @@ class TestStockOrderpointMoveLink(SavepointCase): 'usage': 'internal', 'location_id': cls.warehouse.view_location_id.id, }) - test_route_2 = cls.route_obj.create({ + cls.test_route_2 = cls.route_obj.create({ 'name': 'Test 1 -> Test 2', 'product_selectable': True, 'rule_ids': [(0, 0, { @@ -61,7 +62,7 @@ class TestStockOrderpointMoveLink(SavepointCase): }) # Prepare Products: - routes = test_route_2 + test_route + routes = cls.test_route_2 + cls.test_route cls.product = cls.product_obj.create({ 'name': 'Test Product', 'route_ids': [(6, 0, routes.ids)], @@ -83,3 +84,12 @@ class TestStockOrderpointMoveLink(SavepointCase): move = self.move_obj.search([ ('orderpoint_ids', '=', self.orderpoint_need_loc.id)]) self.assertTrue(len(move), 2) + + def test_02_stock_orderpoint_move_link_action_view(self): + sp_orderpoint = self.move_obj.search( + [('orderpoint_ids', 'in', self.orderpoint_need_loc.id)]).mapped( + 'picking_id') + result = self.orderpoint_need_loc.action_view_stock_picking() + sp_action = self.picking_obj.search( + ast.literal_eval(result['domain'])) + self.assertEquals(sp_orderpoint, sp_action) diff --git a/stock_orderpoint_move_link/views/stock_move_views.xml b/stock_orderpoint_move_link/views/stock_move_views.xml index 7975bdedc..82eae7fb5 100644 --- a/stock_orderpoint_move_link/views/stock_move_views.xml +++ b/stock_orderpoint_move_link/views/stock_move_views.xml @@ -25,4 +25,20 @@ + + stock.warehouse.orderpoint.move.form + stock.warehouse.orderpoint + + +
+ +
+
+
+ From 0ad179866cf0a6882b1ce7b179fbc7b25078b4a7 Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Mon, 26 Aug 2019 13:07:42 +0000 Subject: [PATCH 07/12] stock_orderpoint_move_link 12.0.1.1.0 --- stock_orderpoint_move_link/__manifest__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stock_orderpoint_move_link/__manifest__.py b/stock_orderpoint_move_link/__manifest__.py index 85a39fc02..faa44c025 100644 --- a/stock_orderpoint_move_link/__manifest__.py +++ b/stock_orderpoint_move_link/__manifest__.py @@ -4,7 +4,7 @@ { "name": "Stock Orderpoint Move Link", "summary": "Link Reordering rules to stock moves", - "version": "12.0.1.0.0", + "version": "12.0.1.1.0", "license": "LGPL-3", "website": "https://github.com/stock-logistics-warehouse", "author": "Eficent, Odoo Community Association (OCA)", From 62a56ee187f613470f7d84aa996671d1c70b3016 Mon Sep 17 00:00:00 2001 From: oca-travis Date: Thu, 21 Jun 2018 13:48:17 +0000 Subject: [PATCH 08/12] Updated translations from Weblate --- .../i18n/stock_orderpoint_move_link.pot | 40 ++++++++++++++++++ stock_orderpoint_move_link/i18n/zh_CN.po | 42 +++++++++++++++++++ 2 files changed, 82 insertions(+) create mode 100644 stock_orderpoint_move_link/i18n/stock_orderpoint_move_link.pot create mode 100644 stock_orderpoint_move_link/i18n/zh_CN.po diff --git a/stock_orderpoint_move_link/i18n/stock_orderpoint_move_link.pot b/stock_orderpoint_move_link/i18n/stock_orderpoint_move_link.pot new file mode 100644 index 000000000..c24c5ac86 --- /dev/null +++ b/stock_orderpoint_move_link/i18n/stock_orderpoint_move_link.pot @@ -0,0 +1,40 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * stock_orderpoint_move_link +# +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_orderpoint_move_link +#: model:ir.model.fields,field_description:stock_orderpoint_move_link.field_stock_move__orderpoint_ids +msgid "Linked Reordering Rules" +msgstr "" + +#. module: stock_orderpoint_move_link +#: model:ir.model,name:stock_orderpoint_move_link.model_stock_warehouse_orderpoint +msgid "Minimum Inventory Rule" +msgstr "" + +#. module: stock_orderpoint_move_link +#: model:ir.model,name:stock_orderpoint_move_link.model_stock_move +msgid "Stock Move" +msgstr "" + +#. module: stock_orderpoint_move_link +#: model:ir.model,name:stock_orderpoint_move_link.model_stock_rule +msgid "Stock Rule" +msgstr "" + +#. module: stock_orderpoint_move_link +#: model_terms:ir.ui.view,arch_db:stock_orderpoint_move_link.view_warehouse_orderpoint_move_form +msgid "Transfers" +msgstr "" + diff --git a/stock_orderpoint_move_link/i18n/zh_CN.po b/stock_orderpoint_move_link/i18n/zh_CN.po new file mode 100644 index 000000000..fe6b4513b --- /dev/null +++ b/stock_orderpoint_move_link/i18n/zh_CN.po @@ -0,0 +1,42 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * stock_orderpoint_move_link +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 12.0\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2019-10-12 16:36+0000\n" +"Last-Translator: 黎伟杰 <674416404@qq.com>\n" +"Language-Team: none\n" +"Language: zh_CN\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Weblate 3.8\n" + +#. module: stock_orderpoint_move_link +#: model:ir.model.fields,field_description:stock_orderpoint_move_link.field_stock_move__orderpoint_ids +msgid "Linked Reordering Rules" +msgstr "链接的重新订购规则" + +#. module: stock_orderpoint_move_link +#: model:ir.model,name:stock_orderpoint_move_link.model_stock_warehouse_orderpoint +msgid "Minimum Inventory Rule" +msgstr "最小库存规则" + +#. module: stock_orderpoint_move_link +#: model:ir.model,name:stock_orderpoint_move_link.model_stock_move +msgid "Stock Move" +msgstr "库存移动" + +#. module: stock_orderpoint_move_link +#: model:ir.model,name:stock_orderpoint_move_link.model_stock_rule +msgid "Stock Rule" +msgstr "库存规则" + +#. module: stock_orderpoint_move_link +#: model_terms:ir.ui.view,arch_db:stock_orderpoint_move_link.view_warehouse_orderpoint_move_form +msgid "Transfers" +msgstr "调拨" From 414b43d3ea92d7bf87e55e9c62c67a30c0ba8727 Mon Sep 17 00:00:00 2001 From: Guewen Baconnier Date: Mon, 6 Jan 2020 16:28:59 +0100 Subject: [PATCH 09/12] [IMP] stock_orderpoint_move_link: black, isort --- stock_orderpoint_move_link/__manifest__.py | 8 +- stock_orderpoint_move_link/models/stock.py | 35 ++-- .../models/stock_move.py | 10 +- .../models/stock_warehouse_orderpoint.py | 15 +- .../tests/test_stock_orderpoint_move_link.py | 155 ++++++++++-------- 5 files changed, 129 insertions(+), 94 deletions(-) diff --git a/stock_orderpoint_move_link/__manifest__.py b/stock_orderpoint_move_link/__manifest__.py index faa44c025..4e8d0d5ed 100644 --- a/stock_orderpoint_move_link/__manifest__.py +++ b/stock_orderpoint_move_link/__manifest__.py @@ -9,12 +9,8 @@ "website": "https://github.com/stock-logistics-warehouse", "author": "Eficent, Odoo Community Association (OCA)", "category": "Warehouse Management", - "depends": [ - "stock", - ], - "data": [ - "views/stock_move_views.xml", - ], + "depends": ["stock"], + "data": ["views/stock_move_views.xml"], "installable": True, "auto_install": False, } diff --git a/stock_orderpoint_move_link/models/stock.py b/stock_orderpoint_move_link/models/stock.py index 937fdf2c8..b2d726e08 100644 --- a/stock_orderpoint_move_link/models/stock.py +++ b/stock_orderpoint_move_link/models/stock.py @@ -4,16 +4,31 @@ from odoo import models class StockRule(models.Model): - _inherit = 'stock.rule' + _inherit = "stock.rule" - def _get_stock_move_values(self, product_id, product_qty, product_uom, - location_id, name, origin, values, group_id): + def _get_stock_move_values( + self, + product_id, + product_qty, + product_uom, + location_id, + name, + origin, + values, + group_id, + ): vals = super()._get_stock_move_values( - product_id, product_qty, product_uom, - location_id, name, origin, values, group_id) - if 'orderpoint_id' in values: - vals['orderpoint_ids'] = [(4, values['orderpoint_id'].id)] - elif 'orderpoint_ids' in values: - vals['orderpoint_ids'] = [(4, o.id) - for o in values['orderpoint_ids']] + product_id, + product_qty, + product_uom, + location_id, + name, + origin, + values, + group_id, + ) + if "orderpoint_id" in values: + vals["orderpoint_ids"] = [(4, values["orderpoint_id"].id)] + elif "orderpoint_ids" in values: + vals["orderpoint_ids"] = [(4, o.id) for o in values["orderpoint_ids"]] return vals diff --git a/stock_orderpoint_move_link/models/stock_move.py b/stock_orderpoint_move_link/models/stock_move.py index 29c989783..853c3f467 100644 --- a/stock_orderpoint_move_link/models/stock_move.py +++ b/stock_orderpoint_move_link/models/stock_move.py @@ -4,21 +4,19 @@ from odoo import fields, models class StockMove(models.Model): - _inherit = 'stock.move' + _inherit = "stock.move" orderpoint_ids = fields.Many2many( - comodel_name='stock.warehouse.orderpoint', - string='Linked Reordering Rules', + comodel_name="stock.warehouse.orderpoint", string="Linked Reordering Rules" ) def _prepare_procurement_values(self): res = super(StockMove, self)._prepare_procurement_values() if self.orderpoint_ids: - res['orderpoint_ids'] = self.orderpoint_ids + res["orderpoint_ids"] = self.orderpoint_ids return res def _merge_moves_fields(self): res = super(StockMove, self)._merge_moves_fields() - res['orderpoint_ids'] = [(4, m.id) - for m in self.mapped('orderpoint_ids')] + res["orderpoint_ids"] = [(4, m.id) for m in self.mapped("orderpoint_ids")] return res diff --git a/stock_orderpoint_move_link/models/stock_warehouse_orderpoint.py b/stock_orderpoint_move_link/models/stock_warehouse_orderpoint.py index 4d0d4c4fe..1d9076862 100644 --- a/stock_orderpoint_move_link/models/stock_warehouse_orderpoint.py +++ b/stock_orderpoint_move_link/models/stock_warehouse_orderpoint.py @@ -6,14 +6,17 @@ from odoo import api, models class StockWarehouseOrderpoint(models.Model): - _inherit = 'stock.warehouse.orderpoint' + _inherit = "stock.warehouse.orderpoint" @api.multi def action_view_stock_picking(self): - action = self.env.ref('stock.action_picking_tree_all') + action = self.env.ref("stock.action_picking_tree_all") result = action.read()[0] - result['context'] = {} - picking_ids = self.env['stock.move'].search( - [('orderpoint_ids', 'in', self.id)]).mapped('picking_id') - result['domain'] = "[('id','in',%s)]" % picking_ids.ids + result["context"] = {} + picking_ids = ( + self.env["stock.move"] + .search([("orderpoint_ids", "in", self.id)]) + .mapped("picking_id") + ) + result["domain"] = "[('id','in',%s)]" % picking_ids.ids return result diff --git a/stock_orderpoint_move_link/tests/test_stock_orderpoint_move_link.py b/stock_orderpoint_move_link/tests/test_stock_orderpoint_move_link.py index e50166db0..32dc36dd8 100644 --- a/stock_orderpoint_move_link/tests/test_stock_orderpoint_move_link.py +++ b/stock_orderpoint_move_link/tests/test_stock_orderpoint_move_link.py @@ -1,95 +1,118 @@ # Copyright 2019 Eficent Business and IT Consulting Services S.L. # License LGPL-3.0 or later (http://www.gnu.org/licenses/agpl). import ast + from odoo.tests.common import SavepointCase class TestStockOrderpointMoveLink(SavepointCase): - @classmethod def setUpClass(cls): super().setUpClass() - cls.product_obj = cls.env['product.product'] - cls.orderpoint_obj = cls.env['stock.warehouse.orderpoint'] - cls.loc_obj = cls.env['stock.location'] - cls.route_obj = cls.env['stock.location.route'] - cls.group_obj = cls.env['procurement.group'] - cls.move_obj = cls.env['stock.move'] - cls.picking_obj = cls.env['stock.picking'] + cls.product_obj = cls.env["product.product"] + cls.orderpoint_obj = cls.env["stock.warehouse.orderpoint"] + cls.loc_obj = cls.env["stock.location"] + cls.route_obj = cls.env["stock.location.route"] + cls.group_obj = cls.env["procurement.group"] + cls.move_obj = cls.env["stock.move"] + cls.picking_obj = cls.env["stock.picking"] - cls.warehouse = cls.env.ref('stock.warehouse0') - cls.stock_loc = cls.env.ref('stock.stock_location_stock') + cls.warehouse = cls.env.ref("stock.warehouse0") + cls.stock_loc = cls.env.ref("stock.stock_location_stock") # Create a new locations and routes: - cls.intermediate_loc = cls.loc_obj.create({ - 'name': 'Test location 1', - 'usage': 'internal', - 'location_id': cls.warehouse.view_location_id.id, - }) - cls.test_route = cls.route_obj.create({ - 'name': 'Stock -> Test 1', - 'product_selectable': True, - 'rule_ids': [(0, 0, { - 'name': 'stock to test', - 'action': 'pull', - 'location_id': cls.intermediate_loc.id, - 'location_src_id': cls.stock_loc.id, - 'procure_method': 'make_to_stock', - 'picking_type_id': cls.env.ref( - 'stock.picking_type_internal').id, - 'propagate': True - })] - }) - cls.need_loc = cls.loc_obj.create({ - 'name': 'Test location 2', - 'usage': 'internal', - 'location_id': cls.warehouse.view_location_id.id, - }) - cls.test_route_2 = cls.route_obj.create({ - 'name': 'Test 1 -> Test 2', - 'product_selectable': True, - 'rule_ids': [(0, 0, { - 'name': 'Test 1 to Test 2', - 'action': 'pull', - 'location_id': cls.need_loc.id, - 'location_src_id': cls.intermediate_loc.id, - 'procure_method': 'make_to_order', - 'picking_type_id': cls.env.ref( - 'stock.picking_type_internal').id, - 'propagate': True - })] - }) + cls.intermediate_loc = cls.loc_obj.create( + { + "name": "Test location 1", + "usage": "internal", + "location_id": cls.warehouse.view_location_id.id, + } + ) + cls.test_route = cls.route_obj.create( + { + "name": "Stock -> Test 1", + "product_selectable": True, + "rule_ids": [ + ( + 0, + 0, + { + "name": "stock to test", + "action": "pull", + "location_id": cls.intermediate_loc.id, + "location_src_id": cls.stock_loc.id, + "procure_method": "make_to_stock", + "picking_type_id": cls.env.ref( + "stock.picking_type_internal" + ).id, + "propagate": True, + }, + ) + ], + } + ) + cls.need_loc = cls.loc_obj.create( + { + "name": "Test location 2", + "usage": "internal", + "location_id": cls.warehouse.view_location_id.id, + } + ) + cls.test_route_2 = cls.route_obj.create( + { + "name": "Test 1 -> Test 2", + "product_selectable": True, + "rule_ids": [ + ( + 0, + 0, + { + "name": "Test 1 to Test 2", + "action": "pull", + "location_id": cls.need_loc.id, + "location_src_id": cls.intermediate_loc.id, + "procure_method": "make_to_order", + "picking_type_id": cls.env.ref( + "stock.picking_type_internal" + ).id, + "propagate": True, + }, + ) + ], + } + ) # Prepare Products: routes = cls.test_route_2 + cls.test_route - cls.product = cls.product_obj.create({ - 'name': 'Test Product', - 'route_ids': [(6, 0, routes.ids)], - }) + cls.product = cls.product_obj.create( + {"name": "Test Product", "route_ids": [(6, 0, routes.ids)]} + ) # Create Orderpoint: - cls.orderpoint_need_loc = cls.orderpoint_obj.create({ - 'warehouse_id': cls.warehouse.id, - 'location_id': cls.need_loc.id, - 'product_id': cls.product.id, - 'product_min_qty': 10.0, - 'product_max_qty': 50.0, - 'product_uom': cls.product.uom_id.id, - }) + cls.orderpoint_need_loc = cls.orderpoint_obj.create( + { + "warehouse_id": cls.warehouse.id, + "location_id": cls.need_loc.id, + "product_id": cls.product.id, + "product_min_qty": 10.0, + "product_max_qty": 50.0, + "product_uom": cls.product.uom_id.id, + } + ) cls.group_obj.run_scheduler() def test_01_stock_orderpoint_move_link(self): """Tests if manual procurement fills orderpoint_ids field.""" - move = self.move_obj.search([ - ('orderpoint_ids', '=', self.orderpoint_need_loc.id)]) + move = self.move_obj.search( + [("orderpoint_ids", "=", self.orderpoint_need_loc.id)] + ) self.assertTrue(len(move), 2) def test_02_stock_orderpoint_move_link_action_view(self): sp_orderpoint = self.move_obj.search( - [('orderpoint_ids', 'in', self.orderpoint_need_loc.id)]).mapped( - 'picking_id') + [("orderpoint_ids", "in", self.orderpoint_need_loc.id)] + ).mapped("picking_id") result = self.orderpoint_need_loc.action_view_stock_picking() - sp_action = self.picking_obj.search( - ast.literal_eval(result['domain'])) + sp_action = self.picking_obj.search(ast.literal_eval(result["domain"])) self.assertEquals(sp_orderpoint, sp_action) From de8ce212e2797919813214a6de7bebf495ec9191 Mon Sep 17 00:00:00 2001 From: Guewen Baconnier Date: Mon, 6 Jan 2020 16:33:40 +0100 Subject: [PATCH 10/12] [MIG] stock_orderpoint_move_link: Migration to 13.0 --- stock_orderpoint_move_link/__manifest__.py | 2 +- stock_orderpoint_move_link/models/stock.py | 4 +-- .../models/stock_move.py | 4 +-- .../models/stock_warehouse_orderpoint.py | 3 +-- .../readme/CONTRIBUTORS.rst | 1 + .../tests/test_stock_orderpoint_move_link.py | 2 -- .../views/stock_move_views.xml | 27 +++++++------------ 7 files changed, 16 insertions(+), 27 deletions(-) diff --git a/stock_orderpoint_move_link/__manifest__.py b/stock_orderpoint_move_link/__manifest__.py index 4e8d0d5ed..5ff801968 100644 --- a/stock_orderpoint_move_link/__manifest__.py +++ b/stock_orderpoint_move_link/__manifest__.py @@ -4,7 +4,7 @@ { "name": "Stock Orderpoint Move Link", "summary": "Link Reordering rules to stock moves", - "version": "12.0.1.1.0", + "version": "13.0.1.0.0", "license": "LGPL-3", "website": "https://github.com/stock-logistics-warehouse", "author": "Eficent, Odoo Community Association (OCA)", diff --git a/stock_orderpoint_move_link/models/stock.py b/stock_orderpoint_move_link/models/stock.py index b2d726e08..50a22d73c 100644 --- a/stock_orderpoint_move_link/models/stock.py +++ b/stock_orderpoint_move_link/models/stock.py @@ -14,8 +14,8 @@ class StockRule(models.Model): location_id, name, origin, + company_id, values, - group_id, ): vals = super()._get_stock_move_values( product_id, @@ -24,8 +24,8 @@ class StockRule(models.Model): location_id, name, origin, + company_id, values, - group_id, ) if "orderpoint_id" in values: vals["orderpoint_ids"] = [(4, values["orderpoint_id"].id)] diff --git a/stock_orderpoint_move_link/models/stock_move.py b/stock_orderpoint_move_link/models/stock_move.py index 853c3f467..3ed7e6cfb 100644 --- a/stock_orderpoint_move_link/models/stock_move.py +++ b/stock_orderpoint_move_link/models/stock_move.py @@ -11,12 +11,12 @@ class StockMove(models.Model): ) def _prepare_procurement_values(self): - res = super(StockMove, self)._prepare_procurement_values() + res = super()._prepare_procurement_values() if self.orderpoint_ids: res["orderpoint_ids"] = self.orderpoint_ids return res def _merge_moves_fields(self): - res = super(StockMove, self)._merge_moves_fields() + res = super()._merge_moves_fields() res["orderpoint_ids"] = [(4, m.id) for m in self.mapped("orderpoint_ids")] return res diff --git a/stock_orderpoint_move_link/models/stock_warehouse_orderpoint.py b/stock_orderpoint_move_link/models/stock_warehouse_orderpoint.py index 1d9076862..b5836b77d 100644 --- a/stock_orderpoint_move_link/models/stock_warehouse_orderpoint.py +++ b/stock_orderpoint_move_link/models/stock_warehouse_orderpoint.py @@ -2,13 +2,12 @@ # (http://www.eficent.com) # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). -from odoo import api, models +from odoo import models class StockWarehouseOrderpoint(models.Model): _inherit = "stock.warehouse.orderpoint" - @api.multi def action_view_stock_picking(self): action = self.env.ref("stock.action_picking_tree_all") result = action.read()[0] diff --git a/stock_orderpoint_move_link/readme/CONTRIBUTORS.rst b/stock_orderpoint_move_link/readme/CONTRIBUTORS.rst index 7906762c1..1d856de5f 100644 --- a/stock_orderpoint_move_link/readme/CONTRIBUTORS.rst +++ b/stock_orderpoint_move_link/readme/CONTRIBUTORS.rst @@ -1,3 +1,4 @@ * Jordi Ballester Alomar * Kitti Upariphutthiphong * Héctor Villarreal Ortega +* Guewen Baconnier diff --git a/stock_orderpoint_move_link/tests/test_stock_orderpoint_move_link.py b/stock_orderpoint_move_link/tests/test_stock_orderpoint_move_link.py index 32dc36dd8..58f8d67a6 100644 --- a/stock_orderpoint_move_link/tests/test_stock_orderpoint_move_link.py +++ b/stock_orderpoint_move_link/tests/test_stock_orderpoint_move_link.py @@ -46,7 +46,6 @@ class TestStockOrderpointMoveLink(SavepointCase): "picking_type_id": cls.env.ref( "stock.picking_type_internal" ).id, - "propagate": True, }, ) ], @@ -76,7 +75,6 @@ class TestStockOrderpointMoveLink(SavepointCase): "picking_type_id": cls.env.ref( "stock.picking_type_internal" ).id, - "propagate": True, }, ) ], diff --git a/stock_orderpoint_move_link/views/stock_move_views.xml b/stock_orderpoint_move_link/views/stock_move_views.xml index 82eae7fb5..d592a569a 100644 --- a/stock_orderpoint_move_link/views/stock_move_views.xml +++ b/stock_orderpoint_move_link/views/stock_move_views.xml @@ -3,17 +3,6 @@ License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl-3.0) --> - - stock.move.form - stock.move - - - - - - - - stock.move.form stock.move @@ -30,13 +19,15 @@ stock.warehouse.orderpoint -
- +
+
+ +
From 42b6cfad434e7f01947c0968f85cddc338115b20 Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Mon, 29 Jul 2019 03:43:10 +0000 Subject: [PATCH 11/12] [UPD] README.rst --- stock_orderpoint_move_link/README.rst | 11 ++++++----- .../static/description/index.html | 8 +++++--- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/stock_orderpoint_move_link/README.rst b/stock_orderpoint_move_link/README.rst index a8df3129f..7c08f8f7e 100644 --- a/stock_orderpoint_move_link/README.rst +++ b/stock_orderpoint_move_link/README.rst @@ -14,13 +14,13 @@ Stock Orderpoint Move Link :target: http://www.gnu.org/licenses/lgpl-3.0-standalone.html :alt: License: LGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fstock--logistics--warehouse-lightgray.png?logo=github - :target: https://github.com/OCA/stock-logistics-warehouse/tree/12.0/stock_orderpoint_move_link + :target: https://github.com/OCA/stock-logistics-warehouse/tree/13.0/stock_orderpoint_move_link :alt: OCA/stock-logistics-warehouse .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/stock-logistics-warehouse-12-0/stock-logistics-warehouse-12-0-stock_orderpoint_move_link + :target: https://translation.odoo-community.org/projects/stock-logistics-warehouse-13-0/stock-logistics-warehouse-13-0-stock_orderpoint_move_link :alt: Translate me on Weblate .. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png - :target: https://runbot.odoo-community.org/runbot/153/12.0 + :target: https://runbot.odoo-community.org/runbot/153/13.0 :alt: Try me on Runbot |badge1| |badge2| |badge3| |badge4| |badge5| @@ -39,7 +39,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. @@ -57,6 +57,7 @@ Contributors * Jordi Ballester Alomar * Kitti Upariphutthiphong * Héctor Villarreal Ortega +* Guewen Baconnier Maintainers ~~~~~~~~~~~ @@ -71,6 +72,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-warehouse `_ project on GitHub. +This module is part of the `OCA/stock-logistics-warehouse `_ project on GitHub. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/stock_orderpoint_move_link/static/description/index.html b/stock_orderpoint_move_link/static/description/index.html index ee315b1bf..32315d858 100644 --- a/stock_orderpoint_move_link/static/description/index.html +++ b/stock_orderpoint_move_link/static/description/index.html @@ -367,7 +367,7 @@ ul.auto-toc { !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --> -

Beta License: LGPL-3 OCA/stock-logistics-warehouse Translate me on Weblate Try me on Runbot

+

Beta License: LGPL-3 OCA/stock-logistics-warehouse Translate me on Weblate Try me on Runbot

This module adds to stock moves a direct link to the reordering rules that created them. In chained moves, the reordering rule is propagated.

Table of contents

@@ -387,7 +387,7 @@ In chained moves, the reordering rule is propagated.

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.

@@ -403,6 +403,8 @@ If you spotted it first, help us smashing it by providing a detailed and welcome
@@ -412,7 +414,7 @@ If you spotted it first, help us smashing it by providing a detailed and welcome

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-warehouse project on GitHub.

+

This module is part of the OCA/stock-logistics-warehouse project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

From c967dd89574b461dfeb53b18b03086d7fdfc716b Mon Sep 17 00:00:00 2001 From: Guewen Baconnier Date: Mon, 6 Jan 2020 16:36:03 +0100 Subject: [PATCH 12/12] Add setuptools files --- .../odoo/addons/stock_orderpoint_move_link | 1 + setup/stock_orderpoint_move_link/setup.py | 6 ++++++ 2 files changed, 7 insertions(+) create mode 120000 setup/stock_orderpoint_move_link/odoo/addons/stock_orderpoint_move_link create mode 100644 setup/stock_orderpoint_move_link/setup.py diff --git a/setup/stock_orderpoint_move_link/odoo/addons/stock_orderpoint_move_link b/setup/stock_orderpoint_move_link/odoo/addons/stock_orderpoint_move_link new file mode 120000 index 000000000..99ac3c656 --- /dev/null +++ b/setup/stock_orderpoint_move_link/odoo/addons/stock_orderpoint_move_link @@ -0,0 +1 @@ +../../../../stock_orderpoint_move_link \ No newline at end of file diff --git a/setup/stock_orderpoint_move_link/setup.py b/setup/stock_orderpoint_move_link/setup.py new file mode 100644 index 000000000..28c57bb64 --- /dev/null +++ b/setup/stock_orderpoint_move_link/setup.py @@ -0,0 +1,6 @@ +import setuptools + +setuptools.setup( + setup_requires=['setuptools-odoo'], + odoo_addon=True, +)