fix(configurator): drop the first-time-part "no saved specification" popup
The order-line onchange still auto-ticks "Save as Default" (so a new part's spec is remembered next time) — only the explanatory popup is removed, per client request. The ticked checkbox on the line is the cue now. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -5,7 +5,7 @@
|
|||||||
|
|
||||||
{
|
{
|
||||||
'name': 'Fusion Plating — Configurator',
|
'name': 'Fusion Plating — Configurator',
|
||||||
'version': '19.0.22.7.0',
|
'version': '19.0.22.7.1',
|
||||||
'category': 'Manufacturing/Plating',
|
'category': 'Manufacturing/Plating',
|
||||||
'summary': 'Quotation configurator with part catalog, coating configs, and formula-based pricing engine.',
|
'summary': 'Quotation configurator with part catalog, coating configs, and formula-based pricing engine.',
|
||||||
'description': """
|
'description': """
|
||||||
|
|||||||
@@ -175,7 +175,8 @@ class FpDirectOrderLine(models.Model):
|
|||||||
`push_to_defaults` so the first coating pick gets persisted
|
`push_to_defaults` so the first coating pick gets persisted
|
||||||
back to the part. Without this, the estimator has to remember
|
back to the part. Without this, the estimator has to remember
|
||||||
to tick the toggle and the second order doesn't pre-fill.
|
to tick the toggle and the second order doesn't pre-fill.
|
||||||
Returns a warning popup explaining what's happening.
|
(The explanatory popup was removed 2026-05-29 at the client's
|
||||||
|
request — the ticked "Save as Default" checkbox is the cue now.)
|
||||||
"""
|
"""
|
||||||
warning = None
|
warning = None
|
||||||
for rec in self:
|
for rec in self:
|
||||||
@@ -217,25 +218,17 @@ class FpDirectOrderLine(models.Model):
|
|||||||
# New-part auto-suggest: if no default spec exists AND no
|
# New-part auto-suggest: if no default spec exists AND no
|
||||||
# SO-line history exists, this is genuinely a first-time use
|
# SO-line history exists, this is genuinely a first-time use
|
||||||
# of the part. Auto-tick the push_to_defaults toggle so
|
# of the part. Auto-tick the push_to_defaults toggle so
|
||||||
# whatever Sarah picks becomes the saved default — surface a
|
# whatever the estimator picks becomes the saved default.
|
||||||
# warning popup so she knows. `is_one_off` always wins
|
# The explanatory popup was removed 2026-05-29 at the
|
||||||
# (operator opted out of catalog persistence), so don't
|
# client's request — the ticked "Save as Default" checkbox on
|
||||||
# auto-tick in that case.
|
# the line is the visible cue now (no nag dialog).
|
||||||
|
# `is_one_off` always wins (operator opted out of catalog
|
||||||
|
# persistence), so don't auto-tick in that case.
|
||||||
if (not has_default_spec
|
if (not has_default_spec
|
||||||
and not has_history_spec
|
and not has_history_spec
|
||||||
and not rec.is_one_off
|
and not rec.is_one_off
|
||||||
and not rec.push_to_defaults):
|
and not rec.push_to_defaults):
|
||||||
rec.push_to_defaults = True
|
rec.push_to_defaults = True
|
||||||
warning = {
|
|
||||||
'title': _('First-Time Part — Defaults Will Be Saved'),
|
|
||||||
'message': _(
|
|
||||||
'%(part)s has no saved specification. '
|
|
||||||
'The specification you pick on this line will '
|
|
||||||
'be saved as the part\'s default so the '
|
|
||||||
'next order auto-fills them. Untick "Save as '
|
|
||||||
'Default" on the line if you don\'t want this.'
|
|
||||||
) % {'part': part.display_name or part.part_number or '(part)'},
|
|
||||||
}
|
|
||||||
return {'warning': warning} if warning else None
|
return {'warning': warning} if warning else None
|
||||||
|
|
||||||
# ---- Qty / price ----
|
# ---- Qty / price ----
|
||||||
|
|||||||
Reference in New Issue
Block a user