Commit Graph

3 Commits

Author SHA1 Message Date
Frudrax Cheng 6a48b0624f Replace phone last-4 verification with customer signature
Customer now signs on the confirm page instead of inputting the last
4 digits of their phone. Signature is stored as a base64 PNG dataURL
on the work order and shown back to the customer plus archived for
admin review. Reject still bypasses signature but now requires a
reason.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-26 18:02:04 +08:00
Frudrax Cheng b1e3adaf6a Change aftersales serial to YYMMNN monthly sequence
User-requested format: zjbf-sh-260501 (26=year, 05=month, 01=monthly seq).
Sequence resets each month and skips soft-deleted entries to avoid reuse.
Also documents aftersales API and new technician role in AGENTS.md / README.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-26 10:51:16 +08:00
Frudrax Cheng 0d82260fd9 Add aftersales work order feature
- AftersalesOrder model with state machine (created/pending_confirmation/closed/rejected)
- Public scan-to-confirm flow with phone last-4 verification and rate limiting
- Technician role and middleware for ownership-scoped operations
- QR code generation pointing to /aftersales/{serialNumber}
- Admin overrides: reassign, force-close, delete

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-26 10:39:49 +08:00