Files
Odoo-Modules/fusion_plating/fusion_plating_nuclear/__manifest__.py
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

109 lines
4.3 KiB
Python

# -*- coding: utf-8 -*-
# Copyright 2026 Nexa Systems Inc.
# License OPL-1 (Odoo Proprietary License v1.0)
# Part of the Fusion Plating product family.
{
'name': 'Fusion Plating — Nuclear (CSA N299, NQA-1)',
'version': '19.0.1.1.0',
'category': 'Manufacturing/Plating',
'summary': 'Nuclear industry pack: CSA N299 Levels 1-4, NQA-1 awareness, '
'CNSC licence tracking, 10 CFR Part 21 reporting, ITPs, '
'nuclear pedigree traceability, extended retention.',
'description': """
Fusion Plating — Nuclear (CSA N299, NQA-1)
===========================================
Part of the Fusion Plating product family by Nexa Systems Inc.
This industry pack layers nuclear-specific records, workflows and seed
data on top of the Fusion Plating quality module (QMS). It is the
baseline every CSA N299 or 10 CFR Part 21 obligated plating / metal
finishing supplier needs on top of the generic QMS.
Records added
-------------
* CSA N299 Level catalog — Levels 1 through 4 with safety classification
and default records-retention periods (40 / 25 / 15 / 7 years).
* Nuclear Quality Program per facility — tracks N299 level, NQA-1
applicability, CNSC supplier status, last/next audit dates.
* Inspection and Test Plans (ITP) — hold points, witness points, test
methods, acceptance criteria, customer review and approval workflow.
* 10 CFR Part 21 defect evaluation and reporting — 60-day evaluation
clock, reportability determination, customer notification.
* Nuclear Pedigree Records — full traceability from raw material heat
number through chemistry cert, process trail, test results, ship
date, and retention-until date (driven by N299 level).
* CNSC Licence tracking — Class II nuclear facility, transport, export
licences with expiry monitoring.
* Customer Specification extension — nuclear flag, N299 level, NQA-1
flag, nuclear customer type (OPG, Bruce Power, AECL, CNL, Candu
Energy, US utility).
* NCR extension — nuclear job flag and 10 CFR Part 21 evaluation link
so any non-conformance on a nuclear job is captured for reportability.
* res.company extension — default nuclear records retention (40 years
out of the box, configurable per company).
Seed data
---------
* CSA N299 Levels 1 through 4 with real retention periods
* Template customer-spec entries for the major Canadian nuclear
operators: OPG, Bruce Power, AECL/CNL, Candu Energy
Background
----------
CSA N299 is the Canadian Standards Association standard for quality
assurance program requirements for the supply of items and services
for nuclear power plants. It has four levels, with Level 1 being the
most stringent (safety-critical). NQA-1 is the US equivalent for
nuclear facilities in the United States. The CNSC (Canadian Nuclear
Safety Commission) is the federal regulator. 10 CFR Part 21 is the US
regulation requiring reporting of defects and noncompliance that could
create a substantial safety hazard in a nuclear facility.
Dependencies
------------
Depends on fusion_plating_quality, which brings in the core NCR,
customer spec, and facility records this pack extends.
Copyright (c) 2026 Nexa Systems Inc. All rights reserved.
""",
'author': 'Nexa Systems Inc.',
'website': 'https://www.nexasystems.ca',
'maintainer': 'Nexa Systems Inc.',
'support': 'support@nexasystems.ca',
'license': 'OPL-1',
'price': 0.00,
'currency': 'CAD',
'depends': [
'fusion_plating_quality',
],
'data': [
'security/fp_nuclear_security.xml',
'security/ir.model.access.csv',
'data/fp_sequence_data.xml',
'data/fp_n299_level_data.xml',
'data/fp_nuclear_customer_data.xml',
'views/fp_n299_level_views.xml',
'views/fp_nuclear_program_views.xml',
'views/fp_nuclear_itp_views.xml',
'views/fp_10cfr21_report_views.xml',
'views/fp_nuclear_pedigree_views.xml',
'views/fp_cnsc_licence_views.xml',
'views/fp_customer_spec_views.xml',
'views/fp_ncr_views.xml',
'views/fp_menu.xml',
],
'demo': [
'data/fp_demo_nuclear_data.xml',
],
'assets': {
'web.assets_backend': [
'fusion_plating_nuclear/static/src/scss/fusion_plating_nuclear.scss',
],
},
'installable': True,
'application': False,
'auto_install': False,
}