Three view edits to surface the new cert toggles + workflow nudges: 1. res.partner — Plating Documents tab gains a "Aerospace / Defence" separator + group with the three new toggles (Nadcap / MTR / Customer-Specific). All boolean_toggle widget, default OFF. 2. fp.process.node — Recipe form gains a "Certificate Output" group visible only when node_type == 'recipe'. Five requires_* toggles + a blue info banner explaining the suppress-only precedence. 3. fp.certificate — Certificate PDF tab gains a yellow alert banner when certificate_type is one of the three orphan types AND no attachment is set. Tells the operator "this type expects a PDF you upload from disk". Sub: docs/superpowers/specs/2026-05-27-recipe-cert-toggles-design.md Task: T6. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
121 lines
6.0 KiB
XML
121 lines
6.0 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!--
|
|
Copyright 2026 Nexa Systems Inc.
|
|
License OPL-1 (Odoo Proprietary License v1.0)
|
|
Part of the Fusion Plating product family.
|
|
-->
|
|
<odoo>
|
|
|
|
<record id="view_partner_form_fp_document_prefs" model="ir.ui.view">
|
|
<field name="name">res.partner.form.fp.document.prefs</field>
|
|
<field name="model">res.partner</field>
|
|
<field name="inherit_id" ref="base.view_partner_form"/>
|
|
<field name="arch" type="xml">
|
|
<xpath expr="//notebook" position="inside">
|
|
<page string="Plating Documents"
|
|
name="fp_document_prefs"
|
|
invisible="is_company != True">
|
|
<group string="Documents to Send on Shipment"
|
|
name="fp_document_prefs_group">
|
|
<p class="text-muted" colspan="2">
|
|
Control which quality documents are auto-generated and
|
|
emailed to this customer when a job ships. Matches the
|
|
customer's PO requirements so the shop doesn't have to
|
|
remember per-account preferences.
|
|
</p>
|
|
<group>
|
|
<field name="x_fc_send_coc" widget="boolean_toggle"/>
|
|
<field name="x_fc_send_thickness_report" widget="boolean_toggle"/>
|
|
</group>
|
|
<group>
|
|
<field name="x_fc_send_packing_slip" widget="boolean_toggle"/>
|
|
<field name="x_fc_send_bol" widget="boolean_toggle"/>
|
|
</group>
|
|
<!-- Aerospace / Defence cert toggles (spec 2026-05-27).
|
|
Default OFF; flip ON for aerospace customers that
|
|
demand Nadcap / MTR / customer-specific cert
|
|
alongside the standard CoC. -->
|
|
<separator string="Aerospace / Defence" colspan="2"/>
|
|
<group>
|
|
<field name="x_fc_send_nadcap_cert" widget="boolean_toggle"/>
|
|
<field name="x_fc_send_mill_test" widget="boolean_toggle"/>
|
|
</group>
|
|
<group>
|
|
<field name="x_fc_send_customer_specific" widget="boolean_toggle"/>
|
|
</group>
|
|
</group>
|
|
<separator string="Default CoC Contact"/>
|
|
<p class="text-muted">
|
|
The named contact this customer's CoC is addressed
|
|
to and emailed to. Pre-fills cert records when a
|
|
job ships. Leave blank to force the manager to pick
|
|
at issue time.
|
|
</p>
|
|
<group>
|
|
<field name="x_fc_default_coc_contact_id"
|
|
options="{'no_create': True}"/>
|
|
</group>
|
|
<separator string="Cert Statement Override (Sub 12c+)"/>
|
|
<p class="text-muted">
|
|
Boilerplate text printed in the "Certification Statement"
|
|
block on this customer's CoC. Leave blank to use the
|
|
company default, then a hardcoded AS9100/ISO 9001
|
|
statement.
|
|
</p>
|
|
<field name="x_fc_cert_statement"
|
|
placeholder="e.g. We certify these parts conform to MIL-DTL-5541F Class 1A and have been processed in accordance with…"/>
|
|
</page>
|
|
</xpath>
|
|
</field>
|
|
</record>
|
|
|
|
<!-- Sub 6 — Per-contact routing flags on the contact's own form
|
|
(opens when editing a child contact row). Applied to every
|
|
res.partner form so delivery-location partners and their child
|
|
contacts both surface the same flags. -->
|
|
<record id="view_partner_form_fp_contact_routing_flags"
|
|
model="ir.ui.view">
|
|
<field name="name">res.partner.form.fp.contact.routing.flags</field>
|
|
<field name="model">res.partner</field>
|
|
<field name="inherit_id" ref="base.view_partner_form"/>
|
|
<field name="priority">30</field>
|
|
<field name="arch" type="xml">
|
|
<xpath expr="//notebook" position="inside">
|
|
<page string="Communication Routing"
|
|
name="fp_contact_routing"
|
|
invisible="is_company == True">
|
|
<p class="text-muted">
|
|
Tick the streams this contact should receive. Leave all
|
|
blank to let the customer's company-level email handle
|
|
everything (default behaviour). Set
|
|
<b>Global Contact</b> for a primary account-manager
|
|
contact who wants visibility into every outbound stream.
|
|
</p>
|
|
<group>
|
|
<group>
|
|
<field name="x_fc_is_global_contact"
|
|
widget="boolean_toggle"/>
|
|
</group>
|
|
</group>
|
|
<group string="Per-stream subscriptions"
|
|
invisible="x_fc_is_global_contact">
|
|
<group>
|
|
<field name="x_fc_receives_certs"
|
|
widget="boolean_toggle"/>
|
|
<field name="x_fc_receives_qc"
|
|
widget="boolean_toggle"/>
|
|
</group>
|
|
<group>
|
|
<field name="x_fc_receives_quotes_so"
|
|
widget="boolean_toggle"/>
|
|
<field name="x_fc_receives_invoices"
|
|
widget="boolean_toggle"/>
|
|
</group>
|
|
</group>
|
|
</page>
|
|
</xpath>
|
|
</field>
|
|
</record>
|
|
|
|
</odoo>
|