diff --git a/__manifest__.py b/__manifest__.py index be58a74bcc5cf479b17cd7f6d2d74c676fe73a22..f588efd652d3ae479e75741f281a3f9439208dee 100644 --- a/__manifest__.py +++ b/__manifest__.py @@ -3,7 +3,7 @@ "summary": "Gestion de projet de création", "author": "Le Filament", "website": "https://le-filament.com", - "version": "14.0.1.0.0", + "version": "14.0.2.0.0", "license": "AGPL-3", "depends": ["product", "stock", "sale_management", "ap_partner"], "data": [ diff --git a/migrations/14.0.2.0.0/post-migration.py b/migrations/14.0.2.0.0/post-migration.py new file mode 100644 index 0000000000000000000000000000000000000000..d2944b8fc8e46fad77e69d5138af7d06fc5de6a8 --- /dev/null +++ b/migrations/14.0.2.0.0/post-migration.py @@ -0,0 +1,17 @@ +# Copyright 2022 Le Filament (<http://www.le-filament.com>) +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). +from odoo import SUPERUSER_ID, api + + +def _init_partner_sale_project_seq(env): + for partner in ( + env["res.partner"] + .with_context(active_test=False) + .search([("sale_project_ids", "!=", False)]) + ): + partner.sale_project_seq = partner.sale_project_count + + +def migrate(cr, version): + env = api.Environment(cr, SUPERUSER_ID, {}) + _init_partner_sale_project_seq(env) diff --git a/models/res_partner.py b/models/res_partner.py index 23f3de1105e51cfe70af00897951cecfaa9a7f05..0b72932513582498a6dea442f8a24bdd2a8df12d 100644 --- a/models/res_partner.py +++ b/models/res_partner.py @@ -16,6 +16,7 @@ class ResPartner(models.Model): sale_project_ids = fields.One2many( "sale.project", "partner_id", "Liste des projets" ) + sale_project_seq = fields.Integer(string="Séquence de projets", default="0") # ------------------------------------------------------ # SQL Constraints diff --git a/models/sale_project.py b/models/sale_project.py index 710e37d70c812a943cae913ca4d49d5e364600b5..b6f3c839c44bb8f7f1342733e35146488e9a599d 100644 --- a/models/sale_project.py +++ b/models/sale_project.py @@ -238,7 +238,8 @@ class SaleProject(models.Model): res = super().create(vals_list) for rec in res: rec.geo_sector_id = rec.sale_order_id.partner_id.geo_sector_id.id - seq = str(rec.sale_order_id.partner_id.sale_project_count).zfill(3) + rec.sale_order_id.partner_id.sale_project_seq += 1 + seq = str(rec.sale_order_id.partner_id.sale_project_seq).zfill(3) if rec.saison_id: saison_name = "-" + rec.saison_id.name else: