This website requires JavaScript.
b93633d728
fix(shopfloor,reports): make QR scan actually navigate after decode
gsinghpal
2026-04-25 13:14:06 -04:00
ecac43eef4
fix(reports): restore the original ENTECH box-sticker layout for fp.job + sale.order
gsinghpal
2026-04-25 13:03:29 -04:00
c27e8a109c
fix(shopfloor): vendor jsQR so QR scanning works on iOS Safari
gsinghpal
2026-04-25 12:54:34 -04:00
74db636458
feat(jobs,shopfloor): smart buttons + QR scanner + NFC tank pages
gsinghpal
2026-04-25 12:39:37 -04:00
18b5918d3d
fix(shopfloor): Manager Desk speaks fp.job/fp.job.step end-to-end
gsinghpal
2026-04-25 10:38:50 -04:00
596efa0ed3
fix(shopfloor): theme-compliant Manager Desk + kind-chip tokens
gsinghpal
2026-04-25 10:30:09 -04:00
009a0b5e10
feat(jobs): seed orders via fp.direct.order.wizard (estimator path)
gsinghpal
2026-04-25 10:02:52 -04:00
128d51755d
feat(jobs): comprehensive workflow seed — quotation through paid invoice
gsinghpal
2026-04-25 09:56:36 -04:00
7d71b77e14
fix(jobs): map fp.coating.config.thickness_uom to fp.job.step.thickness_uom
gsinghpal
2026-04-25 09:19:03 -04:00
7275007948
fix(jobs): cleanup script — delete SOs, invoices, payments, pickings, quotes
gsinghpal
2026-04-25 09:16:48 -04:00
de47d2ceb1
refactor(menus): collapse separate Jobs submenu into Shop Floor
gsinghpal
2026-04-25 09:01:49 -04:00
5df7d5e6cf
refactor(shopfloor,jobs): consolidate operator UI into shopfloor
gsinghpal
2026-04-25 06:45:15 -04:00
667654bd4e
refactor(jobs): drop (Native) suffix + promote Jobs to top of Plating app
gsinghpal
2026-04-25 06:19:14 -04:00
5130e51941
feat(jobs): demo data — work centres + part coatings
gsinghpal
2026-04-25 05:53:52 -04:00
8f458017c9
feat(jobs): cleanup + seed scripts for demo data reset
gsinghpal
2026-04-25 05:43:48 -04:00
3ca0f7a719
fix(jobs): theme tokens + dark-mode support across remaining OWL SCSS files
gsinghpal
2026-04-25 05:26:42 -04:00
22573e7ce3
changes
gsinghpal
2026-04-25 05:21:15 -04:00
7f84e66b72
feat(jobs): finish original plan — Job Margin, polish, legacy hide
gsinghpal
2026-04-25 04:49:44 -04:00
f8ad224b1a
feat(jobs): Phase 6 — Tablet Station for fp.job
gsinghpal
2026-04-25 04:41:07 -04:00
e19d4862ed
feat(jobs): Phase 6 — Plant Overview kanban + Manager Dashboard
gsinghpal
2026-04-25 04:32:16 -04:00
034a6560ad
feat(jobs): Phase 6 — Process Tree OWL component for fp.job
gsinghpal
2026-04-25 04:20:09 -04:00
47a54eac8f
feat(jobs): cutover - bridge_mrp gate, menu nesting, migration robustness
gsinghpal
2026-04-25 04:05:02 -04:00
5c009d3dcf
docs(jobs): overnight progress summary for user
gsinghpal
2026-04-25 00:21:34 -04:00
97861df74d
refactor(jobs): gate fp.job lifecycle hooks on fp_jobs_migration context
gsinghpal
2026-04-25 00:19:17 -04:00
f2f98aa9f6
docs(jobs): Phase 8/9/10 cutover runbook
gsinghpal
2026-04-25 00:17:57 -04:00
f9fab699d4
feat(jobs): Phase 7 — migration script + legacy id fields
gsinghpal
2026-04-25 00:15:23 -04:00
71376228cb
feat(jobs): Phase 6 lean — scan controller + process-tree JSON endpoint
gsinghpal
2026-04-25 00:08:50 -04:00
c528d581c2
feat(jobs): Phase 5 — fp.job reports (sticker + traveller)
gsinghpal
2026-04-25 00:05:48 -04:00
51a5cbbe5d
feat(jobs): Phase 4 light refactors — notifications, KPI source tag
gsinghpal
2026-04-24 23:38:38 -04:00
b359be3745
feat(jobs): Phase 3 light refactors — parallel job/step links on dependent models
gsinghpal
2026-04-24 23:34:05 -04:00
dd88afdf53
feat(jobs): add lifecycle hooks — portal/QC/delivery/invoice (Tasks 2.6-2.9)
gsinghpal
2026-04-24 23:27:38 -04:00
294cea0e50
feat(jobs): add x_fc_use_native_jobs flag + SO confirm hook (Task 2.5)
gsinghpal
2026-04-24 23:22:41 -04:00
3b7eae9b78
feat(jobs): add fp.job._generate_steps_from_recipe (Task 2.4)
gsinghpal
2026-04-24 23:17:47 -04:00
4c68327b9c
feat(jobs): add fp.job.node.override for per-job opt-in/out decisions
gsinghpal
2026-04-24 23:12:53 -04:00
36b9f30528
refactor(jobs): drop index=True on part_catalog_id for consistency
gsinghpal
2026-04-24 23:06:51 -04:00
6e57b3576c
feat(jobs): add cross-module fields to fp.job via _inherit (Task 2.2)
gsinghpal
2026-04-24 23:01:23 -04:00
4341a03891
feat(jobs): add fusion_plating_jobs module skeleton (Phase 2 Task 2.1)
gsinghpal
2026-04-24 22:55:04 -04:00
d1aa7a81e0
docs(jobs): detail Phase 2 task breakdown — parallel module strategy
gsinghpal
2026-04-24 22:49:34 -04:00
1491f2367b
refactor(jobs): address code review feedback on Task 1.8 admin views
gsinghpal
2026-04-24 22:44:16 -04:00
b2ae79b61f
feat(jobs): add admin views and menu for Phase 1 models
gsinghpal
2026-04-24 22:38:36 -04:00
54068b3d18
refactor(jobs): address code review feedback on fp.job.step.timelog (Task 1.7)
gsinghpal
2026-04-24 22:34:10 -04:00
28892f56b5
feat(jobs): add fp.job.step.timelog for granular timer tracking
gsinghpal
2026-04-24 22:27:26 -04:00
57a3aea16f
refactor(jobs): address code review feedback on fp.job.step (Task 1.6)
gsinghpal
2026-04-24 22:22:15 -04:00
91767f9f03
feat(jobs): add equipment, audit, plating-spec fields to fp.job.step
gsinghpal
2026-04-24 22:15:26 -04:00
688fe8317c
refactor(jobs): address code review feedback on fp.job.step (Task 1.5)
gsinghpal
2026-04-24 22:09:16 -04:00
c41a488b58
feat(jobs): add fp.job.step model with state machine
gsinghpal
2026-04-24 21:59:07 -04:00
f7a4cba5a8
docs(jobs): split fp.job §5.1 fields by module ownership (Task 1.4)
gsinghpal
2026-04-24 21:54:35 -04:00
e4111ad000
refactor(jobs): address code review feedback on fp.job (Task 1.4)
gsinghpal
2026-04-24 21:51:23 -04:00
335dc2488e
feat(jobs): add core-safe extension fields to fp.job
gsinghpal
2026-04-24 21:44:28 -04:00
b45a134aa4
refactor(jobs): address code review feedback on fp.job
gsinghpal
2026-04-24 21:36:58 -04:00
93e0be4b48
docs(jobs): tighten spec/plan after Task 1.2 review
gsinghpal
2026-04-24 21:30:23 -04:00
26928713d5
feat(jobs): add fp.job native model with state machine
gsinghpal
2026-04-24 21:29:36 -04:00
5970dfe57b
refactor(jobs): address code review feedback on fp.work.centre
gsinghpal
2026-04-24 21:19:59 -04:00
37f917824a
feat(jobs): add fp.work.centre native model
gsinghpal
2026-04-24 21:12:32 -04:00
41d0908ade
changes
gsinghpal
2026-04-24 21:04:38 -04:00
0eab4b4efb
fix(reports): sticker PDF KeyError: 'quote' on fusion_pdf_preview path
gsinghpal
2026-04-23 10:58:24 -04:00
e32ff4b056
feat(reports): MO-bound WO sticker + polished professional layout
gsinghpal
2026-04-23 10:52:22 -04:00
be33a76ad2
feat(reports): WO box sticker + QR-scan-to-WO endpoint
gsinghpal
2026-04-23 10:39:35 -04:00
eddf803d4c
feat(reports): split customer-facing line header into Part Number + Description columns
gsinghpal
2026-04-23 10:17:56 -04:00
8142bd229a
feat(configurator): "PO Pending" escape hatch for customers who send PO later
gsinghpal
2026-04-23 10:08:00 -04:00
2d3ee03f86
fix(configurator): widen direct-order wizard via Odoo's dialog_size context
gsinghpal
2026-04-23 10:01:00 -04:00
d9526dc050
revert: drop fp_direct_order_wizard.scss — :has() approach broke the modal
gsinghpal
2026-04-23 09:58:56 -04:00
470c44ee5d
fix(configurator): widen direct-order wizard modal so line columns breathe
gsinghpal
2026-04-23 09:56:33 -04:00
488b0655a7
fix(configurator): wizard gap between "Add From" buttons + force view reload
gsinghpal
2026-04-23 09:25:56 -04:00
381a750902
feat(configurator): direct-order line shows effective Process alongside Treatment
gsinghpal
2026-04-23 09:20:40 -04:00
625f6560f1
feat(plating): split templates vs part-scoped processes + Process smart button
gsinghpal
2026-04-23 08:45:24 -04:00
acb406950f
feat(configurator): part-scoped process name shows part id + revision
gsinghpal
2026-04-23 08:33:07 -04:00
274236d34c
fix(plating): rename opt_in_out labels — 'Required' replaces 'Disabled'
gsinghpal
2026-04-23 08:24:57 -04:00
7629af4e00
fix(plating): tree editor — expand newly imported nodes + Expand/Collapse All
gsinghpal
2026-04-23 08:20:39 -04:00
9d7b7daf5a
feat(plating): tree-editor import supports insert-before position
gsinghpal
2026-04-23 08:16:05 -04:00
03f41422de
fix(plating): tree editor — title wrapping + import hierarchy
gsinghpal
2026-04-23 08:08:55 -04:00
8853cdd0c6
feat(plating): tree editor — move up/down buttons + import from recipe
gsinghpal
2026-04-23 08:00:24 -04:00
c76bbd85eb
fix(plating): Process Composer/Editor breadcrumb accumulation
gsinghpal
2026-04-23 07:48:38 -04:00
7d44af7d77
fix(plating): tree-editor back button honours part-scoped context
gsinghpal
2026-04-23 07:45:12 -04:00
33e35fd213
fix(configurator): centre Process Editor button icon + make icon white
gsinghpal
2026-04-23 07:41:24 -04:00
18f45d50f5
fix(configurator): Process Composer tree-editor button polish
gsinghpal
2026-04-23 07:37:35 -04:00
d0eefe6392
fix(configurator): Process Composer dark-mode palette (Sub 3 follow-up)
gsinghpal
2026-04-23 07:35:11 -04:00
2bfabfe135
feat(plating): Sub 8 — split receiving vs inspection + box parity
gsinghpal
2026-04-23 00:30:36 -04:00
392359d2c4
docs(receiving): Sub 8 design spec — split receiving vs inspection + box parity
gsinghpal
2026-04-23 00:21:02 -04:00
0342535b9f
feat(notifications): Sub 6 — contact profiles + communication routing
gsinghpal
2026-04-23 00:01:15 -04:00
f9e1b62409
docs(notifications): Sub 6 design spec — contact profiles + routing
gsinghpal
2026-04-22 23:54:59 -04:00
a7fd39d6f3
feat(iot): Sub 7 — per-sensor polling interval + rate-limit + entech seed
gsinghpal
2026-04-22 23:29:08 -04:00
def9c801fa
docs(iot): Sub 7 design spec — per-sensor polling interval + entech seed
gsinghpal
2026-04-22 23:20:29 -04:00
25c3f6f8d1
feat(plating): Sub 5 — order-line fields (serial, job#, thickness, revision)
gsinghpal
2026-04-22 23:04:44 -04:00
bb9bcf45f8
docs(plating): Sub 5 design spec — order-line fields (serial, job#, thickness, revision)
gsinghpal
2026-04-22 22:48:14 -04:00
1393c9e6ac
fix(plating): Sub 4 — tighten Contract Review checklist columns
gsinghpal
2026-04-22 21:56:27 -04:00
af199bda9f
feat(plating): Sub 4 — smart button on part form for Contract Review
gsinghpal
2026-04-22 21:54:47 -04:00
5d9c78f8ce
feat(plating): Sub 4 — Check All / Clear All buttons + fix QA-005 PDF logo render
gsinghpal
2026-04-22 21:50:18 -04:00
21da526aa7
feat(plating): Sub 4 — Contract Review (optional, QA-005 1:1 PDF)
gsinghpal
2026-04-22 21:43:06 -04:00
98a8bc234b
docs(plating): Sub 4 design spec — Contract Review (optional, QA-005 1:1)
gsinghpal
2026-04-22 21:31:05 -04:00
d3b4eadbec
test(sub3): Sub 3 smoke + verify SQL; mark shipped in CLAUDE.md roadmap
gsinghpal
2026-04-22 09:06:41 -04:00
f0593487a7
feat(plating): Sub 3 Phase C \u2014 tree node MO-state palette (green=done, blue=active, red=error-only)
gsinghpal
2026-04-22 09:04:38 -04:00
3de37ea735
feat(configurator): Sub 3 Phase B — part-scoped Process Composer client action + part form Compose button
gsinghpal
2026-04-22 09:02:03 -04:00
7d5c826f3e
fix(plating): Sub 3 \u2014 move part_catalog_id/cloned_from_id/treatment_uom to configurator inherit (core can't reference fp.part.catalog)
gsinghpal
2026-04-22 08:52:10 -04:00
b1a8849e70
chore(plating): Sub 3 version bumps + flip General Processing seed to noupdate=1 (Tasks 4+5)
gsinghpal
2026-04-22 08:50:08 -04:00
4beffe9dc1
feat(bridge_mrp): Sub 3 — _resolve_mo_process_tree helper; walker prefers part-cloned tree (Task 3)
gsinghpal
2026-04-22 08:47:41 -04:00
dd7c408df3
feat(configurator): Sub 3 — fp.part.catalog gains default_process_id + action_open_part_composer (Task 2)
gsinghpal
2026-04-22 08:47:01 -04:00
a1ebe9000f
feat(fusion_plating): Sub 3 — process_node gets part_catalog_id, cloned_from_id, treatment_uom; opt_in_out label rename (Task 1)
gsinghpal
2026-04-22 08:46:32 -04:00
817fdb4948
docs(plating): Sub 3 design spec \u2014 Default Process + Composer per Part
gsinghpal
2026-04-22 08:44:06 -04:00
733236f987
feat(configurator): Sub 1 — direct-order wizard stops auto-confirm + auto-email
gsinghpal
2026-04-21 23:43:01 -04:00