Feature #10350
openGlobal module Spice Levels and bug fixes
100%
Description
Here's the list — covering this session's work.
Spice Level Sets — Backend
Added a SpiceLevelSet model with ordered levels (stable key, guest-facing label, description), tenant scoping and soft delete
Replaced per-item spice arrays with a set reference, re-exposed as virtuals so POS, KOT, printers and the customer app keep working unchanged
Built full CRUD endpoints plus bulk assign, unassign, and a per-set menu-items listing
Added guardrails: duplicate level keys rejected, sets in use can't be deleted, one default per tenant, default level validated against its set
Wrote and tested a migration script, verified against a copy of production data
Spice Level Sets — Admin UI
Added a Spice Levels tab under Menu for creating and editing sets, with reorderable levels and a default toggle
Built an add-items dialog with search, multi-select and bulk apply
Built a set details dialog with search, multi-select and bulk remove
Replaced the menu item dialog's spice editor with a set picker showing a live level preview
Spice Level Sets — Customer-facing
Added the spice picker to the guest ordering page, which had none — this was why spice never prompted on the live site
Made the customer app render each item's configured scale instead of a fixed four-option list
Carried spice selections through the cart into the order payload so they reach the kitchen
Production data work
Ran the migration against the production Mythri database (501 items)
Consolidated items onto a single chosen set, then cleared the sets on request for a manual rebuild
Bug fixes
Fixed the API returning stale spice levels instead of the configured set
Fixed clearing the search box wiping already-selected items
Fixed slider labels not aligning with their points (25% off with two levels), across all three pickers
Narrowed the slider track for short scales
Fixed assigned items not showing as selected when reopening the dialog
Fixed the picker offering items already belonging to another set
Fixed validFrom being dropped when editing a menu item
Changed homepage trial copy from 7 days to 3 days
Subtasks
Related issues