Merge PR #1040 into 14.0

Signed-off-by LoisRForgeFlow
This commit is contained in:
OCA-git-bot
2023-05-25 07:03:06 +00:00
3 changed files with 24 additions and 3 deletions

View File

@@ -1 +1,2 @@
* David Jiménez <david.jimenez@forgeflow.com>
* Lois Rilo <lois.rilo@forgeflow.com>

View File

@@ -1,16 +1,35 @@
# Copyright 2022 ForgeFlow S.L. (https://www.forgeflow.com)
# Copyright 2022-23 ForgeFlow S.L. (https://www.forgeflow.com)
# License AGPL-3.0 or later (https://www.gnu.org/licenses/lgpl).
from odoo import fields, models
from odoo import api, fields, models
class MrpComponentOperate(models.Model):
_inherit = "mrp.component.operate"
scrap_reason_code_id = fields.Many2one(
"scrap.reason.code",
comodel_name="scrap.reason.code",
string="Scrap Reason Code",
domain="[('id', 'in', allowed_reason_code_ids)]",
)
allowed_reason_code_ids = fields.Many2many(
comodel_name="scrap.reason.code",
compute="_compute_allowed_reason_code_ids",
)
@api.depends("product_id")
def _compute_allowed_reason_code_ids(self):
for rec in self:
codes = self.env["scrap.reason.code"]
if rec.product_id:
codes = codes.search(
[
"|",
("product_category_ids", "=", False),
("product_category_ids", "in", rec.product_id.categ_id.id),
]
)
rec.allowed_reason_code_ids = codes
def _create_scrap(self):
scrap = super()._create_scrap()

View File

@@ -13,6 +13,7 @@
name="scrap_reason_code_id"
attrs="{'invisible': [('outgoing_operation', '!=', 'scrap')], 'required': [('outgoing_operation', '=', 'scrap')]}"
/>
<field name="allowed_reason_code_ids" invisible="1" />
</field>
</field>