What this page does
This page is the dedicated ordering workspace for NX categories. It reads the same category records as the list page, lets the operator stage local row selections, and saves bulk order changes.
Filters
Search: filters categories after Enter is pressed.Aggregators: limits rows to selected aggregators.- The first
Statusselector actually filters Scope using External, Casino, or System. - The second
Statusselector filters lifecycle status using Active or Disabled. Archived is configured but hidden from the selector.
The two selectors currently have the same visible Status label. Search applies on Enter; the multi-select filters submit automatically after a short delay. Filtering, pagination, and column sorting do not clear selected rows or the stored target.
Available reorder actions
- Row selection is local staging only; it does not save an order change.
Move To Topsubmits selected category IDs without a target and moves those rows to the top of the saved category order.- To insert after a category, select exactly that row and use
Set Target. - Deselect the target, select the categories to move, and use
Move To The Set. - Set a fresh target before each insert. The stored target is not displayed and is not cleared after a successful move.
Allshows the current server page.Selectedlocally keeps only selected IDs present on the currently loaded page; selected categories from other pages can remain in the move payload without appearing there.
How to read the grid
- The grid columns are
ID,Category,Aggregator,Order,Scope, andStatus. Orderis the current persisted category sort value, but the initial grid is ordered by ID ascending unless the operator explicitly sorts a column.- Clicking the row body does not open category details; use the checkbox to select a row.
Save behavior
The save flow writes three-decimal temporary values in checkbox selection order, then renumbers every category with ROW_NUMBER() ordered by those values inside one transaction. On success the page clears row selection, resets pagination, switches back to All, refreshes the grid, and shows Order Changed Successfully. The stored target category is not cleared.
Current request handling can return success-shaped page feedback after a failed sort. An empty Move To Top also reaches the sort service, fails validation, changes no saved order, and can still produce the success reset/toast. Refresh and verify Order after every move.
Known caveats
Move To Topremains enabled with no selected row. Select at least one category first.- Move buttons are not locked while a request is in flight. Wait for the refreshed list before another click.
- If the target remains selected during
Move To The Set, the target ID is also included in the categories being moved. - Selection order determines the order assigned to the moved categories.