mirror of
https://github.com/bringout/oca-technical.git
synced 2026-04-25 15:32:04 +02:00
43 lines
1.5 KiB
Python
43 lines
1.5 KiB
Python
# Copyright 2022 Tecnativa - Víctor Martínez
|
|
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
|
|
from odoo import api, fields, models
|
|
|
|
|
|
class MaintenanceEquipment(models.Model):
|
|
_inherit = "maintenance.equipment"
|
|
|
|
product_id = fields.Many2one(
|
|
comodel_name="product.product",
|
|
string="Product",
|
|
tracking=True,
|
|
domain="[('categ_id','=',product_category_id),('maintenance_ok','=',True)]",
|
|
)
|
|
product_category_id = fields.Many2one(
|
|
comodel_name="product.category", related="category_id.product_category_id"
|
|
)
|
|
|
|
@api.onchange("product_id")
|
|
def _onchange_product_id(self):
|
|
"""If product is set, equipment name, seller, seller ref and cost defaults
|
|
to product ones.
|
|
"""
|
|
if self.product_id:
|
|
self.name = self.product_id.name
|
|
self.cost = self.product_id.standard_price
|
|
if self.product_id.seller_ids:
|
|
first_seller = fields.first(self.product_id.seller_ids)
|
|
self.partner_id = first_seller.partner_id
|
|
self.partner_ref = first_seller.product_code
|
|
|
|
|
|
class MaintenanceEquipmentCategory(models.Model):
|
|
_inherit = "maintenance.equipment.category"
|
|
|
|
product_category_id = fields.Many2one(
|
|
comodel_name="product.category", string="Product Category", tracking=True
|
|
)
|
|
|
|
@api.onchange("product_category_id")
|
|
def _onchange_product_category_id(self):
|
|
if self.product_category_id:
|
|
self.name = self.product_category_id.name
|