Garment Overview
Garment Overview is the garment variant's home screen — it pulls open tailoring/alteration orders and saved customer measurements into one screen so you can start the day without opening two separate pages.
Overview
The page loads two data sources in parallel with Promise.allSettled — Tailoring Orders and Customer Measurements — so if one endpoint fails, the other still renders normally instead of the whole dashboard breaking.
Two banners at the top only appear when something genuinely needs attention: a green banner listing every order that is READY for pickup (with customer names), and a red banner counting orders whose delivery date has already passed.
Four stat cards (Open Orders, Due Today, Ready, Measurements) are each clickable and jump straight to Tailoring Orders or Customer Measurements.
An Order Pipeline strip shows a live count for PENDING, IN_PROGRESS and READY orders so you can see how work is distributed across the shop at a glance.
Below that, two side-by-side panels list up to 7 Upcoming Deliveries (any open order with a delivery date, soonest first since the underlying order list is already sorted by delivery date) and up to 7 Recent Measurements.
Before You Start
- You must be on the pos-app-garment variant and logged in — this replaces the generic Dashboard as the landing page under the Garment section.
- The route itself only requires the "billing" plan feature to be enabled — it is not hidden behind any Advanced/Enterprise plan tier.
- Cards and panels are driven entirely by whatever exists in Tailoring Orders and Customer Measurements — the dashboard has no data of its own to configure ahead of time.
Step-by-Step Guide
1 Read the shop's status at a glance
- Look at the four stat cards: Open Orders (every order not yet Delivered/Cancelled), Due Today (open orders whose delivery date is today), Ready (orders in READY status), and Measurements (total saved measurement records).
- Click any card to jump to its source page — Open Orders, Due Today and Ready all navigate to Tailoring Orders; Measurements navigates to Customer Measurements.
2 Act on the alert banners
- A green banner appears listing the customer names of every order currently READY for pickup — check it each morning before opening the shop.
- A red banner appears counting orders whose delivery date has passed while the order is still open (not Delivered/Cancelled) — these need an apology call or a rushed finish.
3 Check the Order Pipeline
- The pipeline strip shows one pill per status — PENDING, IN_PROGRESS, READY — each with its live count, always rendered even at zero (unlike the electronics variant's pipeline, which hides empty statuses).
4 Review Upcoming Deliveries and Recent Measurements side-by-side
- The left panel lists up to 7 open orders that have a delivery date, each showing customer name, order number, garment type, and whether the delivery is Overdue, Today, or a future date with its status badge.
- The right panel lists up to 7 most-recently-saved measurement records, showing customer name, phone, and a short Chest/Waist summary where those values are set.
- Click "All →" in either panel header to jump to the full Tailoring Orders or Customer Measurements page.
Every Field & Button, Explained
| Field / Button | What it does |
|---|---|
Ready-for-pickup banner | Green banner listing customer names for every order currently in READY status; hidden entirely when there are none. |
Overdue banner | Red banner counting open orders (not Delivered/Cancelled) whose delivery date has already passed; hidden entirely when there are none. |
Open Orders card | Count of orders not in DELIVERED or CANCELLED status. |
Due Today card | Count of open orders whose delivery date equals today's date. |
Ready card | Count of orders currently in READY status. |
Measurements card | Total count of saved customer measurement records. |
Order Pipeline strip | One pill per status — PENDING, IN_PROGRESS, READY — showing a live count; unlike the electronics dashboard's pipeline, statuses with zero orders are still shown rather than hidden. |
Upcoming Deliveries panel | Up to 7 open orders that have a delivery date, showing customer, order number, garment type, and Overdue/Today/date label with status badge; "All →" opens Tailoring Orders. |
Customer Measurements panel | Up to 7 most recently saved measurement records, showing customer name, phone, and a short Chest/Waist summary; "All →" opens Customer Measurements. |
Tips & Best Practices
- Treat the ready-for-pickup and overdue banners as your opening-shift checklist, in that order — customers waiting for a finished garment matter more than anything else on the screen.
- Use the Order Pipeline strip as a quick load check — a pile-up in PENDING with nothing moving into IN_PROGRESS usually means it is time to check in with your tailor before taking new orders.
- Click straight through from a stat card instead of navigating via the sidebar — every card is a live shortcut to its source page.
Troubleshooting & FAQ
The dashboard shows 0 for everything even though I have orders and measurements on file.
One panel is missing data but the rest of the dashboard loaded fine.
An order I marked Delivered is still counted in Open Orders.
The Upcoming Deliveries panel is missing an order I expect to see.
I do not see any mention of Wishlist, Broken Size Sets or Markdown Rules on this dashboard.
🧑💻 Developer Notes
Source component(s):
frontend-app/pos-app-garment/src/pages/garment/GarmentDashboardPage.jsx
Backend endpoints used:
GET /garment/ordersGET /garment/measurements
Related tables (db-core repositories):
GarmentOrderGarmentMeasurement
Redux slices:
None — local component state only (useState/useEffect)
Feature flag key: billing
Both data sources are fetched with Promise.allSettled directly against /garment/orders and /garment/measurements (no separate /garment/dashboard endpoint exists). Notably this dashboard has no awareness whatsoever of Wishlist, Broken Size Sets, Markdown Rules, or any of the other 20+ garment-only endpoints registered in garment.routes.js (consignment brands, CMT challans, fabric bales, advance orders, size swaps, VIP tiers, season comparison, etc.) — a shop actively using those features will see none of that activity summarised here. This mirrors the same gap flagged in the electronics dashboard (which likewise ignores Trade-in and EMI data).