From 7f7a05a6357a32123c7348d9e5d90236ea2dc08f Mon Sep 17 00:00:00 2001 From: Ignacio Ales Date: Wed, 19 Sep 2018 09:15:49 +0200 Subject: [PATCH] [MIG] quality_control_mrp: Migration to 11.0 --- quality_control_mrp/README.rst | 9 ++++--- quality_control_mrp/__init__.py | 1 - quality_control_mrp/__manifest__.py | 5 ++-- .../migrations/10.0.1.0.0/pre-migration.py | 13 +++++++++ quality_control_mrp/models/__init__.py | 1 - quality_control_mrp/models/mrp_production.py | 14 +++++----- quality_control_mrp/models/qc_inspection.py | 27 ++++++++++--------- quality_control_mrp/readme/CONTRIBUTORS.rst | 1 + quality_control_mrp/tests/__init__.py | 1 - .../tests/test_quality_control_mrp.py | 5 ++-- .../views/mrp_production_view.xml | 4 +-- .../views/qc_inspection_view.xml | 24 ++++++++--------- 12 files changed, 58 insertions(+), 47 deletions(-) create mode 100644 quality_control_mrp/migrations/10.0.1.0.0/pre-migration.py diff --git a/quality_control_mrp/README.rst b/quality_control_mrp/README.rst index dc4b6201b..270529f00 100644 --- a/quality_control_mrp/README.rst +++ b/quality_control_mrp/README.rst @@ -14,13 +14,13 @@ MRP extension for quality control :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fmanufacture-lightgray.png?logo=github - :target: https://github.com/OCA/manufacture/tree/10.0/quality_control_mrp + :target: https://github.com/OCA/manufacture/tree/11.0/quality_control_mrp :alt: OCA/manufacture .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/manufacture-10-0/manufacture-10-0-quality_control_mrp + :target: https://translation.odoo-community.org/projects/manufacture-10-0/manufacture-11-0-quality_control_mrp :alt: Translate me on Weblate .. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png - :target: https://runbot.odoo-community.org/runbot/129/10.0 + :target: https://runbot.odoo-community.org/runbot/129/11.0 :alt: Try me on Runbot |badge1| |badge2| |badge3| |badge4| |badge5| @@ -62,6 +62,7 @@ Contributors * Pedro M. Baeza * Oihane Crucelaegui * Simone Rubino +* Ignacio Ales Maintainers ~~~~~~~~~~~ @@ -76,6 +77,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/manufacture `_ project on GitHub. +This module is part of the `OCA/manufacture `_ project on GitHub. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/quality_control_mrp/__init__.py b/quality_control_mrp/__init__.py index b44d76594..31660d6a9 100644 --- a/quality_control_mrp/__init__.py +++ b/quality_control_mrp/__init__.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). from . import models diff --git a/quality_control_mrp/__manifest__.py b/quality_control_mrp/__manifest__.py index 045b754b9..0b2748c1d 100644 --- a/quality_control_mrp/__manifest__.py +++ b/quality_control_mrp/__manifest__.py @@ -1,11 +1,10 @@ -# -*- coding: utf-8 -*- # Copyright 2014 Serv. Tec. Avanzados - Pedro M. Baeza # Copyright 2014 Oihane Crucelaegui - AvanzOSC # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). { "name": "MRP extension for quality control", - "version": "10.0.1.0.0", + "version": "11.0.1.0.0", "category": "Quality control", "license": "AGPL-3", "author": "OdooMRP team, " @@ -13,7 +12,7 @@ "Serv. Tecnol. Avanzados - Pedro M. Baeza, " "Agile Business Group, " "Odoo Community Association (OCA)", - "website": "https://github.com/OCA/manufacture/tree/10.0/" + "website": "https://github.com/OCA/manufacture/tree/11.0/" "quality_control_mrp", "depends": [ "quality_control", diff --git a/quality_control_mrp/migrations/10.0.1.0.0/pre-migration.py b/quality_control_mrp/migrations/10.0.1.0.0/pre-migration.py new file mode 100644 index 000000000..3514ef33d --- /dev/null +++ b/quality_control_mrp/migrations/10.0.1.0.0/pre-migration.py @@ -0,0 +1,13 @@ +from openupgradelib import openupgrade + +field_renames = [ + ("mrp.production", "mrp_production", "qc_inspections", + "qc_inspections_ids"), + ("qc.inspection", "qc_inspection", "production", "production_id"), + ("qc.inspection.line", "qc_inspection_line", "production", "production_id") +] + + +@openupgrade.migrate(use_env=True) +def migrate(env, version): + openupgrade.rename_fields(env, field_renames) diff --git a/quality_control_mrp/models/__init__.py b/quality_control_mrp/models/__init__.py index c2ccc73d1..4e7db6884 100644 --- a/quality_control_mrp/models/__init__.py +++ b/quality_control_mrp/models/__init__.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). from . import qc_inspection diff --git a/quality_control_mrp/models/mrp_production.py b/quality_control_mrp/models/mrp_production.py index 0b984d8ad..09f3dccce 100644 --- a/quality_control_mrp/models/mrp_production.py +++ b/quality_control_mrp/models/mrp_production.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- # Copyright 2014 Serv. Tec. Avanzados - Pedro M. Baeza # Copyright 2018 Simone Rubino - Agile Business Group # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). @@ -12,16 +11,15 @@ class MrpProduction(models.Model): _inherit = 'mrp.production' @api.multi - @api.depends('qc_inspections') - def _count_inspections(self): + @api.depends('qc_inspections_ids') + def _compute_count_inspections(self): for production in self: - production.created_inspections = len(production.qc_inspections) + production.created_inspections = len(production.qc_inspections_ids) - qc_inspections = fields.One2many( - comodel_name='qc.inspection', inverse_name='production', copy=False, + qc_inspections_ids = fields.One2many( + comodel_name='qc.inspection', inverse_name='production_id', copy=False, string='Inspections', help="Inspections related to this production.") - created_inspections = fields.Integer( - compute="_count_inspections", string="Created inspections") + created_inspections = fields.Integer(compute="_compute_count_inspections") @api.multi def post_inventory(self): diff --git a/quality_control_mrp/models/qc_inspection.py b/quality_control_mrp/models/qc_inspection.py index 01f5561f6..c2c6cba3b 100644 --- a/quality_control_mrp/models/qc_inspection.py +++ b/quality_control_mrp/models/qc_inspection.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- # Copyright 2014 Serv. Tec. Avanzados - Pedro M. Baeza # Copyright 2018 Simone Rubino - Agile Business Group # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). @@ -13,36 +12,40 @@ class QcInspection(models.Model): def _prepare_inspection_header(self, object_ref, trigger_line): res = super(QcInspection, self)._prepare_inspection_header( object_ref, trigger_line) - # Fill qty when coming from pack operations + # Fill qty when coming from stock move if object_ref and object_ref._name == 'mrp.production': res['qty'] = object_ref.product_qty return res @api.depends('object_id') - def get_production(self): + def _compute_get_production(self): for inspection in self: if inspection.object_id: if inspection.object_id._name == 'stock.move': - inspection.production = inspection.object_id.production_id + inspection.production_id = \ + inspection.object_id.production_id elif inspection.object_id._name == 'mrp.production': - inspection.production = inspection.object_id + inspection.production_id = inspection.object_id + @api.multi @api.depends('object_id') - def _get_product(self): + def _compute_product_id(self): """Overriden for getting the product from a manufacturing order.""" for inspection in self: - super(QcInspection, inspection)._get_product() + super(QcInspection, inspection)._compute_product_id() if inspection.object_id and\ inspection.object_id._name == 'mrp.production': - inspection.product = inspection.object_id.product_id + inspection.product_id = inspection.object_id.product_id + return - production = fields.Many2one( - comodel_name="mrp.production", compute="get_production", store=True) + production_id = fields.Many2one( + comodel_name="mrp.production", + compute="_compute_get_production", store=True) class QcInspectionLine(models.Model): _inherit = 'qc.inspection.line' - production = fields.Many2one( - comodel_name="mrp.production", related="inspection_id.production", + production_id = fields.Many2one( + comodel_name="mrp.production", related="inspection_id.production_id", store=True, string="Production order") diff --git a/quality_control_mrp/readme/CONTRIBUTORS.rst b/quality_control_mrp/readme/CONTRIBUTORS.rst index 887df21fa..717a7b50d 100644 --- a/quality_control_mrp/readme/CONTRIBUTORS.rst +++ b/quality_control_mrp/readme/CONTRIBUTORS.rst @@ -1,3 +1,4 @@ * Pedro M. Baeza * Oihane Crucelaegui * Simone Rubino +* Ignacio José Alés López diff --git a/quality_control_mrp/tests/__init__.py b/quality_control_mrp/tests/__init__.py index 7564f3b6b..8f4145d4a 100644 --- a/quality_control_mrp/tests/__init__.py +++ b/quality_control_mrp/tests/__init__.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). from . import test_quality_control_mrp diff --git a/quality_control_mrp/tests/test_quality_control_mrp.py b/quality_control_mrp/tests/test_quality_control_mrp.py index e028aa25d..8cb416af7 100644 --- a/quality_control_mrp/tests/test_quality_control_mrp.py +++ b/quality_control_mrp/tests/test_quality_control_mrp.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- # Copyright 2015 Oihane Crucelaegui - AvanzOSC # Copyright 2018 Simone Rubino - Agile Business Group # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). @@ -142,5 +141,5 @@ class TestQualityControlMrp(TransactionCase): 'object_id': '%s,%d' % (self.production1._name, self.production1.id), }) - self.assertEquals(self.inspection1.production, - self.production1) + self.assertEqual(self.inspection1.production_id, + self.production1) diff --git a/quality_control_mrp/views/mrp_production_view.xml b/quality_control_mrp/views/mrp_production_view.xml index f23abe253..bb91afcba 100644 --- a/quality_control_mrp/views/mrp_production_view.xml +++ b/quality_control_mrp/views/mrp_production_view.xml @@ -6,7 +6,7 @@ Quality inspections from production order qc.inspection tree,form - [('production', '=', active_id)] + [('production_id', '=', active_id)] @@ -28,4 +28,4 @@ - \ No newline at end of file + diff --git a/quality_control_mrp/views/qc_inspection_view.xml b/quality_control_mrp/views/qc_inspection_view.xml index 7f5ba5a75..7fa53392e 100644 --- a/quality_control_mrp/views/qc_inspection_view.xml +++ b/quality_control_mrp/views/qc_inspection_view.xml @@ -9,8 +9,8 @@ - - + + @@ -22,8 +22,8 @@ - - + + @@ -35,13 +35,13 @@ - - + + + context="{'group_by': 'production_id'}" /> @@ -53,8 +53,8 @@ - - + + @@ -66,13 +66,13 @@ - - + + + context="{'group_by': 'production_id'}" />