170 lines
8.3 KiB
XML
170 lines
8.3 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!--
|
|
Copyright 2026 Nexa Systems Inc.
|
|
License OPL-1 (Odoo Proprietary License v1.0)
|
|
Recipe: GENERAL_PROCESSING (General Processing — common workflow umbrella)
|
|
Source: Client's Steelhead export (April 2026 transcription).
|
|
|
|
This is the "envelope" workflow that sits AROUND every job: contract
|
|
review (sales/quoting checkpoint), incoming inspection, scheduling,
|
|
final inspection, and shipping. Specific plating recipes (ENP-STEEL,
|
|
ENP-SP, ENP-ALUM, etc.) handle the technical processing in between.
|
|
|
|
Steelhead-only features that did NOT migrate (we don't have these
|
|
wired up yet — let me know if you want them):
|
|
- "Default Lead Time" on the recipe
|
|
- "Product" linkage from the recipe to a product/service record
|
|
- "Contract Review Users" — list of users who must approve
|
|
contract review before the job can advance
|
|
- Treatment Groups / "Use Price Builders" hook into pricing
|
|
|
|
Tree:
|
|
GENERAL_PROCESSING (recipe)
|
|
├── Contract Review (op, opt-out, customer-visible)
|
|
├── Incoming Inspection (op, auto)
|
|
│ ├── Ready for Incoming Inspection
|
|
│ └── Incoming Inspection (customer-visible)
|
|
├── Scheduling (op)
|
|
├── Final Inspection / Packaging (op, auto)
|
|
│ ├── Ready For Final Inspection / Packaging
|
|
│ └── Final Inspection / Packaging (customer-visible)
|
|
└── Shipping (op, auto)
|
|
├── Ready For Shipping
|
|
├── Packing Slip Created
|
|
└── Shipped (customer-visible)
|
|
-->
|
|
<odoo>
|
|
<data noupdate="0">
|
|
|
|
<!-- ========================= ROOT ========================= -->
|
|
<record id="recipe_general_processing" model="fusion.plating.process.node">
|
|
<field name="name">General Processing</field>
|
|
<field name="code">GENERAL_PROCESSING</field>
|
|
<field name="node_type">recipe</field>
|
|
<field name="icon">fa-sitemap</field>
|
|
<field name="sequence">40</field>
|
|
<field name="auto_complete">True</field>
|
|
<field name="customer_visible">False</field>
|
|
</record>
|
|
|
|
<!-- ========================= 1. Contract Review ========================= -->
|
|
<!-- Sales / quoting checkpoint. Marked opt-out so it can be
|
|
skipped on repeat orders where contract terms haven't
|
|
changed (per Steelhead's setup). -->
|
|
<record id="gp_contract_review" model="fusion.plating.process.node">
|
|
<field name="name">Contract Review</field>
|
|
<field name="node_type">operation</field>
|
|
<field name="parent_id" ref="recipe_general_processing"/>
|
|
<field name="icon">fa-check-circle</field>
|
|
<field name="sequence">10</field>
|
|
<field name="opt_in_out">opt_out</field>
|
|
<field name="customer_visible">True</field>
|
|
<field name="is_manual">True</field>
|
|
</record>
|
|
|
|
<!-- ========================= 2. Incoming Inspection ========================= -->
|
|
<record id="gp_incoming_inspection" model="fusion.plating.process.node">
|
|
<field name="name">Incoming Inspection</field>
|
|
<field name="node_type">operation</field>
|
|
<field name="parent_id" ref="recipe_general_processing"/>
|
|
<field name="icon">fa-search</field>
|
|
<field name="sequence">20</field>
|
|
<field name="auto_complete">True</field>
|
|
<field name="is_manual">True</field>
|
|
</record>
|
|
<record id="gp_incoming_ready" model="fusion.plating.process.node">
|
|
<field name="name">Ready for Incoming Inspection</field>
|
|
<field name="node_type">step</field>
|
|
<field name="parent_id" ref="gp_incoming_inspection"/>
|
|
<field name="icon">fa-clock-o</field>
|
|
<field name="sequence">10</field>
|
|
<field name="customer_visible">False</field>
|
|
</record>
|
|
<record id="gp_incoming_do" model="fusion.plating.process.node">
|
|
<field name="name">Incoming Inspection</field>
|
|
<field name="node_type">step</field>
|
|
<field name="parent_id" ref="gp_incoming_inspection"/>
|
|
<field name="icon">fa-eye</field>
|
|
<field name="sequence">20</field>
|
|
<field name="customer_visible">True</field>
|
|
</record>
|
|
|
|
<!-- ========================= 3. Scheduling ========================= -->
|
|
<record id="gp_scheduling" model="fusion.plating.process.node">
|
|
<field name="name">Scheduling</field>
|
|
<field name="node_type">operation</field>
|
|
<field name="parent_id" ref="recipe_general_processing"/>
|
|
<field name="icon">fa-clock-o</field>
|
|
<field name="sequence">30</field>
|
|
<field name="customer_visible">False</field>
|
|
<field name="is_manual">True</field>
|
|
</record>
|
|
|
|
<!-- ========================= 4. Final Inspection / Packaging ========================= -->
|
|
<record id="gp_final_inspection" model="fusion.plating.process.node">
|
|
<field name="name">Final Inspection / Packaging</field>
|
|
<field name="node_type">operation</field>
|
|
<field name="parent_id" ref="recipe_general_processing"/>
|
|
<field name="icon">fa-cube</field>
|
|
<field name="sequence">40</field>
|
|
<field name="auto_complete">True</field>
|
|
<field name="is_manual">True</field>
|
|
</record>
|
|
<record id="gp_final_ready" model="fusion.plating.process.node">
|
|
<field name="name">Ready For Final Inspection / Packaging</field>
|
|
<field name="node_type">step</field>
|
|
<field name="parent_id" ref="gp_final_inspection"/>
|
|
<field name="icon">fa-clock-o</field>
|
|
<field name="sequence">10</field>
|
|
<field name="customer_visible">False</field>
|
|
</record>
|
|
<record id="gp_final_do" model="fusion.plating.process.node">
|
|
<field name="name">Final Inspection / Packaging</field>
|
|
<field name="node_type">step</field>
|
|
<field name="parent_id" ref="gp_final_inspection"/>
|
|
<field name="icon">fa-cube</field>
|
|
<field name="sequence">20</field>
|
|
<field name="customer_visible">True</field>
|
|
</record>
|
|
|
|
<!-- ========================= 5. Shipping ========================= -->
|
|
<!-- Steelhead shows a truck icon here; our icon list doesn't
|
|
include fa-truck so we fall back to fa-cube (the parts
|
|
leaving the door). -->
|
|
<record id="gp_shipping" model="fusion.plating.process.node">
|
|
<field name="name">Shipping</field>
|
|
<field name="node_type">operation</field>
|
|
<field name="parent_id" ref="recipe_general_processing"/>
|
|
<field name="icon">fa-cube</field>
|
|
<field name="sequence">50</field>
|
|
<field name="auto_complete">True</field>
|
|
<field name="is_manual">True</field>
|
|
</record>
|
|
<record id="gp_shipping_ready" model="fusion.plating.process.node">
|
|
<field name="name">Ready For Shipping</field>
|
|
<field name="node_type">step</field>
|
|
<field name="parent_id" ref="gp_shipping"/>
|
|
<field name="icon">fa-clock-o</field>
|
|
<field name="sequence">10</field>
|
|
<field name="customer_visible">False</field>
|
|
</record>
|
|
<record id="gp_shipping_packing_slip" model="fusion.plating.process.node">
|
|
<field name="name">Packing Slip Created</field>
|
|
<field name="node_type">step</field>
|
|
<field name="parent_id" ref="gp_shipping"/>
|
|
<field name="icon">fa-cube</field>
|
|
<field name="sequence">20</field>
|
|
<field name="customer_visible">False</field>
|
|
</record>
|
|
<record id="gp_shipping_shipped" model="fusion.plating.process.node">
|
|
<field name="name">Shipped</field>
|
|
<field name="node_type">step</field>
|
|
<field name="parent_id" ref="gp_shipping"/>
|
|
<field name="icon">fa-cube</field>
|
|
<field name="sequence">30</field>
|
|
<field name="customer_visible">True</field>
|
|
</record>
|
|
|
|
</data>
|
|
</odoo>
|