Files
Odoo-Modules/fusion_plating/fusion_plating_portal
gsinghpal 26fe41e7d4 fix(portal): sudo portal job queries so template traversal works for customers
Portal users have read access to fp.portal.job but NOT to fp.job.
The new job-card macro traverses job.x_fc_job_id -> fp.job to surface
part info, sale_order, ship-to address — that raised AccessError for
real customers (admins were fine due to inherited groups).

Adding .sudo() to the three Job queries in home(), portal_my_jobs(),
and the certifications panel mirror lookup. Domain still filters to
the customer's commercial partner tree, so sudo doesn't widen
visibility — it just lets the template walk past the portal-job
boundary to the privileged backend models.

Same pattern is already used in the same file for sale.order,
account.move, and stock.picking queries.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-17 12:39:26 -04:00
..
2026-04-16 20:53:53 -04:00
2026-04-16 20:53:53 -04:00
2026-04-16 20:53:53 -04:00
2026-04-16 20:53:53 -04:00

Fusion Plating — Customer Portal

Part of the Fusion Plating product family by Nexa Systems Inc.

Customer-facing portal that extends fusion_plating with a self-service area inside Odoo's standard portal layout. Customers can:

  • Submit Requests for Quote (RFQ) with drawings, target dates, and notes
  • Track production jobs through Received → In Progress → QC → Ready → Shipped → Complete
  • Download Certificates of Conformance (CoC) and packing lists
  • Reference shipment tracking numbers and invoice references

Models

Model Purpose
fusion.plating.quote.request Customer-submitted RFQ
fusion.plating.portal.job Lightweight portal-facing job summary
res.partner (extended) Adds portal-enabled flag and counts

Routes

Route Purpose
/my/quote_requests List quote requests
/my/quote_requests/<id> RFQ detail
/my/quote_requests/new New RFQ form
/my/quote_requests/submit RFQ form submission
/my/jobs List jobs
/my/jobs/<id> Job detail
/my/jobs/<id>/coc Download CoC PDF

Conventions

  • New res.partner fields prefixed x_fc_*.
  • All portal pages extend portal.portal_layout.
  • SCSS theme-aware: uses Bootstrap CSS variables only, no hex values.
  • Routes are type='http' (not the deprecated type='json').

License

OPL-1 (Odoo Proprietary License v1.0). Copyright 2026 Nexa Systems Inc.