Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
2448e3f
[ADD] 12.0 Sale Tier Validation module added
osi-mgosai Dec 13, 2019
b4405d1
updated version 11 to 12
mgosai Dec 17, 2019
d3077d5
Added dependency as requested
mgosai Jan 20, 2020
a540f55
Removed dependency and added to oca-dependencies.txt
mgosai Jan 20, 2020
cbf7190
[IMP] sale_tier_validation: black, isort
sergio-teruel May 25, 2020
605c9a8
[MIG] sale_tier_validation: Migration to v13.0
sergio-teruel May 25, 2020
809c9b1
Translated using Weblate (Chinese (Simplified))
liweijie0812 Jul 8, 2020
dc27857
Translated using Weblate (Spanish)
danimv5 Jul 27, 2020
e045960
[14.0][MIG] sale_tier_validation
aphon61bank Feb 10, 2021
1008b3b
Added translation using Weblate (Swedish)
simonstromb Nov 24, 2021
54c3528
[MIG] sale_tier_validation: Migration to 15.0
JasminSForgeFlow Dec 22, 2021
6c0ebd0
[IMP] sale_tier_validation: Make tests more resilient
sergio-teruel Jun 20, 2022
2b91d4b
[IMP] sale_tier_validation: Add subtypes to allow subscriptions by cr…
CarlosRoca13 Jul 7, 2022
39b6c09
[IMP] sale_tier_validation: Make subtypes internal
sergio-teruel Sep 29, 2022
02ffa02
Added translation using Weblate (Spanish (Mexico))
alan196 Nov 4, 2022
ef217df
[MIG] sale_tier_validation: Migration to 16.0
bizzappdev Dec 6, 2022
337dd88
Added translation using Weblate (Turkish)
tate11 Mar 30, 2023
b9c4427
[15.0][FIX] Sales order states in tier validation
BT-cserra Jun 6, 2023
0aba99c
[IMP] sale_tier_validation: Add in ROADMAP sent validation problem
BT-cserra Jul 4, 2023
660e2fc
Translated using Weblate (Spanish)
Ivorra78 Jul 25, 2023
afb162c
Convert sale_tier_validation readme fragments to markdown
sbidoul Sep 12, 2023
8d954eb
Translated using Weblate (Spanish)
Ivorra78 Nov 8, 2023
fa7984e
Added translation using Weblate (Italian)
mymage Dec 7, 2023
117970c
[IMP] sale_tier_validation: pre-commit auto fixes
celm1990 Dec 28, 2023
b226e29
[MIG] sale_tier_validation: Migration to 17.0
celm1990 Dec 28, 2023
5d2971c
Translated using Weblate (Swedish)
jakobkrabbe Jun 12, 2024
a4046f0
[IMP] sale_tier_validation: add the option for blocking sale order print
AungKoKoLin1997 Aug 8, 2024
979e0b5
[IMP] sale_tier_validation: pre-commit auto fixes
carlos-lopez-tecnativa Feb 26, 2025
914235c
[MIG] sale_tier_validation: Migration to version 18.0
carlos-lopez-tecnativa Feb 26, 2025
aeeeb8f
Added translation using Weblate (Portuguese)
marcelsavegnago Jun 17, 2025
a93ab14
Added translation using Weblate (Dutch)
bosd Nov 20, 2025
a9b3f80
Added translation using Weblate (Japanese)
Ryoko04 Nov 26, 2025
e2f964d
[IMP] sale_tier_validation: Hide Confirm button if the validation is …
victoralmau Mar 11, 2025
a365aa5
[IMP] sale_tier_validation: pre-commit auto fixes
kirca Jul 7, 2026
82cc340
[MIG] sale_tier_validation: Migration to 19.0
kirca Jul 7, 2026
265e9cc
[IMP] sale_tier_validation: increase code coverage
kirca Jul 7, 2026
31c6481
[IMP] sale_tier_validation: pre-commit auto fixes
BhaveshHeliconia Oct 16, 2026
4c3b778
[MIG] sale_tier_validation: Migration to 20.0
BhaveshHeliconia Oct 16, 2026
e50c7a1
[DON'T MERGE] test-requirements.txt
BhaveshHeliconia Oct 16, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
137 changes: 137 additions & 0 deletions sale_tier_validation/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,137 @@
.. image:: https://odoo-community.org/readme-banner-image
:target: https://odoo-community.org/get-involved?utm_source=readme
:alt: Odoo Community Association

====================
Sale Tier Validation
====================

..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:04da168efaba0424fafb4a57d4a45d505e2bb3b9e163ecf798a297e2f5228370
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
:alt: Beta
.. |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%2Ftier--validation-lightgray.png?logo=github
: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-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=20.0
:alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|

This module extends the functionality of Sale Orders to support a tier
validation process.

**Table of contents**

.. contents::
:local:

Installation
============

This module depends on ``base_tier_validation``. You can find it at
`OCA/server-ux <https://github.com/OCA/server-ux>`__

Configuration
=============

To configure this module, you need to:

1. Go to *Settings > Technical > Tier Validations > Tier Definition*.
2. Create as many tiers as you want for Sale Order model.

If necessary, update the "Block Printing of Unvalidated Quotations"
under *Sales > Configuration > Settings* to block the printing of
quotation when the order has yet to be validated (disabled by default).

Usage
=====

To use this module, you need to:

1. Create a Sale Order triggering at least one "Tier Definition".
2. Click on *Request Validation* button.
3. Under the tab *Reviews* have a look to pending reviews and their
statuses.
4. 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.

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.
- If any module modifies the invisible/readonly/required attribute of
the confirm sales order button, it will invalidate the expected
behavior.

Bug Tracker
===========

Bugs are tracked on `GitHub Issues <https://github.com/OCA/tier-validation/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 <https://github.com/OCA/tier-validation/issues/new?body=module:%20sale_tier_validation%0Aversion:%2020.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.

Do not contact contributors directly about support or help with technical issues.

Credits
=======

Authors
-------

* Open Source Integrators

Contributors
------------

- Mayank Gosai <mgosai@opensourceintegrators.com>
- `Tecnativa <https://www.tecnativa.com>`__:

- Sergio Teruel
- Carlos Lopez

- Tharathip Chaweewongphan <tharathipc@ecosoft.co.th>
- `Quartile <https://www.quartile.co>`__:

- Aung Ko Ko Lin

Maintainers
-----------

This module is maintained by the OCA.

.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org

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 <https://github.com/OCA/tier-validation/tree/20.0/sale_tier_validation>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
4 changes: 4 additions & 0 deletions sale_tier_validation/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).

