odoo-addon-attribute-set-completeness 16.0.1.0.0.2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. odoo/addons/attribute_set_completeness/README.rst +96 -0
  2. odoo/addons/attribute_set_completeness/__init__.py +2 -0
  3. odoo/addons/attribute_set_completeness/__manifest__.py +17 -0
  4. odoo/addons/attribute_set_completeness/components/__init__.py +3 -0
  5. odoo/addons/attribute_set_completeness/components/attribute_set_owner_event_listener.py +31 -0
  6. odoo/addons/attribute_set_completeness/i18n/attribute_set_completeness.pot +167 -0
  7. odoo/addons/attribute_set_completeness/i18n/de.po +50 -0
  8. odoo/addons/attribute_set_completeness/i18n/es.po +173 -0
  9. odoo/addons/attribute_set_completeness/i18n/fr.po +50 -0
  10. odoo/addons/attribute_set_completeness/models/__init__.py +3 -0
  11. odoo/addons/attribute_set_completeness/models/attribute_set.py +25 -0
  12. odoo/addons/attribute_set_completeness/models/attribute_set_completeness.py +45 -0
  13. odoo/addons/attribute_set_completeness/models/attribute_set_owner_mixin.py +73 -0
  14. odoo/addons/attribute_set_completeness/readme/CONTRIBUTORS.rst +10 -0
  15. odoo/addons/attribute_set_completeness/readme/DESCRIPTION.rst +1 -0
  16. odoo/addons/attribute_set_completeness/readme/USAGE.rst +3 -0
  17. odoo/addons/attribute_set_completeness/security/attribute_set_completeness.xml +23 -0
  18. odoo/addons/attribute_set_completeness/static/description/icon.png +0 -0
  19. odoo/addons/attribute_set_completeness/static/description/index.html +455 -0
  20. odoo/addons/attribute_set_completeness/test-requirements.txt +1 -0
  21. odoo/addons/attribute_set_completeness/tests/__init__.py +1 -0
  22. odoo/addons/attribute_set_completeness/tests/res_partner_event_listener.py +10 -0
  23. odoo/addons/attribute_set_completeness/tests/test_attribute_set_completeness.py +120 -0
  24. odoo/addons/attribute_set_completeness/views/attribute_set.xml +24 -0
  25. odoo/addons/attribute_set_completeness/views/attribute_set_completeness.xml +27 -0
  26. odoo_addon_attribute_set_completeness-16.0.1.0.0.2.dist-info/METADATA +113 -0
  27. odoo_addon_attribute_set_completeness-16.0.1.0.0.2.dist-info/RECORD +29 -0
  28. odoo_addon_attribute_set_completeness-16.0.1.0.0.2.dist-info/WHEEL +5 -0
  29. odoo_addon_attribute_set_completeness-16.0.1.0.0.2.dist-info/top_level.txt +1 -0
