55 lines
2.0 KiB
Python
55 lines
2.0 KiB
Python
# -*- 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 FpFair(models.Model):
|
|
"""Aerospace extension to the quality FAIR model.
|
|
|
|
Adds the AS9102 form 1/2/3 attachment slots and the customer-approval
|
|
signature block that aerospace customers routinely require on top of
|
|
the generic first-article report.
|
|
"""
|
|
_inherit = 'fusion.plating.fair'
|
|
|
|
x_fc_as9102_form1 = fields.Binary(
|
|
string='AS9102 Form 1 (Part Accountability)',
|
|
help='Scanned / generated copy of AS9102 Form 1 — part '
|
|
'accountability header.',
|
|
)
|
|
x_fc_as9102_form1_filename = fields.Char(string='Form 1 Filename')
|
|
|
|
x_fc_as9102_form2 = fields.Binary(
|
|
string='AS9102 Form 2 (Product Accountability)',
|
|
help='Scanned / generated copy of AS9102 Form 2 — product '
|
|
'accountability, raw material / process / inspection records.',
|
|
)
|
|
x_fc_as9102_form2_filename = fields.Char(string='Form 2 Filename')
|
|
|
|
x_fc_as9102_form3 = fields.Binary(
|
|
string='AS9102 Form 3 (Characteristic Accountability)',
|
|
help='Scanned / generated copy of AS9102 Form 3 — characteristic '
|
|
'accountability, verification, and compatibility evaluation.',
|
|
)
|
|
x_fc_as9102_form3_filename = fields.Char(string='Form 3 Filename')
|
|
|
|
x_fc_drawing_revision = fields.Char(
|
|
string='Drawing Revision',
|
|
tracking=True,
|
|
help='Customer drawing revision this FAIR is against — must match '
|
|
'the revision shipped to the customer.',
|
|
)
|
|
x_fc_customer_approval_id = fields.Many2one(
|
|
'res.users',
|
|
string='Customer Approver',
|
|
tracking=True,
|
|
help='User who recorded the customer-side approval of this FAIR.',
|
|
)
|
|
x_fc_customer_approval_date = fields.Date(
|
|
string='Customer Approval Date',
|
|
tracking=True,
|
|
)
|