Saufi
|
32428733d6
|
feat: participant management and csv import
- ParticipantController: list (search/filter), add manual, remove, export CSV (UTF-8 BOM)
- ParticipantImportService: League\Csv, strip BOM, normalise headers, per-row validation,
duplicate detection, transaction per row (single failure does not abort import), summary report
- Participant index: counts (total/pre-reg/walk-in/hadir), filter by source+status, pagination
- Participant create: inline no_kp validation, session picker pre-filled from program default
- Import page: result summary (success/duplicates/failed), error list, format guide
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-05-16 20:02:05 +08:00 |
|