Skip to content

v1.16.0: admin platform

Choose a tag to compare

@mhightower932 mhightower932 released this 17 Jun 17:10
c3ea8a1

"Admin platform" release. The web admin grows three ways. A Vendors page adds CRUD over the canonical vendors table, which shipped without an admin path. A consolidation pass restyles the chrome, folds the warehouse-layout pages under a single Data tab strip, retires the admin Picking/Packing/Shipping mirrors in favor of the handheld scanner flow, widens the SO/PO detail popups, and adds an Item History view to the audit log. A purchase-order management surface makes line items editable, adds an ARCHIVED status and a status dropdown, exports a PO to CSV, and brings receiving onto the web with an inline per-line receive control. Migration 065 prunes the retired page keys.

Mobile. Zero mobile/ diffs on this release. The v1.14.0 mobile build (versionCode 8) remains current; no new APK for v1.16.0.

Added

  • Vendors admin (#373): list / get / create / update / delete over the canonical vendors table, gated by a new vendors page permission, with a Vendors page, sidebar entry, and Users-grid row. is_active defaults to true on create; soft-archive via is_active=false is the supported retire path. No migration -- the table already existed; the items.vendor_id linkage stays deferred.
  • Warehouse-data consolidation (#376): Warehouses / Bins / Zones / Preferred Bins fold under a single Data page with a tab strip; the old top-level paths redirect, and per-tab visibility honors the existing page permissions.
  • Wide detail modals (#376): a Modal size prop drives a wide variant; the SO/PO detail popups gain a 2-column header grid, titled sections, and a shared .lines-table.
  • Audit Item History (#376): the Audit Log opens on an Item History tab -- a SKU/item-name typeahead drives a per-item lifecycle view via a new ?item_id filter matching both direct ITEM events and rows whose details carry the item_id. The full feed stays under its own tab.
  • PO line editing + status lifecycle (#375): the PO Edit modal gains a status dropdown (replacing Close/Reopen), per-line editable quantities, per-line removal, and an Add Line row with a debounced SKU typeahead, live preview, and inline errors. Header fields lock while CLOSED/ARCHIVED; validation errors surface field-level detail in a sticky banner. Backend adds POST/PATCH/DELETE line endpoints and PUT status transitions (ARCHIVED-from-CLOSED gate), each writing one audit row.
  • PO CSV export (#375): the PO detail popup exports SKU, Item Name, Ordered, Received, and Variance to po_<number>_<date>.csv.
  • Inline web receiving (#375): the Receiving detail modal gains a per-line receive control (qty + bin, defaulting to the first Staging bin) posting to the existing /receiving/receive endpoint, refetching the PO on success. Hidden when the PO status is not OPEN/PARTIAL.

Changed

  • Picking productivity metric (#376): the dashboard picking card now counts distinct orders picked (COUNT(DISTINCT entity_id) WHERE entity_type='SO') instead of summed units. Card label flips from "units" to "orders".
  • Admin chrome legibility (#376): contrast, sizing, and font tweaks on the sidebar and topbar.

Removed

  • Admin Picking / Packing / Shipping mirror pages (#376): retired. The floor workflow lives on the handheld scanners; the admin mirrors duplicated supervisor state without adding a control surface.

Migrations

  • 065 (#376) -- prunes the retired picking / packing / shipping page keys from user_page_permissions.

See CHANGELOG.md for the full notes.