Replace em-dashes and en-dashes with hyphens across 789 shipped source files (py/xml/js/scss) so the delivered module reads as human-written; em-dashes had become a recognizable AI-generated tell. Internal .md dev notes are excluded. The WO-sticker mojibake strippers keep their dash search targets (now written — / –). No logic changes: comments and display strings only; validated with py_compile + lxml parse. Rewrite the 7 customer notification emails to be intake-neutral (ship-in / drop-off / pickup) and repair-aware, and fix the Shipped email documents line (packing slip vs bill of lading; certificate only when issued). Subjects use a hyphen separator. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
34 lines
1.3 KiB
Python
34 lines
1.3 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 ResPartner(models.Model):
|
|
_inherit = 'res.partner'
|
|
|
|
x_fc_contract_review_required = fields.Boolean(
|
|
string='Require Contract Review for new parts',
|
|
help='When enabled, newly-created parts under this customer will '
|
|
'show a reminder banner on the part form inviting QA to '
|
|
'complete a Contract Review (QA-005). The review remains '
|
|
'fully optional - the reminder can be dismissed and never '
|
|
'blocks production.',
|
|
)
|
|
# Phase 4 (Sub 11) - relocated from fusion_plating_bridge_mrp.
|
|
x_fc_requires_qc = fields.Boolean(
|
|
string='Require QC Sign-off',
|
|
default=False, tracking=True,
|
|
help='When enabled, a job for this customer cannot be marked '
|
|
'complete until a QC inspector has signed off on the '
|
|
'quality checklist.',
|
|
)
|
|
x_fc_qc_template_id = fields.Many2one(
|
|
'fp.qc.checklist.template', string='QC Checklist Template',
|
|
help='Override the auto-resolved template for this customer. '
|
|
'Leave blank to use any active customer-specific template, '
|
|
'falling back to the global default.',
|
|
)
|