@@ -0,0 +1,96 @@
1
+ .. image:: https://odoo-community.org/readme-banner-image
2
+ :target: https://odoo-community.org/get-involved?utm_source=readme
3
+ :alt: Odoo Community Association
4
+
5
+ ==========================
6
+ Attribute Set Completeness
7
+ ==========================
8
+
9
+ ..
10
+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
11
+ !! This file is generated by oca-gen-addon-readme !!
12
+ !! changes will be overwritten. !!
13
+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
14
+ !! source digest: sha256:369af769fa0949f9272819271fe0e92dae96ca8302961a33d88259d67f78fd5c
15
+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
16
+
17
+ .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
18
+ :target: https://odoo-community.org/page/development-status
19
+ :alt: Beta
20
+ .. |badge2| image:: https://img.shields.io/badge/license-AGPL--3-blue.png
21
+ :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
22
+ :alt: License: AGPL-3
23
+ .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fodoo--pim-lightgray.png?logo=github
24
+ :target: https://github.com/OCA/odoo-pim/tree/16.0/attribute_set_completeness
25
+ :alt: OCA/odoo-pim
26
+ .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
27
+ :target: https://translation.odoo-community.org/projects/odoo-pim-16-0/odoo-pim-16-0-attribute_set_completeness
28
+ :alt: Translate me on Weblate
29
+ .. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
30
+ :target: https://runboat.odoo-community.org/builds?repo=OCA/odoo-pim&target_branch=16.0
31
+ :alt: Try me on Runboat
32
+
33
+ |badge1| |badge2| |badge3| |badge4| |badge5|
34
+
35
+ This module allows the user define a completion rate on the model linked to an attribute set.
36
+
37
+ **Table of contents**
38
+
39
+ .. contents::
40
+ :local:
41
+
42
+ Usage
43
+ =====
44
+
45
+ Go on an attribute set and fill in the section 'Completeness'.
46
+ Select the fields you want to take in account and set them their proportion on the completeness rate.
47
+ Then on the model linked to the attribute set you'll get 2 fields: completion rate and completion state
48
+
49
+ Bug Tracker
50
+ ===========
51
+
52
+ Bugs are tracked on `GitHub Issues <https://github.com/OCA/odoo-pim/issues>`_.
53
+ In case of trouble, please check there if your issue has already been reported.
54
+ If you spotted it first, help us to smash it by providing a detailed and welcomed
55
+ `feedback <https://github.com/OCA/odoo-pim/issues/new?body=module:%20attribute_set_completeness%0Aversion:%2016.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
56
+
57
+ Do not contact contributors directly about support or help with technical issues.
58
+
59
+ Credits
60
+ =======
61
+
62
+ Authors
63
+ ~~~~~~~
64
+
65
+ * ACSONE SA/NV
66
+
67
+ Contributors
68
+ ~~~~~~~~~~~~
69
+
70
+ * Cédric PIGEON <cedric.pigeon@acsone.eu>
71
+ * Xavier Bouquiaux <xavier.bouquiaux@acsone.eu>
72
+ * `Camptocamp <https://www.camptocamp.com>`_
73
+
74
+ * Iván Todorovich <ivan.todorovich@gmail.com>
75
+
76
+ * Dhara Solanki <dhara.solanki@initos.com>
77
+ * `Heliconia Solutions Pvt. Ltd. <https://www.heliconia.io>`_
78
+
79
+ * Bhavesh Heliconia
80
+
81
+ Maintainers
82
+ ~~~~~~~~~~~
83
+
84
+ This module is maintained by the OCA.
85
+
86
+ .. image:: https://odoo-community.org/logo.png
87
+ :alt: Odoo Community Association
88
+ :target: https://odoo-community.org
89
+
90
+ OCA, or the Odoo Community Association, is a nonprofit organization whose
91
+ mission is to support the collaborative development of Odoo features and
92
+ promote its widespread use.
93
+
94
+ This module is part of the `OCA/odoo-pim <https://github.com/OCA/odoo-pim/tree/16.0/attribute_set_completeness>`_ project on GitHub.
95
+
96
+ You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
@@ -0,0 +1,2 @@
1
+ from . import components
2
+ from . import models
@@ -0,0 +1,17 @@
1
+ # Copyright 2020 ACSONE SA/NV
2
+ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
3
+
4
+ {
5
+ "name": "Attribute Set Completeness",
6
+ "version": "16.0.1.0.0",
7
+ "license": "AGPL-3",
8
+ "author": "ACSONE SA/NV, Odoo Community Association (OCA)",
9
+ "website": "https://github.com/OCA/odoo-pim",
10
+ "depends": ["attribute_set", "component_event"],
11
+ "data": [
12
+ "views/attribute_set.xml",
13
+ "security/attribute_set_completeness.xml",
14
+ "views/attribute_set_completeness.xml",
15
+ ],
16
+ "demo": [],
17
+ }
@@ -0,0 +1,3 @@
1
+ # Copyright 2020 ACSONE SA/NV (<http://acsone.eu>)
2
+ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
3
+ from . import attribute_set_owner_event_listener
@@ -0,0 +1,31 @@
1
+ # Copyright 2020 ACSONE SA/NV (<http://acsone.eu>)
2
+ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
3
+
4
+ from odoo.addons.component.core import AbstractComponent
5
+ from odoo.addons.component_event import skip_if
6
+
7
+
8
+ class AttributeSetOwnerEventListener(AbstractComponent):
9
+ _name = "attribute.set.owner.event.listener"
10
+ _inherit = "base.event.listener"
11
+
12
+ def _get_skip_if_condition_fields(self, record):
13
+ """Return the field names that trigger the condition"""
14
+ attribute_set = record.attribute_set_id
15
+ attribute_set_completeness = attribute_set.attribute_set_completeness_ids
16
+ field_names = attribute_set_completeness.mapped("field_id.name")
17
+ field_names.append("attribute_set_id")
18
+ return field_names
19
+
20
+ def _get_skip_if_condition(self, record, **kwargs):
21
+ if not record.attribute_set_id:
22
+ return True
23
+ if set(self._get_skip_if_condition_fields(record)) & set(kwargs["fields"]):
24
+ return False
25
+ return True
26
+
27
+ @skip_if(
28
+ lambda self, record, **kwargs: self._get_skip_if_condition(record, **kwargs)
29
+ )
30
+ def on_record_write(self, record, fields=None):
31
+ record._compute_attribute_set_completed_ids()
@@ -0,0 +1,167 @@
1
+ # Translation of Odoo Server.
2
+ # This file contains the translation of the following modules:
3
+ # * attribute_set_completeness
4
+ #
5
+ msgid ""
6
+ msgstr ""
7
+ "Project-Id-Version: Odoo Server 16.0\n"
8
+ "Report-Msgid-Bugs-To: \n"
9
+ "Last-Translator: \n"
10
+ "Language-Team: \n"
11
+ "MIME-Version: 1.0\n"
12
+ "Content-Type: text/plain; charset=UTF-8\n"
13
+ "Content-Transfer-Encoding: \n"
14
+ "Plural-Forms: \n"
15
+
16
+ #. module: attribute_set_completeness
17
+ #: model:ir.model,name:attribute_set_completeness.model_attribute_set
18
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_completeness__attribute_set_id
19
+ msgid "Attribute Set"
20
+ msgstr ""
21
+
22
+ #. module: attribute_set_completeness
23
+ #: model:ir.model,name:attribute_set_completeness.model_attribute_set_completeness
24
+ msgid "Attribute Set Completeness"
25
+ msgstr ""
26
+
27
+ #. module: attribute_set_completeness
28
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_owner_mixin__attribute_set_completion_rate
29
+ msgid "Attribute Set Completion Rate"
30
+ msgstr ""
31
+
32
+ #. module: attribute_set_completeness
33
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_owner_mixin__attribute_set_completion_state
34
+ msgid "Attribute Set Completion State"
35
+ msgstr ""
36
+
37
+ #. module: attribute_set_completeness
38
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_owner_mixin__attribute_set_completed_ids
39
+ msgid "Attribute Set completed criterias"
40
+ msgstr ""
41
+
42
+ #. module: attribute_set_completeness
43
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_owner_mixin__attribute_set_not_completed_ids
44
+ msgid "Attribute Set not completed criterias"
45
+ msgstr ""
46
+
47
+ #. module: attribute_set_completeness
48
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_completeness__available_field_ids
49
+ msgid "Attribute Set's fields"
50
+ msgstr ""
51
+
52
+ #. module: attribute_set_completeness
53
+ #: model:ir.model.fields,help:attribute_set_completeness.field_attribute_set_owner_mixin__attribute_set_completion_rate
54
+ msgid "Attribute set completeness percentage"
55
+ msgstr ""
56
+
57
+ #. module: attribute_set_completeness
58
+ #: model:ir.model.fields,help:attribute_set_completeness.field_attribute_set_owner_mixin__attribute_set_completion_state
59
+ msgid "Attribute set completeness status"
60
+ msgstr ""
61
+
62
+ #. module: attribute_set_completeness
63
+ #: model:ir.model,name:attribute_set_completeness.model_attribute_set_owner_mixin
64
+ msgid "Attribute set owner mixin"
65
+ msgstr ""
66
+
67
+ #. module: attribute_set_completeness
68
+ #: model_terms:ir.ui.view,arch_db:attribute_set_completeness.attribute_set_form_view
69
+ msgid "COMPLETNESS"
70
+ msgstr ""
71
+
72
+ #. module: attribute_set_completeness
73
+ #: model:ir.model.fields.selection,name:attribute_set_completeness.selection__attribute_set_owner_mixin__attribute_set_completion_state__complete
74
+ #: model:ir.model.fields.selection,name:attribute_set_completeness.selection__product_product__attribute_set_completion_state__complete
75
+ #: model:ir.model.fields.selection,name:attribute_set_completeness.selection__product_template__attribute_set_completion_state__complete
76
+ msgid "Complete"
77
+ msgstr ""
78
+
79
+ #. module: attribute_set_completeness
80
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set__attribute_set_completeness_ids
81
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_owner_mixin__attribute_set_completeness_ids
82
+ msgid "Completeness Requirements"
83
+ msgstr ""
84
+
85
+ #. module: attribute_set_completeness
86
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_completeness__completion_rate
87
+ msgid "Completion Rate"
88
+ msgstr ""
89
+
90
+ #. module: attribute_set_completeness
91
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_completeness__completion_rate_progress
92
+ msgid "Completion Rate Progress"
93
+ msgstr ""
94
+
95
+ #. module: attribute_set_completeness
96
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_completeness__create_uid
97
+ msgid "Created by"
98
+ msgstr ""
99
+
100
+ #. module: attribute_set_completeness
101
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_completeness__create_date
102
+ msgid "Created on"
103
+ msgstr ""
104
+
105
+ #. module: attribute_set_completeness
106
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_completeness__display_name
107
+ msgid "Display Name"
108
+ msgstr ""
109
+
110
+ #. module: attribute_set_completeness
111
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_completeness__field_description
112
+ msgid "Field Description"
113
+ msgstr ""
114
+
115
+ #. module: attribute_set_completeness
116
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_completeness__field_id
117
+ msgid "Field Name"
118
+ msgstr ""
119
+
120
+ #. module: attribute_set_completeness
121
+ #: model:ir.model.fields,help:attribute_set_completeness.field_attribute_set_completeness__available_field_ids
122
+ msgid "Fields related to the Attribute set's attributes"
123
+ msgstr ""
124
+
125
+ #. module: attribute_set_completeness
126
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_completeness__id
127
+ msgid "ID"
128
+ msgstr ""
129
+
130
+ #. module: attribute_set_completeness
131
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_completeness____last_update
132
+ msgid "Last Modified on"
133
+ msgstr ""
134
+
135
+ #. module: attribute_set_completeness
136
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_completeness__write_uid
137
+ msgid "Last Updated by"
138
+ msgstr ""
139
+
140
+ #. module: attribute_set_completeness
141
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_completeness__write_date
142
+ msgid "Last Updated on"
143
+ msgstr ""
144
+
145
+ #. module: attribute_set_completeness
146
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_completeness__model_id
147
+ msgid "Model"
148
+ msgstr ""
149
+
150
+ #. module: attribute_set_completeness
151
+ #: model:ir.model.fields.selection,name:attribute_set_completeness.selection__attribute_set_owner_mixin__attribute_set_completion_state__not_complete
152
+ #: model:ir.model.fields.selection,name:attribute_set_completeness.selection__product_product__attribute_set_completion_state__not_complete
153
+ #: model:ir.model.fields.selection,name:attribute_set_completeness.selection__product_template__attribute_set_completion_state__not_complete
154
+ msgid "Not complete"
155
+ msgstr ""
156
+
157
+ #. module: attribute_set_completeness
158
+ #: model_terms:ir.ui.view,arch_db:attribute_set_completeness.attribute_set_completeness_tree_view
159
+ msgid "Total"
160
+ msgstr ""
161
+
162
+ #. module: attribute_set_completeness
163
+ #. odoo-python
164
+ #: code:addons/attribute_set_completeness/models/attribute_set.py:0
165
+ #, python-format
166
+ msgid "Total of completion rate must be 100 %"
167
+ msgstr ""
@@ -0,0 +1,50 @@
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: ametras-xsolutions\n"
4
+ "Report-Msgid-Bugs-To: \n"
5
+ "Last-Translator: \n"
6
+ "Language-Team: German\n"
7
+ "MIME-Version: 1.0\n"
8
+ "Content-Type: text/plain; charset=UTF-8\n"
9
+ "Content-Transfer-Encoding: \n"
10
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
11
+ "X-Crowdin-Project: ametras-xsolutions\n"
12
+ "X-Crowdin-Project-ID: 530964\n"
13
+ "X-Crowdin-Language: de\n"
14
+ "X-Crowdin-File: /[AmetrasIntelligence.oca-migrated] 16.0/attribute_set_completeness/i18n/attribute_set_completeness.pot\n"
15
+ "X-Crowdin-File-ID: 21354\n"
16
+ "Language: de_DE\n"
17
+ "PO-Revision-Date: 2024-09-25 12:08\n"
18
+
19
+ #. module: attribute_set_completeness
20
+ #: model:ir.model,name:attribute_set_completeness.model_attribute_set
21
+ msgid "Attribute Set"
22
+ msgstr ""
23
+
24
+ #. module: attribute_set_completeness
25
+ #: model:ir.model,name:attribute_set_completeness.model_attribute_set_completeness
26
+ msgid "Attribute Set Completeness"
27
+ msgstr ""
28
+
29
+ #. module: attribute_set_completeness
30
+ #: model:ir.model,name:attribute_set_completeness.model_attribute_set_owner_mixin
31
+ msgid "Attribute set owner mixin"
32
+ msgstr ""
33
+
34
+ #. module: attribute_set_completeness
35
+ #: model_terms:ir.ui.view,arch_db:attribute_set_completeness.attribute_set_form_view
36
+ msgid "COMPLETNESS"
37
+ msgstr ""
38
+
39
+ #. module: attribute_set_completeness
40
+ #: model:ir.model.fields.selection,name:attribute_set_completeness.selection__attribute_set_owner_mixin__attribute_set_completion_state__complete
41
+ #: model:ir.model.fields.selection,name:attribute_set_completeness.selection__product_product__attribute_set_completion_state__complete
42
+ #: model:ir.model.fields.selection,name:attribute_set_completeness.selection__product_template__attribute_set_completion_state__complete
43
+ msgid "Complete"
44
+ msgstr ""
45
+
46
+ #. module: attribute_set_completeness
47
+ #: model_terms:ir.ui.view,arch_db:attribute_set_completeness.attribute_set_completeness_tree_view
48
+ msgid "Total"
49
+ msgstr ""
50
+
@@ -0,0 +1,173 @@
1
+ # Translation of Odoo Server.
2
+ # This file contains the translation of the following modules:
3
+ # * attribute_set_completeness
4
+ #
5
+ msgid ""
6
+ msgstr ""
7
+ "Project-Id-Version: Odoo Server 14.0\n"
8
+ "Report-Msgid-Bugs-To: \n"
9
+ "PO-Revision-Date: 2024-03-27 18:34+0000\n"
10
+ "Last-Translator: Ivorra78 <informatica@totmaterial.es>\n"
11
+ "Language-Team: none\n"
12
+ "Language: es\n"
13
+ "MIME-Version: 1.0\n"
14
+ "Content-Type: text/plain; charset=UTF-8\n"
15
+ "Content-Transfer-Encoding: \n"
16
+ "Plural-Forms: nplurals=2; plural=n != 1;\n"
17
+ "X-Generator: Weblate 4.17\n"
18
+
19
+ #. module: attribute_set_completeness
20
+ #: model:ir.model,name:attribute_set_completeness.model_attribute_set
21
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_completeness__attribute_set_id
22
+ msgid "Attribute Set"
23
+ msgstr "Conjunto de atributos"
24
+
25
+ #. module: attribute_set_completeness
26
+ #: model:ir.model,name:attribute_set_completeness.model_attribute_set_completeness
27
+ msgid "Attribute Set Completeness"
28
+ msgstr "Completitud del Conjunto de Atributos"
29
+
30
+ #. module: attribute_set_completeness
31
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_owner_mixin__attribute_set_completion_rate
32
+ msgid "Attribute Set Completion Rate"
33
+ msgstr "Tasa de cumplimentación del conjunto de atributos"
34
+
35
+ #. module: attribute_set_completeness
36
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_owner_mixin__attribute_set_completion_state
37
+ msgid "Attribute Set Completion State"
38
+ msgstr "Estado de finalización del conjunto de atributos"
39
+
40
+ #. module: attribute_set_completeness
41
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_owner_mixin__attribute_set_completed_ids
42
+ msgid "Attribute Set completed criterias"
43
+ msgstr "Conjunto de atributos Criterios completados"
44
+
45
+ #. module: attribute_set_completeness
46
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_owner_mixin__attribute_set_not_completed_ids
47
+ msgid "Attribute Set not completed criterias"
48
+ msgstr "Conjunto de atributos criterios no cumplidos"
49
+
50
+ #. module: attribute_set_completeness
51
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_completeness__available_field_ids
52
+ msgid "Attribute Set's fields"
53
+ msgstr "Campos del Conjunto de Atributos"
54
+
55
+ #. module: attribute_set_completeness
56
+ #: model:ir.model.fields,help:attribute_set_completeness.field_attribute_set_owner_mixin__attribute_set_completion_rate
57
+ msgid "Attribute set completeness percentage"
58
+ msgstr "Porcentaje de integridad del conjunto de atributos"
59
+
60
+ #. module: attribute_set_completeness
61
+ #: model:ir.model.fields,help:attribute_set_completeness.field_attribute_set_owner_mixin__attribute_set_completion_state
62
+ msgid "Attribute set completeness status"
63
+ msgstr "Estado de integridad del conjunto de atributos"
64
+
65
+ #. module: attribute_set_completeness
66
+ #: model:ir.model,name:attribute_set_completeness.model_attribute_set_owner_mixin
67
+ msgid "Attribute set owner mixin"
68
+ msgstr "Mezcla de propietarios de conjuntos de atributos"
69
+
70
+ #. module: attribute_set_completeness
71
+ #: model:ir.model.fields.selection,name:attribute_set_completeness.selection__attribute_set_owner_mixin__attribute_set_completion_state__complete
72
+ #: model:ir.model.fields.selection,name:attribute_set_completeness.selection__product_template__attribute_set_completion_state__complete
73
+ msgid "Complete"
74
+ msgstr "Completo"
75
+
76
+ #. module: attribute_set_completeness
77
+ #: model_terms:ir.ui.view,arch_db:attribute_set_completeness.attribute_set_form_view
78
+ msgid "Completeness"
79
+ msgstr "Integridad"
80
+
81
+ #. module: attribute_set_completeness
82
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set__attribute_set_completeness_ids
83
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_owner_mixin__attribute_set_completeness_ids
84
+ msgid "Completeness Requirements"
85
+ msgstr "Requisitos de Integridad"
86
+
87
+ #. module: attribute_set_completeness
88
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_completeness__completion_rate
89
+ msgid "Completion Rate"
90
+ msgstr "Tasa de cumplimiento"
91
+
92
+ #. module: attribute_set_completeness
93
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_completeness__completion_rate_progress
94
+ msgid "Completion Rate Progress"
95
+ msgstr "Tasa de finalización Progreso"
96
+
97
+ #. module: attribute_set_completeness
98
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_completeness__create_uid
99
+ msgid "Created by"
100
+ msgstr "Creado por"
101
+
102
+ #. module: attribute_set_completeness
103
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_completeness__create_date
104
+ msgid "Created on"
105
+ msgstr "Creado el"
106
+
107
+ #. module: attribute_set_completeness
108
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set__display_name
109
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_completeness__display_name
110
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_owner_mixin__display_name
111
+ msgid "Display Name"
112
+ msgstr "Mostrar nombre"
113
+
114
+ #. module: attribute_set_completeness
115
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_completeness__field_description
116
+ msgid "Field Description"
117
+ msgstr "Descripción del campo"
118
+
119
+ #. module: attribute_set_completeness
120
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_completeness__field_id
121
+ msgid "Field Name"
122
+ msgstr "Nombre de Campo"
123
+
124
+ #. module: attribute_set_completeness
125
+ #: model:ir.model.fields,help:attribute_set_completeness.field_attribute_set_completeness__available_field_ids
126
+ msgid "Fields related to the Attribute set's attributes"
127
+ msgstr "Campos relacionados con los atributos del conjunto de atributos"
128
+
129
+ #. module: attribute_set_completeness
130
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set__id
131
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_completeness__id
132
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_owner_mixin__id
133
+ msgid "ID"
134
+ msgstr "ID (identificación)"
135
+
136
+ #. module: attribute_set_completeness
137
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set____last_update
138
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_completeness____last_update
139
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_owner_mixin____last_update
140
+ msgid "Last Modified on"
141
+ msgstr "Última Modificación el"
142
+
143
+ #. module: attribute_set_completeness
144
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_completeness__write_uid
145
+ msgid "Last Updated by"
146
+ msgstr "Última actualización por"
147
+
148
+ #. module: attribute_set_completeness
149
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_completeness__write_date
150
+ msgid "Last Updated on"
151
+ msgstr "Última Actualización el"
152
+
153
+ #. module: attribute_set_completeness
154
+ #: model:ir.model.fields,field_description:attribute_set_completeness.field_attribute_set_completeness__model_id
155
+ msgid "Model"
156
+ msgstr "Modelo"
157
+
158
+ #. module: attribute_set_completeness
159
+ #: model:ir.model.fields.selection,name:attribute_set_completeness.selection__attribute_set_owner_mixin__attribute_set_completion_state__not_complete
160
+ #: model:ir.model.fields.selection,name:attribute_set_completeness.selection__product_template__attribute_set_completion_state__not_complete
161
+ msgid "Not complete"
162
+ msgstr "No completo"
163
+
164
+ #. module: attribute_set_completeness
165
+ #: model_terms:ir.ui.view,arch_db:attribute_set_completeness.attribute_set_completeness_tree_view
166
+ msgid "Total"
167
+ msgstr "Total"
168
+
169
+ #. module: attribute_set_completeness
170
+ #: code:addons/attribute_set_completeness/models/attribute_set.py:0
171
+ #, python-format
172
+ msgid "Total of completion rate must be 100 %"
173
+ msgstr "El porcentaje total de finalización debe ser del 100 %"
@@ -0,0 +1,50 @@
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: ametras-xsolutions\n"
4
+ "Report-Msgid-Bugs-To: \n"
5
+ "Last-Translator: \n"
6
+ "Language-Team: French\n"
7
+ "MIME-Version: 1.0\n"
8
+ "Content-Type: text/plain; charset=UTF-8\n"
9
+ "Content-Transfer-Encoding: \n"
10
+ "Plural-Forms: nplurals=2; plural=(n > 1);\n"
11
+ "X-Crowdin-Project: ametras-xsolutions\n"
12
+ "X-Crowdin-Project-ID: 530964\n"
13
+ "X-Crowdin-Language: fr\n"
14
+ "X-Crowdin-File: /[AmetrasIntelligence.oca-migrated] 16.0/attribute_set_completeness/i18n/attribute_set_completeness.pot\n"
15
+ "X-Crowdin-File-ID: 21354\n"
16
+ "Language: fr_FR\n"
17
+ "PO-Revision-Date: 2024-09-25 12:08\n"
18
+
19
+ #. module: attribute_set_completeness
20
+ #: model:ir.model,name:attribute_set_completeness.model_attribute_set
21
+ msgid "Attribute Set"
22
+ msgstr ""
23
+
24
+ #. module: attribute_set_completeness
25
+ #: model:ir.model,name:attribute_set_completeness.model_attribute_set_completeness
26
+ msgid "Attribute Set Completeness"
27
+ msgstr ""
28
+
29
+ #. module: attribute_set_completeness
30
+ #: model:ir.model,name:attribute_set_completeness.model_attribute_set_owner_mixin
31
+ msgid "Attribute set owner mixin"
32
+ msgstr ""
33
+
34
+ #. module: attribute_set_completeness
35
+ #: model_terms:ir.ui.view,arch_db:attribute_set_completeness.attribute_set_form_view
36
+ msgid "COMPLETNESS"
37
+ msgstr ""
38
+
39
+ #. module: attribute_set_completeness
40
+ #: model:ir.model.fields.selection,name:attribute_set_completeness.selection__attribute_set_owner_mixin__attribute_set_completion_state__complete
41
+ #: model:ir.model.fields.selection,name:attribute_set_completeness.selection__product_product__attribute_set_completion_state__complete
42
+ #: model:ir.model.fields.selection,name:attribute_set_completeness.selection__product_template__attribute_set_completion_state__complete
43
+ msgid "Complete"
44
+ msgstr ""
45
+
46
+ #. module: attribute_set_completeness
47
+ #: model_terms:ir.ui.view,arch_db:attribute_set_completeness.attribute_set_completeness_tree_view
48
+ msgid "Total"
49
+ msgstr ""
50
+
@@ -0,0 +1,3 @@
1
+ from . import attribute_set_completeness
2
+ from . import attribute_set
3
+ from . import attribute_set_owner_mixin
@@ -0,0 +1,25 @@
1
+ # Copyright 2020 ACSONE SA/NV
2
+ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
3
+
4
+ from odoo import _, api, fields, models
5
+ from odoo.exceptions import ValidationError
6
+
7
+
8
+ class AttributeSet(models.Model):
9
+ _inherit = "attribute.set"
10
+
11
+ attribute_set_completeness_ids = fields.One2many(
12
+ comodel_name="attribute.set.completeness",
13
+ inverse_name="attribute_set_id",
14
+ string="Completeness Requirements",
15
+ auto_join=True,
16
+ )
17
+
18
+ @api.constrains("attribute_set_completeness_ids")
19
+ def _check_attribute_set_completeness_ids(self):
20
+ for attr_set in self:
21
+ completion_config = attr_set.attribute_set_completeness_ids
22
+ if completion_config:
23
+ total = sum([rule.completion_rate for rule in completion_config])
24
+ if total != 100.0:
25
+ raise ValidationError(_("Total of completion rate must be 100 %"))
@@ -0,0 +1,45 @@
1
+ # Copyright 2020 ACSONE SA/NV
2
+ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
3
+
4
+ from odoo import api, fields, models
5
+
6
+
7
+ class AttributeSetCompleteness(models.Model):
8
+ _name = "attribute.set.completeness"
9
+ _description = "Attribute Set Completeness"
10
+ _rec_name = "field_id"
11
+
12
+ attribute_set_id = fields.Many2one(
13
+ "attribute.set", required=True, ondelete="cascade"
14
+ )
15
+ available_field_ids = fields.Many2many(
16
+ string="Attribute Set's fields",
17
+ comodel_name="ir.model.fields",
18
+ compute="_compute_available_field_ids",
19
+ help="Fields related to the Attribute set's attributes",
20
+ )
21
+ field_id = fields.Many2one(
22
+ "ir.model.fields", "Field Name", required=True, ondelete="cascade"
23
+ )
24
+ field_description = fields.Char(
25
+ related="field_id.field_description",
26
+ string="Field Description",
27
+ store=True,
28
+ readonly=True,
29
+ )
30
+ completion_rate = fields.Float()
31
+ completion_rate_progress = fields.Float(
32
+ string="Completion Rate Progress", related="completion_rate", readonly=True
33
+ )
34
+ model_id = fields.Many2one(related="attribute_set_id.model_id", readonly=True)
35
+
36
+ @api.depends("attribute_set_id")
37
+ def _compute_available_field_ids(self):
38
+ for rec in self:
39
+ att_set_field_ids = rec.attribute_set_id.attribute_ids.mapped("field_id")
40
+ att_set_complete_ids = rec.attribute_set_id.attribute_set_completeness_ids
41
+ choosen_field_ids = att_set_complete_ids.mapped("field_id")
42
+ rec.available_field_ids = att_set_field_ids - choosen_field_ids
43
+
44
+ def name_get(self):
45
+ return [(rec.id, rec.field_id.field_description) for rec in self]