387 lines
19 KiB
XML
387 lines
19 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!--
|
|
Copyright 2026 Nexa Systems Inc.
|
|
License OPL-1 (Odoo Proprietary License v1.0)
|
|
Recipe: ANODIZE (Sulfuric Anodize — Type II)
|
|
Source: Client's Steelhead export (April 2026 transcription).
|
|
|
|
Anodize is an umbrella workflow covering pre-treatment, the wet
|
|
anodize line (alkaline clean → etch → deoxidize → sulfuric anodize
|
|
→ hot water seal), and post-treatment (dry, unrack, de-mask).
|
|
|
|
Tree:
|
|
ANODIZE (recipe)
|
|
Ready for Solvent Clean (1) (sub-process, auto)
|
|
Solvent Clean (1) (operation, customer-visible)
|
|
Blasting (sub-process, signoff, auto)
|
|
Ready For Blast (operation)
|
|
Blast (operation, customer-visible)
|
|
Masking (sub-process, signoff, auto)
|
|
Ready For Masking (operation)
|
|
Masking (operation, customer-visible)
|
|
Racking (sub-process, auto)
|
|
Ready for Racking (operation)
|
|
Racking (operation, customer-visible)
|
|
Anodize Line (sub-process, auto)
|
|
Ready For Anodize (operation)
|
|
Alkaline Clean (Tank A1) (operation, customer-visible)
|
|
Primary Rinse (Tank A2)
|
|
Secondary Rinse (Tank A4)
|
|
Etch (Tank A3) (operation, customer-visible)
|
|
Primary Rinse (Tank A4)
|
|
Secondary Rinse (Tank A6)
|
|
Deoxidize (Tank A5) (operation, customer-visible)
|
|
Primary Rinse (Tank A6)
|
|
Secondary Rinse (Tank A8)
|
|
Sulfuric Anodize (operation, auto)
|
|
Sulfuric Anodize Ramp (Tank A9)
|
|
Sulfuric Anodize (Tank A9) (operation, signoff, customer-visible)
|
|
Primary Rinse (Tank A8)
|
|
Secondary Rinse (Tank A12)
|
|
Hot Rinse (Tank A17)
|
|
Hot Water Seal (Tank A16) (operation, customer-visible)
|
|
Primary Rinse (Tank A12)
|
|
Hot Rinse (Tank A17) (customer-visible)
|
|
Anodize Dry (sub-process)
|
|
Unracking (sub-process, auto)
|
|
Ready for Unrack (operation)
|
|
Unracking (operation, customer-visible)
|
|
De-Masking (sub-process, signoff, auto)
|
|
Ready for De-Masking (operation)
|
|
De-Masking (operation, customer-visible)
|
|
-->
|
|
<odoo>
|
|
<data noupdate="0">
|
|
|
|
<!-- ========================= ROOT ========================= -->
|
|
<record id="recipe_anodize" model="fusion.plating.process.node">
|
|
<field name="name">Anodize</field>
|
|
<field name="code">ANODIZE</field>
|
|
<field name="node_type">recipe</field>
|
|
<field name="icon">fa-flask</field>
|
|
<field name="sequence">50</field>
|
|
<field name="auto_complete">True</field>
|
|
<field name="customer_visible">False</field>
|
|
</record>
|
|
|
|
<!-- ========================= 1. Ready for Solvent Clean (1) ========================= -->
|
|
<record id="anodize_ready_solvent_clean" model="fusion.plating.process.node">
|
|
<field name="name">Ready for Solvent Clean (1)</field>
|
|
<field name="node_type">sub_process</field>
|
|
<field name="parent_id" ref="recipe_anodize"/>
|
|
<field name="icon">fa-shower</field>
|
|
<field name="sequence">10</field>
|
|
<field name="auto_complete">True</field>
|
|
</record>
|
|
<record id="anodize_solvent_clean" model="fusion.plating.process.node">
|
|
<field name="name">Solvent Clean (1)</field>
|
|
<field name="node_type">operation</field>
|
|
<field name="parent_id" ref="anodize_ready_solvent_clean"/>
|
|
<field name="icon">fa-shower</field>
|
|
<field name="sequence">10</field>
|
|
<field name="customer_visible">True</field>
|
|
</record>
|
|
|
|
<!-- ========================= 2. Blasting ========================= -->
|
|
<record id="anodize_blasting" model="fusion.plating.process.node">
|
|
<field name="name">Blasting</field>
|
|
<field name="node_type">sub_process</field>
|
|
<field name="parent_id" ref="recipe_anodize"/>
|
|
<field name="icon">fa-bullseye</field>
|
|
<field name="sequence">20</field>
|
|
<field name="auto_complete">True</field>
|
|
<field name="requires_signoff">True</field>
|
|
</record>
|
|
<record id="anodize_blasting_ready" model="fusion.plating.process.node">
|
|
<field name="name">Ready For Blast</field>
|
|
<field name="node_type">operation</field>
|
|
<field name="parent_id" ref="anodize_blasting"/>
|
|
<field name="icon">fa-clock-o</field>
|
|
<field name="sequence">10</field>
|
|
</record>
|
|
<record id="anodize_blasting_do" model="fusion.plating.process.node">
|
|
<field name="name">Blast</field>
|
|
<field name="node_type">operation</field>
|
|
<field name="parent_id" ref="anodize_blasting"/>
|
|
<field name="icon">fa-bullseye</field>
|
|
<field name="sequence">20</field>
|
|
<field name="customer_visible">True</field>
|
|
</record>
|
|
|
|
<!-- ========================= 3. Masking ========================= -->
|
|
<record id="anodize_masking" model="fusion.plating.process.node">
|
|
<field name="name">Masking</field>
|
|
<field name="node_type">sub_process</field>
|
|
<field name="parent_id" ref="recipe_anodize"/>
|
|
<field name="icon">fa-paint-brush</field>
|
|
<field name="sequence">30</field>
|
|
<field name="auto_complete">True</field>
|
|
<field name="requires_signoff">True</field>
|
|
</record>
|
|
<record id="anodize_masking_ready" model="fusion.plating.process.node">
|
|
<field name="name">Ready For Masking</field>
|
|
<field name="node_type">operation</field>
|
|
<field name="parent_id" ref="anodize_masking"/>
|
|
<field name="icon">fa-clock-o</field>
|
|
<field name="sequence">10</field>
|
|
</record>
|
|
<record id="anodize_masking_do" model="fusion.plating.process.node">
|
|
<field name="name">Masking</field>
|
|
<field name="node_type">operation</field>
|
|
<field name="parent_id" ref="anodize_masking"/>
|
|
<field name="icon">fa-paint-brush</field>
|
|
<field name="sequence">20</field>
|
|
<field name="customer_visible">True</field>
|
|
</record>
|
|
|
|
<!-- ========================= 4. Racking ========================= -->
|
|
<record id="anodize_racking" model="fusion.plating.process.node">
|
|
<field name="name">Racking</field>
|
|
<field name="node_type">sub_process</field>
|
|
<field name="parent_id" ref="recipe_anodize"/>
|
|
<field name="icon">fa-th</field>
|
|
<field name="sequence">40</field>
|
|
<field name="auto_complete">True</field>
|
|
</record>
|
|
<record id="anodize_racking_ready" model="fusion.plating.process.node">
|
|
<field name="name">Ready for Racking</field>
|
|
<field name="node_type">operation</field>
|
|
<field name="parent_id" ref="anodize_racking"/>
|
|
<field name="icon">fa-clock-o</field>
|
|
<field name="sequence">10</field>
|
|
</record>
|
|
<record id="anodize_racking_do" model="fusion.plating.process.node">
|
|
<field name="name">Racking</field>
|
|
<field name="node_type">operation</field>
|
|
<field name="parent_id" ref="anodize_racking"/>
|
|
<field name="icon">fa-th</field>
|
|
<field name="sequence">20</field>
|
|
<field name="customer_visible">True</field>
|
|
</record>
|
|
|
|
<!-- ========================= 5. Anodize Line (sub-process) ========================= -->
|
|
<record id="anodize_line" model="fusion.plating.process.node">
|
|
<field name="name">Anodize Line</field>
|
|
<field name="node_type">sub_process</field>
|
|
<field name="parent_id" ref="recipe_anodize"/>
|
|
<field name="icon">fa-industry</field>
|
|
<field name="sequence">50</field>
|
|
<field name="auto_complete">True</field>
|
|
</record>
|
|
|
|
<!-- 5a. Ready For Anodize -->
|
|
<record id="anodize_line_ready" model="fusion.plating.process.node">
|
|
<field name="name">Ready For Anodize</field>
|
|
<field name="node_type">operation</field>
|
|
<field name="parent_id" ref="anodize_line"/>
|
|
<field name="icon">fa-clock-o</field>
|
|
<field name="sequence">10</field>
|
|
</record>
|
|
|
|
<!-- 5b. Alkaline Clean (Tank A-1) -->
|
|
<record id="anodize_alkaline_clean" model="fusion.plating.process.node">
|
|
<field name="name">Alkaline Clean (Tank A-1)</field>
|
|
<field name="node_type">operation</field>
|
|
<field name="parent_id" ref="anodize_line"/>
|
|
<field name="icon">fa-shower</field>
|
|
<field name="sequence">20</field>
|
|
<field name="customer_visible">True</field>
|
|
</record>
|
|
<record id="anodize_alkaline_primary_rinse" model="fusion.plating.process.node">
|
|
<field name="name">Primary Rinse (Tank A-2)</field>
|
|
<field name="node_type">step</field>
|
|
<field name="parent_id" ref="anodize_alkaline_clean"/>
|
|
<field name="icon">fa-tint</field>
|
|
<field name="sequence">10</field>
|
|
</record>
|
|
<record id="anodize_alkaline_secondary_rinse" model="fusion.plating.process.node">
|
|
<field name="name">Secondary Rinse (Tank A-4)</field>
|
|
<field name="node_type">step</field>
|
|
<field name="parent_id" ref="anodize_alkaline_clean"/>
|
|
<field name="icon">fa-tint</field>
|
|
<field name="sequence">20</field>
|
|
</record>
|
|
|
|
<!-- 5c. Etch (Tank A-3) -->
|
|
<record id="anodize_etch" model="fusion.plating.process.node">
|
|
<field name="name">Etch (Tank A-3)</field>
|
|
<field name="node_type">operation</field>
|
|
<field name="parent_id" ref="anodize_line"/>
|
|
<field name="icon">fa-flask</field>
|
|
<field name="sequence">30</field>
|
|
<field name="customer_visible">True</field>
|
|
</record>
|
|
<record id="anodize_etch_primary_rinse" model="fusion.plating.process.node">
|
|
<field name="name">Primary Rinse (Tank A-4)</field>
|
|
<field name="node_type">step</field>
|
|
<field name="parent_id" ref="anodize_etch"/>
|
|
<field name="icon">fa-tint</field>
|
|
<field name="sequence">10</field>
|
|
</record>
|
|
<record id="anodize_etch_secondary_rinse" model="fusion.plating.process.node">
|
|
<field name="name">Secondary Rinse (Tank A-6)</field>
|
|
<field name="node_type">step</field>
|
|
<field name="parent_id" ref="anodize_etch"/>
|
|
<field name="icon">fa-tint</field>
|
|
<field name="sequence">20</field>
|
|
</record>
|
|
|
|
<!-- 5d. Deoxidize (Tank A-5) -->
|
|
<record id="anodize_deoxidize" model="fusion.plating.process.node">
|
|
<field name="name">Deoxidize (Tank A-5)</field>
|
|
<field name="node_type">operation</field>
|
|
<field name="parent_id" ref="anodize_line"/>
|
|
<field name="icon">fa-flask</field>
|
|
<field name="sequence">40</field>
|
|
<field name="customer_visible">True</field>
|
|
</record>
|
|
<record id="anodize_deoxidize_primary_rinse" model="fusion.plating.process.node">
|
|
<field name="name">Primary Rinse (Tank A-6)</field>
|
|
<field name="node_type">step</field>
|
|
<field name="parent_id" ref="anodize_deoxidize"/>
|
|
<field name="icon">fa-tint</field>
|
|
<field name="sequence">10</field>
|
|
</record>
|
|
<record id="anodize_deoxidize_secondary_rinse" model="fusion.plating.process.node">
|
|
<field name="name">Secondary Rinse (Tank A-8)</field>
|
|
<field name="node_type">step</field>
|
|
<field name="parent_id" ref="anodize_deoxidize"/>
|
|
<field name="icon">fa-tint</field>
|
|
<field name="sequence">20</field>
|
|
</record>
|
|
|
|
<!-- 5e. Sulfuric Anodize (operation container) -->
|
|
<record id="anodize_sulfuric" model="fusion.plating.process.node">
|
|
<field name="name">Sulfuric Anodize</field>
|
|
<field name="node_type">operation</field>
|
|
<field name="parent_id" ref="anodize_line"/>
|
|
<field name="icon">fa-bolt</field>
|
|
<field name="sequence">50</field>
|
|
<field name="auto_complete">True</field>
|
|
</record>
|
|
<record id="anodize_sulfuric_ramp" model="fusion.plating.process.node">
|
|
<field name="name">Sulfuric Anodize Ramp (Tank A-9)</field>
|
|
<field name="node_type">step</field>
|
|
<field name="parent_id" ref="anodize_sulfuric"/>
|
|
<field name="icon">fa-bolt</field>
|
|
<field name="sequence">10</field>
|
|
</record>
|
|
<record id="anodize_sulfuric_do" model="fusion.plating.process.node">
|
|
<field name="name">Sulfuric Anodize (Tank A-9)</field>
|
|
<field name="node_type">operation</field>
|
|
<field name="parent_id" ref="anodize_sulfuric"/>
|
|
<field name="icon">fa-bolt</field>
|
|
<field name="sequence">20</field>
|
|
<field name="requires_signoff">True</field>
|
|
<field name="customer_visible">True</field>
|
|
</record>
|
|
<record id="anodize_sulfuric_do_primary_rinse" model="fusion.plating.process.node">
|
|
<field name="name">Primary Rinse (Tank A-8)</field>
|
|
<field name="node_type">step</field>
|
|
<field name="parent_id" ref="anodize_sulfuric_do"/>
|
|
<field name="icon">fa-tint</field>
|
|
<field name="sequence">10</field>
|
|
</record>
|
|
<record id="anodize_sulfuric_do_secondary_rinse" model="fusion.plating.process.node">
|
|
<field name="name">Secondary Rinse (Tank A-12)</field>
|
|
<field name="node_type">step</field>
|
|
<field name="parent_id" ref="anodize_sulfuric_do"/>
|
|
<field name="icon">fa-tint</field>
|
|
<field name="sequence">20</field>
|
|
</record>
|
|
<record id="anodize_sulfuric_do_hot_rinse" model="fusion.plating.process.node">
|
|
<field name="name">Hot Rinse (Tank A-17)</field>
|
|
<field name="node_type">step</field>
|
|
<field name="parent_id" ref="anodize_sulfuric_do"/>
|
|
<field name="icon">fa-thermometer-half</field>
|
|
<field name="sequence">30</field>
|
|
</record>
|
|
|
|
<!-- 5f. Hot Water Seal (Tank A-16) -->
|
|
<record id="anodize_hot_water_seal" model="fusion.plating.process.node">
|
|
<field name="name">Hot Water Seal (Tank A-16)</field>
|
|
<field name="node_type">operation</field>
|
|
<field name="parent_id" ref="anodize_line"/>
|
|
<field name="icon">fa-tint</field>
|
|
<field name="sequence">60</field>
|
|
<field name="customer_visible">True</field>
|
|
</record>
|
|
<record id="anodize_hot_water_seal_primary_rinse" model="fusion.plating.process.node">
|
|
<field name="name">Primary Rinse (Tank A-12)</field>
|
|
<field name="node_type">step</field>
|
|
<field name="parent_id" ref="anodize_hot_water_seal"/>
|
|
<field name="icon">fa-tint</field>
|
|
<field name="sequence">10</field>
|
|
</record>
|
|
<record id="anodize_hot_water_seal_hot_rinse" model="fusion.plating.process.node">
|
|
<field name="name">Hot Rinse (Tank A-17)</field>
|
|
<field name="node_type">step</field>
|
|
<field name="parent_id" ref="anodize_hot_water_seal"/>
|
|
<field name="icon">fa-thermometer-half</field>
|
|
<field name="sequence">20</field>
|
|
<field name="customer_visible">True</field>
|
|
</record>
|
|
|
|
<!-- ========================= 6. Anodize Dry ========================= -->
|
|
<record id="anodize_dry" model="fusion.plating.process.node">
|
|
<field name="name">Anodize Dry</field>
|
|
<field name="node_type">sub_process</field>
|
|
<field name="parent_id" ref="recipe_anodize"/>
|
|
<field name="icon">fa-sun-o</field>
|
|
<field name="sequence">60</field>
|
|
</record>
|
|
|
|
<!-- ========================= 7. Unracking ========================= -->
|
|
<record id="anodize_unracking" model="fusion.plating.process.node">
|
|
<field name="name">Unracking</field>
|
|
<field name="node_type">sub_process</field>
|
|
<field name="parent_id" ref="recipe_anodize"/>
|
|
<field name="icon">fa-th</field>
|
|
<field name="sequence">70</field>
|
|
<field name="auto_complete">True</field>
|
|
</record>
|
|
<record id="anodize_unracking_ready" model="fusion.plating.process.node">
|
|
<field name="name">Ready for Unrack</field>
|
|
<field name="node_type">operation</field>
|
|
<field name="parent_id" ref="anodize_unracking"/>
|
|
<field name="icon">fa-clock-o</field>
|
|
<field name="sequence">10</field>
|
|
</record>
|
|
<record id="anodize_unracking_do" model="fusion.plating.process.node">
|
|
<field name="name">Unracking</field>
|
|
<field name="node_type">operation</field>
|
|
<field name="parent_id" ref="anodize_unracking"/>
|
|
<field name="icon">fa-th</field>
|
|
<field name="sequence">20</field>
|
|
<field name="customer_visible">True</field>
|
|
</record>
|
|
|
|
<!-- ========================= 8. De-Masking ========================= -->
|
|
<record id="anodize_demasking" model="fusion.plating.process.node">
|
|
<field name="name">De-Masking</field>
|
|
<field name="node_type">sub_process</field>
|
|
<field name="parent_id" ref="recipe_anodize"/>
|
|
<field name="icon">fa-eraser</field>
|
|
<field name="sequence">80</field>
|
|
<field name="auto_complete">True</field>
|
|
<field name="requires_signoff">True</field>
|
|
</record>
|
|
<record id="anodize_demasking_ready" model="fusion.plating.process.node">
|
|
<field name="name">Ready for De-Masking</field>
|
|
<field name="node_type">operation</field>
|
|
<field name="parent_id" ref="anodize_demasking"/>
|
|
<field name="icon">fa-clock-o</field>
|
|
<field name="sequence">10</field>
|
|
</record>
|
|
<record id="anodize_demasking_do" model="fusion.plating.process.node">
|
|
<field name="name">De-Masking</field>
|
|
<field name="node_type">operation</field>
|
|
<field name="parent_id" ref="anodize_demasking"/>
|
|
<field name="icon">fa-eraser</field>
|
|
<field name="sequence">20</field>
|
|
<field name="customer_visible">True</field>
|
|
</record>
|
|
|
|
</data>
|
|
</odoo>
|