feat: three nuxt frontends, demo seed, rounding + money-exponent + rate-cast fixes, archived specs

This commit is contained in:
Chengdong Zhang
2026-09-17 13:34:38 +08:00
parent dc9fd31c5e
commit 653f13161a
85 changed files with 4327 additions and 106 deletions
@@ -0,0 +1,17 @@
# Tasks: fulfillment-invoices
## 1. Schema
- [x] Migration: shipments, shipment_items, invoices; status enums; shipment_no/invoice_no sequences
## 2. Shipments
- [x] POST /api/shop/orders/{id}/shipments (qty validation vs unshipped remainder)
- [x] POST /api/shop/shipments/{id}/ship; order status propagation (fulfilling/shipped)
- [x] GET /api/shipments (customer), POST /api/shipments/{id}/confirm-delivered → order completed when done
- [x] GET /api/shop/shipments
## 3. Invoices
- [x] POST /api/orders/{id}/invoice (one open invoice per order; amount = order total)
- [x] GET /api/invoices (customer), GET /api/shop/invoices, POST /api/shop/invoices/{id}/issue
## 4. Tests
- [x] cargo test: partial shipment qty math, order status propagation, duplicate invoice rejected, issue flow