# -*- coding: utf-8 -*- # Copyright 2026 Nexa Systems Inc. # License OPL-1 (Odoo Proprietary License v1.0) # Part of the Fusion Plating product family. from odoo import fields, models class FpCustomerSpec(models.Model): """Extend the quality customer-spec library with nuclear flags. When a customer spec is flagged `x_fc_is_nuclear`, the system will surface the N299 level, NQA-1 applicability and nuclear customer type so that jobs referencing the spec can inherit the correct retention and traceability rules. """ _inherit = 'fusion.plating.customer.spec' x_fc_is_nuclear = fields.Boolean( string='Nuclear Spec', tracking=True, help='Tick when this specification applies to nuclear work.', ) x_fc_n299_level_id = fields.Many2one( 'fusion.plating.n299.level', string='CSA N299 Level', tracking=True, ) x_fc_nqa1_applicable = fields.Boolean( string='NQA-1 Applicable', tracking=True, help='Tick when this specification covers work subject to ASME NQA-1.', ) x_fc_extended_retention_years = fields.Integer( string='Extended Retention (Years)', help='Override the default document-retention period for records ' 'tied to this specification. Leave 0 to inherit the N299 level ' 'default or the company default.', ) x_fc_nuclear_customer_type = fields.Selection( [ ('opg', 'OPG — Ontario Power Generation'), ('bruce_power', 'Bruce Power'), ('aecl', 'AECL / CNL'), ('cameco', 'Cameco'), ('candu_energy', 'Candu Energy'), ('us_utility', 'US Nuclear Utility'), ('other', 'Other'), ], string='Nuclear Customer Type', tracking=True, )