Files
Odoo-Modules/fusion_plating/fusion_plating_safety
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 — Safety (EHS)

Part of the Fusion Plating product family by Nexa Systems Inc.

This add-on layers a process-agnostic Environmental, Health and Safety workspace on top of fusion_plating. It gives a plating shop a single place to manage day-to-day occupational health and safety obligations without depending on any jurisdiction-specific regulatory pack.

Workspaces

Workspace Purpose
SDS Library Safety Data Sheet repository with version, hazard class, GHS pictograms, language, expiry tracking, and PDF attachment.
Chemical Inventory Physical chemical containers with storage location, on-hand quantity, reorder point, and incompatibility relations.
Training Records Per-employee training completions with auto-computed expiry and current/expiring/expired status.
Training Types Master catalogue of training courses (WHMIS, TDG, first-aid, LOTO, confined space, etc.) with validity windows.
Exposure Monitoring Air, biological, noise, and vibration sampling events with OEL reference and percent-of-limit.
JHSC Joint Health & Safety Committee with worker and management reps, plus a meeting register.
Incident Register Injury, near-miss, first-aid, lost-time, medical, property-damage, and environmental events with investigation, root cause, corrective action, and WSIB Form 7 flagging.
PPE Issuance Per-employee PPE issuance log with replacement scheduling.

Installation

This module depends on fusion_plating, hr, and product.

docker exec odoo-dev-app odoo -d fusion-dev -u fusion_plating_safety --stop-after-init

Conventions

  • All field names on extended base Odoo models use the x_fc_ prefix.
  • Security groups are reused from fusion_plating (Operator / Supervisor / Manager).
  • All copy is Canadian English.
  • Theme-aware SCSS uses CSS variables only — no hex colours.

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