from . import models
from . import reports
20 changes: 20 additions & 0 deletions sale_tier_validation/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# 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": "20.0.1.0.0",
"category": "Sale",
"website": "https://github.com/OCA/tier-validation",
"author": "Open Source Integrators, Odoo Community Association (OCA)",
"license": "AGPL-3",
"application": False,
"installable": True,
"depends": ["sale", "base_tier_validation"],
"data": [
"data/mail_data.xml",
"views/sale_order_view.xml",
"views/res_config_settings_views.xml",
],
}
77 changes: 77 additions & 0 deletions sale_tier_validation/data/mail_data.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo noupdate="1">
<!-- Sale order -->
<record
id="sale_order_tier_validation_requested"
model="mail.message.subtype"
forcecreate="1"
>
<field name="name">Tier Validation Requested</field>
<field name="res_model">sale.order</field>
<field name="internal">True</field>
</record>
<record
id="sale_order_tier_validation_accepted"
model="mail.message.subtype"
forcecreate="1"
>
<field name="name">Tier Validation Accepted Notification</field>
<field name="res_model">sale.order</field>
<field name="internal">True</field>
</record>
<record
id="sale_order_tier_validation_rejected"
model="mail.message.subtype"
forcecreate="1"
>
<field name="name">Tier Validation Rejected Notification</field>
<field name="res_model">sale.order</field>
<field name="internal">True</field>
</record>
<!-- CRM Team -->
<record
id="crm_team_tier_validation_requested"
model="mail.message.subtype"
forcecreate="1"
>
<field name="name">Tier Validation Requested</field>
<field name="res_model">crm.team</field>
<field name="default" eval="True" />
<field name="internal">True</field>
<field
name="parent_id"
ref="sale_tier_validation.sale_order_tier_validation_requested"
/>
<field name="relation_field">team_id</field>
</record>
<record
id="crm_team_tier_validation_accepted"
model="mail.message.subtype"
forcecreate="1"
>
<field name="name">Tier Validation Accepted Notification</field>
<field name="res_model">crm.team</field>
<field name="default" eval="True" />
<field name="internal">True</field>
<field
name="parent_id"
ref="sale_tier_validation.sale_order_tier_validation_accepted"
/>
<field name="relation_field">team_id</field>
</record>
<record
id="crm_team_tier_validation_rejected"
model="mail.message.subtype"
forcecreate="1"
>
<field name="name">Tier Validation Rejected Notification</field>
<field name="res_model">crm.team</field>
<field name="default" eval="True" />
<field
name="parent_id"
ref="sale_tier_validation.sale_order_tier_validation_rejected"
/>
<field name="internal">True</field>
<field name="relation_field">team_id</field>
</record>
</odoo>
Loading
Loading