chore(plating): de-dash shipped code + intake-neutral customer emails
Replace em-dashes and en-dashes with hyphens across 789 shipped source files (py/xml/js/scss) so the delivered module reads as human-written; em-dashes had become a recognizable AI-generated tell. Internal .md dev notes are excluded. The WO-sticker mojibake strippers keep their dash search targets (now written — / –). No logic changes: comments and display strings only; validated with py_compile + lxml parse. Rewrite the 7 customer notification emails to be intake-neutral (ship-in / drop-off / pickup) and repair-aware, and fix the Shipped email documents line (packing slip vs bill of lading; certificate only when issued). Subjects use a hyphen separator. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -4,14 +4,14 @@
|
||||
# Part of the Fusion Plating product family.
|
||||
|
||||
{
|
||||
'name': 'Fusion Plating — Quality Bridge (EE)',
|
||||
'name': 'Fusion Plating - Quality Bridge (EE)',
|
||||
'version': '19.0.1.0.1',
|
||||
'category': 'Manufacturing/Plating',
|
||||
'summary': 'Enterprise bridge: mirrors Fusion Plating NCRs into Odoo EE '
|
||||
'quality.alert for native dashboard integration. Auto-installs '
|
||||
'when EE quality and fusion_plating_quality are both present.',
|
||||
'description': """
|
||||
Fusion Plating — Quality Bridge (Enterprise)
|
||||
Fusion Plating - Quality Bridge (Enterprise)
|
||||
============================================
|
||||
|
||||
Part of the Fusion Plating product family by Nexa Systems Inc.
|
||||
@@ -26,7 +26,7 @@ How it works
|
||||
------------
|
||||
* When a Fusion Plating NCR is created or updated, a mirrored
|
||||
``quality.alert`` record is created (or updated) automatically.
|
||||
* The sync is ONE-WAY — NCR is the source of truth. Changes made
|
||||
* The sync is ONE-WAY - NCR is the source of truth. Changes made
|
||||
directly to the EE quality.alert are NOT pushed back into the NCR.
|
||||
* A dedicated "Plating Quality" team is created in the EE quality
|
||||
module so mirrored alerts land in their own distinct team and do
|
||||
@@ -38,7 +38,7 @@ Installation
|
||||
This module has ``auto_install = True``: it installs itself automatically
|
||||
as soon as both ``fusion_plating_quality`` and ``quality`` (EE) are
|
||||
present in the database. Community Edition users who do not have the EE
|
||||
``quality`` module will never see this bridge — the Fusion Plating QMS
|
||||
``quality`` module will never see this bridge - the Fusion Plating QMS
|
||||
remains fully self-contained.
|
||||
|
||||
Copyright (c) 2026 Nexa Systems Inc. All rights reserved.
|
||||
|
||||
@@ -107,7 +107,7 @@ class FpNcr(models.Model):
|
||||
|
||||
def _prepare_quality_alert_vals(self):
|
||||
"""Build the vals dict used to create/update a quality.alert from
|
||||
this NCR. Written defensively — every field is checked against
|
||||
this NCR. Written defensively - every field is checked against
|
||||
the live ``quality.alert`` model before being added, so the bridge
|
||||
keeps working even if a minor EE release renames or removes a
|
||||
field.
|
||||
@@ -193,7 +193,7 @@ class FpNcr(models.Model):
|
||||
|
||||
# --- Reason (root cause dropdown) -----------------------------------
|
||||
# quality.alert may expose ``reason_id`` pointing at quality.reason.
|
||||
# We do not create reason records — shops curate those themselves —
|
||||
# We do not create reason records - shops curate those themselves -
|
||||
# but we leave the mapping point here for future use.
|
||||
|
||||
return vals
|
||||
@@ -237,7 +237,7 @@ class FpNcr(models.Model):
|
||||
'quality.alert: %s',
|
||||
ncr.name, exc,
|
||||
)
|
||||
# Non-fatal — never break the NCR save just because the
|
||||
# Non-fatal - never break the NCR save just because the
|
||||
# mirror failed.
|
||||
|
||||
def action_sync_to_quality(self):
|
||||
|
||||
Reference in New Issue
Block a user