From 2448e3f7e5fb38f793c34b886a5d3e10e6f5fa09 Mon Sep 17 00:00:00 2001
From: Mayank Gosai
Date: Fri, 13 Dec 2019 18:33:27 -0500
Subject: [PATCH 01/39] [ADD] 12.0 Sale Tier Validation module added
---
sale_tier_validation/README.rst | 84 ++++++++++++++++
sale_tier_validation/__init__.py | 3 +
sale_tier_validation/__manifest__.py | 21 ++++
sale_tier_validation/i18n/es.po | 91 ++++++++++++++++++
.../i18n/sale_tier_validation.pot | 81 ++++++++++++++++
sale_tier_validation/i18n/zh_CN.po | 85 ++++++++++++++++
sale_tier_validation/models/__init__.py | 5 +
sale_tier_validation/models/sale_order.py | 11 +++
.../models/tier_definition.py | 14 +++
.../static/description/icon.png | Bin 0 -> 9455 bytes
.../views/sale_order_view.xml | 83 ++++++++++++++++
11 files changed, 478 insertions(+)
create mode 100644 sale_tier_validation/README.rst
create mode 100644 sale_tier_validation/__init__.py
create mode 100644 sale_tier_validation/__manifest__.py
create mode 100644 sale_tier_validation/i18n/es.po
create mode 100644 sale_tier_validation/i18n/sale_tier_validation.pot
create mode 100644 sale_tier_validation/i18n/zh_CN.po
create mode 100644 sale_tier_validation/models/__init__.py
create mode 100644 sale_tier_validation/models/sale_order.py
create mode 100644 sale_tier_validation/models/tier_definition.py
create mode 100644 sale_tier_validation/static/description/icon.png
create mode 100644 sale_tier_validation/views/sale_order_view.xml
diff --git a/sale_tier_validation/README.rst b/sale_tier_validation/README.rst
new file mode 100644
index 000000000..a4f4135e3
--- /dev/null
+++ b/sale_tier_validation/README.rst
@@ -0,0 +1,84 @@
+.. image:: https://img.shields.io/badge/license-AGPL--3-blue.png
+ :target: https://www.gnu.org/licenses/agpl
+ :alt: License: AGPL-3
+
+====================
+Sale Tier Validation
+====================
+
+This module extends the functionality of Sale Orders to support a tier
+validation process.
+
+Installation
+============
+
+This module depends on ``base_tier_validation``. You can find it at
+`OCA/server-ux `_
+
+Configuration
+=============
+
+To configure this module, you need to:
+
+#. Go to *Settings > Technical > Tier Validations > Tier Definition*.
+#. Create as many tiers as you want for Sale Order model.
+
+Usage
+=====
+
+To use this module, you need to:
+
+#. Create a Sale Order triggering at least one "Tier Definition".
+#. Click on *Request Validation* button.
+#. Under the tab *Reviews* have a look to pending reviews and their statuses.
+#. Once all reviews are validated click on *Confirm Order*.
+
+Additional features:
+
+* You can filter the SOs requesting your review through the filter *Needs my
+ Review*.
+* User with rights to confirm the SO (validate all tiers that would
+ be generated) can directly do the operation, this is, there is no need for
+ her/him to request a validation.
+
+.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas
+ :alt: Try me on Runbot
+ :target: https://runbot.odoo-community.org/runbot/142/11.0
+
+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.
+
+Credits
+=======
+
+Images
+------
+
+* Odoo Community Association: `Icon `_.
+
+Contributors
+------------
+
+* Mayank Gosai
+
+Do not contact contributors directly about support or help with technical issues.
+
+Maintainer
+----------
+
+.. image:: https://odoo-community.org/logo.png
+ :alt: Odoo Community Association
+ :target: https://odoo-community.org
+
+This module is maintained by the OCA.
+
+OCA, or the Odoo Community Association, is a nonprofit organization whose
+mission is to support the collaborative development of Odoo features and
+promote its widespread use.
+
+To contribute to this module, please visit https://odoo-community.org.
diff --git a/sale_tier_validation/__init__.py b/sale_tier_validation/__init__.py
new file mode 100644
index 000000000..31660d6a9
--- /dev/null
+++ b/sale_tier_validation/__init__.py
@@ -0,0 +1,3 @@
+# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
+
+from . import models
diff --git a/sale_tier_validation/__manifest__.py b/sale_tier_validation/__manifest__.py
new file mode 100644
index 000000000..33e9074c6
--- /dev/null
+++ b/sale_tier_validation/__manifest__.py
@@ -0,0 +1,21 @@
+# Copyright 2019 Open Source Integrators
+# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
+{
+ "name": "Sale Tier Validation",
+ "summary": "Extends the functionality of Sale Orders to "
+ "support a tier validation process.",
+ "version": "12.0.1.0.0",
+ "category": "Sale",
+ "website": "https://github.com/OCA/sale-workflow",
+ "author": "Open Source Integrators, Odoo Community Association (OCA)",
+ "license": "AGPL-3",
+ "application": False,
+ "installable": True,
+ "depends": [
+ "sale",
+ "base_tier_validation",
+ ],
+ "data": [
+ "views/sale_order_view.xml",
+ ],
+}
diff --git a/sale_tier_validation/i18n/es.po b/sale_tier_validation/i18n/es.po
new file mode 100644
index 000000000..4e4cac858
--- /dev/null
+++ b/sale_tier_validation/i18n/es.po
@@ -0,0 +1,91 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * sale_tier_validation
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 12.0\n"
+"Report-Msgid-Bugs-To: \n"
+"SO-Revision-Date: 2019-05-08 12:03+0000\n"
+"Last-Translator: Enric Tobella \n"
+"Language-Team: none\n"
+"Language: es\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 3.5.1\n"
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+msgid ""
+" This SO needs to be\n"
+" validated."
+msgstr ""
+" Esta SO debe ser\n"
+" validada."
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+msgid " Operation has been rejected ."
+msgstr " La operación ha sido rechazada ."
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+msgid " Operation has been validated !"
+msgstr " La operación ha sido validada !"
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
+msgid "My sales to review"
+msgstr "Mis Compras a revisar"
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
+msgid "Needs my Review"
+msgstr "Necesita mi Revisión"
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
+msgid "SOs validated and ready to be confirmed"
+msgstr "SOs validadas y preparadas para ser confirmadas"
+
+#. module: sale_tier_validation
+#: model:ir.model,name:sale_tier_validation.model_sale_order
+msgid "sale Order"
+msgstr "Orden de Compra"
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+msgid "Reject"
+msgstr "Rechazar"
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+msgid "Request Validation"
+msgstr "Solicitar Validación"
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+msgid "Restart Validation"
+msgstr "Reiniciar Validación"
+
+#. module: sale_tier_validation
+#: model:ir.model,name:sale_tier_validation.model_tier_definition
+#, fuzzy
+#| msgid "tier.definition"
+msgid "Tier Definition"
+msgstr "tier.definition"
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+msgid "Validate"
+msgstr "Validar"
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
+msgid "Validated"
+msgstr "Validada"
+
+#~ msgid "Reviews"
+#~ msgstr "Revisiones"
diff --git a/sale_tier_validation/i18n/sale_tier_validation.pot b/sale_tier_validation/i18n/sale_tier_validation.pot
new file mode 100644
index 000000000..2bab776ff
--- /dev/null
+++ b/sale_tier_validation/i18n/sale_tier_validation.pot
@@ -0,0 +1,81 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * sale_tier_validation
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 12.0\n"
+"Report-Msgid-Bugs-To: \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: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+msgid " This SO needs to be\n"
+" validated."
+msgstr ""
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+msgid " Operation has been rejected ."
+msgstr ""
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+msgid " Operation has been validated !"
+msgstr ""
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
+msgid "My Purchases to review"
+msgstr ""
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
+msgid "Needs my Review"
+msgstr ""
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
+msgid "SOs validated and ready to be confirmed"
+msgstr ""
+
+#. module: sale_tier_validation
+#: model:ir.model,name:sale_tier_validation.model_sale_order
+msgid "Sale Order"
+msgstr ""
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+msgid "Reject"
+msgstr ""
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+msgid "Request Validation"
+msgstr ""
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+msgid "Restart Validation"
+msgstr ""
+
+#. module: sale_tier_validation
+#: model:ir.model,name:sale_tier_validation.model_tier_definition
+msgid "Tier Definition"
+msgstr ""
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+msgid "Validate"
+msgstr ""
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
+msgid "Validated"
+msgstr ""
+
diff --git a/sale_tier_validation/i18n/zh_CN.po b/sale_tier_validation/i18n/zh_CN.po
new file mode 100644
index 000000000..15b9db614
--- /dev/null
+++ b/sale_tier_validation/i18n/zh_CN.po
@@ -0,0 +1,85 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * sale_tier_validation
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 12.0\n"
+"Report-Msgid-Bugs-To: \n"
+"SO-Revision-Date: 2019-09-02 19:23+0000\n"
+"Last-Translator: 黎伟杰 <674416404@qq.com>\n"
+"Language-Team: none\n"
+"Language: zh_CN\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Weblate 3.8\n"
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+msgid " This SO needs to be\n"
+" validated."
+msgstr ""
+" 这个采购订单需要\n"
+" 验证。"
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+msgid " Operation has been rejected ."
+msgstr " 操作已被拒绝 ."
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+msgid " Operation has been validated !"
+msgstr " 操作已被 验证 !"
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
+msgid "My Sales to review"
+msgstr "查看我的采购"
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
+msgid "Needs my Review"
+msgstr "需要我审查的"
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
+msgid "SOs validated and ready to be confirmed"
+msgstr "采购订单已验证,待确认"
+
+#. module: sale_tier_validation
+#: model:ir.model,name:sale_tier_validation.model_sale_order
+msgid "Sale Order"
+msgstr "采购订单"
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+msgid "Reject"
+msgstr "拒绝"
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+msgid "Request Validation"
+msgstr "请求验证"
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+msgid "Restart Validation"
+msgstr "重新启动验证"
+
+#. module: sale_tier_validation
+#: model:ir.model,name:sale_tier_validation.model_tier_definition
+msgid "Tier Definition"
+msgstr "层定义"
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+msgid "Validate"
+msgstr "验证"
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
+msgid "Validated"
+msgstr "已验证"
diff --git a/sale_tier_validation/models/__init__.py b/sale_tier_validation/models/__init__.py
new file mode 100644
index 000000000..551e600d1
--- /dev/null
+++ b/sale_tier_validation/models/__init__.py
@@ -0,0 +1,5 @@
+# Copyright 2019 Open Source Integrators
+# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
+
+from . import sale_order
+from . import tier_definition
diff --git a/sale_tier_validation/models/sale_order.py b/sale_tier_validation/models/sale_order.py
new file mode 100644
index 000000000..20e70b9a7
--- /dev/null
+++ b/sale_tier_validation/models/sale_order.py
@@ -0,0 +1,11 @@
+# Copyright 2019 Open Source Integrators
+# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
+
+from odoo import models
+
+
+class SaleOrder(models.Model):
+ _name = "sale.order"
+ _inherit = ['sale.order', 'tier.validation']
+ _state_from = ['draft', 'sent', 'to approve']
+ _state_to = ['sale', 'approved']
diff --git a/sale_tier_validation/models/tier_definition.py b/sale_tier_validation/models/tier_definition.py
new file mode 100644
index 000000000..e289fddc9
--- /dev/null
+++ b/sale_tier_validation/models/tier_definition.py
@@ -0,0 +1,14 @@
+# Copyright 2019 Open Source Integrators
+# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
+
+from odoo import api, models
+
+
+class TierDefinition(models.Model):
+ _inherit = "tier.definition"
+
+ @api.model
+ def _get_tier_validation_model_names(self):
+ res = super(TierDefinition, self)._get_tier_validation_model_names()
+ res.append("sale.order")
+ return res
diff --git a/sale_tier_validation/static/description/icon.png b/sale_tier_validation/static/description/icon.png
new file mode 100644
index 0000000000000000000000000000000000000000..3a0328b516c4980e8e44cdb63fd945757ddd132d
GIT binary patch
literal 9455
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
z
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
Xviia!U7SGha1wx#SCgwmn*{w2TRX*I
literal 0
HcmV?d00001
diff --git a/sale_tier_validation/views/sale_order_view.xml b/sale_tier_validation/views/sale_order_view.xml
new file mode 100644
index 000000000..e742656d7
--- /dev/null
+++ b/sale_tier_validation/views/sale_order_view.xml
@@ -0,0 +1,83 @@
+
+
+
+
+
+ sale.order.form - test
+ sale.order
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ sale.order.select - sale_tier_validation
+ sale.order
+
+
+
+
+
+
+
+
+
+
From b4405d18749296f2b9216801bde3b91e0f836493 Mon Sep 17 00:00:00 2001
From: Mayank Gosai <31255575+mgosai@users.noreply.github.com>
Date: Tue, 17 Dec 2019 10:39:14 -0500
Subject: [PATCH 02/39] updated version 11 to 12
---
sale_tier_validation/README.rst | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sale_tier_validation/README.rst b/sale_tier_validation/README.rst
index a4f4135e3..612adc6b9 100644
--- a/sale_tier_validation/README.rst
+++ b/sale_tier_validation/README.rst
@@ -43,7 +43,7 @@ Additional features:
.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas
:alt: Try me on Runbot
- :target: https://runbot.odoo-community.org/runbot/142/11.0
+ :target: https://runbot.odoo-community.org/runbot/142/12.0
Bug Tracker
===========
From d3077d5e41fbc77e782111fd4428ce4af746a9de Mon Sep 17 00:00:00 2001
From: Mayank Gosai <31255575+mgosai@users.noreply.github.com>
Date: Mon, 20 Jan 2020 09:35:38 -0500
Subject: [PATCH 03/39] Added dependency as requested
---
sale_tier_validation/__manifest__.py | 1 +
1 file changed, 1 insertion(+)
diff --git a/sale_tier_validation/__manifest__.py b/sale_tier_validation/__manifest__.py
index 33e9074c6..6e40c70ed 100644
--- a/sale_tier_validation/__manifest__.py
+++ b/sale_tier_validation/__manifest__.py
@@ -13,6 +13,7 @@
"installable": True,
"depends": [
"sale",
+ "server-ux",
"base_tier_validation",
],
"data": [
From a540f55eaab633704839f9ecaadd39db64664bfd Mon Sep 17 00:00:00 2001
From: Mayank Gosai <31255575+mgosai@users.noreply.github.com>
Date: Mon, 20 Jan 2020 11:42:00 -0500
Subject: [PATCH 04/39] Removed dependency and added to oca-dependencies.txt
---
sale_tier_validation/__manifest__.py | 1 -
sale_tier_validation/i18n/es.po | 42 ++++++++++---------
.../i18n/sale_tier_validation.pot | 30 ++++++-------
sale_tier_validation/i18n/zh_CN.po | 41 +++++++++---------
4 files changed, 59 insertions(+), 55 deletions(-)
diff --git a/sale_tier_validation/__manifest__.py b/sale_tier_validation/__manifest__.py
index 6e40c70ed..33e9074c6 100644
--- a/sale_tier_validation/__manifest__.py
+++ b/sale_tier_validation/__manifest__.py
@@ -13,7 +13,6 @@
"installable": True,
"depends": [
"sale",
- "server-ux",
"base_tier_validation",
],
"data": [
diff --git a/sale_tier_validation/i18n/es.po b/sale_tier_validation/i18n/es.po
index 4e4cac858..bb6ff5514 100644
--- a/sale_tier_validation/i18n/es.po
+++ b/sale_tier_validation/i18n/es.po
@@ -6,18 +6,18 @@ msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 12.0\n"
"Report-Msgid-Bugs-To: \n"
-"SO-Revision-Date: 2019-05-08 12:03+0000\n"
"Last-Translator: Enric Tobella \n"
"Language-Team: none\n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
+"SO-Revision-Date: 2019-05-08 12:03+0000\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 3.5.1\n"
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
msgid ""
" This SO needs to be\n"
" validated."
@@ -26,18 +26,20 @@ msgstr ""
" validada."
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
msgid " Operation has been rejected ."
msgstr " La operación ha sido rechazada ."
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
msgid " Operation has been validated !"
msgstr " La operación ha sido validada !"
#. module: sale_tier_validation
#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
-msgid "My sales to review"
+#, fuzzy
+#| msgid "My sales to review"
+msgid "My Sales to review"
msgstr "Mis Compras a revisar"
#. module: sale_tier_validation
@@ -46,30 +48,32 @@ msgid "Needs my Review"
msgstr "Necesita mi Revisión"
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
-msgid "SOs validated and ready to be confirmed"
-msgstr "SOs validadas y preparadas para ser confirmadas"
-
-#. module: sale_tier_validation
-#: model:ir.model,name:sale_tier_validation.model_sale_order
-msgid "sale Order"
-msgstr "Orden de Compra"
-
-#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
msgid "Reject"
msgstr "Rechazar"
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
msgid "Request Validation"
msgstr "Solicitar Validación"
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
msgid "Restart Validation"
msgstr "Reiniciar Validación"
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
+msgid "SOs validated and ready to be confirmed"
+msgstr "SOs validadas y preparadas para ser confirmadas"
+
+#. module: sale_tier_validation
+#: model:ir.model,name:sale_tier_validation.model_sale_order
+#, fuzzy
+#| msgid "sale Order"
+msgid "Sale Order"
+msgstr "Orden de Compra"
+
#. module: sale_tier_validation
#: model:ir.model,name:sale_tier_validation.model_tier_definition
#, fuzzy
@@ -78,7 +82,7 @@ msgid "Tier Definition"
msgstr "tier.definition"
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
msgid "Validate"
msgstr "Validar"
diff --git a/sale_tier_validation/i18n/sale_tier_validation.pot b/sale_tier_validation/i18n/sale_tier_validation.pot
index 2bab776ff..3463ab2f8 100644
--- a/sale_tier_validation/i18n/sale_tier_validation.pot
+++ b/sale_tier_validation/i18n/sale_tier_validation.pot
@@ -14,24 +14,24 @@ msgstr ""
"Plural-Forms: \n"
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
msgid " This SO needs to be\n"
" validated."
msgstr ""
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
msgid " Operation has been rejected ."
msgstr ""
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
msgid " Operation has been validated !"
msgstr ""
#. module: sale_tier_validation
#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
-msgid "My Purchases to review"
+msgid "My Sales to review"
msgstr ""
#. module: sale_tier_validation
@@ -40,28 +40,28 @@ msgid "Needs my Review"
msgstr ""
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
-msgid "SOs validated and ready to be confirmed"
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
+msgid "Reject"
msgstr ""
#. module: sale_tier_validation
-#: model:ir.model,name:sale_tier_validation.model_sale_order
-msgid "Sale Order"
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
+msgid "Request Validation"
msgstr ""
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
-msgid "Reject"
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
+msgid "Restart Validation"
msgstr ""
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
-msgid "Request Validation"
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
+msgid "SOs validated and ready to be confirmed"
msgstr ""
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
-msgid "Restart Validation"
+#: model:ir.model,name:sale_tier_validation.model_sale_order
+msgid "Sale Order"
msgstr ""
#. module: sale_tier_validation
@@ -70,7 +70,7 @@ msgid "Tier Definition"
msgstr ""
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
msgid "Validate"
msgstr ""
diff --git a/sale_tier_validation/i18n/zh_CN.po b/sale_tier_validation/i18n/zh_CN.po
index 15b9db614..8bb8bab69 100644
--- a/sale_tier_validation/i18n/zh_CN.po
+++ b/sale_tier_validation/i18n/zh_CN.po
@@ -1,36 +1,37 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
-# * sale_tier_validation
+# * sale_tier_validation
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 12.0\n"
"Report-Msgid-Bugs-To: \n"
-"SO-Revision-Date: 2019-09-02 19:23+0000\n"
"Last-Translator: 黎伟杰 <674416404@qq.com>\n"
"Language-Team: none\n"
"Language: zh_CN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
+"SO-Revision-Date: 2019-09-02 19:23+0000\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Weblate 3.8\n"
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
-msgid " This SO needs to be\n"
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
+msgid ""
+" This SO needs to be\n"
" validated."
msgstr ""
" 这个采购订单需要\n"
" 验证。"
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
msgid " Operation has been rejected ."
msgstr " 操作已被拒绝 ."
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
msgid " Operation has been validated !"
msgstr " 操作已被 验证 !"
@@ -45,37 +46,37 @@ msgid "Needs my Review"
msgstr "需要我审查的"
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
-msgid "SOs validated and ready to be confirmed"
-msgstr "采购订单已验证,待确认"
-
-#. module: sale_tier_validation
-#: model:ir.model,name:sale_tier_validation.model_sale_order
-msgid "Sale Order"
-msgstr "采购订单"
-
-#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
msgid "Reject"
msgstr "拒绝"
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
msgid "Request Validation"
msgstr "请求验证"
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
msgid "Restart Validation"
msgstr "重新启动验证"
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
+msgid "SOs validated and ready to be confirmed"
+msgstr "采购订单已验证,待确认"
+
+#. module: sale_tier_validation
+#: model:ir.model,name:sale_tier_validation.model_sale_order
+msgid "Sale Order"
+msgstr "采购订单"
+
#. module: sale_tier_validation
#: model:ir.model,name:sale_tier_validation.model_tier_definition
msgid "Tier Definition"
msgstr "层定义"
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
msgid "Validate"
msgstr "验证"
From cbf7190fa299512a5c51990e9cf56fd707cdab9f Mon Sep 17 00:00:00 2001
From: Sergio Teruel
Date: Mon, 25 May 2020 15:57:44 +0200
Subject: [PATCH 05/39] [IMP] sale_tier_validation: black, isort
---
sale_tier_validation/__manifest__.py | 11 +-
sale_tier_validation/models/sale_order.py | 6 +-
.../views/sale_order_view.xml | 119 +++++++++++-------
3 files changed, 77 insertions(+), 59 deletions(-)
diff --git a/sale_tier_validation/__manifest__.py b/sale_tier_validation/__manifest__.py
index 33e9074c6..0a9cd2602 100644
--- a/sale_tier_validation/__manifest__.py
+++ b/sale_tier_validation/__manifest__.py
@@ -3,7 +3,7 @@
{
"name": "Sale Tier Validation",
"summary": "Extends the functionality of Sale Orders to "
- "support a tier validation process.",
+ "support a tier validation process.",
"version": "12.0.1.0.0",
"category": "Sale",
"website": "https://github.com/OCA/sale-workflow",
@@ -11,11 +11,6 @@
"license": "AGPL-3",
"application": False,
"installable": True,
- "depends": [
- "sale",
- "base_tier_validation",
- ],
- "data": [
- "views/sale_order_view.xml",
- ],
+ "depends": ["sale", "base_tier_validation",],
+ "data": ["views/sale_order_view.xml",],
}
diff --git a/sale_tier_validation/models/sale_order.py b/sale_tier_validation/models/sale_order.py
index 20e70b9a7..428e1bbdc 100644
--- a/sale_tier_validation/models/sale_order.py
+++ b/sale_tier_validation/models/sale_order.py
@@ -6,6 +6,6 @@
class SaleOrder(models.Model):
_name = "sale.order"
- _inherit = ['sale.order', 'tier.validation']
- _state_from = ['draft', 'sent', 'to approve']
- _state_to = ['sale', 'approved']
+ _inherit = ["sale.order", "tier.validation"]
+ _state_from = ["draft", "sent", "to approve"]
+ _state_to = ["sale", "approved"]
diff --git a/sale_tier_validation/views/sale_order_view.xml b/sale_tier_validation/views/sale_order_view.xml
index e742656d7..e299c0c82 100644
--- a/sale_tier_validation/views/sale_order_view.xml
+++ b/sale_tier_validation/views/sale_order_view.xml
@@ -1,83 +1,106 @@
-
+
-
sale.order.form - test
sale.order
-
+
-
-
+
+ type="object"
+ />
Do not contact contributors directly about support or help with technical issues.
@@ -450,7 +450,7 @@
OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.
-
This module is part of the OCA/sale-workflow project on GitHub.
+
This module is part of the OCA/sale-workflow project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute .
diff --git a/sale_tier_validation/tests/test_tier_validation.py b/sale_tier_validation/tests/test_tier_validation.py
index 4c389364e..77f81cdd4 100644
--- a/sale_tier_validation/tests/test_tier_validation.py
+++ b/sale_tier_validation/tests/test_tier_validation.py
@@ -5,7 +5,7 @@
@tagged("-at_install", "post_install")
-class TestSaleTierValidation(common.SavepointCase):
+class TestSaleTierValidation(common.TransactionCase):
@classmethod
def setUpClass(cls):
super().setUpClass()
@@ -65,6 +65,7 @@ def test_validation_sale_order(self):
)
with self.assertRaises(ValidationError):
so.action_confirm()
+ so.order_line.price_unit = 45
so.request_validation()
so.with_user(self.test_user_1).validate_tier()
so.action_confirm()
From 6c0ebd0d4470e8125cce2e5b1fd36e3ca06fb230 Mon Sep 17 00:00:00 2001
From: sergio-teruel
Date: Mon, 20 Jun 2022 18:49:36 +0200
Subject: [PATCH 12/39] [IMP] sale_tier_validation: Make tests more resilient
---
sale_tier_validation/tests/test_tier_validation.py | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/sale_tier_validation/tests/test_tier_validation.py b/sale_tier_validation/tests/test_tier_validation.py
index 77f81cdd4..12fb1c80b 100644
--- a/sale_tier_validation/tests/test_tier_validation.py
+++ b/sale_tier_validation/tests/test_tier_validation.py
@@ -13,7 +13,10 @@ def setUpClass(cls):
cls.so_model = cls.env.ref("sale.model_sale_order")
# Create users
- group_ids = cls.env.ref("base.group_system").ids
+ group_ids = (
+ cls.env.ref("base.group_system")
+ + cls.env.ref("sales_team.group_sale_salesman_all_leads")
+ ).ids
cls.test_user_1 = cls.env["res.users"].create(
{
"name": "John",
From 2b91d4bae514b4fd1ad45d625f8b20d9ee1fb750 Mon Sep 17 00:00:00 2001
From: CarlosRoca13
Date: Thu, 7 Jul 2022 13:10:53 +0200
Subject: [PATCH 13/39] [IMP] sale_tier_validation: Add subtypes to allow
subscriptions by crm.team
---
sale_tier_validation/__manifest__.py | 2 +-
sale_tier_validation/data/mail_data.xml | 71 +++++++++++
sale_tier_validation/i18n/es.po | 110 +++++++-----------
.../i18n/sale_tier_validation.pot | 64 +++++-----
sale_tier_validation/models/sale_order.py | 9 ++
5 files changed, 161 insertions(+), 95 deletions(-)
create mode 100644 sale_tier_validation/data/mail_data.xml
diff --git a/sale_tier_validation/__manifest__.py b/sale_tier_validation/__manifest__.py
index 700e8dd69..5b874c77a 100644
--- a/sale_tier_validation/__manifest__.py
+++ b/sale_tier_validation/__manifest__.py
@@ -12,5 +12,5 @@
"application": False,
"installable": True,
"depends": ["sale", "base_tier_validation"],
- "data": ["views/sale_order_view.xml"],
+ "data": ["data/mail_data.xml", "views/sale_order_view.xml"],
}
diff --git a/sale_tier_validation/data/mail_data.xml b/sale_tier_validation/data/mail_data.xml
new file mode 100644
index 000000000..f04166d4d
--- /dev/null
+++ b/sale_tier_validation/data/mail_data.xml
@@ -0,0 +1,71 @@
+
+
+
+
+ Tier Validation Requested
+ sale.order
+
+
+ Tier Validation Accepted Notification
+ sale.order
+
+
+ Tier Validation Rejected Notification
+ sale.order
+
+
+
+ Tier Validation Requested
+ crm.team
+
+
+ team_id
+
+
+ Tier Validation Accepted Notification
+ crm.team
+
+
+ team_id
+
+
+ Tier Validation Rejected Notification
+ crm.team
+
+
+ team_id
+
+
diff --git a/sale_tier_validation/i18n/es.po b/sale_tier_validation/i18n/es.po
index d8e894a1d..ac9d42898 100644
--- a/sale_tier_validation/i18n/es.po
+++ b/sale_tier_validation/i18n/es.po
@@ -6,8 +6,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 12.0\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-05-25 14:07+0000\n"
-"PO-Revision-Date: 2020-07-27 10:19+0000\n"
+"POT-Creation-Date: 2022-07-07 11:28+0000\n"
+"PO-Revision-Date: 2022-07-07 13:31+0200\n"
"Last-Translator: Daniel Martinez Vila \n"
"Language-Team: none\n"
"Language: es\n"
@@ -15,53 +15,52 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 3.10\n"
+"X-Generator: Poedit 2.3\n"
"SO-Revision-Date: 2019-05-08 12:03+0000\n"
#. module: sale_tier_validation
-#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__can_review
-msgid "Can Review"
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
+msgid ""
+" This SO needs to be\n"
+" validated."
msgstr ""
+" Esta SO debe ser\n"
+" validada."
#. module: sale_tier_validation
-#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__has_comment
-msgid "Has Comment"
-msgstr ""
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
+msgid " Operation has been rejected ."
+msgstr " La operación ha sido rechazada ."
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
+msgid " Operation has been validated !"
+msgstr " La operación ha sido validada !"
#. module: sale_tier_validation
#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
msgid "My Sales to review"
msgstr "Mis ventas a revisar"
-#. module: sale_tier_validation
-#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__need_validation
-msgid "Need Validation"
-msgstr ""
-
#. module: sale_tier_validation
#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
msgid "Needs my Review"
msgstr "Necesita mi Revisión"
#. module: sale_tier_validation
-#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__next_review
-msgid "Next Review"
-msgstr ""
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
+msgid "Reject"
+msgstr "Rechazar"
#. module: sale_tier_validation
-#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__rejected
-msgid "Rejected"
-msgstr ""
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
+msgid "Request Validation"
+msgstr "Solicitar Validación"
#. module: sale_tier_validation
-#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__rejected_message
-msgid "Rejected Message"
-msgstr ""
-
-#. module: sale_tier_validation
-#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__reviewer_ids
-msgid "Reviewers"
-msgstr ""
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
+msgid "Restart Validation"
+msgstr "Reiniciar Validación"
#. module: sale_tier_validation
#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
@@ -79,48 +78,29 @@ msgid "Tier Definition"
msgstr "Definición de nivel"
#. module: sale_tier_validation
-#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__to_validate_message
-msgid "To Validate Message"
-msgstr ""
+#: model:mail.message.subtype,name:sale_tier_validation.crm_team_tier_validation_accepted
+#: model:mail.message.subtype,name:sale_tier_validation.sale_order_tier_validation_accepted
+msgid "Tier Validation Accepted Notification"
+msgstr "Validación de nivel aceptada"
#. module: sale_tier_validation
-#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__validated
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
-msgid "Validated"
-msgstr "Validada"
+#: model:mail.message.subtype,name:sale_tier_validation.crm_team_tier_validation_rejected
+#: model:mail.message.subtype,name:sale_tier_validation.sale_order_tier_validation_rejected
+msgid "Tier Validation Rejected Notification"
+msgstr "Validación de nivel rechazada"
#. module: sale_tier_validation
-#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__validated_message
-msgid "Validated Message"
-msgstr ""
+#: model:mail.message.subtype,name:sale_tier_validation.crm_team_tier_validation_requested
+#: model:mail.message.subtype,name:sale_tier_validation.sale_order_tier_validation_requested
+msgid "Tier Validation Requested"
+msgstr "Validación de nivel solicitada"
#. module: sale_tier_validation
-#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__review_ids
-msgid "Validations"
-msgstr ""
-
-#~ msgid ""
-#~ " This SO needs to be\n"
-#~ " validated."
-#~ msgstr ""
-#~ " Esta SO debe ser\n"
-#~ " validada."
-
-#~ msgid " Operation has been rejected ."
-#~ msgstr ""
-#~ " La operación ha sido rechazada ."
-
-#~ msgid " Operation has been validated !"
-#~ msgstr " La operación ha sido validada !"
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
+msgid "Validate"
+msgstr "Validar"
-#~ msgid "Reject"
-#~ msgstr "Rechazar"
-
-#~ msgid "Request Validation"
-#~ msgstr "Solicitar Validación"
-
-#~ msgid "Restart Validation"
-#~ msgstr "Reiniciar Validación"
-
-#~ msgid "Validate"
-#~ msgstr "Validar"
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
+msgid "Validated"
+msgstr "Validada"
diff --git a/sale_tier_validation/i18n/sale_tier_validation.pot b/sale_tier_validation/i18n/sale_tier_validation.pot
index a9c27a686..5d04f6a28 100644
--- a/sale_tier_validation/i18n/sale_tier_validation.pot
+++ b/sale_tier_validation/i18n/sale_tier_validation.pot
@@ -4,8 +4,10 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: Odoo Server 15.0\n"
+"Project-Id-Version: Odoo Server 13.0\n"
"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2022-07-07 11:28+0000\n"
+"PO-Revision-Date: 2022-07-07 11:28+0000\n"
"Last-Translator: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
@@ -14,23 +16,25 @@ msgstr ""
"Plural-Forms: \n"
#. module: sale_tier_validation
-#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__can_review
-msgid "Can Review"
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
+msgid ""
+" This SO needs to be\n"
+" validated."
msgstr ""
#. module: sale_tier_validation
-#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__has_comment
-msgid "Has Comment"
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
+msgid " Operation has been rejected ."
msgstr ""
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
-msgid "My Sales to review"
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
+msgid " Operation has been validated !"
msgstr ""
#. module: sale_tier_validation
-#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__need_validation
-msgid "Need Validation"
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
+msgid "My Sales to review"
msgstr ""
#. module: sale_tier_validation
@@ -39,23 +43,18 @@ msgid "Needs my Review"
msgstr ""
#. module: sale_tier_validation
-#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__next_review
-msgid "Next Review"
-msgstr ""
-
-#. module: sale_tier_validation
-#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__rejected
-msgid "Rejected"
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
+msgid "Reject"
msgstr ""
#. module: sale_tier_validation
-#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__rejected_message
-msgid "Rejected Message"
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
+msgid "Request Validation"
msgstr ""
#. module: sale_tier_validation
-#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__reviewer_ids
-msgid "Reviewers"
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
+msgid "Restart Validation"
msgstr ""
#. module: sale_tier_validation
@@ -74,22 +73,29 @@ msgid "Tier Definition"
msgstr ""
#. module: sale_tier_validation
-#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__to_validate_message
-msgid "To Validate Message"
+#: model:mail.message.subtype,name:sale_tier_validation.crm_team_tier_validation_accepted
+#: model:mail.message.subtype,name:sale_tier_validation.sale_order_tier_validation_accepted
+msgid "Tier Validation Accepted Notification"
msgstr ""
#. module: sale_tier_validation
-#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__validated
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
-msgid "Validated"
+#: model:mail.message.subtype,name:sale_tier_validation.crm_team_tier_validation_rejected
+#: model:mail.message.subtype,name:sale_tier_validation.sale_order_tier_validation_rejected
+msgid "Tier Validation Rejected Notification"
msgstr ""
#. module: sale_tier_validation
-#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__validated_message
-msgid "Validated Message"
+#: model:mail.message.subtype,name:sale_tier_validation.crm_team_tier_validation_requested
+#: model:mail.message.subtype,name:sale_tier_validation.sale_order_tier_validation_requested
+msgid "Tier Validation Requested"
msgstr ""
#. module: sale_tier_validation
-#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__review_ids
-msgid "Validations"
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
+msgid "Validate"
+msgstr ""
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
+msgid "Validated"
msgstr ""
diff --git a/sale_tier_validation/models/sale_order.py b/sale_tier_validation/models/sale_order.py
index d9c463301..67e8fe0e8 100644
--- a/sale_tier_validation/models/sale_order.py
+++ b/sale_tier_validation/models/sale_order.py
@@ -11,3 +11,12 @@ class SaleOrder(models.Model):
_state_to = ["sale", "approved"]
_tier_validation_manual_config = False
+
+ def _get_requested_notification_subtype(self):
+ return "sale_tier_validation.sale_order_tier_validation_requested"
+
+ def _get_accepted_notification_subtype(self):
+ return "sale_tier_validation.sale_order_tier_validation_accepted"
+
+ def _get_rejected_notification_subtype(self):
+ return "sale_tier_validation.sale_order_tier_validation_rejected"
From 39b6c095d36f780daf864ad467dde0ee0464e6fa Mon Sep 17 00:00:00 2001
From: sergio-teruel
Date: Thu, 29 Sep 2022 16:34:52 +0200
Subject: [PATCH 14/39] [IMP] sale_tier_validation: Make subtypes internal
---
sale_tier_validation/__manifest__.py | 2 +-
sale_tier_validation/data/mail_data.xml | 6 ++
sale_tier_validation/i18n/es.po | 90 +++++++++++++------
.../i18n/sale_tier_validation.pot | 54 ++++++-----
sale_tier_validation/i18n/sv.po | 18 ++++
sale_tier_validation/i18n/zh_CN.po | 18 ++++
6 files changed, 140 insertions(+), 48 deletions(-)
diff --git a/sale_tier_validation/__manifest__.py b/sale_tier_validation/__manifest__.py
index 5b874c77a..01e9966a7 100644
--- a/sale_tier_validation/__manifest__.py
+++ b/sale_tier_validation/__manifest__.py
@@ -4,7 +4,7 @@
"name": "Sale Tier Validation",
"summary": "Extends the functionality of Sale Orders to "
"support a tier validation process.",
- "version": "15.0.1.0.0",
+ "version": "15.0.1.1.0",
"category": "Sale",
"website": "https://github.com/OCA/sale-workflow",
"author": "Open Source Integrators, Odoo Community Association (OCA)",
diff --git a/sale_tier_validation/data/mail_data.xml b/sale_tier_validation/data/mail_data.xml
index f04166d4d..407ed3627 100644
--- a/sale_tier_validation/data/mail_data.xml
+++ b/sale_tier_validation/data/mail_data.xml
@@ -8,6 +8,7 @@
>
Tier Validation Requested
sale.order
+ True
Tier Validation Accepted Notification
sale.order
+ True
Tier Validation Rejected Notification
sale.order
+ True
Tier Validation Requested
crm.team
+ True
Tier Validation Accepted Notification
crm.team
+ True
+ True
team_id
diff --git a/sale_tier_validation/i18n/es.po b/sale_tier_validation/i18n/es.po
index ac9d42898..399cfeacf 100644
--- a/sale_tier_validation/i18n/es.po
+++ b/sale_tier_validation/i18n/es.po
@@ -19,48 +19,49 @@ msgstr ""
"SO-Revision-Date: 2019-05-08 12:03+0000\n"
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
-msgid ""
-" This SO needs to be\n"
-" validated."
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__can_review
+msgid "Can Review"
msgstr ""
-" Esta SO debe ser\n"
-" validada."
-
-#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
-msgid " Operation has been rejected ."
-msgstr " La operación ha sido rechazada ."
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
-msgid " Operation has been validated !"
-msgstr " La operación ha sido validada !"
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__has_comment
+msgid "Has Comment"
+msgstr ""
#. module: sale_tier_validation
#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
msgid "My Sales to review"
msgstr "Mis ventas a revisar"
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__need_validation
+msgid "Need Validation"
+msgstr ""
+
#. module: sale_tier_validation
#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
msgid "Needs my Review"
msgstr "Necesita mi Revisión"
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
-msgid "Reject"
-msgstr "Rechazar"
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__next_review
+msgid "Next Review"
+msgstr ""
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
-msgid "Request Validation"
-msgstr "Solicitar Validación"
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__rejected
+msgid "Rejected"
+msgstr ""
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
-msgid "Restart Validation"
-msgstr "Reiniciar Validación"
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__rejected_message
+msgid "Rejected Message"
+msgstr ""
+
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__reviewer_ids
+msgid "Reviewers"
+msgstr ""
#. module: sale_tier_validation
#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
@@ -96,11 +97,48 @@ msgid "Tier Validation Requested"
msgstr "Validación de nivel solicitada"
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
-msgid "Validate"
-msgstr "Validar"
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__to_validate_message
+msgid "To Validate Message"
+msgstr ""
#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__validated
#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
msgid "Validated"
msgstr "Validada"
+
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__validated_message
+msgid "Validated Message"
+msgstr ""
+
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__review_ids
+msgid "Validations"
+msgstr ""
+
+#~ msgid ""
+#~ " This SO needs to be\n"
+#~ " validated."
+#~ msgstr ""
+#~ " Esta SO debe ser\n"
+#~ " validada."
+
+#~ msgid " Operation has been rejected ."
+#~ msgstr ""
+#~ " La operación ha sido rechazada ."
+
+#~ msgid " Operation has been validated !"
+#~ msgstr " La operación ha sido validada !"
+
+#~ msgid "Reject"
+#~ msgstr "Rechazar"
+
+#~ msgid "Request Validation"
+#~ msgstr "Solicitar Validación"
+
+#~ msgid "Restart Validation"
+#~ msgstr "Reiniciar Validación"
+
+#~ msgid "Validate"
+#~ msgstr "Validar"
diff --git a/sale_tier_validation/i18n/sale_tier_validation.pot b/sale_tier_validation/i18n/sale_tier_validation.pot
index 5d04f6a28..a678b67b3 100644
--- a/sale_tier_validation/i18n/sale_tier_validation.pot
+++ b/sale_tier_validation/i18n/sale_tier_validation.pot
@@ -4,10 +4,8 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: Odoo Server 13.0\n"
+"Project-Id-Version: Odoo Server 15.0\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-07-07 11:28+0000\n"
-"PO-Revision-Date: 2022-07-07 11:28+0000\n"
"Last-Translator: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
@@ -16,25 +14,23 @@ msgstr ""
"Plural-Forms: \n"
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
-msgid ""
-" This SO needs to be\n"
-" validated."
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__can_review
+msgid "Can Review"
msgstr ""
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
-msgid " Operation has been rejected ."
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__has_comment
+msgid "Has Comment"
msgstr ""
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
-msgid " Operation has been validated !"
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
+msgid "My Sales to review"
msgstr ""
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
-msgid "My Sales to review"
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__need_validation
+msgid "Need Validation"
msgstr ""
#. module: sale_tier_validation
@@ -43,18 +39,23 @@ msgid "Needs my Review"
msgstr ""
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
-msgid "Reject"
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__next_review
+msgid "Next Review"
+msgstr ""
+
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__rejected
+msgid "Rejected"
msgstr ""
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
-msgid "Request Validation"
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__rejected_message
+msgid "Rejected Message"
msgstr ""
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
-msgid "Restart Validation"
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__reviewer_ids
+msgid "Reviewers"
msgstr ""
#. module: sale_tier_validation
@@ -91,11 +92,22 @@ msgid "Tier Validation Requested"
msgstr ""
#. module: sale_tier_validation
-#: model_terms:ir.ui.view,arch_db:sale_tier_validation.sale_order_form_tier
-msgid "Validate"
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__to_validate_message
+msgid "To Validate Message"
msgstr ""
#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__validated
#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
msgid "Validated"
msgstr ""
+
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__validated_message
+msgid "Validated Message"
+msgstr ""
+
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__review_ids
+msgid "Validations"
+msgstr ""
diff --git a/sale_tier_validation/i18n/sv.po b/sale_tier_validation/i18n/sv.po
index 3d41e2623..4c399ba39 100644
--- a/sale_tier_validation/i18n/sv.po
+++ b/sale_tier_validation/i18n/sv.po
@@ -76,6 +76,24 @@ msgstr "Försäljningsorder"
msgid "Tier Definition"
msgstr "Attestdefinition"
+#. module: sale_tier_validation
+#: model:mail.message.subtype,name:sale_tier_validation.crm_team_tier_validation_accepted
+#: model:mail.message.subtype,name:sale_tier_validation.sale_order_tier_validation_accepted
+msgid "Tier Validation Accepted Notification"
+msgstr ""
+
+#. module: sale_tier_validation
+#: model:mail.message.subtype,name:sale_tier_validation.crm_team_tier_validation_rejected
+#: model:mail.message.subtype,name:sale_tier_validation.sale_order_tier_validation_rejected
+msgid "Tier Validation Rejected Notification"
+msgstr ""
+
+#. module: sale_tier_validation
+#: model:mail.message.subtype,name:sale_tier_validation.crm_team_tier_validation_requested
+#: model:mail.message.subtype,name:sale_tier_validation.sale_order_tier_validation_requested
+msgid "Tier Validation Requested"
+msgstr ""
+
#. module: sale_tier_validation
#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__to_validate_message
msgid "To Validate Message"
diff --git a/sale_tier_validation/i18n/zh_CN.po b/sale_tier_validation/i18n/zh_CN.po
index fd3bbf722..ce9db9471 100644
--- a/sale_tier_validation/i18n/zh_CN.po
+++ b/sale_tier_validation/i18n/zh_CN.po
@@ -77,6 +77,24 @@ msgstr "销售订单"
msgid "Tier Definition"
msgstr "层定义"
+#. module: sale_tier_validation
+#: model:mail.message.subtype,name:sale_tier_validation.crm_team_tier_validation_accepted
+#: model:mail.message.subtype,name:sale_tier_validation.sale_order_tier_validation_accepted
+msgid "Tier Validation Accepted Notification"
+msgstr ""
+
+#. module: sale_tier_validation
+#: model:mail.message.subtype,name:sale_tier_validation.crm_team_tier_validation_rejected
+#: model:mail.message.subtype,name:sale_tier_validation.sale_order_tier_validation_rejected
+msgid "Tier Validation Rejected Notification"
+msgstr ""
+
+#. module: sale_tier_validation
+#: model:mail.message.subtype,name:sale_tier_validation.crm_team_tier_validation_requested
+#: model:mail.message.subtype,name:sale_tier_validation.sale_order_tier_validation_requested
+msgid "Tier Validation Requested"
+msgstr ""
+
#. module: sale_tier_validation
#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__to_validate_message
msgid "To Validate Message"
From 02ffa028668c3c6e6e8a56c57c98c24997313c0c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jes=C3=BAs=20Alan=20Ramos=20Rodr=C3=ADguez?=
Date: Fri, 4 Nov 2022 09:02:09 +0000
Subject: [PATCH 15/39] Added translation using Weblate (Spanish (Mexico))
---
sale_tier_validation/i18n/es_MX.po | 116 +++++++++++++++++++++++++++++
1 file changed, 116 insertions(+)
create mode 100644 sale_tier_validation/i18n/es_MX.po
diff --git a/sale_tier_validation/i18n/es_MX.po b/sale_tier_validation/i18n/es_MX.po
new file mode 100644
index 000000000..feedb3eb4
--- /dev/null
+++ b/sale_tier_validation/i18n/es_MX.po
@@ -0,0 +1,116 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * sale_tier_validation
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 15.0\n"
+"Report-Msgid-Bugs-To: \n"
+"PO-Revision-Date: 2022-11-04 11:44+0000\n"
+"Last-Translator: Jesús Alan Ramos Rodríguez \n"
+"Language-Team: none\n"
+"Language: es_MX\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.14.1\n"
+
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__can_review
+msgid "Can Review"
+msgstr "Puede revisar"
+
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__has_comment
+msgid "Has Comment"
+msgstr "Tiene comentario"
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
+msgid "My Sales to review"
+msgstr "Mis ventas para revisar"
+
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__need_validation
+msgid "Need Validation"
+msgstr "Necesita validación"
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
+msgid "Needs my Review"
+msgstr "Necesita mi revisión"
+
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__next_review
+msgid "Next Review"
+msgstr "Siguiente revisión"
+
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__rejected
+msgid "Rejected"
+msgstr "Rechazado"
+
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__rejected_message
+msgid "Rejected Message"
+msgstr "Mensaje rechazado"
+
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__reviewer_ids
+msgid "Reviewers"
+msgstr "Revisores"
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
+msgid "SOs validated and ready to be confirmed"
+msgstr "SOs validados y listos para ser confirmados"
+
+#. module: sale_tier_validation
+#: model:ir.model,name:sale_tier_validation.model_sale_order
+msgid "Sales Order"
+msgstr "Orden de venta"
+
+#. module: sale_tier_validation
+#: model:ir.model,name:sale_tier_validation.model_tier_definition
+msgid "Tier Definition"
+msgstr "Definición de Nivel"
+
+#. module: sale_tier_validation
+#: model:mail.message.subtype,name:sale_tier_validation.crm_team_tier_validation_accepted
+#: model:mail.message.subtype,name:sale_tier_validation.sale_order_tier_validation_accepted
+msgid "Tier Validation Accepted Notification"
+msgstr "Notificación de validación de nivel aceptada"
+
+#. module: sale_tier_validation
+#: model:mail.message.subtype,name:sale_tier_validation.crm_team_tier_validation_rejected
+#: model:mail.message.subtype,name:sale_tier_validation.sale_order_tier_validation_rejected
+msgid "Tier Validation Rejected Notification"
+msgstr "Notificación de rechazo de validación de nivel"
+
+#. module: sale_tier_validation
+#: model:mail.message.subtype,name:sale_tier_validation.crm_team_tier_validation_requested
+#: model:mail.message.subtype,name:sale_tier_validation.sale_order_tier_validation_requested
+msgid "Tier Validation Requested"
+msgstr "Validación de nivel solicitada"
+
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__to_validate_message
+msgid "To Validate Message"
+msgstr "Mensaje para validar"
+
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__validated
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
+msgid "Validated"
+msgstr "Validado"
+
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__validated_message
+msgid "Validated Message"
+msgstr "Mensaje validado"
+
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__review_ids
+msgid "Validations"
+msgstr "Validaciones"
From ef217df35051ef8b665a7e9611acf4a8e6dea405 Mon Sep 17 00:00:00 2001
From: Ruchir Shukla
Date: Tue, 6 Dec 2022 15:21:11 +0530
Subject: [PATCH 16/39] [MIG] sale_tier_validation: Migration to 16.0
---
sale_tier_validation/README.rst | 10 +++++-----
sale_tier_validation/__manifest__.py | 2 +-
sale_tier_validation/i18n/sale_tier_validation.pot | 2 +-
sale_tier_validation/static/description/index.html | 6 +++---
sale_tier_validation/tests/test_tier_validation.py | 2 +-
5 files changed, 11 insertions(+), 11 deletions(-)
diff --git a/sale_tier_validation/README.rst b/sale_tier_validation/README.rst
index e9cd489e3..54e96dfe9 100644
--- a/sale_tier_validation/README.rst
+++ b/sale_tier_validation/README.rst
@@ -14,13 +14,13 @@ Sale Tier Validation
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fsale--workflow-lightgray.png?logo=github
- :target: https://github.com/OCA/sale-workflow/tree/15.0/sale_tier_validation
+ :target: https://github.com/OCA/sale-workflow/tree/16.0/sale_tier_validation
:alt: OCA/sale-workflow
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
- :target: https://translation.odoo-community.org/projects/sale-workflow-15-0/sale-workflow-15-0-sale_tier_validation
+ :target: https://translation.odoo-community.org/projects/sale-workflow-16-0/sale-workflow-16-0-sale_tier_validation
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
- :target: https://runbot.odoo-community.org/runbot/167/15.0
+ :target: https://runbot.odoo-community.org/runbot/167/16.0
:alt: Try me on Runbot
|badge1| |badge2| |badge3| |badge4| |badge5|
@@ -71,7 +71,7 @@ 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 smashing it by providing a detailed and welcomed
-`feedback `_.
+`feedback `_.
Do not contact contributors directly about support or help with technical issues.
@@ -107,6 +107,6 @@ OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.
-This module is part of the `OCA/sale-workflow `_ project on GitHub.
+This module is part of the `OCA/sale-workflow `_ project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/sale_tier_validation/__manifest__.py b/sale_tier_validation/__manifest__.py
index 01e9966a7..c20ffe799 100644
--- a/sale_tier_validation/__manifest__.py
+++ b/sale_tier_validation/__manifest__.py
@@ -4,7 +4,7 @@
"name": "Sale Tier Validation",
"summary": "Extends the functionality of Sale Orders to "
"support a tier validation process.",
- "version": "15.0.1.1.0",
+ "version": "16.0.1.0.0",
"category": "Sale",
"website": "https://github.com/OCA/sale-workflow",
"author": "Open Source Integrators, Odoo Community Association (OCA)",
diff --git a/sale_tier_validation/i18n/sale_tier_validation.pot b/sale_tier_validation/i18n/sale_tier_validation.pot
index a678b67b3..76483fa07 100644
--- a/sale_tier_validation/i18n/sale_tier_validation.pot
+++ b/sale_tier_validation/i18n/sale_tier_validation.pot
@@ -4,7 +4,7 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: Odoo Server 15.0\n"
+"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"Last-Translator: \n"
"Language-Team: \n"
diff --git a/sale_tier_validation/static/description/index.html b/sale_tier_validation/static/description/index.html
index 2e5d0f6e0..0d39ef311 100644
--- a/sale_tier_validation/static/description/index.html
+++ b/sale_tier_validation/static/description/index.html
@@ -367,7 +367,7 @@ Sale Tier Validation
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
-
+
This module extends the functionality of Sale Orders to support a tier
validation process.
Table of contents
@@ -421,7 +421,7 @@
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 smashing it by providing a detailed and welcomed
-feedback .
+feedback .
Do not contact contributors directly about support or help with technical issues.
@@ -450,7 +450,7 @@
OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.
-
This module is part of the OCA/sale-workflow project on GitHub.
+
This module is part of the OCA/sale-workflow project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute .
diff --git a/sale_tier_validation/tests/test_tier_validation.py b/sale_tier_validation/tests/test_tier_validation.py
index 12fb1c80b..1184f6a2a 100644
--- a/sale_tier_validation/tests/test_tier_validation.py
+++ b/sale_tier_validation/tests/test_tier_validation.py
@@ -4,7 +4,7 @@
from odoo.tests import common, tagged
-@tagged("-at_install", "post_install")
+@tagged("post_install")
class TestSaleTierValidation(common.TransactionCase):
@classmethod
def setUpClass(cls):
From 337dd889c0d7d3264d67810dee75b95ead1a8cc7 Mon Sep 17 00:00:00 2001
From: Ediz Duman
Date: Thu, 30 Mar 2023 19:32:04 +0000
Subject: [PATCH 17/39] Added translation using Weblate (Turkish)
---
sale_tier_validation/i18n/tr.po | 116 ++++++++++++++++++++++++++++++++
1 file changed, 116 insertions(+)
create mode 100644 sale_tier_validation/i18n/tr.po
diff --git a/sale_tier_validation/i18n/tr.po b/sale_tier_validation/i18n/tr.po
new file mode 100644
index 000000000..cac622424
--- /dev/null
+++ b/sale_tier_validation/i18n/tr.po
@@ -0,0 +1,116 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * sale_tier_validation
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 16.0\n"
+"Report-Msgid-Bugs-To: \n"
+"PO-Revision-Date: 2023-03-30 22:51+0000\n"
+"Last-Translator: Ediz Duman \n"
+"Language-Team: none\n"
+"Language: tr\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.14.1\n"
+
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__can_review
+msgid "Can Review"
+msgstr "Gözden Geçirebilir"
+
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__has_comment
+msgid "Has Comment"
+msgstr "Yorum Var"
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
+msgid "My Sales to review"
+msgstr "İncelenecek Satışlarım"
+
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__need_validation
+msgid "Need Validation"
+msgstr "Doğrulama Gerekiyor"
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
+msgid "Needs my Review"
+msgstr "İncelememe ihtiyacı var"
+
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__next_review
+msgid "Next Review"
+msgstr "Sonraki İnceleme"
+
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__rejected
+msgid "Rejected"
+msgstr "Reddedildi"
+
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__rejected_message
+msgid "Rejected Message"
+msgstr "Reddedilme Mesaj"
+
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__reviewer_ids
+msgid "Reviewers"
+msgstr "İnceleyenler"
+
+#. module: sale_tier_validation
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
+msgid "SOs validated and ready to be confirmed"
+msgstr "SO'lar doğrulandı ve onaylanmaya hazır"
+
+#. module: sale_tier_validation
+#: model:ir.model,name:sale_tier_validation.model_sale_order
+msgid "Sales Order"
+msgstr "Satış Siparişi"
+
+#. module: sale_tier_validation
+#: model:ir.model,name:sale_tier_validation.model_tier_definition
+msgid "Tier Definition"
+msgstr "Seviye Tanımı"
+
+#. module: sale_tier_validation
+#: model:mail.message.subtype,name:sale_tier_validation.crm_team_tier_validation_accepted
+#: model:mail.message.subtype,name:sale_tier_validation.sale_order_tier_validation_accepted
+msgid "Tier Validation Accepted Notification"
+msgstr "Seviye Doğrulama Kabul Bildirimi"
+
+#. module: sale_tier_validation
+#: model:mail.message.subtype,name:sale_tier_validation.crm_team_tier_validation_rejected
+#: model:mail.message.subtype,name:sale_tier_validation.sale_order_tier_validation_rejected
+msgid "Tier Validation Rejected Notification"
+msgstr "Seviye Doğrulaması Reddedildi Bildirimi"
+
+#. module: sale_tier_validation
+#: model:mail.message.subtype,name:sale_tier_validation.crm_team_tier_validation_requested
+#: model:mail.message.subtype,name:sale_tier_validation.sale_order_tier_validation_requested
+msgid "Tier Validation Requested"
+msgstr "Seviye Doğrulama İstendi"
+
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__to_validate_message
+msgid "To Validate Message"
+msgstr "Mesajı Doğrulamak İçin"
+
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__validated
+#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
+msgid "Validated"
+msgstr "Doğrulandı"
+
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__validated_message
+msgid "Validated Message"
+msgstr "Doğrulanmış Mesaj"
+
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__review_ids
+msgid "Validations"
+msgstr "Doğrulamalar"
From b9c4427fb6196a7a79926036bd9d5853abde2e2f Mon Sep 17 00:00:00 2001
From: Carlos Serra-Toro
Date: Tue, 6 Jun 2023 09:20:08 +0200
Subject: [PATCH 18/39] [15.0][FIX] Sales order states in tier validation
---
sale_tier_validation/__manifest__.py | 2 +-
sale_tier_validation/models/sale_order.py | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/sale_tier_validation/__manifest__.py b/sale_tier_validation/__manifest__.py
index c20ffe799..2e7317695 100644
--- a/sale_tier_validation/__manifest__.py
+++ b/sale_tier_validation/__manifest__.py
@@ -4,7 +4,7 @@
"name": "Sale Tier Validation",
"summary": "Extends the functionality of Sale Orders to "
"support a tier validation process.",
- "version": "16.0.1.0.0",
+ "version": "16.0.1.0.1",
"category": "Sale",
"website": "https://github.com/OCA/sale-workflow",
"author": "Open Source Integrators, Odoo Community Association (OCA)",
diff --git a/sale_tier_validation/models/sale_order.py b/sale_tier_validation/models/sale_order.py
index 67e8fe0e8..3c7eecf07 100644
--- a/sale_tier_validation/models/sale_order.py
+++ b/sale_tier_validation/models/sale_order.py
@@ -7,8 +7,8 @@
class SaleOrder(models.Model):
_name = "sale.order"
_inherit = ["sale.order", "tier.validation"]
- _state_from = ["draft", "sent", "to approve"]
- _state_to = ["sale", "approved"]
+ _state_from = ["draft", "sent"]
+ _state_to = ["sale", "done"]
_tier_validation_manual_config = False
From 0aba99c8ce84cee2a8554d3c7771980e45dc7ced Mon Sep 17 00:00:00 2001
From: Carlos Serra-Toro
Date: Tue, 4 Jul 2023 18:01:13 +0200
Subject: [PATCH 19/39] [IMP] sale_tier_validation: Add in ROADMAP sent
validation problem
---
sale_tier_validation/README.rst | 8 +++++
sale_tier_validation/__manifest__.py | 2 +-
sale_tier_validation/readme/ROADMAP.rst | 4 +++
.../static/description/index.html | 30 ++++++++++++-------
4 files changed, 33 insertions(+), 11 deletions(-)
create mode 100644 sale_tier_validation/readme/ROADMAP.rst
diff --git a/sale_tier_validation/README.rst b/sale_tier_validation/README.rst
index 54e96dfe9..b7e1f0434 100644
--- a/sale_tier_validation/README.rst
+++ b/sale_tier_validation/README.rst
@@ -65,6 +65,14 @@ Additional features:
be generated) can directly do the operation, this is, there is no need for
her/him to request a validation.
+Known issues / Roadmap
+======================
+
+* The sales order, when moved to the state `sent`, will still
+ send the email even if the validation is not approved by the
+ corresponding tier. Code to consider this particular case is
+ not developed.
+
Bug Tracker
===========
diff --git a/sale_tier_validation/__manifest__.py b/sale_tier_validation/__manifest__.py
index 2e7317695..1b90ad276 100644
--- a/sale_tier_validation/__manifest__.py
+++ b/sale_tier_validation/__manifest__.py
@@ -4,7 +4,7 @@
"name": "Sale Tier Validation",
"summary": "Extends the functionality of Sale Orders to "
"support a tier validation process.",
- "version": "16.0.1.0.1",
+ "version": "16.0.1.0.2",
"category": "Sale",
"website": "https://github.com/OCA/sale-workflow",
"author": "Open Source Integrators, Odoo Community Association (OCA)",
diff --git a/sale_tier_validation/readme/ROADMAP.rst b/sale_tier_validation/readme/ROADMAP.rst
new file mode 100644
index 000000000..127119717
--- /dev/null
+++ b/sale_tier_validation/readme/ROADMAP.rst
@@ -0,0 +1,4 @@
+* The sales order, when moved to the state `sent`, will still
+ send the email even if the validation is not approved by the
+ corresponding tier. Code to consider this particular case is
+ not developed.
diff --git a/sale_tier_validation/static/description/index.html b/sale_tier_validation/static/description/index.html
index 0d39ef311..819e1d0a4 100644
--- a/sale_tier_validation/static/description/index.html
+++ b/sale_tier_validation/static/description/index.html
@@ -376,11 +376,12 @@ Sale Tier Validation
Installation
Configuration
Usage
-Bug Tracker
-Credits
@@ -416,8 +417,17 @@
her/him to request a validation.
+
+
+
+The sales order, when moved to the state sent , will still
+send the email even if the validation is not approved by the
+corresponding tier. Code to consider this particular case is
+not developed.
+
+
-
+
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 smashing it by providing a detailed and welcomed
@@ -425,15 +435,15 @@
Do not contact contributors directly about support or help with technical issues.
-
+
-
+
This module is maintained by the OCA.
OCA, or the Odoo Community Association, is a nonprofit organization whose
From 660e2fc8627253979956106cd4397b89e49cdb48 Mon Sep 17 00:00:00 2001
From: Ivorra78
Date: Tue, 25 Jul 2023 10:03:30 +0000
Subject: [PATCH 20/39] Translated using Weblate (Spanish)
Currently translated at 100.0% (19 of 19 strings)
Translation: sale-workflow-16.0/sale-workflow-16.0-sale_tier_validation
Translate-URL: https://translation.odoo-community.org/projects/sale-workflow-16-0/sale-workflow-16-0-sale_tier_validation/es/
---
sale_tier_validation/README.rst | 15 +++---
sale_tier_validation/i18n/es.po | 26 +++++-----
.../static/description/index.html | 50 ++++++++++---------
3 files changed, 48 insertions(+), 43 deletions(-)
diff --git a/sale_tier_validation/README.rst b/sale_tier_validation/README.rst
index b7e1f0434..101157feb 100644
--- a/sale_tier_validation/README.rst
+++ b/sale_tier_validation/README.rst
@@ -2,10 +2,13 @@
Sale Tier Validation
====================
-.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+..
+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+ !! source digest: sha256:ce30170d59bd5dc213d343b7e9c41a9e6ddd3c6fe226953d288605c6a03478f0
+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
@@ -19,11 +22,11 @@ Sale Tier Validation
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/sale-workflow-16-0/sale-workflow-16-0-sale_tier_validation
:alt: Translate me on Weblate
-.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
- :target: https://runbot.odoo-community.org/runbot/167/16.0
- :alt: Try me on Runbot
+.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
+ :target: https://runboat.odoo-community.org/builds?repo=OCA/sale-workflow&target_branch=16.0
+ :alt: Try me on Runboat
-|badge1| |badge2| |badge3| |badge4| |badge5|
+|badge1| |badge2| |badge3| |badge4| |badge5|
This module extends the functionality of Sale Orders to support a tier
validation process.
@@ -78,7 +81,7 @@ 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 smashing it by providing a detailed and welcomed
+If you spotted it first, help us to smash it by providing a detailed and welcomed
`feedback `_.
Do not contact contributors directly about support or help with technical issues.
diff --git a/sale_tier_validation/i18n/es.po b/sale_tier_validation/i18n/es.po
index 399cfeacf..bdfe7b653 100644
--- a/sale_tier_validation/i18n/es.po
+++ b/sale_tier_validation/i18n/es.po
@@ -7,26 +7,26 @@ msgstr ""
"Project-Id-Version: Odoo Server 12.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-07-07 11:28+0000\n"
-"PO-Revision-Date: 2022-07-07 13:31+0200\n"
-"Last-Translator: Daniel Martinez Vila \n"
+"PO-Revision-Date: 2023-07-25 12:10+0000\n"
+"Last-Translator: Ivorra78 \n"
"Language-Team: none\n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Poedit 2.3\n"
+"X-Generator: Weblate 4.17\n"
"SO-Revision-Date: 2019-05-08 12:03+0000\n"
#. module: sale_tier_validation
#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__can_review
msgid "Can Review"
-msgstr ""
+msgstr "Puede Revisar"
#. module: sale_tier_validation
#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__has_comment
msgid "Has Comment"
-msgstr ""
+msgstr "Tiene Comentario"
#. module: sale_tier_validation
#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
@@ -36,7 +36,7 @@ msgstr "Mis ventas a revisar"
#. module: sale_tier_validation
#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__need_validation
msgid "Need Validation"
-msgstr ""
+msgstr "Necesita validación"
#. module: sale_tier_validation
#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
@@ -46,22 +46,22 @@ msgstr "Necesita mi Revisión"
#. module: sale_tier_validation
#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__next_review
msgid "Next Review"
-msgstr ""
+msgstr "Siguiente revisión"
#. module: sale_tier_validation
#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__rejected
msgid "Rejected"
-msgstr ""
+msgstr "Rechazado/a"
#. module: sale_tier_validation
#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__rejected_message
msgid "Rejected Message"
-msgstr ""
+msgstr "Mensaje rechazado"
#. module: sale_tier_validation
#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__reviewer_ids
msgid "Reviewers"
-msgstr ""
+msgstr "Revisores"
#. module: sale_tier_validation
#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
@@ -99,7 +99,7 @@ msgstr "Validación de nivel solicitada"
#. module: sale_tier_validation
#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__to_validate_message
msgid "To Validate Message"
-msgstr ""
+msgstr "Para validar el mensaje"
#. module: sale_tier_validation
#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__validated
@@ -110,12 +110,12 @@ msgstr "Validada"
#. module: sale_tier_validation
#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__validated_message
msgid "Validated Message"
-msgstr ""
+msgstr "Mensaje validado"
#. module: sale_tier_validation
#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__review_ids
msgid "Validations"
-msgstr ""
+msgstr "Validaciones"
#~ msgid ""
#~ " This SO needs to be\n"
diff --git a/sale_tier_validation/static/description/index.html b/sale_tier_validation/static/description/index.html
index 819e1d0a4..f95001c6b 100644
--- a/sale_tier_validation/static/description/index.html
+++ b/sale_tier_validation/static/description/index.html
@@ -1,20 +1,20 @@
-
+
-
+
Sale Tier Validation
-
-
Sale Tier Validation
+
+
+
+
+
+
+
Sale Tier Validation
-
+
This module extends the functionality of Sale Orders to support a tier
validation process.
Table of contents
@@ -389,12 +394,12 @@
Sale Tier Validation
-
+
This module depends on base_tier_validation . You can find it at
OCA/server-ux
-
+
To configure this module, you need to:
Go to Settings > Technical > Tier Validations > Tier Definition .
@@ -405,7 +410,7 @@
quotation when the order has yet to be validated (disabled by default).
-
+
To use this module, you need to:
Create a Sale Order triggering at least one “Tier Definition”.
@@ -424,15 +429,18 @@
-
+
The sales order, when moved to the state sent, will still send the
email even if the validation is not approved by the corresponding
tier. Code to consider this particular case is not developed.
+If any module modifies the invisible/readonly/required attribute of
+the confirm sales order button, it will invalidate the expected
+behavior.
-
+
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 to smash it by providing a detailed and welcomed
@@ -440,15 +448,15 @@
Do not contact contributors directly about support or help with technical issues.
+
diff --git a/sale_tier_validation/views/sale_order_view.xml b/sale_tier_validation/views/sale_order_view.xml
index 862ac0a18..832d90734 100644
--- a/sale_tier_validation/views/sale_order_view.xml
+++ b/sale_tier_validation/views/sale_order_view.xml
@@ -2,6 +2,25 @@
+
+ sale.order
+
+
+
+ validation_status in ['pending', 'rejected'] or state!='sent'
+
+
+ validation_status in ['pending', 'rejected'] or state!='draft'
+
+
+
+
+
+
sale.order.select - sale_tier_validation
sale.order
From a365aa56364189fdbce50a84716f4f1358150cee Mon Sep 17 00:00:00 2001
From: Kiril Vangelovski
Date: Tue, 7 Jul 2026 14:58:19 +0200
Subject: [PATCH 34/39] [IMP] sale_tier_validation: pre-commit auto fixes
---
sale_tier_validation/README.rst | 16 ++++++++--------
sale_tier_validation/__manifest__.py | 2 +-
.../static/description/index.html | 8 ++++----
3 files changed, 13 insertions(+), 13 deletions(-)
diff --git a/sale_tier_validation/README.rst b/sale_tier_validation/README.rst
index 16681b53b..cf67d1796 100644
--- a/sale_tier_validation/README.rst
+++ b/sale_tier_validation/README.rst
@@ -20,14 +20,14 @@ Sale Tier Validation
.. |badge2| image:: https://img.shields.io/badge/license-AGPL--3-blue.png
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
-.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fsale--workflow-lightgray.png?logo=github
- :target: https://github.com/OCA/sale-workflow/tree/18.0/sale_tier_validation
- :alt: OCA/sale-workflow
+.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Ftier--validation-lightgray.png?logo=github
+ :target: https://github.com/OCA/tier-validation/tree/19.0/sale_tier_validation
+ :alt: OCA/tier-validation
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
- :target: https://translation.odoo-community.org/projects/sale-workflow-18-0/sale-workflow-18-0-sale_tier_validation
+ :target: https://translation.odoo-community.org/projects/tier-validation-19-0/tier-validation-19-0-sale_tier_validation
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
- :target: https://runboat.odoo-community.org/builds?repo=OCA/sale-workflow&target_branch=18.0
+ :target: https://runboat.odoo-community.org/builds?repo=OCA/tier-validation&target_branch=19.0
:alt: Try me on Runboat
|badge1| |badge2| |badge3| |badge4| |badge5|
@@ -90,10 +90,10 @@ Known issues / Roadmap
Bug Tracker
===========
-Bugs are tracked on `GitHub Issues `_.
+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 to smash it by providing a detailed and welcomed
-`feedback `_.
+`feedback `_.
Do not contact contributors directly about support or help with technical issues.
@@ -132,6 +132,6 @@ OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.
-This module is part of the `OCA/sale-workflow `_ project on GitHub.
+This module is part of the `OCA/tier-validation `_ project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/sale_tier_validation/__manifest__.py b/sale_tier_validation/__manifest__.py
index f2c0ac2b0..61ac4c15e 100644
--- a/sale_tier_validation/__manifest__.py
+++ b/sale_tier_validation/__manifest__.py
@@ -6,7 +6,7 @@
"support a tier validation process.",
"version": "18.0.1.1.0",
"category": "Sale",
- "website": "https://github.com/OCA/sale-workflow",
+ "website": "https://github.com/OCA/tier-validation",
"author": "Open Source Integrators, Odoo Community Association (OCA)",
"license": "AGPL-3",
"application": False,
diff --git a/sale_tier_validation/static/description/index.html b/sale_tier_validation/static/description/index.html
index f87a3c7c9..afed0bb84 100644
--- a/sale_tier_validation/static/description/index.html
+++ b/sale_tier_validation/static/description/index.html
@@ -374,7 +374,7 @@ Sale Tier Validation
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:d49d5b7af2a6407de5473bba71dcfe2c52f6593395afc274ce411eaa56f2b232
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
-
+
This module extends the functionality of Sale Orders to support a tier
validation process.
Table of contents
@@ -441,10 +441,10 @@
-
Bugs are tracked on GitHub Issues .
+
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 to smash it by providing a detailed and welcomed
-feedback .
+
feedback .
Do not contact contributors directly about support or help with technical issues.
@@ -480,7 +480,7 @@
OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.
-
This module is part of the OCA/sale-workflow project on GitHub.
+
This module is part of the OCA/tier-validation project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute .
From 82cc340dc0c53536a79eaf7b53246b33914ed673 Mon Sep 17 00:00:00 2001
From: Kiril Vangelovski
Date: Tue, 7 Jul 2026 16:23:29 +0200
Subject: [PATCH 35/39] [MIG] sale_tier_validation: Migration to 19.0
---
sale_tier_validation/__manifest__.py | 2 +-
sale_tier_validation/reports/sale_report.py | 10 +++++++---
sale_tier_validation/tests/test_tier_validation.py | 2 +-
sale_tier_validation/views/sale_order_view.xml | 2 +-
4 files changed, 10 insertions(+), 6 deletions(-)
diff --git a/sale_tier_validation/__manifest__.py b/sale_tier_validation/__manifest__.py
index 61ac4c15e..285e16771 100644
--- a/sale_tier_validation/__manifest__.py
+++ b/sale_tier_validation/__manifest__.py
@@ -4,7 +4,7 @@
"name": "Sale Tier Validation",
"summary": "Extends the functionality of Sale Orders to "
"support a tier validation process.",
- "version": "18.0.1.1.0",
+ "version": "19.0.1.0.0",
"category": "Sale",
"website": "https://github.com/OCA/tier-validation",
"author": "Open Source Integrators, Odoo Community Association (OCA)",
diff --git a/sale_tier_validation/reports/sale_report.py b/sale_tier_validation/reports/sale_report.py
index 4fcbfd739..6939d09b4 100644
--- a/sale_tier_validation/reports/sale_report.py
+++ b/sale_tier_validation/reports/sale_report.py
@@ -1,7 +1,7 @@
# Copyright 2024 Quartile (https://www.quartile.co)
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
-from odoo import _, api, models
+from odoo import api, models
from odoo.exceptions import UserError
@@ -15,9 +15,13 @@ def _get_report_values(self, docids, data=None):
for order in docs:
if not order.company_id.sale_report_print_block:
continue
- if order.need_validation or (order.review_ids and not order.validated):
+ if order.need_validation or (
+ order.review_ids and order.validation_status != "validated"
+ ):
raise UserError(
- _("Quotation printing is blocked until the order is approved.")
+ self.env._(
+ "Quotation printing is blocked until the order is approved."
+ )
)
return {
"doc_ids": docids,
diff --git a/sale_tier_validation/tests/test_tier_validation.py b/sale_tier_validation/tests/test_tier_validation.py
index 7d11845b9..ec28ef62e 100644
--- a/sale_tier_validation/tests/test_tier_validation.py
+++ b/sale_tier_validation/tests/test_tier_validation.py
@@ -46,7 +46,7 @@ def setUpClass(cls):
"name": "Test line",
"product_id": cls.product.id,
"product_uom_qty": 1,
- "product_uom": cls.product.uom_id.id,
+ "product_uom_id": cls.product.uom_id.id,
"price_unit": cls.product.list_price,
},
)
diff --git a/sale_tier_validation/views/sale_order_view.xml b/sale_tier_validation/views/sale_order_view.xml
index 832d90734..35731ef47 100644
--- a/sale_tier_validation/views/sale_order_view.xml
+++ b/sale_tier_validation/views/sale_order_view.xml
@@ -36,7 +36,7 @@
From 265e9cc14f4ca1f680025955d75d009453bf8a8e Mon Sep 17 00:00:00 2001
From: Kiril Vangelovski
Date: Tue, 7 Jul 2026 17:12:23 +0200
Subject: [PATCH 36/39] [IMP] sale_tier_validation: increase code coverage
---
sale_tier_validation/README.rst | 2 +-
.../i18n/sale_tier_validation.pot | 34 +++++++++++++++----
.../static/description/index.html | 2 +-
.../tests/test_tier_validation.py | 3 +-
4 files changed, 32 insertions(+), 9 deletions(-)
diff --git a/sale_tier_validation/README.rst b/sale_tier_validation/README.rst
index cf67d1796..ad425bd66 100644
--- a/sale_tier_validation/README.rst
+++ b/sale_tier_validation/README.rst
@@ -11,7 +11,7 @@ Sale Tier Validation
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- !! source digest: sha256:d49d5b7af2a6407de5473bba71dcfe2c52f6593395afc274ce411eaa56f2b232
+ !! source digest: sha256:04da168efaba0424fafb4a57d4a45d505e2bb3b9e163ecf798a297e2f5228370
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
diff --git a/sale_tier_validation/i18n/sale_tier_validation.pot b/sale_tier_validation/i18n/sale_tier_validation.pot
index eedefe827..be2070206 100644
--- a/sale_tier_validation/i18n/sale_tier_validation.pot
+++ b/sale_tier_validation/i18n/sale_tier_validation.pot
@@ -4,7 +4,7 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: Odoo Server 18.0\n"
+"Project-Id-Version: Odoo Server 19.0\n"
"Report-Msgid-Bugs-To: \n"
"Last-Translator: \n"
"Language-Team: \n"
@@ -21,6 +21,11 @@ msgid ""
"Block the printing of the sale order report if the order is not validated."
msgstr ""
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__can_forward
+msgid "Can Forward"
+msgstr ""
+
#. module: sale_tier_validation
#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__can_review
msgid "Can Review"
@@ -36,6 +41,15 @@ msgstr ""
msgid "Config Settings"
msgstr ""
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_report_sale_report_saleorder__display_name
+#: model:ir.model.fields,field_description:sale_tier_validation.field_res_company__display_name
+#: model:ir.model.fields,field_description:sale_tier_validation.field_res_config_settings__display_name
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__display_name
+#: model:ir.model.fields,field_description:sale_tier_validation.field_tier_definition__display_name
+msgid "Display Name"
+msgstr ""
+
#. module: sale_tier_validation
#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__has_comment
msgid "Has Comment"
@@ -46,6 +60,15 @@ msgstr ""
msgid "Hide Reviews"
msgstr ""
+#. module: sale_tier_validation
+#: model:ir.model.fields,field_description:sale_tier_validation.field_report_sale_report_saleorder__id
+#: model:ir.model.fields,field_description:sale_tier_validation.field_res_company__id
+#: model:ir.model.fields,field_description:sale_tier_validation.field_res_config_settings__id
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__id
+#: model:ir.model.fields,field_description:sale_tier_validation.field_tier_definition__id
+msgid "ID"
+msgstr ""
+
#. module: sale_tier_validation
#: model:ir.model.fields,help:sale_tier_validation.field_sale_order__has_comment
msgid "If set, Allow the reviewer to leave a comment on the review."
@@ -78,13 +101,13 @@ msgid "Quotation printing is blocked until the order is approved."
msgstr ""
#. module: sale_tier_validation
-#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__rejected
-msgid "Rejected"
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__rejected_message
+msgid "Rejected Message"
msgstr ""
#. module: sale_tier_validation
-#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__rejected_message
-msgid "Rejected Message"
+#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__require_authentication
+msgid "Require Authentication"
msgstr ""
#. module: sale_tier_validation
@@ -142,7 +165,6 @@ msgid "To Validate Message"
msgstr ""
#. module: sale_tier_validation
-#: model:ir.model.fields,field_description:sale_tier_validation.field_sale_order__validated
#: model_terms:ir.ui.view,arch_db:sale_tier_validation.view_sale_order_filter
msgid "Validated"
msgstr ""
diff --git a/sale_tier_validation/static/description/index.html b/sale_tier_validation/static/description/index.html
index afed0bb84..578173694 100644
--- a/sale_tier_validation/static/description/index.html
+++ b/sale_tier_validation/static/description/index.html
@@ -372,7 +372,7 @@ Sale Tier Validation
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-!! source digest: sha256:d49d5b7af2a6407de5473bba71dcfe2c52f6593395afc274ce411eaa56f2b232
+!! source digest: sha256:04da168efaba0424fafb4a57d4a45d505e2bb3b9e163ecf798a297e2f5228370
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
This module extends the functionality of Sale Orders to support a tier
diff --git a/sale_tier_validation/tests/test_tier_validation.py b/sale_tier_validation/tests/test_tier_validation.py
index ec28ef62e..fc355c7a2 100644
--- a/sale_tier_validation/tests/test_tier_validation.py
+++ b/sale_tier_validation/tests/test_tier_validation.py
@@ -70,9 +70,10 @@ def test_validation_sale_order(self):
self.assertEqual(self.sale_order.state, "sale")
def test_block_print_unvalidated_sale_order(self):
- self.sale_order.company_id.sale_report_print_block = True
report = self.env["report.sale.report_saleorder"]
# Attempt to render the report before validation
+ report._get_report_values(docids=[self.sale_order.id])
+ self.sale_order.company_id.sale_report_print_block = True
with self.assertRaises(UserError):
report._get_report_values(docids=[self.sale_order.id])
self.sale_order.request_validation()
From 31c6481f1fc4c0e4ed3ca00ca0163277dd87eeeb Mon Sep 17 00:00:00 2001
From: Bhavesh Heliconia
Date: Fri, 16 Oct 2026 11:36:18 +0530
Subject: [PATCH 37/39] [IMP] sale_tier_validation: pre-commit auto fixes
---
sale_tier_validation/data/mail_data.xml | 2 +-
sale_tier_validation/models/sale_order.py | 8 +++++---
sale_tier_validation/views/res_config_settings_views.xml | 4 ++--
sale_tier_validation/views/sale_order_view.xml | 2 +-
4 files changed, 9 insertions(+), 7 deletions(-)
diff --git a/sale_tier_validation/data/mail_data.xml b/sale_tier_validation/data/mail_data.xml
index 407ed3627..9d20a9d2d 100644
--- a/sale_tier_validation/data/mail_data.xml
+++ b/sale_tier_validation/data/mail_data.xml
@@ -1,4 +1,4 @@
-
+
+
-
+
res.config.settings.form
res.config.settings
diff --git a/sale_tier_validation/views/sale_order_view.xml b/sale_tier_validation/views/sale_order_view.xml
index 35731ef47..f9a4a2ca3 100644
--- a/sale_tier_validation/views/sale_order_view.xml
+++ b/sale_tier_validation/views/sale_order_view.xml
@@ -1,4 +1,4 @@
-
+
From 4c3b778d86b99c0c3accea6663b0ddf78ab42c85 Mon Sep 17 00:00:00 2001
From: Bhavesh Heliconia
Date: Fri, 16 Oct 2026 11:37:44 +0530
Subject: [PATCH 38/39] [MIG] sale_tier_validation: Migration to 20.0
---
sale_tier_validation/README.rst | 10 +++++-----
sale_tier_validation/__manifest__.py | 2 +-
sale_tier_validation/static/description/index.html | 8 ++++----
sale_tier_validation/tests/test_tier_validation.py | 2 ++
4 files changed, 12 insertions(+), 10 deletions(-)
diff --git a/sale_tier_validation/README.rst b/sale_tier_validation/README.rst
index ad425bd66..4390cff3b 100644
--- a/sale_tier_validation/README.rst
+++ b/sale_tier_validation/README.rst
@@ -21,13 +21,13 @@ Sale Tier Validation
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Ftier--validation-lightgray.png?logo=github
- :target: https://github.com/OCA/tier-validation/tree/19.0/sale_tier_validation
+ :target: https://github.com/OCA/tier-validation/tree/20.0/sale_tier_validation
:alt: OCA/tier-validation
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
- :target: https://translation.odoo-community.org/projects/tier-validation-19-0/tier-validation-19-0-sale_tier_validation
+ :target: https://translation.odoo-community.org/projects/tier-validation-20-0/tier-validation-20-0-sale_tier_validation
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
- :target: https://runboat.odoo-community.org/builds?repo=OCA/tier-validation&target_branch=19.0
+ :target: https://runboat.odoo-community.org/builds?repo=OCA/tier-validation&target_branch=20.0
:alt: Try me on Runboat
|badge1| |badge2| |badge3| |badge4| |badge5|
@@ -93,7 +93,7 @@ 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 to smash it by providing a detailed and welcomed
-`feedback `_.
+`feedback `_.
Do not contact contributors directly about support or help with technical issues.
@@ -132,6 +132,6 @@ OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.
-This module is part of the `OCA/tier-validation `_ project on GitHub.
+This module is part of the `OCA/tier-validation `_ project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/sale_tier_validation/__manifest__.py b/sale_tier_validation/__manifest__.py
index 285e16771..760be3976 100644
--- a/sale_tier_validation/__manifest__.py
+++ b/sale_tier_validation/__manifest__.py
@@ -4,7 +4,7 @@
"name": "Sale Tier Validation",
"summary": "Extends the functionality of Sale Orders to "
"support a tier validation process.",
- "version": "19.0.1.0.0",
+ "version": "20.0.1.0.0",
"category": "Sale",
"website": "https://github.com/OCA/tier-validation",
"author": "Open Source Integrators, Odoo Community Association (OCA)",
diff --git a/sale_tier_validation/static/description/index.html b/sale_tier_validation/static/description/index.html
index 578173694..27d4a69fe 100644
--- a/sale_tier_validation/static/description/index.html
+++ b/sale_tier_validation/static/description/index.html
@@ -3,7 +3,7 @@
-README.rst
+Sale Tier Validation