From 46b6c175953bdfc81ccb02ff5d9b8a0d0ec49023 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Krier?= Date: Sun, 25 Aug 2024 12:15:39 +0200 Subject: [PATCH] Group numbering of account assets --- modules/account_asset/asset.py | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/modules/account_asset/asset.py b/modules/account_asset/asset.py index 6adce70ee1..34081f4479 100644 --- a/modules/account_asset/asset.py +++ b/modules/account_asset/asset.py @@ -632,11 +632,15 @@ class Asset(Workflow, ModelSQL, ModelView): Config = pool.get('account.configuration') config = Config(1) - for asset in assets: - if asset.number: - continue - asset.number = config.get_multivalue( - 'asset_sequence', company=asset.company.id).get() + + for company, c_assets in groupby(assets, key=lambda a: a.company): + c_assets = [a for a in c_assets if not a.number] + if c_assets: + sequence = config.get_multivalue( + 'asset_sequence', company=company.id) + for asset, number in zip( + c_assets, sequence.get_many(len(c_assets))): + asset.number = number cls.save(assets) @classmethod