Files
Odoo-Modules/fusion_plating/fusion_plating_portal
gsinghpal b27f68b8d5 feat(portal): real-time search + filter pills on 4 FP list pages
Replaces the tab nav / portal.portal_searchbar on the 4 FP list
pages with the new fp_portal_list_controls macro (filter pills +
search input + sort dropdown) and drops portal_pager in favour of
client-side filtering of up to 500 records:

- Quote Requests (/my/quote_requests):
    filters: All / Active / Converted / Declined
    sorts:   Newest / Reference / Status
    extra search fields: contact_name, contact_email, line.part_number,
                         line.description, line.product_id.default_code

- Work Orders (/my/jobs, cards layout):
    filters: All / Active / Ready to Ship / Complete
    sorts:   Newest / Reference / Status
    extra search fields per card: part_catalog.part_number, part_catalog.name,
                                  sale_order.name, sale_order.client_order_ref,
                                  job.notes

- Certifications (/my/certifications):
    no filters (all rows are terminal CoC jobs)
    sorts:   Newest / Reference
    extra search fields: part name, processes (already in card text)

- Packing Slips / Deliveries (/my/deliveries):
    no filters (all rows are state=done)
    sorts:   Newest / Reference
    adds a visible Origin column (sale order ref) so customers can
    locate a slip by the SO it came from

Each route accepts ?filter_state=... and ?sortby=... query params,
returns up to 500 records, and passes result_total + clipped to the
template so the macro can render a "showing latest 500 of N" notice
when the cap is hit.

Hidden <td class="d-none"> cells inside each row carry extra terms
that aren't displayed but are matched by the JS textContent scan.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-18 00:06:18 -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.