Files
Odoo-Modules/fusion-plating/fusion_plating_bridge_maintenance/models/fp_maintenance_node.py
gsinghpal 0ff8c0b93f changes
2026-04-13 02:35:35 -04:00

46 lines
1.2 KiB
Python

# -*- coding: utf-8 -*-
# Copyright 2026 Nexa Systems Inc.
# License OPL-1 (Odoo Proprietary License v1.0)
from odoo import api, fields, models
class FpMaintenanceNode(models.Model):
"""Maintenance checklist item.
Individual task or check within a maintenance plan.
Auto-numbered on creation.
"""
_name = 'fp.maintenance.node'
_description = 'Fusion Plating — Maintenance Node'
_order = 'number desc'
name = fields.Char(
string='Name',
required=True,
)
number = fields.Integer(
string='Number',
readonly=True,
copy=False,
)
plan_id = fields.Many2one(
'fp.maintenance.plan',
string='Plan',
ondelete='set null',
)
active = fields.Boolean(default=True)
company_id = fields.Many2one(
'res.company',
string='Company',
default=lambda self: self.env.company,
)
@api.model_create_multi
def create(self, vals_list):
for vals in vals_list:
if not vals.get('number'):
last = self.sudo().search([], order='number desc', limit=1)
vals['number'] = (last.number if last else 0) + 1
return super().create(vals_list)