Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
84f959b
[14.0][ADD] sale_order_general_discount_triple: initial commit
AshishHirapara Jun 16, 2022
2d27e7b
Added translation using Weblate (Italian)
francesco-ooops Jun 24, 2022
b04d033
Translated using Weblate (Italian)
francesco-ooops Jun 24, 2022
e487ae0
sale_order_general_discount_triple: fix onchange
AshishHirapara Jul 15, 2022
6231426
[MIG] sale_order_general_discount_triple: Migration to 16.0
RabbitJon-S73 Feb 2, 2023
f545f52
[REM] sale_order_general_discount_triple: Disable due to breaking change
pedrobaeza Aug 8, 2023
d1e15f5
[IMP] sale_order_general_discount_triple: style
RabbitJon-S73 Sep 8, 2023
07e0333
[FIX] sale_order_general_discount_triple: make all discounts computed
RabbitJon-S73 Aug 9, 2023
22e3816
[IMP] sale_order_general_discount_triple: Add pricelist discount
RabbitJon-S73 Aug 9, 2023
51f6a14
Added translation using Weblate (Spanish)
Ivorra78 Sep 15, 2023
785be16
Translated using Weblate (Spanish)
Ivorra78 Sep 15, 2023
80bf3b4
Translated using Weblate (Spanish)
Ivorra78 Oct 3, 2023
6f597f7
[FIX] sale_order_general_discount_triple: remove attribute required f…
celm1990 Nov 17, 2023
39d7058
Translated using Weblate (Italian)
mymage Dec 1, 2023
eeedea1
[IMP] sale_order_general_discount_triple: pre-commit auto fixes
arantxa-s73 Jul 15, 2024
c7de1f7
[MIG] sale_order_general_discount_triple: Migration to 17.0
arantxa-s73 Jul 15, 2024
ea11b6b
[IMP] sale_order_general_discount_triple: pre-commit auto fixes
sbiosca-s73 Nov 6, 2025
90e92c0
[MIG] sale_order_general_discount_triple : Migration to 18.0
sbiosca-s73 Nov 6, 2025
36bf1f4
[IMP] sale_order_general_discount_triple: pre-commit auto fixes
pablo-cort-s73 Jan 30, 2026
743bcbf
[MIG] sale_order_general_discount_triple: Migration to 19.0
pablo-cort-s73 Jan 30, 2026
1385f7a
fix(oca): Fix problem include test-matrix
pablo-cort-s73 Feb 2, 2026
fcacfb2
[DON'T MERGE] test-requirements.txt
pablo-cort-s73 Jan 30, 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
7 changes: 4 additions & 3 deletions .copier-answers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,11 +17,12 @@ odoo_test_flavor: Both
odoo_version: 19.0
org_name: Odoo Community Association (OCA)
org_slug: OCA
rebel_module_groups: []
rebel_module_groups:
- sale_fixed_discount
- sale_triple_discount,sale_order_general_discount_triple
repo_description: sale-workflow
repo_name: sale-workflow
repo_slug: sale-workflow
repo_website: https://github.com/OCA/sale-workflow
use_pyproject_toml: true
use_ruff: true

use_ruff: true
20 changes: 19 additions & 1 deletion .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,24 @@ jobs:
matrix:
include:
- container: ghcr.io/oca/oca-ci/py3.10-odoo19.0:latest
include: "sale_fixed_discount"
name: test sale_fixed_discount with Odoo
- container: ghcr.io/oca/oca-ci/py3.10-ocb19.0:latest
include: "sale_fixed_discount"
name: test sale_fixed_discount with OCB
makepot: "true"
- container: ghcr.io/oca/oca-ci/py3.10-odoo19.0:latest
include: "sale_triple_discount,sale_order_general_discount_triple"
name: test sale_order_general_discount_triple with Odoo
- container: ghcr.io/oca/oca-ci/py3.10-ocb19.0:latest
include: "sale_triple_discount,sale_order_general_discount_triple"
name: test sale_order_general_discount_triple with OCB
makepot: "true"
- container: ghcr.io/oca/oca-ci/py3.10-odoo19.0:latest
exclude: "sale_fixed_discount,sale_triple_discount,sale_order_general_discount_triple"
name: test with Odoo
- container: ghcr.io/oca/oca-ci/py3.10-ocb19.0:latest
exclude: "sale_fixed_discount,sale_triple_discount,sale_order_general_discount_triple"
name: test with OCB
makepot: "true"
services:
Expand All @@ -51,6 +67,8 @@ jobs:
- 5432:5432
env:
OCA_ENABLE_CHECKLOG_ODOO: "1"
INCLUDE: ${{ matrix.include }}
EXCLUDE: ${{ matrix.exclude }}
steps:
- uses: actions/checkout@v4
with:
Expand All @@ -70,4 +88,4 @@ jobs:
token: ${{ secrets.CODECOV_TOKEN }}
- name: Update .pot files
run: oca_export_and_push_pot https://x-access-token:${{ secrets.GIT_PUSH_TOKEN }}@github.com/${{ github.repository }}
if: ${{ matrix.makepot == 'true' && github.event_name == 'push' && github.repository_owner == 'OCA' }}
if: ${{ matrix.makepot == 'true' && github.event_name == 'push' && github.repository_owner == 'OCA' }}
132 changes: 132 additions & 0 deletions sale_order_general_discount_triple/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,132 @@
.. image:: https://odoo-community.org/readme-banner-image
:target: https://odoo-community.org/get-involved?utm_source=readme
:alt: Odoo Community Association

==================================
Sale Order General Discount Triple
==================================

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

.. |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%2Fsale--workflow-lightgray.png?logo=github
:target: https://github.com/OCA/sale-workflow/tree/19.0/sale_order_general_discount_triple
: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-19-0/sale-workflow-19-0-sale_order_general_discount_triple
: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=19.0
:alt: Try me on Runboat

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

A bridge between Sale Order General
Discount(https://github.com/OCA/sale-workflow/tree/14.0/sale_order_general_discoun)
and Sale Triple
Discount(https://github.com/OCA/sale-workflow/tree/14.0/sale_triple_discount)
module to set the general discount on any of the 3 discount field on
sale order lines.

**Table of contents**

.. contents::
:local:

Usage
=====

To use features of this module, you need to:

1. Go to Settings > General Settings > Pricing
2. Under pricing section, select your prefered Discount type from
'General Discount' field and the same for 'Pricelist Discount'.
3. Option 'No apply' will disable functionality, so this kind of
discount type won't be applied on lines.
4. The selected global discount type among the 3 discounts will be
automatically parsed on sale order line while using 'Discount %' text
field.
5. If pricelist has a discount, it will be applied on the selected
pricelist discount.
6. If 'General Discount' and 'Pricelist Discount' have the same discount
field, 'General Discount' will be applied.

Issues
------

If you want to use pricelist discount its recomended, in order to avoid
conflicts with other modules, to put it in first discount field.

Changelog
=========

14.0.1.0.0
----------

- Initial release

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

Bugs are tracked on `GitHub Issues <https://github.com/OCA/sale-workflow/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/sale-workflow/issues/new?body=module:%20sale_order_general_discount_triple%0Aversion:%2019.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
-------

* Ashish Hirpara
* Ooops

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

- `Ooops <https://www.ooops404.com>`__:

- Ashish Hirpara

- `Studio73 <https://www.studio73.es/>`__:

- Pablo Cortés

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-ashishhirapara| image:: https://github.com/ashishhirapara.png?size=40px
:target: https://github.com/ashishhirapara
:alt: ashishhirapara

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

|maintainer-ashishhirapara|

This module is part of the `OCA/sale-workflow <https://github.com/OCA/sale-workflow/tree/19.0/sale_order_general_discount_triple>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
1 change: 1 addition & 0 deletions sale_order_general_discount_triple/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
from . import models
22 changes: 22 additions & 0 deletions sale_order_general_discount_triple/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Copyright 2022 Ooops - Ashish Hirpara
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
{
"name": "Sale Order General Discount Triple",
"summary": "General discount per sale order with triple",
"version": "19.0.1.0.0",
"category": "Sales",
"website": "https://github.com/OCA/sale-workflow",
"author": "Ashish Hirpara, Ooops, Odoo Community Association (OCA)",
"license": "AGPL-3",
"maintainers": ["ashishhirapara"],
"installable": True,
"depends": [
"delivery",
"sale",
"sale_order_general_discount",
"sale_triple_discount",
],
"data": [
"views/res_config_settings.xml",
],
}
74 changes: 74 additions & 0 deletions sale_order_general_discount_triple/i18n/es.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * sale_order_general_discount_triple
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 18.0+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-11-05 14:42+0000\n"
"PO-Revision-Date: 2025-11-05 14:42+0000\n"
"Last-Translator: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"

#. module: sale_order_general_discount_triple
#: model:ir.model,name:sale_order_general_discount_triple.model_res_config_settings
msgid "Config Settings"
msgstr "Ajustes de configuración"

#. module: sale_order_general_discount_triple
#: model:ir.model.fields,field_description:sale_order_general_discount_triple.field_sale_order_line__discount1
msgid "Disc. 1 (%)"
msgstr "Desc. 1(%)"

#. module: sale_order_general_discount_triple
#: model:ir.model.fields.selection,name:sale_order_general_discount_triple.selection__res_config_settings__general_discount__discount1
#: model:ir.model.fields.selection,name:sale_order_general_discount_triple.selection__res_config_settings__pricelist_discount__discount1
msgid "Discount 1"
msgstr "Descuento 1"

#. module: sale_order_general_discount_triple
#: model:ir.model.fields.selection,name:sale_order_general_discount_triple.selection__res_config_settings__general_discount__discount2
#: model:ir.model.fields.selection,name:sale_order_general_discount_triple.selection__res_config_settings__pricelist_discount__discount2
msgid "Discount 2"
msgstr "Descuento 2"

#. module: sale_order_general_discount_triple
#: model:ir.model.fields,field_description:sale_order_general_discount_triple.field_sale_order_line__discount2
msgid "Discount 2 (%)"
msgstr "Descuento. 2 (%)"

#. module: sale_order_general_discount_triple
#: model:ir.model.fields.selection,name:sale_order_general_discount_triple.selection__res_config_settings__general_discount__discount3
#: model:ir.model.fields.selection,name:sale_order_general_discount_triple.selection__res_config_settings__pricelist_discount__discount3
msgid "Discount 3"
msgstr "Descuento 3"

#. module: sale_order_general_discount_triple
#: model:ir.model.fields,field_description:sale_order_general_discount_triple.field_sale_order_line__discount3
msgid "Discount 3 (%)"
msgstr "Descuento. 3 (%)"

#. module: sale_order_general_discount_triple
#: model:ir.model.fields,field_description:sale_order_general_discount_triple.field_res_config_settings__general_discount
msgid "General Discount"
msgstr "Descuento General"

#. module: sale_order_general_discount_triple
#: model:ir.model.fields,field_description:sale_order_general_discount_triple.field_res_config_settings__pricelist_discount
msgid "Pricelist Discount"
msgstr "Descuento en la lista de precios"

#. module: sale_order_general_discount_triple
#: model:ir.model,name:sale_order_general_discount_triple.model_sale_order
msgid "Sales Order"
msgstr "Pedido de venta"

#. module: sale_order_general_discount_triple
#: model:ir.model,name:sale_order_general_discount_triple.model_sale_order_line
msgid "Sales Order Line"
msgstr "Línea de pedido de venta"
82 changes: 82 additions & 0 deletions sale_order_general_discount_triple/i18n/it.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * sale_order_general_discount_triple
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 14.0\n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2023-12-01 15:35+0000\n"
"Last-Translator: mymage <stefano.consolaro@mymage.it>\n"
"Language-Team: none\n"
"Language: it\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.17\n"

#. module: sale_order_general_discount_triple
#: model:ir.model,name:sale_order_general_discount_triple.model_res_config_settings
msgid "Config Settings"
msgstr "Impostazioni configurazione"

#. module: sale_order_general_discount_triple
#: model:ir.model.fields,field_description:sale_order_general_discount_triple.field_sale_order_line__discount2
msgid "Disc. 2 (%)"
msgstr "Sconto 2 (%)"

#. module: sale_order_general_discount_triple
#: model:ir.model.fields,field_description:sale_order_general_discount_triple.field_sale_order_line__discount3
msgid "Disc. 3 (%)"
msgstr "Sconto 3 (%)"

#. module: sale_order_general_discount_triple
#: model:ir.model.fields.selection,name:sale_order_general_discount_triple.selection__res_config_settings__general_discount__discount
#: model:ir.model.fields.selection,name:sale_order_general_discount_triple.selection__res_config_settings__pricelist_discount__discount
msgid "Discount"
msgstr "Sconto"

#. module: sale_order_general_discount_triple
#: model:ir.model.fields.selection,name:sale_order_general_discount_triple.selection__res_config_settings__general_discount__discount2
#: model:ir.model.fields.selection,name:sale_order_general_discount_triple.selection__res_config_settings__pricelist_discount__discount2
msgid "Discount 2"
msgstr "Sconto 2"

#. module: sale_order_general_discount_triple
#: model:ir.model.fields.selection,name:sale_order_general_discount_triple.selection__res_config_settings__general_discount__discount3
#: model:ir.model.fields.selection,name:sale_order_general_discount_triple.selection__res_config_settings__pricelist_discount__discount3
msgid "Discount 3"
msgstr "Sconto 3"

#. module: sale_order_general_discount_triple
#: model:ir.model.fields,field_description:sale_order_general_discount_triple.field_res_config_settings__general_discount
msgid "General Discount"
msgstr "Sconto Generale"

#. module: sale_order_general_discount_triple
#: model:ir.model.fields,field_description:sale_order_general_discount_triple.field_res_config_settings__pricelist_discount
msgid "Pricelist Discount"
msgstr "Sconto listino"

#. module: sale_order_general_discount_triple
#: model:ir.model,name:sale_order_general_discount_triple.model_sale_order
msgid "Sales Order"
msgstr "Ordine di vendita"

#. module: sale_order_general_discount_triple
#: model:ir.model,name:sale_order_general_discount_triple.model_sale_order_line
msgid "Sales Order Line"
msgstr "Riga ordine di vendita"

#~ msgid "Discount (%)"
#~ msgstr "Sconto (%)"

#~ msgid "Display Name"
#~ msgstr "Nome visualizzato"

#~ msgid "ID"
#~ msgstr "ID"

#~ msgid "Last Modified on"
#~ msgstr "Ultima modifica il"
Loading
Loading