fix(plating): UAT-caught UX annoyances + lurking bugs
Five fixes from the end-to-end UAT debrief: 1. Menu discoverability (HIGH) Added a prominent "+ New Direct Order" button in the Sale Orders list header toolbar (class=btn-primary, display=always). The existing menuitem at Plating > Sales > New Direct Order was buried in a submenu that didn't always expand; the toolbar button is a guaranteed entry point from the most common screen. 2. Escape/X destroys wizard state (HIGH) Added a prominent info banner at the top of the wizard form: "Changes are not saved until you click Create & Confirm Order. Closing this window (Esc or X) discards your entries." The Cancel button now has confirm="Discard this order? All header data and line items will be lost." so the intentional-cancel path also prompts. 3. Shell/cron crash in _fp_auto_create_mo (MEDIUM) bridge_mrp/models/sale_order.py:232-264 used _() inside list comprehensions to format the internal chatter summary of newly created / adopted MOs. _() resolves language from env.context, which is empty in odoo-shell and cron contexts — triggering a translate.get_text_alias crash AFTER the MOs had been created. These strings are internal audit log text, not user-facing UI; dropped the _() wrappers so the message builds safely from any context. Same for the per-group error-message on savepoint rollback. 4. Misleading "100%" margin (MEDIUM) x_fc_margin_percent displayed 100% on every SO because the cost rollup from fp.coating.config.unit_cost isn't populated yet. Added x_fc_margin_available Boolean (True only when at least one line's coating has a non-zero unit_cost). The SO Plating tab now hides the margin numbers when margin_available=False and shows an inline muted note: "Margin n/a — coating cost rollup not yet populated on any line's treatment." 5. Account Hold banner too loud (LOW) fusion_plating_invoicing was injecting a full-height danger alert above every SO header. Slimmed it to a one-line compact alert with icon: "Account Hold — SO confirmation, invoicing and shipping are blocked for non-managers." Half the vertical footprint, less visual competition with the Plating chip bar. Verified via UAT on S00071. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -6,6 +6,13 @@
|
||||
<field name="model">fp.direct.order.wizard</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="Direct Order Entry">
|
||||
<div class="alert alert-info py-2 mb-0 small"
|
||||
role="alert">
|
||||
<i class="fa fa-info-circle me-1"/>
|
||||
Changes are not saved until you click
|
||||
<strong>Create & Confirm Order</strong>. Closing this
|
||||
window (Esc or X) discards your entries.
|
||||
</div>
|
||||
<div class="alert alert-warning mb-0"
|
||||
role="alert"
|
||||
invisible="not missing_info_msg">
|
||||
@@ -194,7 +201,10 @@
|
||||
type="object"
|
||||
string="Create & Confirm Order"
|
||||
class="btn-primary"/>
|
||||
<button string="Cancel" special="cancel" class="btn-secondary"/>
|
||||
<button string="Cancel"
|
||||
special="cancel"
|
||||
class="btn-secondary"
|
||||
confirm="Discard this order? All header data and line items will be lost."/>
|
||||
</footer>
|
||||
</form>
|
||||
</field>
|
||||
|
||||
Reference in New Issue
Block a user