From e8b6914cfeca5ffa252ae28294cbc6a3ee113c79 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthieu=20M=C3=A9quignon?= Date: Tue, 27 Apr 2021 16:16:58 +0200 Subject: [PATCH] stock_measuring_device: Only create or update packages that have been measured --- stock_measuring_device/models/measuring_device.py | 2 +- stock_measuring_device/wizard/measuring_wizard.py | 2 ++ stock_measuring_device/wizard/measuring_wizard_line.py | 1 + 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/stock_measuring_device/models/measuring_device.py b/stock_measuring_device/models/measuring_device.py index 1ba9b6ed9..93cb0b9d1 100644 --- a/stock_measuring_device/models/measuring_device.py +++ b/stock_measuring_device/models/measuring_device.py @@ -87,7 +87,7 @@ class MeasuringDevice(models.Model): _logger.warning("No wizard line found for this measure.") packaging.write(measures) else: - measures.update({"scan_requested": False}) + measures.update({"scan_requested": False, "is_measured": True}) wizard_line.write(measures) self._get_measuring_device().post_update_packaging_measures( diff --git a/stock_measuring_device/wizard/measuring_wizard.py b/stock_measuring_device/wizard/measuring_wizard.py index f06837fb1..43cb68b10 100644 --- a/stock_measuring_device/wizard/measuring_wizard.py +++ b/stock_measuring_device/wizard/measuring_wizard.py @@ -111,6 +111,8 @@ class MeasuringWizard(models.TransientModel): packaging_ids_list = [] for line in self.line_ids: packaging_type = line.packaging_type_id + if not line.is_measured: + continue if packaging_type: # Handle lines with packaging vals = { diff --git a/stock_measuring_device/wizard/measuring_wizard_line.py b/stock_measuring_device/wizard/measuring_wizard_line.py index 3e3a9d5f2..18e66d0ef 100644 --- a/stock_measuring_device/wizard/measuring_wizard_line.py +++ b/stock_measuring_device/wizard/measuring_wizard_line.py @@ -33,6 +33,7 @@ class MeasuringWizardLine(models.TransientModel): packaging_type_id = fields.Many2one("product.packaging.type", readonly=True) is_unit_line = fields.Boolean(readonly=True) required = fields.Boolean(related="packaging_type_id.required", readonly=True) + is_measured = fields.Boolean() @api.depends("lngth", "width", "height") def _compute_volume(self):