Three batched changes that close out the original 10-phase
migration plan.
1. Phase 5 — Job Margin report bound to fp.job (replaces the
mrp.production-bound report_wo_margin). Per-step labour cost
table + margin summary using existing fp.job.step.cost_total
from Phase 1.
2. Polish:
- Real implementations for fp.job.step.button_pause,
button_skip, button_cancel (was NotImplementedError stubs).
button_pause closes the open timelog and sums duration_actual,
mirroring button_finish; button_skip/cancel transition state
with UserError guards.
- Explicit ondelete= policies on fp.job's cross-module Many2ones
(part_catalog/coating restrict, customer_spec/portal/delivery
set null) — was implicit set null.
- Standard Nexa Systems author/website/maintainer/support block
on fusion_plating_jobs manifest, suppressing the install
warning.
3. Legacy hide:
- New 'Plating Legacy Menus' group (group_fusion_plating_legacy_menus)
— nobody in it by default.
- Old shopfloor Manager Desk + Plant Overview + Tablet Station
menus restricted to that group, hiding them from operators
now that the native equivalents under 'Plating Jobs (Native)'
exist. (Note: ir.ui.menu uses group_ids in Odoo 19, not the
deprecated groups_id alias.)
Manifest 19.0.2.4.0 → 19.0.3.0.0. fusion_plating_shopfloor added
to depends so the legacy menu xmlid references resolve at install
time.
Part of: native job model migration (spec 2026-04-25)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
30 lines
879 B
Python
30 lines
879 B
Python
# -*- coding: utf-8 -*-
|
|
# Copyright 2026 Nexa Systems Inc.
|
|
# License OPL-1 (Odoo Proprietary License v1.0)
|
|
#
|
|
# Phase 2 of the native plating job model migration. Models are added
|
|
# task-by-task in Tasks 2.2 onwards.
|
|
|
|
from . import fp_job
|
|
from . import fp_job_step
|
|
from . import fp_job_node_override
|
|
from . import fp_portal_job
|
|
from . import account_move
|
|
from . import res_config_settings
|
|
from . import sale_order
|
|
|
|
# Phase 3 — parallel job/step links on dependent modules' models.
|
|
from . import fp_batch
|
|
from . import fp_quality_hold
|
|
from . import fp_certificate
|
|
from . import fp_thickness_reading
|
|
from . import fp_delivery
|
|
from . import fp_racking_inspection
|
|
|
|
# Phase 4 — light refactors batch B (notifications, KPI source tag).
|
|
from . import fp_notification_trigger
|
|
from . import fusion_plating_kpi_value
|
|
|
|
# Phase 5 — Job Margin report.
|
|
from . import report_fp_job_margin
|