Files
Odoo-Modules/fusion_plating/fusion_plating_portal
gsinghpal 70fe10c214 fix(configurator): money fields now show $ everywhere
Root cause: pricing.rule records had currency_id=NULL because the
default=lambda only applies on new records. Monetary fields without a
currency silently render as plain numbers — no $ symbol.

Fixes:

1. currency_id now required=True on fp.pricing.rule, fp.treatment,
   fp.customer.price.list, fp.quote.configurator, fusion.plating.quote.request
   — so it can never be missing going forward.

2. post_init_hook + matching backfill helper in
   fusion_plating_configurator/__init__.py pins the company currency
   on any existing records that were created before the required flag.
   Ran on upgrade → all 4 pricing.rule rows now have CAD/$.

3. Flipped two remaining Float money fields to Monetary:
   - fp.job.consumption.unit_cost and total_cost (were Float digits=4/2)
   - (mrp.workorder.x_fc_workcenter_cost_hour stays Float — it is a
     related field from core mrp.workcenter.costs_hour which is Float)

4. Every Monetary field reference in views now has explicit:
     widget="monetary" options="{'currency_field': 'currency_id'}"
   Previously Odoo's default rendering dropped the $ in some contexts.
   Touched: fp_pricing_rule_views (list + form), fp_treatment_views,
   fp_customer_price_list_views (already done), fp_quote_configurator_views
   (list + form shipping/delivery/calculated/override), fp_quote_request_views
   (list + form), fp_job_consumption_views, mrp_production_views job-costing
   group, direct-order wizard (already done earlier).

5. Unit / % suffix polish as we went: rush_surcharge_percent shows "%",
   default_duration_minutes shows "min" on treatment form, treatment list
   labels duration column.

Verified: all 4 pricing rules now render "$0.45", "$0.85" etc; 62 records
across 6 models all have currency_id populated; zero remaining Float $
fields in the codebase.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-17 18:54:14 -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
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.