[FIX] account_move_line_purchase_info: Overwrite _compute_invoice to ensure invoice count consistency
This commit is contained in:
parent
25fc3c341f
commit
24fe25c97c
@ -1,11 +1,11 @@
|
|||||||
# Copyright 2019 ForgeFlow S.L.
|
# Copyright 2019-2020 ForgeFlow S.L.
|
||||||
# (https://www.forgeflow.com)
|
# (https://www.forgeflow.com)
|
||||||
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
|
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
|
||||||
|
|
||||||
{
|
{
|
||||||
"name": "Account Move Line Purchase Info",
|
"name": "Account Move Line Purchase Info",
|
||||||
"summary": "Introduces the purchase order line to the journal items",
|
"summary": "Introduces the purchase order line to the journal items",
|
||||||
"version": "13.0.1.0.0",
|
"version": "13.0.1.1.0",
|
||||||
"author": "ForgeFlow, Odoo Community Association (OCA)",
|
"author": "ForgeFlow, Odoo Community Association (OCA)",
|
||||||
"website": "https://www.github.com/OCA/account-financial-tools",
|
"website": "https://www.github.com/OCA/account-financial-tools",
|
||||||
"category": "Generic",
|
"category": "Generic",
|
||||||
|
@ -0,0 +1,13 @@
|
|||||||
|
# Copyright 2020 ForgeFlow (https://www.forgeflow.com)
|
||||||
|
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
|
||||||
|
from openupgradelib import openupgrade
|
||||||
|
|
||||||
|
|
||||||
|
@openupgrade.migrate()
|
||||||
|
def migrate(env, version):
|
||||||
|
pos = (
|
||||||
|
env["account.move.line"]
|
||||||
|
.search([("purchase_id", "!=", False), ("move_id.type", "=", "entry")])
|
||||||
|
.mapped("purchase_id")
|
||||||
|
)
|
||||||
|
pos._compute_invoice()
|
@ -1,8 +1,23 @@
|
|||||||
# Copyright 2019 ForgeFlow S.L.
|
# Copyright 2019-2020 ForgeFlow S.L.
|
||||||
# (https://www.forgeflow.com)
|
# (https://www.forgeflow.com)
|
||||||
# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html)
|
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
|
||||||
|
|
||||||
from odoo import models
|
from odoo import api, models
|
||||||
|
|
||||||
|
|
||||||
|
class PurchaseOrder(models.Model):
|
||||||
|
_inherit = "purchase.order"
|
||||||
|
|
||||||
|
@api.depends("order_line.invoice_lines.move_id")
|
||||||
|
def _compute_invoice(self):
|
||||||
|
"""Overwritten compute to avoid show all Journal Entries with
|
||||||
|
purchase_order_line as invoice_lines One2many would take them into account."""
|
||||||
|
for order in self:
|
||||||
|
invoices = order.mapped("order_line.invoice_lines.move_id").filtered(
|
||||||
|
lambda m: m.is_invoice(include_receipts=True)
|
||||||
|
)
|
||||||
|
order.invoice_ids = [(6, 0, invoices.ids)]
|
||||||
|
order.invoice_count = len(invoices)
|
||||||
|
|
||||||
|
|
||||||
class PurchaseOrderLine(models.Model):
|
class PurchaseOrderLine(models.Model):
|
||||||
|
@ -1 +1,2 @@
|
|||||||
* Jordi Ballester Alomar <jordi.ballester@forgeflow.com>
|
* Jordi Ballester Alomar <jordi.ballester@forgeflow.com>
|
||||||
|
* Héctor Villarreal <hector.villarreal@forgeflow.com>
|
||||||
|
@ -76,9 +76,9 @@ class TestAccountMoveLinePurchaseInfo(common.TransactionCase):
|
|||||||
)
|
)
|
||||||
return user.id
|
return user.id
|
||||||
|
|
||||||
def _create_account_type(self, name, type):
|
def _create_account_type(self, name, a_type):
|
||||||
acc_type = self.acc_type_model.create(
|
acc_type = self.acc_type_model.create(
|
||||||
{"name": name, "type": type, "internal_group": name}
|
{"name": name, "type": a_type, "internal_group": name}
|
||||||
)
|
)
|
||||||
return acc_type
|
return acc_type
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user