From 0ed4f88da21fd42bcb901ea957bb5da7c5006f2f Mon Sep 17 00:00:00 2001 From: gsinghpal Date: Mon, 25 May 2026 11:03:06 -0400 Subject: [PATCH] feat(job_workspace): polish header buttons + workflow bar + next button MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Same polish pass as the plant kanban — bigger touch targets, gradient backgrounds (light + dark via existing token system), more readable typography. Header (top row): - Back: bigger padding, hover lift - Hand Off: was btn-sm \u2192 full size; gold gradient + shadow matching the plant kanban .toolbar-btn.handoff treatment - WO #: 1.1rem \u2192 1.3rem - Pills (qty done, due date, holds): bigger padding + font, subtle gradient bg, hold pills get tinted gradients - Customer / part name: 0.95rem (more readable) Workflow bar (step dots + next button): - Step dots: 14px \u2192 18px, current scales 1.15x with bigger halo, gradient fills (green for done, blue for current) - Step labels: 0.65rem \u2192 0.8rem (the original was unreadable at arm's length on a tablet) - Connector links: 2px \u2192 3px, rounded - Next button: prominent green gradient (was generic btn-primary), bigger padding + font, hover lift + shadow Manifest: fusion_plating_shopfloor 19.0.34.1.0 \u2192 19.0.34.2.0. Co-Authored-By: Claude Opus 4.7 (1M context) --- .../fusion_plating_shopfloor/__manifest__.py | 2 +- .../static/src/scss/job_workspace.scss | 129 +++++++++++++----- .../static/src/xml/job_workspace.xml | 2 +- 3 files changed, 100 insertions(+), 33 deletions(-) diff --git a/fusion_plating/fusion_plating_shopfloor/__manifest__.py b/fusion_plating/fusion_plating_shopfloor/__manifest__.py index 4185cb1b..b701503a 100644 --- a/fusion_plating/fusion_plating_shopfloor/__manifest__.py +++ b/fusion_plating/fusion_plating_shopfloor/__manifest__.py @@ -5,7 +5,7 @@ { 'name': 'Fusion Plating — Shop Floor', - 'version': '19.0.34.1.0', + 'version': '19.0.34.2.0', 'category': 'Manufacturing/Plating', 'summary': 'Shop-floor tablet stations, QR scanning, bake window enforcer.', 'description': """ diff --git a/fusion_plating/fusion_plating_shopfloor/static/src/scss/job_workspace.scss b/fusion_plating/fusion_plating_shopfloor/static/src/scss/job_workspace.scss index a94a0f8e..bc8ad708 100644 --- a/fusion_plating/fusion_plating_shopfloor/static/src/scss/job_workspace.scss +++ b/fusion_plating/fusion_plating_shopfloor/static/src/scss/job_workspace.scss @@ -35,10 +35,11 @@ $_ws-text-hex: #1d1d1f; } // ---- HEADER ------------------------------------------------------------ +// 2026-05-25: header buttons bigger + gradients (matches plant kanban polish). .o_fp_ws_head { background: $_ws-card-hex; border-bottom: 1px solid $_ws-border-hex; - padding: 0.6rem 1rem; + padding: 0.8rem 1.25rem; display: flex; justify-content: space-between; align-items: center; @@ -49,101 +50,167 @@ $_ws-text-hex: #1d1d1f; .o_fp_ws_head_l, .o_fp_ws_head_r { display: flex; align-items: center; - gap: 0.5rem; + gap: 0.6rem; flex-wrap: wrap; } -.o_fp_ws_back { padding: 0.25rem 0.5rem; } -.o_fp_ws_wo { font-weight: 700; font-size: 1.1rem; } +.o_fp_ws_back { + padding: 0.5rem 0.85rem; + font-size: 0.95rem; + font-weight: 500; + border-radius: 7px; + transition: transform 0.1s ease, background 0.1s ease; + &:hover { + transform: translateY(-1px); + background: rgba(0,0,0,0.04); + } +} + +// Hand-Off button — gold gradient, prominent, matches plant kanban .handoff +.o_fp_ws_handoff { + padding: 0.55rem 1.1rem; + font-size: 0.95rem; + font-weight: 700; + border-radius: 7px; + background: linear-gradient(135deg, #ffd966 0%, #ffc107 100%); + border: 1px solid #d39e00; + color: #5e4400; + box-shadow: 0 1px 2px rgba(0,0,0,0.08); + transition: transform 0.1s ease, box-shadow 0.1s ease; + &:hover { + transform: translateY(-1px); + box-shadow: 0 3px 6px rgba(0,0,0,0.12); + background: linear-gradient(135deg, #ffd966 0%, #ffc107 100%); + border-color: #d39e00; + color: #5e4400; + } +} + +.o_fp_ws_wo { font-weight: 700; font-size: 1.3rem; letter-spacing: 0.01em; } .o_fp_ws_dot { color: var(--text-secondary, #999); } -.o_fp_ws_cust, .o_fp_ws_part { color: var(--text-secondary, #555); } +.o_fp_ws_cust, .o_fp_ws_part { color: var(--text-secondary, #555); font-size: 0.95rem; } .o_fp_ws_pill { - background: $_ws-page-hex; + background: linear-gradient(135deg, $_ws-card-hex 0%, $_ws-page-hex 100%); border: 1px solid $_ws-border-hex; - padding: 0.2rem 0.55rem; - border-radius: 4px; - font-size: 0.78rem; + padding: 0.4rem 0.85rem; + border-radius: 6px; + font-size: 0.9rem; + font-weight: 500; color: var(--text-secondary, #555); + box-shadow: 0 1px 2px rgba(0,0,0,0.04); } .o_fp_ws_holds_ok { - background: rgba(52, 199, 89, 0.12); + background: linear-gradient(135deg, rgba(52, 199, 89, 0.18) 0%, rgba(52, 199, 89, 0.08) 100%); color: #1d6e2f; - border-color: rgba(52, 199, 89, 0.3); + border-color: rgba(52, 199, 89, 0.35); + font-weight: 600; } .o_fp_ws_holds_red { - background: rgba(255, 59, 48, 0.12); + background: linear-gradient(135deg, rgba(255, 59, 48, 0.18) 0%, rgba(255, 59, 48, 0.08) 100%); color: #b00018; - border-color: rgba(255, 59, 48, 0.3); + border-color: rgba(255, 59, 48, 0.35); + font-weight: 600; } // ---- WORKFLOW BAR ------------------------------------------------------ +// 2026-05-25: bigger step dots + labels + the Next button. Dots were +// 14px with 0.65rem labels — too small to read at arm's length. .o_fp_ws_bar { background: $_ws-page-hex; border-bottom: 1px solid $_ws-border-hex; - padding: 0.55rem 1rem; + padding: 0.75rem 1.25rem; display: flex; align-items: center; - gap: 1rem; + gap: 1.25rem; } .o_fp_ws_bar_line { flex: 1; display: flex; align-items: center; - gap: 0.3rem; + gap: 0.35rem; } .o_fp_ws_dot_wrap { display: flex; flex-direction: column; align-items: center; - min-width: 60px; + min-width: 72px; .o_fp_ws_bar_dot { - width: 14px; - height: 14px; + width: 18px; + height: 18px; border-radius: 50%; background: $_ws-border-hex; border: 2px solid $_ws-border-hex; + transition: transform 0.15s ease, box-shadow 0.15s ease; } .o_fp_ws_bar_label { - font-size: 0.65rem; + font-size: 0.8rem; + font-weight: 500; color: var(--text-secondary, #888); - margin-top: 0.2rem; + margin-top: 0.35rem; text-align: center; } &.done .o_fp_ws_bar_dot { - background: #34c759; - border-color: #34c759; + background: linear-gradient(135deg, #4ade80 0%, #22c55e 100%); + border-color: #22c55e; } &.current .o_fp_ws_bar_dot { - background: #0071e3; + background: linear-gradient(135deg, #3b82f6 0%, #0071e3 100%); border-color: #0071e3; - box-shadow: 0 0 0 3px rgba(0, 113, 227, 0.25); + box-shadow: 0 0 0 4px rgba(0, 113, 227, 0.22); + transform: scale(1.15); } &.current .o_fp_ws_bar_label { color: #0071e3; - font-weight: 600; + font-weight: 700; } } .o_fp_ws_link { - flex: 0 0 8px; - height: 2px; + flex: 0 0 12px; + height: 3px; background: $_ws-border-hex; - margin-top: -16px; + margin-top: -22px; + border-radius: 2px; - &.done { background: #34c759; } + &.done { background: linear-gradient(90deg, #22c55e 0%, #4ade80 100%); } } -.o_fp_ws_next { white-space: nowrap; } +// "Next: Issue Certs" / "Mark Job Done" milestone-advance button. +// Green gradient = celebratory forward motion (matches the done dots). +.o_fp_ws_next { + white-space: nowrap; + padding: 0.65rem 1.4rem; + font-size: 1rem; + font-weight: 600; + border-radius: 8px; + background: linear-gradient(135deg, #22c55e 0%, #16a34a 100%); + border: 1px solid #15803d; + color: #fff; + box-shadow: 0 2px 4px rgba(22, 163, 74, 0.25); + transition: transform 0.1s ease, box-shadow 0.1s ease; + i { margin-left: 0.4rem; } + &:hover { + transform: translateY(-1px); + background: linear-gradient(135deg, #22c55e 0%, #16a34a 100%); + border-color: #15803d; + color: #fff; + box-shadow: 0 4px 8px rgba(22, 163, 74, 0.32); + } + &:active { + transform: translateY(0); + box-shadow: 0 1px 2px rgba(22, 163, 74, 0.2); + } +} // ---- MAIN (step list + side panel) ------------------------------------- .o_fp_ws_main { diff --git a/fusion_plating/fusion_plating_shopfloor/static/src/xml/job_workspace.xml b/fusion_plating/fusion_plating_shopfloor/static/src/xml/job_workspace.xml index 366bc826..9bfdf88a 100644 --- a/fusion_plating/fusion_plating_shopfloor/static/src/xml/job_workspace.xml +++ b/fusion_plating/fusion_plating_shopfloor/static/src/xml/job_workspace.xml @@ -23,7 +23,7 @@ Back -