Files
gsinghpal 0ad382e1a6 feat(phase1): top-level menu consolidation + landing-page resolver
Phase 1 collapses the Plating app's 17 top-level menus down to 6
domains (Sales, Operations, Receiving & Shipping, Quality,
Compliance, Configuration) so users no longer scroll a 17-item
sidebar to find one thing.

Re-parented (no XML id changes — bookmarks still work):
- fusion_plating_compliance.menu_fp_compliance_root
    → menu_fp_compliance_hub  (renamed 'General')
- fusion_plating_safety.menu_fp_safety_root
    → menu_fp_compliance_hub  (renamed 'Safety / WHMIS')
- fusion_plating_aerospace.menu_fp_aerospace
    → menu_fp_compliance_hub  (renamed 'Aerospace (AS9100 / Nadcap)')
- fusion_plating_nuclear.menu_fp_nuclear
    → menu_fp_compliance_hub  (renamed 'Nuclear (CSA N299 / CNSC)')
- fusion_plating_cgp.menu_fp_cgp
    → menu_fp_compliance_hub  (renamed 'Controlled Goods (CGP)')
- fusion_plating_certificates.menu_fp_certificates
    → menu_fp_quality (Certs are a Quality output, not a separate
      top-level concern)
- fusion_plating_bridge_maintenance.menu_fp_maintenance
    → menu_fp_operations
- fusion_plating.menu_fp_job_step_move (Move Log)
    → menu_fp_operations
- fusion_plating.menu_fp_job_step_timelog (Labor History)
    → menu_fp_operations

The new menu_fp_compliance_hub is supervisor-gated; underlying
verticals retain their own group locks (CGP officer, etc.).

Settings menu remains manager-gated through inheritance from
menu_fp_config (already in place).

NEW — Plating landing-page resolver:
- ir.actions.act_window.x_fc_pickable_landing  (Boolean tag for
  curated picklist; flagged on Sale Orders, Quotations, Process
  Recipes for Phase 1; more in Phase 2)
- res.company.x_fc_default_landing_action_id (admin sets fallback)
- res.users.x_fc_plating_landing_action_id (per-user override)
- ir.actions.server action_fp_resolve_plating_landing — picks
  user → company → Sale Orders fallback at click time
- menu_fp_root rewired to call the resolver
- User profile + Settings tabs surface the dropdowns

Configurator's earlier menu_fp_root override (action_fp_sale_orders
direct) removed — core's resolver now owns the routing.

Versions bumped: fusion_plating 19.0.11.0.0, configurator
19.0.17.16.0, plus 7 dependent modules patched.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-27 22:33:37 -04:00
..
2026-04-16 20:53:53 -04:00
2026-04-16 20:53:53 -04:00
2026-04-16 20:53:53 -04:00
2026-04-16 20:53:53 -04:00
2026-04-16 20:53:53 -04:00
2026-04-16 20:53:53 -04:00

Fusion Plating — Controlled Goods Program (CGP)

Canadian Controlled Goods Program compliance pack for plating shops doing defence or ITAR-adjacent work. Part of the Fusion Plating product family by Nexa Systems Inc.

What it covers

The Controlled Goods Program (CGP) is administered by Public Services and Procurement Canada (PSPC) under the Defence Production Act. Every Canadian entity that examines, possesses, or transfers controlled goods must be registered, must appoint an Authorized Individual, must run Personnel Security Assessments on anyone with access, and must maintain visitor, movement, and incident logs. Non-compliance is a criminal offence.

This module layers the minimum record set to stay audit-ready on top of the Fusion Plating core.

Records

Model Purpose
fusion.plating.cgp.registration Company CGP registration with PSPC, 5-year renewal
fusion.plating.cgp.authorized.individual AI appointment, training, state
fusion.plating.cgp.psa Personnel Security Assessment (restricted)
fusion.plating.cgp.visitor Visitor log with PSA / escort / approval
fusion.plating.cgp.controlled.good Inventory of controlled goods handled
fusion.plating.cgp.receipt.shipment Movement log with AI authorization
fusion.plating.cgp.security.incident Security incidents, PSPC notification (restricted)
fusion.plating.cgp.access.log Physical access log for controlled areas

It also extends hr.employee with CGP fields (x_fc_cgp_psa_id, x_fc_cgp_ai, etc.) and res.company with a link to the current CGP registration.

Security

CGP data is sensitive. This module introduces a new restricted group on top of the core fusion_plating.group_fusion_plating_manager:

  • CGP Officer — full access to every CGP record
  • CGP Designated Official — implies CGP Officer; top-level accountable person named in the PSPC registration

ir.rule records enforce that PSA and Security Incident records are visible only to CGP Officer and above — a regular plating manager cannot see them. No users are assigned by default; admin must grant access explicitly.

Security Plan template

On install the module seeds a fusion.plating.doc.control record titled "CGP Security Plan (Template)". Customise it to your facility and submit to PSPC as part of your registration.

Dependencies

  • fusion_plating_quality — for fusion.plating.doc.control
  • hr — for employee linkage on PSAs, AIs, and access logs

Reference

https://www.tpsgc-pwgsc.gc.ca/pmc-cgp/

Copyright (c) 2026 Nexa Systems Inc. All rights reserved. License: OPL-1 (Odoo Proprietary License v1.0)