refactor(shopfloor,jobs): consolidate operator UI into shopfloor
Removes the parallel OWL/controller stack I built in fusion_plating_jobs (job_process_tree, job_plant_overview, job_manager_dashboard, job_tablet, job_*.scss, plus parallel controllers and action XML files). Refactors the existing fusion_plating_shopfloor components in place to bind to fp.job / fp.job.step instead of mrp.production / mrp.workorder. End state: - ONE operator UI module (shopfloor) instead of two parallel ones - Existing token system (_fp_shopfloor_tokens.scss) reused as designed - no duplicate jobs tokens - Existing /fp/shopfloor/* RPC URLs preserved (no integration breakage); workorder_id kwargs accepted as legacy aliases for step_id / job_id so older tablet clients keep working - Existing visual designs preserved - only the data layer underneath changed - Process Tree button on fp.job form now points at fusion_plating_shopfloor's fp_process_tree client action - Bake Windows / First-Piece Gates / Bake Oven / Operator Queue models stay where they were - legacy_menu_hide.xml trimmed: only the bridge_mrp Production Priorities entry remains; the 3 shopfloor menus (Manager Desk, Plant Overview, Tablet Station) are now visible (the canonical native consoles) Manifests: - fusion_plating_jobs 19.0.3.1.0 -> 19.0.4.0.0 (consolidation bump, no more bundled JS/SCSS, only job_scan controller retained) - fusion_plating_shopfloor 19.0.14.4.0 -> 19.0.15.0.0 (asset bundle cache-bust + significant controller refactor) Tests pass on entech: 0 failed, 0 errors of 41 tests. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -264,15 +264,19 @@ class FpJob(models.Model):
|
||||
def action_open_process_tree(self):
|
||||
"""Open the OWL process-tree visualization for this job.
|
||||
|
||||
Launches the fp_job_process_tree client action with job_id in
|
||||
context. The component fetches /fp/jobs/process_tree and renders
|
||||
the recipe -> sub_process -> operation hierarchy as cards with
|
||||
per-step state badges.
|
||||
Launches the fp_process_tree client action (defined in
|
||||
fusion_plating_shopfloor) with job_id in context. The component
|
||||
fetches /fp/shopfloor/process_tree and renders the recipe ->
|
||||
sub_process -> operation hierarchy as cards with per-step state
|
||||
badges.
|
||||
|
||||
Consolidated 2026-04-24: this points at the canonical shopfloor
|
||||
client action; the parallel fp_job_process_tree was removed.
|
||||
"""
|
||||
self.ensure_one()
|
||||
return {
|
||||
'type': 'ir.actions.client',
|
||||
'tag': 'fp_job_process_tree',
|
||||
'tag': 'fp_process_tree',
|
||||
'context': {'job_id': self.id},
|
||||
'name': 'Process Tree — %s' % (self.name or ''),
|
||||
'target': 'current',
|
||||
|
||||
Reference in New Issue
Block a user