From 893bf4c767f647f9a8865b7bf06a18acfe413178 Mon Sep 17 00:00:00 2001 From: Alfredo Date: Tue, 1 Oct 2024 09:35:11 +0200 Subject: [PATCH 1/3] [16.0][ADD] crm_claim_type_sequence: In crm claim types new field "Sequence". --- crm_claim_type_sequence/README.rst | 30 ++++++++++++++++++ crm_claim_type_sequence/__init__.py | 1 + crm_claim_type_sequence/__manifest__.py | 15 +++++++++ crm_claim_type_sequence/i18n/ca_ES.po | 31 +++++++++++++++++++ .../i18n/crm_claim_type_sequence.pot | 31 +++++++++++++++++++ crm_claim_type_sequence/i18n/en_GB.po | 31 +++++++++++++++++++ crm_claim_type_sequence/i18n/es.po | 31 +++++++++++++++++++ crm_claim_type_sequence/i18n/fr.po | 31 +++++++++++++++++++ crm_claim_type_sequence/models/__init__.py | 2 ++ crm_claim_type_sequence/models/crm_claim.py | 20 ++++++++++++ .../models/crm_claim_type.py | 9 ++++++ .../views/crm_claim_type_views.xml | 22 +++++++++++++ 12 files changed, 254 insertions(+) create mode 100644 crm_claim_type_sequence/README.rst create mode 100644 crm_claim_type_sequence/__init__.py create mode 100644 crm_claim_type_sequence/__manifest__.py create mode 100644 crm_claim_type_sequence/i18n/ca_ES.po create mode 100644 crm_claim_type_sequence/i18n/crm_claim_type_sequence.pot create mode 100644 crm_claim_type_sequence/i18n/en_GB.po create mode 100644 crm_claim_type_sequence/i18n/es.po create mode 100644 crm_claim_type_sequence/i18n/fr.po create mode 100644 crm_claim_type_sequence/models/__init__.py create mode 100644 crm_claim_type_sequence/models/crm_claim.py create mode 100644 crm_claim_type_sequence/models/crm_claim_type.py create mode 100644 crm_claim_type_sequence/views/crm_claim_type_views.xml diff --git a/crm_claim_type_sequence/README.rst b/crm_claim_type_sequence/README.rst new file mode 100644 index 00000000..7ae0c494 --- /dev/null +++ b/crm_claim_type_sequence/README.rst @@ -0,0 +1,30 @@ +.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg + :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html + :alt: License: AGPL-3 + +======================= +Crm claim type sequence +======================= + +* In crm claim types new field "Sequence". +* If when registering a claim, the claim type has a sequence defined, use that + sequence to register the claim. + +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. + +Do not contact contributors directly about support or help with technical issues. + +Credits +======= + +Contributors +------------ + +* Ana Juaristi +* Alfredo de la Fuente diff --git a/crm_claim_type_sequence/__init__.py b/crm_claim_type_sequence/__init__.py new file mode 100644 index 00000000..0650744f --- /dev/null +++ b/crm_claim_type_sequence/__init__.py @@ -0,0 +1 @@ +from . import models diff --git a/crm_claim_type_sequence/__manifest__.py b/crm_claim_type_sequence/__manifest__.py new file mode 100644 index 00000000..baf6162a --- /dev/null +++ b/crm_claim_type_sequence/__manifest__.py @@ -0,0 +1,15 @@ +# Copyright 2024 Alfredo de la Fuente - AvanzOSC +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). +{ + "name": "CRM Claim Type Sequence", + "version": "16.0.1.0.0", + "category": "Customer Relationship Management", + "license": "AGPL-3", + "author": "AvanzOSC", + "website": "https://github.com/avanzosc/crm-addons", + "depends": ["crm_claim_type", "crm_claim_code"], + "data": [ + "views/crm_claim_type_views.xml", + ], + "installable": True, +} diff --git a/crm_claim_type_sequence/i18n/ca_ES.po b/crm_claim_type_sequence/i18n/ca_ES.po new file mode 100644 index 00000000..b31d05c0 --- /dev/null +++ b/crm_claim_type_sequence/i18n/ca_ES.po @@ -0,0 +1,31 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * crm_claim_type_sequence +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 16.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-09-30 12:41+0000\n" +"PO-Revision-Date: 2024-09-30 12:41+0000\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: crm_claim_type_sequence +#: model:ir.model,name:crm_claim_type_sequence.model_crm_claim +msgid "Claim" +msgstr "" + +#. module: crm_claim_type_sequence +#: model:ir.model,name:crm_claim_type_sequence.model_crm_claim_type +msgid "Claim Type" +msgstr "Tipus de reclamació" + +#. module: crm_claim_type_sequence +#: model:ir.model.fields,field_description:crm_claim_type_sequence.field_crm_claim_type__sequence_id +msgid "Sequence" +msgstr "" diff --git a/crm_claim_type_sequence/i18n/crm_claim_type_sequence.pot b/crm_claim_type_sequence/i18n/crm_claim_type_sequence.pot new file mode 100644 index 00000000..cff70980 --- /dev/null +++ b/crm_claim_type_sequence/i18n/crm_claim_type_sequence.pot @@ -0,0 +1,31 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * crm_claim_type_sequence +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 16.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-09-30 12:41+0000\n" +"PO-Revision-Date: 2024-09-30 12:41+0000\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: crm_claim_type_sequence +#: model:ir.model,name:crm_claim_type_sequence.model_crm_claim +msgid "Claim" +msgstr "" + +#. module: crm_claim_type_sequence +#: model:ir.model,name:crm_claim_type_sequence.model_crm_claim_type +msgid "Claim Type" +msgstr "" + +#. module: crm_claim_type_sequence +#: model:ir.model.fields,field_description:crm_claim_type_sequence.field_crm_claim_type__sequence_id +msgid "Sequence" +msgstr "" diff --git a/crm_claim_type_sequence/i18n/en_GB.po b/crm_claim_type_sequence/i18n/en_GB.po new file mode 100644 index 00000000..cff70980 --- /dev/null +++ b/crm_claim_type_sequence/i18n/en_GB.po @@ -0,0 +1,31 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * crm_claim_type_sequence +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 16.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-09-30 12:41+0000\n" +"PO-Revision-Date: 2024-09-30 12:41+0000\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: crm_claim_type_sequence +#: model:ir.model,name:crm_claim_type_sequence.model_crm_claim +msgid "Claim" +msgstr "" + +#. module: crm_claim_type_sequence +#: model:ir.model,name:crm_claim_type_sequence.model_crm_claim_type +msgid "Claim Type" +msgstr "" + +#. module: crm_claim_type_sequence +#: model:ir.model.fields,field_description:crm_claim_type_sequence.field_crm_claim_type__sequence_id +msgid "Sequence" +msgstr "" diff --git a/crm_claim_type_sequence/i18n/es.po b/crm_claim_type_sequence/i18n/es.po new file mode 100644 index 00000000..596f8957 --- /dev/null +++ b/crm_claim_type_sequence/i18n/es.po @@ -0,0 +1,31 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * crm_claim_type_sequence +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 16.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-09-30 12:42+0000\n" +"PO-Revision-Date: 2024-09-30 12:42+0000\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: crm_claim_type_sequence +#: model:ir.model,name:crm_claim_type_sequence.model_crm_claim +msgid "Claim" +msgstr "Reclamación" + +#. module: crm_claim_type_sequence +#: model:ir.model,name:crm_claim_type_sequence.model_crm_claim_type +msgid "Claim Type" +msgstr "Tipo de reclamación" + +#. module: crm_claim_type_sequence +#: model:ir.model.fields,field_description:crm_claim_type_sequence.field_crm_claim_type__sequence_id +msgid "Sequence" +msgstr "Secuencia" diff --git a/crm_claim_type_sequence/i18n/fr.po b/crm_claim_type_sequence/i18n/fr.po new file mode 100644 index 00000000..5c3c3eea --- /dev/null +++ b/crm_claim_type_sequence/i18n/fr.po @@ -0,0 +1,31 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * crm_claim_type_sequence +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 16.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-09-30 12:42+0000\n" +"PO-Revision-Date: 2024-09-30 12:42+0000\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: crm_claim_type_sequence +#: model:ir.model,name:crm_claim_type_sequence.model_crm_claim +msgid "Claim" +msgstr "" + +#. module: crm_claim_type_sequence +#: model:ir.model,name:crm_claim_type_sequence.model_crm_claim_type +msgid "Claim Type" +msgstr "" + +#. module: crm_claim_type_sequence +#: model:ir.model.fields,field_description:crm_claim_type_sequence.field_crm_claim_type__sequence_id +msgid "Sequence" +msgstr "" diff --git a/crm_claim_type_sequence/models/__init__.py b/crm_claim_type_sequence/models/__init__.py new file mode 100644 index 00000000..09559722 --- /dev/null +++ b/crm_claim_type_sequence/models/__init__.py @@ -0,0 +1,2 @@ +from . import crm_claim_type +from . import crm_claim diff --git a/crm_claim_type_sequence/models/crm_claim.py b/crm_claim_type_sequence/models/crm_claim.py new file mode 100644 index 00000000..bc88420b --- /dev/null +++ b/crm_claim_type_sequence/models/crm_claim.py @@ -0,0 +1,20 @@ +# Copyright 2024 Alfredo de la Fuente - AvanzOSC +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). +from odoo import api, models + + +class CrmClaim(models.Model): + _inherit = "crm.claim" + + @api.model_create_multi + def create(self, vals_list): + for vals in vals_list: + if ( + vals.get("code", "/") == "/" + and "claim_type" in vals + and vals.get("claim_type", False) + ): + claim_type = self.env["crm.claim.type"].browse(vals.get("claim_type")) + if claim_type.sequence_id: + vals["code"] = claim_type.sequence_id.next_by_id() + return super().create(vals_list) diff --git a/crm_claim_type_sequence/models/crm_claim_type.py b/crm_claim_type_sequence/models/crm_claim_type.py new file mode 100644 index 00000000..1ddc3c39 --- /dev/null +++ b/crm_claim_type_sequence/models/crm_claim_type.py @@ -0,0 +1,9 @@ +# Copyright 2024 Alfredo de la Fuente - AvanzOSC +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). +from odoo import fields, models + + +class CrmClaimtype(models.Model): + _inherit = "crm.claim.type" + + sequence_id = fields.Many2one(string="Sequence", comodel_name="ir.sequence") diff --git a/crm_claim_type_sequence/views/crm_claim_type_views.xml b/crm_claim_type_sequence/views/crm_claim_type_views.xml new file mode 100644 index 00000000..94bbdd01 --- /dev/null +++ b/crm_claim_type_sequence/views/crm_claim_type_views.xml @@ -0,0 +1,22 @@ + + + + crm.claim.type + + + + + + + + + + crm.claim.type + + + + + + + + From 455a221792ed56ffded3ae727f2af7a69b568ee1 Mon Sep 17 00:00:00 2001 From: Alfredo Date: Thu, 12 Mar 2026 08:25:13 +0100 Subject: [PATCH 2/3] [IMP] crm_claim_type_sequence: pre-commit auto fixes --- crm_claim_type_sequence/pyproject.toml | 3 ++ .../views/crm_claim_type_views.xml | 36 +++++++++---------- 2 files changed, 21 insertions(+), 18 deletions(-) create mode 100644 crm_claim_type_sequence/pyproject.toml diff --git a/crm_claim_type_sequence/pyproject.toml b/crm_claim_type_sequence/pyproject.toml new file mode 100644 index 00000000..4231d0cc --- /dev/null +++ b/crm_claim_type_sequence/pyproject.toml @@ -0,0 +1,3 @@ +[build-system] +requires = ["whool"] +build-backend = "whool.buildapi" diff --git a/crm_claim_type_sequence/views/crm_claim_type_views.xml b/crm_claim_type_sequence/views/crm_claim_type_views.xml index 94bbdd01..4ae682e4 100644 --- a/crm_claim_type_sequence/views/crm_claim_type_views.xml +++ b/crm_claim_type_sequence/views/crm_claim_type_views.xml @@ -1,22 +1,22 @@ - - crm.claim.type - - - - - - - + + crm.claim.type + + + + + + + - - crm.claim.type - - - - - - - + + crm.claim.type + + + + + + + From 9604a1c76cedbd0defefd35f35dc35e88116669d Mon Sep 17 00:00:00 2001 From: Alfredo Date: Thu, 12 Mar 2026 08:26:20 +0100 Subject: [PATCH 3/3] [18.0][MIG] crm_claim_type_sequence: Migration to 18.0 --- crm_claim_type_sequence/__manifest__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crm_claim_type_sequence/__manifest__.py b/crm_claim_type_sequence/__manifest__.py index baf6162a..5f641eaa 100644 --- a/crm_claim_type_sequence/__manifest__.py +++ b/crm_claim_type_sequence/__manifest__.py @@ -2,7 +2,7 @@ # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). { "name": "CRM Claim Type Sequence", - "version": "16.0.1.0.0", + "version": "18.0.1.0.0", "category": "Customer Relationship Management", "license": "AGPL-3", "author": "AvanzOSC",