mirror of
https://github.com/Sea-Haven-Industries/shoc-frontend-new.git
synced 2026-10-07 16:19:01 +00:00
3 KiB
3 KiB
Jira
- SH-121 (advanced filters global search context)
- SH-196 — Has uplift facet (related)
- Merge after PR2 so severity module stays unified (
work-order-severity.ts).
Summary
- Extend advanced search with design-parity facets: Severity (SEV 1–5), Indicators (rescheduled ≥ 2, carried over ≥ 2, add-on), Flag colours, Internal (SH) WO#, and Uplift (has uplift + status refinement).
- Wire
toBoardSearchQueryParams/GET /board/searchquery params:severities,rescheduled,carriedOver,addOn,flagColors,internalOnly,hasUplift,upliftStatuses. - Applied-filter chips and clear handlers for each new group; docs updated in
docs/work-orders/board-search-api.md. - Single severity source:
work-order-severity.ts(removedwork-order-severity-levels.ts).
Scope
In
WorkOrderAdvancedFilters+ sheet sections + banner chipsboard-query-paramsmapping andWorkOrderBoardSearchQueryParamstypes- Unit tests for param builders and chip clear
- Client-side predicates for indicators/flags/internal (fields already on board rows)
Out (follow-up PRs)
- Global search rewrite (SH-121 bar behaviour)
- New board columns, severity wizard/type cell (PR2), uplift column/dialog CRUD (PR3)
- Aveta compliance filter (
avetaOnly) — pending BEavetaRequiredfield
API / BE
Contract assumed from docs/work-orders/pending-be-contract.md:
| Param | Notes |
|---|---|
severities |
multi 1–5; requires severity on search rows (PR2) |
rescheduled / carriedOver |
boolean; BE filters count ≥ 2 |
addOn |
boolean; isAddOn indicator (not WO type 7) |
flagColors |
multi #RRGGBB |
internalOnly |
WO# prefix SH |
hasUplift + upliftStatuses |
requires uplift summary on rows (PR3) |
Blocked on BE: until search endpoint accepts these params, advanced search may return unfiltered or 400 for unsupported keys. FE sends param names as documented; no alternate naming. Aveta facet intentionally omitted until avetaRequired is confirmed.
Severity / uplift / add-on facets are enabled in UI; server-side filtering depends on BE shipping the contract above.
Test plan
- Advanced Filters sheet shows Severity, Indicators, Flag, WO#, Uplift sections
- Apply filters → network
GET /board/searchincludes mapped query params - Banner chips reflect selections; dismiss clears only that group
- Uplift chip clear resets both
hasUpliftandupliftStatuses npm run verifygreen locally
Base
- Base branch:
dev