feat(numbering): wire CoC/RCV/DLV/PU into parent-numbered mixin + rename counters

Per-model counter fields on sale.order renamed to x_fc_pn_*_count
to avoid collision with pre-existing compute fields of the same
short name in bridge_mrp / receiving / configurator (silent
compute-override was suppressing the storage). 4 child models
(fp.certificate, fp.receiving, fusion.plating.delivery,
fusion.plating.pickup.request) now derive names as PFX-<parent>
with -NN suffix from the 2nd onward.

fusion.plating.pickup.request gains a sale_order_id field
(optional) so pickups created against an SO get parent-derived
names, while standalone pickups (pre-SO) fall back to PU/YYYY/NNNN.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
gsinghpal
2026-05-12 13:30:37 -04:00
parent 765a0a4c82
commit 0d85063b5e
17 changed files with 489 additions and 64 deletions

View File

@@ -288,6 +288,25 @@
<field name="x_fc_ship_via"/>
<field name="x_fc_invoice_strategy"/>
</xpath>
<xpath expr="//group[@name='x_fc_customer_refs']" position="attributes">
<attribute name="invisible">1</attribute>
</xpath>
<!-- Notes group sits awkwardly above the main fields in core; relocate
to a notebook tab so the form opens on the operationally relevant
fields (customer / part / steps) instead of empty note placeholders. -->
<xpath expr="//group[@name='x_fc_notes']" position="attributes">
<attribute name="invisible">1</attribute>
</xpath>
<xpath expr="//page[@name='costs']" position="before">
<page string="Notes" name="notes">
<group>
<field name="x_fc_internal_note" nolabel="1"
placeholder="Internal note (not shown to customer)…"/>
<field name="x_fc_external_note" nolabel="1"
placeholder="External note (printed on customer paperwork)…"/>
</group>
</page>
</xpath>
</field>
</record>
</odoo>