first commit
This commit is contained in:
@@ -0,0 +1,55 @@
|
||||
# Frontend — PROGRESS (Phase 1: Inventory & Supply Chain)
|
||||
|
||||
Legend: `[ ]` not started · `[~]` in progress · `[x]` done
|
||||
Spec: `docs/20-FRONTEND.md` (flows + rules) · `docs/11-BACKEND-PHASE1.md` (API contract)
|
||||
Convention: `docs/01-DOC-GUIDE.md §6`. Update this file in the **same commit** as the code. When ticking `[x]`, append a short note + any deviation.
|
||||
|
||||
## 0. Foundation
|
||||
- [ ] `NEXT_PUBLIC_API_BASE_URL` wired (`.env.local`)
|
||||
- [ ] Typed API client / fetch wrapper (one method per endpoint) + bearer token handling
|
||||
- [ ] Shared TS types mirroring API DTOs (`types/`)
|
||||
- [ ] Dependency-free client validation helpers (format/required/range)
|
||||
- [ ] `ProblemDetails` normalizer + `code → message` map (`lib/`)
|
||||
|
||||
## 1. Auth
|
||||
- [ ] Login screen → `POST /auth/login`; store token; attach to client
|
||||
|
||||
## 2. Master Data screens
|
||||
- [ ] Items (list + create/edit, ETag handling)
|
||||
- [ ] UOM + conversions
|
||||
- [ ] Categories (tree)
|
||||
- [ ] Vendors
|
||||
- [ ] Warehouses + Bins
|
||||
- [ ] Item reorder settings
|
||||
|
||||
## 3. Procurement screens
|
||||
- [ ] Requisition (create + submit)
|
||||
- [ ] RFQ + quotations + comparison view
|
||||
- [ ] Purchase Order (create, edit-while-open, cancel)
|
||||
- [ ] Purchase Return
|
||||
|
||||
## 4. Receiving screens
|
||||
- [ ] GRN create (qty, bin, batch/serial capture)
|
||||
- [ ] GRN confirm (render created layers / ledger refs)
|
||||
- [ ] Inspection hold release / reject
|
||||
|
||||
## 5. Stock screens
|
||||
- [ ] Stock enquiry (onHand/available/onHold/inTransit)
|
||||
- [ ] Ledger view · Valuation view
|
||||
- [ ] Transfer (create → dispatch → receive)
|
||||
- [ ] Adjustment (reason code required)
|
||||
- [ ] Count (cycle/full → enter → post)
|
||||
- [ ] Reorder alerts (+ create requisition)
|
||||
|
||||
## 6. Validation posture (20-FRONTEND §3)
|
||||
- [ ] Client format/required/range checks on all forms
|
||||
- [ ] Surface server `ProblemDetails` incl. domain codes; map to fields/messages
|
||||
- [ ] `412` conflict → prompt refetch before retry
|
||||
- [ ] No client-side gating on stock/availability/status (server-authoritative)
|
||||
|
||||
## 7. UX states
|
||||
- [ ] Loading / empty / error states on every list
|
||||
- [ ] Transactional actions show server-returned side effects as confirmation
|
||||
|
||||
## Done
|
||||
<!-- move [x] items here with date + note if the active list grows long -->
|
||||
Reference in New Issue
Block a user