diff --git a/account_invoice_supplierinfo_update_qty_multiplier/README.rst b/account_invoice_supplierinfo_update_qty_multiplier/README.rst
index 7c8bbbf38a8..dca7ac97d73 100644
--- a/account_invoice_supplierinfo_update_qty_multiplier/README.rst
+++ b/account_invoice_supplierinfo_update_qty_multiplier/README.rst
@@ -17,13 +17,13 @@ Account Invoice - Quantity Multiplier Update
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Faccount--invoicing-lightgray.png?logo=github
- :target: https://github.com/OCA/account-invoicing/tree/12.0/account_invoice_supplierinfo_update_qty_multiplier
+ :target: https://github.com/OCA/account-invoicing/tree/16.0/account_invoice_supplierinfo_update_qty_multiplier
:alt: OCA/account-invoicing
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
- :target: https://translation.odoo-community.org/projects/account-invoicing-12-0/account-invoicing-12-0-account_invoice_supplierinfo_update_qty_multiplier
+ :target: https://translation.odoo-community.org/projects/account-invoicing-16-0/account-invoicing-16-0-account_invoice_supplierinfo_update_qty_multiplier
: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/account-invoicing&target_branch=12.0
+ :target: https://runboat.odoo-community.org/builds?repo=OCA/account-invoicing&target_branch=16.0
:alt: Try me on Runboat
|badge1| |badge2| |badge3| |badge4| |badge5|
@@ -47,7 +47,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.
@@ -80,6 +80,6 @@ Current `maintainer `__:
|maintainer-legalsylvain|
-This module is part of the `OCA/account-invoicing `_ project on GitHub.
+This module is part of the `OCA/account-invoicing `_ project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/account_invoice_supplierinfo_update_qty_multiplier/__manifest__.py b/account_invoice_supplierinfo_update_qty_multiplier/__manifest__.py
index 84ba8183060..81f6d9e88f4 100644
--- a/account_invoice_supplierinfo_update_qty_multiplier/__manifest__.py
+++ b/account_invoice_supplierinfo_update_qty_multiplier/__manifest__.py
@@ -6,7 +6,7 @@
"name": "Account Invoice - Quantity Multiplier Update",
"summary": "In the invoice Supplierinfo wizard,"
" allow to change the Quantity Multiplier field",
- "version": "12.0.1.0.1",
+ "version": "16.0.1.0.0",
"category": "Accounting & Finance",
"website": "https://github.com/OCA/account-invoicing",
"author": "GRAP,Odoo Community Association (OCA)",
diff --git a/account_invoice_supplierinfo_update_qty_multiplier/i18n/fr.po b/account_invoice_supplierinfo_update_qty_multiplier/i18n/fr.po
index 7df2b69c271..44c5d883808 100644
--- a/account_invoice_supplierinfo_update_qty_multiplier/i18n/fr.po
+++ b/account_invoice_supplierinfo_update_qty_multiplier/i18n/fr.po
@@ -4,11 +4,11 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: Odoo Server 12.0\n"
+"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2023-03-08 15:17+0000\n"
-"PO-Revision-Date: 2023-03-08 15:17+0000\n"
-"Last-Translator: <>\n"
+"POT-Creation-Date: 2024-01-28 21:34+0000\n"
+"PO-Revision-Date: 2024-01-28 21:34+0000\n"
+"Last-Translator: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -21,9 +21,9 @@ msgid "Current Multiplier Qty"
msgstr "Conditionnement"
#. module: account_invoice_supplierinfo_update_qty_multiplier
-#: model:ir.model,name:account_invoice_supplierinfo_update_qty_multiplier.model_account_invoice_line
-msgid "Invoice Line"
-msgstr "Ligne de facture"
+#: model:ir.model,name:account_invoice_supplierinfo_update_qty_multiplier.model_account_move_line
+msgid "Journal Item"
+msgstr "Écriture comptable"
#. module: account_invoice_supplierinfo_update_qty_multiplier
#: model:ir.model.fields,field_description:account_invoice_supplierinfo_update_qty_multiplier.field_wizard_update_invoice_supplierinfo_line__new_multiplier_qty
@@ -34,4 +34,3 @@ msgstr "Nouveau conditionnement"
#: model:ir.model,name:account_invoice_supplierinfo_update_qty_multiplier.model_wizard_update_invoice_supplierinfo_line
msgid "Wizard Line to update supplierinfo"
msgstr ""
-
diff --git a/account_invoice_supplierinfo_update_qty_multiplier/models/__init__.py b/account_invoice_supplierinfo_update_qty_multiplier/models/__init__.py
index 9a496f5097b..8795b3bea64 100644
--- a/account_invoice_supplierinfo_update_qty_multiplier/models/__init__.py
+++ b/account_invoice_supplierinfo_update_qty_multiplier/models/__init__.py
@@ -1 +1 @@
-from . import account_invoice_line
+from . import account_move_line
diff --git a/account_invoice_supplierinfo_update_qty_multiplier/models/account_invoice_line.py b/account_invoice_supplierinfo_update_qty_multiplier/models/account_move_line.py
similarity index 79%
rename from account_invoice_supplierinfo_update_qty_multiplier/models/account_invoice_line.py
rename to account_invoice_supplierinfo_update_qty_multiplier/models/account_move_line.py
index 94438d38ddf..db068cb8292 100644
--- a/account_invoice_supplierinfo_update_qty_multiplier/models/account_invoice_line.py
+++ b/account_invoice_supplierinfo_update_qty_multiplier/models/account_move_line.py
@@ -2,13 +2,12 @@
# @author: Sylvain LE GAL (https://twitter.com/legalsylvain)
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
-from odoo import api, models
+from odoo import models
-class AccountInvoiceLine(models.Model):
- _inherit = "account.invoice.line"
+class AccountMoveLine(models.Model):
+ _inherit = "account.move.line"
- @api.multi
def _prepare_supplier_wizard_line(self, supplierinfo):
res = super()._prepare_supplier_wizard_line(supplierinfo)
res["current_multiplier_qty"] = res["new_multiplier_qty"] = (
diff --git a/account_invoice_supplierinfo_update_qty_multiplier/static/description/index.html b/account_invoice_supplierinfo_update_qty_multiplier/static/description/index.html
index 97dad854198..8c9ff2fe3ce 100644
--- a/account_invoice_supplierinfo_update_qty_multiplier/static/description/index.html
+++ b/account_invoice_supplierinfo_update_qty_multiplier/static/description/index.html
@@ -368,7 +368,7 @@ Account Invoice - Quantity Multiplier Update
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:a248390afd4729a601c357232005eebd0508dced33fabde10661ca04383750f7
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
-
![Try me on Runboat](https://img.shields.io/badge/runboat-Try%20me-875A7B.png)
+
![Try me on Runboat](https://img.shields.io/badge/runboat-Try%20me-875A7B.png)
This module is a glue module installed if the following module are installed:
- account_invoice_supplierinfo_update (same repository)
@@ -392,7 +392,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 to smash it by providing a detailed and welcomed
-feedback.
+feedback.
Do not contact contributors directly about support or help with technical issues.
diff --git a/account_invoice_supplierinfo_update_qty_multiplier/tests/test_module.py b/account_invoice_supplierinfo_update_qty_multiplier/tests/test_module.py
index 90dcc85bdb5..8bf9031515d 100644
--- a/account_invoice_supplierinfo_update_qty_multiplier/tests/test_module.py
+++ b/account_invoice_supplierinfo_update_qty_multiplier/tests/test_module.py
@@ -2,79 +2,56 @@
# @author: Sylvain LE GAL (https://twitter.com/legalsylvain)
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
-from datetime import datetime
+from odoo.tests import tagged
-from odoo.tests.common import TransactionCase
+from odoo.addons.account_invoice_supplierinfo_update.tests.test_module import TestModule
-class TestModule(TransactionCase):
- def setUp(self):
- super().setUp()
- self.AccountInvoice = self.env["account.invoice"]
- self.WizardUpdate = self.env["wizard.update.invoice.supplierinfo"]
- self.SupplierInfo = self.env["product.supplierinfo"]
-
- self.product1 = self.env.ref("product.product_product_4b")
- unit = self.env.ref("uom.product_uom_unit")
- account_id = (
- self.env["account.account"]
- .search([("user_type_id.type", "=", "payable")], limit=1)
- .id
- )
- journal_id = (
- self.env["account.journal"].search([("type", "=", "purchase")], limit=1).id
- )
- product_account_id = self.env.ref("account.demo_coffee_machine_account").id
-
- self.invoice = self.AccountInvoice.create(
+@tagged("post_install", "-at_install")
+class TestModule(TestModule):
+ def test_supplierinfo_update_multiplier_qty(self):
+ self.ProductSupplierinfo.create(
{
- "journal_id": journal_id,
- "partner_id": self.env.ref("base.res_partner_12").id,
- "account_id": account_id,
- "date_invoice": "%s-01-01" % datetime.now().year,
- "invoice_line_ids": [
- (
- 0,
- 0,
- {
- "product_id": self.product1.id,
- "name": "iPad Retina Display",
- "quantity": 10.0,
- "price_unit": 400.0,
- "uom_id": unit.id,
- "account_id": product_account_id,
- },
- )
- ],
+ "partner_id": self.invoice.supplier_partner_id.id,
+ "product_tmpl_id": self.product_a.product_tmpl_id.id,
+ "multiplier_qty": 15.0,
}
)
- # Test Section
- def test_wizard(self):
- # Launch and confirm Wizard
- lines_for_update = self.invoice._get_update_supplierinfo_lines()
- wizard = self.WizardUpdate.with_context(
- default_line_ids=lines_for_update, default_invoice_id=self.invoice.id
- ).create({})
- wizard.line_ids[0].new_multiplier_qty = 55
+ vals_wizard = self.invoice.check_supplierinfo().get("context", {})
+
+ line_ids = vals_wizard.get("default_line_ids", {})
+
+ self.assertEqual(len(line_ids), 2)
+ self.assertEqual(line_ids[0][2]["current_multiplier_qty"], 15.0)
+ self.assertEqual(line_ids[0][2]["new_multiplier_qty"], 15.0)
+ self.assertEqual(line_ids[1][2]["current_multiplier_qty"], False)
+ self.assertEqual(line_ids[1][2]["new_multiplier_qty"], False)
+
+ line_ids[0][2]["new_multiplier_qty"] = 12.0
+ line_ids[1][2]["new_multiplier_qty"] = 14.0
+
+ # Create and launch update process
+ wizard = self.WizardUpdateSupplierinfo.create(
+ {"line_ids": line_ids, "invoice_id": self.invoice.id}
+ )
+
wizard.update_supplierinfo()
- # Check Regressions
- supplierinfo = self.SupplierInfo.search(
+ supplierinfo_a = self.ProductSupplierinfo.search(
[
- ("product_tmpl_id", "=", self.product1.product_tmpl_id.id),
- ("name", "=", self.invoice.partner_id.id),
+ ("partner_id", "=", self.invoice.supplier_partner_id.id),
+ ("product_tmpl_id", "=", self.product_a.product_tmpl_id.id),
]
)
+ self.assertEqual(len(supplierinfo_a), 1)
+ self.assertEqual(supplierinfo_a.multiplier_qty, 12.0)
- self.assertEqual(
- len(supplierinfo),
- 1,
- "Regression : Confirming wizard should have create a supplierinfo",
- )
-
- self.assertEqual(
- supplierinfo.multiplier_qty,
- 55,
- "Confirming wizard should have update Multiplier Qty field.",
+ supplierinfo_b = self.ProductSupplierinfo.search(
+ [
+ ("partner_id", "=", self.invoice.supplier_partner_id.id),
+ ("product_tmpl_id", "=", self.product_b.product_tmpl_id.id),
+ ]
)
+ self.assertEqual(len(supplierinfo_b), 1)
+ self.assertEqual(supplierinfo_b.multiplier_qty, 14.0)
diff --git a/account_invoice_supplierinfo_update_qty_multiplier/wizard/wizard_update_invoice_supplierinfo.xml b/account_invoice_supplierinfo_update_qty_multiplier/wizard/wizard_update_invoice_supplierinfo.xml
index 4983ad775f7..6e42cf836cb 100644
--- a/account_invoice_supplierinfo_update_qty_multiplier/wizard/wizard_update_invoice_supplierinfo.xml
+++ b/account_invoice_supplierinfo_update_qty_multiplier/wizard/wizard_update_invoice_supplierinfo.xml
@@ -14,11 +14,10 @@
>
-
+
diff --git a/account_invoice_supplierinfo_update_qty_multiplier/wizard/wizard_update_invoice_supplierinfo_line.py b/account_invoice_supplierinfo_update_qty_multiplier/wizard/wizard_update_invoice_supplierinfo_line.py
index b65a0f34e22..a7e97c5230b 100644
--- a/account_invoice_supplierinfo_update_qty_multiplier/wizard/wizard_update_invoice_supplierinfo_line.py
+++ b/account_invoice_supplierinfo_update_qty_multiplier/wizard/wizard_update_invoice_supplierinfo_line.py
@@ -2,19 +2,16 @@
# @author: Sylvain LE GAL (https://twitter.com/legalsylvain)
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
-from odoo import api, fields, models
+from odoo import fields, models
class WizardUpdateInvoiceSupplierinfoLine(models.TransientModel):
_inherit = "wizard.update.invoice.supplierinfo.line"
- current_multiplier_qty = fields.Float(
- string="Current Multiplier Qty", readonly=True
- )
+ current_multiplier_qty = fields.Float(readonly=True)
- new_multiplier_qty = fields.Float(string="New Multiplier Qty", required=True)
+ new_multiplier_qty = fields.Float(required=True)
- @api.multi
def _prepare_supplierinfo_update(self):
res = super()._prepare_supplierinfo_update()
res["multiplier_qty"] = self.new_multiplier_qty