Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
c0e280b
[12.0][ADD] hr_expense_tier_validation
ps-tubtim Oct 8, 2019
df36219
[IMP] hr_expense_tier_validation: black, isort
Saran440 Mar 31, 2020
c7318ff
[13.0][MIG] hr_expense_tier_validation
Saran440 Mar 31, 2020
a7f0b04
[14.0][MIG] hr_expense_tier_validation
aphon61bank Feb 8, 2021
ea34908
[FIX] tier validated state submit
Saran440 Aug 20, 2021
e11c3a3
[14.0][FIX] hr_expense_tier_validation: disallow editable expense fro…
ps-tubtim Jun 8, 2022
7768917
[IMP] hr_expense_tier_validation: before this PR, after the reviewer …
ppakpahan Apr 24, 2022
abc77d6
[15.0][MIG] hr_expense_tier_validation
Saran440 Feb 23, 2023
ff8b8e5
Added translation using Weblate (Italian)
mymage Jun 30, 2023
6550124
[MIG] hr_expense_tier_validation: Migration to 16.0
AnutToc Oct 26, 2023
c75650c
Translated using Weblate (Italian)
mymage Nov 23, 2023
d558439
[IMP] hr_expense_tier_validation: pre-commit auto fixes
WorrapongOngsakul Mar 13, 2024
b740bdb
[MIG] hr_expense_tier_validation: Migration to 17.0
WorrapongOngsakul Mar 14, 2024
aa927df
[FIX] hr_expense_tier_validation: Fix + improve tests
victoralmau Nov 27, 2024
e1631b7
[MIG] hr_expense_tier_validation: Migration to 18.0
Saran440 Feb 26, 2025
e1c970e
Added translation using Weblate (Turkish)
bo-eska Jan 2, 2026
0e8778f
[IMP] hr_expense_tier_validation: pre-commit auto fixes
dnplkndll Jun 3, 2026
aadc1a6
[MIG] hr_expense_tier_validation: Migration to 19.0
dnplkndll Jun 2, 2026
0e01caf
[UPD] Update hr_expense_tier_validation.pot
Oct 5, 2026
9e24087
[BOT] post-merge updates
OCA-git-bot Oct 5, 2026
594c77f
Added translation using Weblate (Dutch)
Oct 6, 2026
1061f4c
Translated using Weblate (Dutch)
Oct 6, 2026
9b3f5fc
[IMP] hr_expense_tier_validation: pre-commit auto fixes
BhaveshHeliconia Oct 21, 2026
a309457
[MIG] hr_expense_tier_validation: Migration to 20.0
BhaveshHeliconia Oct 21, 2026
c5d2627
[DON'T MERGE] test-requirements.txt
BhaveshHeliconia Oct 21, 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
124 changes: 124 additions & 0 deletions hr_expense_tier_validation/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,124 @@
.. image:: https://odoo-community.org/readme-banner-image
:target: https://odoo-community.org/get-involved?utm_source=readme
:alt: Odoo Community Association

=======================
Expense Tier Validation
=======================

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

.. |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/hr_expense_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-hr_expense_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 Expense Reports to support a
tier validation process.

**Table of contents**

.. contents::
:local:

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

To configure tier validation for HR expenses:

1. Go to *Settings > Technical > Tier Validations > Tier Definition*
2. Create the desired approval tiers for the hr.expense model.

To define exceptions for expense approvals:

1. Go to *Settings > Technical > System Parameters*
2. Search for "hr_expense.tier_exceptions" in the system parameters.
3. Add the necessary fields that should be excluded from tier
validation.

Usage
=====

To use this module, you need to:

1. Create a Expense Report 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 *Approve*.

Additional features:

- You can filter the Expense Reports requesting your review through the
filter *Needs my Review*.
- User with rights to confirm the Expense Report (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.

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:%20hr_expense_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
-------

* Ecosoft

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

- Pimolnat Suntian <pimolnats@ecosoft.co.th>
- Saran Lim. <saranl@ecosoft.co.th>

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.

.. |maintainer-ps-tubtim| image:: https://github.com/ps-tubtim.png?size=40px
:target: https://github.com/ps-tubtim
:alt: ps-tubtim

Current `maintainer <https://odoo-community.org/page/maintainer-role>`__:

|maintainer-ps-tubtim|

This module is part of the `OCA/tier-validation <https://github.com/OCA/tier-validation/tree/20.0/hr_expense_tier_validation>`_ project on GitHub.

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

from . import models
15 changes: 15 additions & 0 deletions hr_expense_tier_validation/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Copyright 2019 Ecosoft Co., Ltd. (http://ecosoft.co.th)
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).

{
"name": "Expense Tier Validation",
"version": "20.0.1.0.0",
"category": "Human Resources",
"author": "Ecosoft, Odoo Community Association (OCA)",
"license": "AGPL-3",
"website": "https://github.com/OCA/tier-validation",
"depends": ["hr_expense", "base_tier_validation"],
"data": ["data/ir_config_parameter.xml", "views/hr_expense_views.xml"],
"installable": True,
"maintainers": ["ps-tubtim"],
}
7 changes: 7 additions & 0 deletions hr_expense_tier_validation/data/ir_config_parameter.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo noupdate="1">
<record id="parameter_expense_validation_exceptions" model="ir.config_parameter">
<field name="key">hr_expense.tier_exceptions</field>
<field name="value">["message_follower_ids", "access_token"]</field>
</record>
</odoo>
132 changes: 132 additions & 0 deletions hr_expense_tier_validation/i18n/hr_expense_tier_validation.pot
Original file line number Diff line number Diff line change
@@ -0,0 +1,132 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * hr_expense_tier_validation
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 19.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: hr_expense_tier_validation
#: model:ir.model.fields,field_description:hr_expense_tier_validation.field_hr_expense__can_forward
msgid "Can Forward"
msgstr ""

#. module: hr_expense_tier_validation
#: model:ir.model.fields,field_description:hr_expense_tier_validation.field_hr_expense__can_review
msgid "Can Review"
msgstr ""

#. module: hr_expense_tier_validation
#: model:ir.model.fields,field_description:hr_expense_tier_validation.field_hr_expense__display_name
#: model:ir.model.fields,field_description:hr_expense_tier_validation.field_tier_definition__display_name
msgid "Display Name"
msgstr ""

#. module: hr_expense_tier_validation
#: model:ir.model,name:hr_expense_tier_validation.model_hr_expense
msgid "Expense"
msgstr ""

#. module: hr_expense_tier_validation
#: model_terms:ir.ui.view,arch_db:hr_expense_tier_validation.hr_expense_view_search
msgid "Expenses to review"
msgstr ""

#. module: hr_expense_tier_validation
#: model_terms:ir.ui.view,arch_db:hr_expense_tier_validation.hr_expense_view_search
msgid "Expenses validated and ready to be approved"
msgstr ""

#. module: hr_expense_tier_validation
#: model:ir.model.fields,field_description:hr_expense_tier_validation.field_hr_expense__has_comment
msgid "Has Comment"
msgstr ""

#. module: hr_expense_tier_validation
#: model:ir.model.fields,field_description:hr_expense_tier_validation.field_hr_expense__hide_reviews
msgid "Hide Reviews"
msgstr ""

#. module: hr_expense_tier_validation
#: model:ir.model.fields,field_description:hr_expense_tier_validation.field_hr_expense__id
#: model:ir.model.fields,field_description:hr_expense_tier_validation.field_tier_definition__id
msgid "ID"
msgstr ""

#. module: hr_expense_tier_validation
#: model:ir.model.fields,help:hr_expense_tier_validation.field_hr_expense__has_comment
msgid "If set, Allow the reviewer to leave a comment on the review."
msgstr ""

#. module: hr_expense_tier_validation
#: model:ir.model.fields,field_description:hr_expense_tier_validation.field_hr_expense__need_validation
msgid "Need Validation"
msgstr ""

#. module: hr_expense_tier_validation
#: model_terms:ir.ui.view,arch_db:hr_expense_tier_validation.hr_expense_view_search
msgid "Needs my Review"
msgstr ""

#. module: hr_expense_tier_validation
#: model:ir.model.fields,field_description:hr_expense_tier_validation.field_hr_expense__next_review
msgid "Next Review"
msgstr ""

#. module: hr_expense_tier_validation
#: model:ir.model.fields,field_description:hr_expense_tier_validation.field_hr_expense__rejected_message
msgid "Rejected Message"
msgstr ""

#. module: hr_expense_tier_validation
#: model:ir.model.fields,field_description:hr_expense_tier_validation.field_hr_expense__require_authentication
msgid "Require Authentication"
msgstr ""

#. module: hr_expense_tier_validation
#: model:ir.model.fields,field_description:hr_expense_tier_validation.field_hr_expense__reviewer_ids
msgid "Reviewers"
msgstr ""

#. module: hr_expense_tier_validation
#. odoo-python
#: code:addons/hr_expense_tier_validation/models/hr_expense.py:0
msgid "The expense is under validation."
msgstr ""

#. module: hr_expense_tier_validation
#: model:ir.model,name:hr_expense_tier_validation.model_tier_definition
msgid "Tier Definition"
msgstr ""

#. module: hr_expense_tier_validation
#: model:ir.model.fields,field_description:hr_expense_tier_validation.field_hr_expense__to_validate_message
msgid "To Validate Message"
msgstr ""

#. module: hr_expense_tier_validation
#: model_terms:ir.ui.view,arch_db:hr_expense_tier_validation.hr_expense_view_search
msgid "Validated"
msgstr ""

#. module: hr_expense_tier_validation
#: model:ir.model.fields,field_description:hr_expense_tier_validation.field_hr_expense__validated_message
msgid "Validated Message"
msgstr ""

#. module: hr_expense_tier_validation
#: model:ir.model.fields,field_description:hr_expense_tier_validation.field_hr_expense__validation_status
msgid "Validation Status"
msgstr ""

#. module: hr_expense_tier_validation
#: model:ir.model.fields,field_description:hr_expense_tier_validation.field_hr_expense__review_ids
msgid "Validations"
msgstr ""
Loading
Loading