14 Commits

Author SHA1 Message Date
a30bfcf087 fix: add mode labels for learning sessions
Some checks failed
Deploy Admin Frontend / build-and-deploy (push) Failing after 10s
2026-06-19 12:50:14 +08:00
8da90c721b fix: remove duplicate render on RecordPage materialId
All checks were successful
Deploy Admin Frontend / build-and-deploy (push) Successful in 9s
2026-06-19 12:46:13 +08:00
ba4e35d413 feat: show user/kb/material names in admin learning tables
Some checks failed
Deploy Admin Frontend / build-and-deploy (push) Failing after 7s
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-19 12:44:54 +08:00
e2d94742e2 feat: show userName/kbName/materialName in admin learning tables
Some checks failed
Deploy Admin Frontend / build-and-deploy (push) Failing after 10s
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-19 12:44:31 +08:00
60b6100466 feat: add Chinese labels for admin learning data pages
All checks were successful
Deploy Admin Frontend / build-and-deploy (push) Successful in 10s
- New constants/labels.ts with all enum → Chinese mappings
- DataPages.tsx: all render() functions use labels
- Dashboard.tsx: eventType shows Chinese
- LearningData.tsx: session status shows Chinese
- Filter dropdowns also show Chinese options

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-19 12:36:54 +08:00
c2f9c376d0 fix: resolve all TypeScript build errors in admin
All checks were successful
Deploy Admin Frontend / build-and-deploy (push) Successful in 11s
- DataPages.tsx: add any type annotation to all onRow callbacks
  (ReadingEvent/Session/Anomaly/Record/Progress)
- ReplayPage.tsx: remove unused dayjs import

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-15 21:50:47 +08:00
42c3a604ab fix: implement session-to-events cross-page navigation
Some checks failed
Deploy Admin Frontend / build-and-deploy (push) Failing after 6s
- Session detail: add "查看关联事件" button linking to /learning/events
- ReadingEventPage: read clientSessionId from URL search params on mount
- ReadingEventPage: add Client Session ID filter input

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-15 21:47:25 +08:00
37d5a51514 feat: add clientSessionId filter to SessionPage (ADMIN-INFO-013)
Some checks failed
Deploy Admin Frontend / build-and-deploy (push) Failing after 7s
- SessionPage already had full implementation by user
- Added clientSessionId filter input for active/interrupted session search
- Detail drawer already covers 16 fields including session diagnostics

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-15 21:44:22 +08:00
de415ff3c1 fix: add materialId filter + column to RecordPage
Some checks failed
Deploy Admin Frontend / build-and-deploy (push) Failing after 6s
Review finding: missing materialId filter input and list column.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-15 21:38:16 +08:00
0fd0709b8b feat: UserTimelinePage with Timeline component (ADMIN-INFO-009)
Some checks failed
Deploy Admin Frontend / build-and-deploy (push) Failing after 8s
- UserTimelinePage: userId input → API query → Ant Design Timeline
- Supports array timeline + fallback JSON view for unknown formats
- Loading / empty / error states
- Route: /learning/timeline

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-15 21:34:49 +08:00
a2cb0681d9 feat: RecordPage with filter + detail drawer (ADMIN-INFO-008)
Some checks failed
Deploy Admin Frontend / build-and-deploy (push) Failing after 8s
- Add userId filter input to LearningRecord list
- Add click-to-view detail Drawer with full record info
- Fix occurredAt formatting to use dayjs
- Add scroll for narrow displays

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-15 21:26:44 +08:00
ea73400857 fix: resolve TypeScript build errors in admin learning pages
All checks were successful
Deploy Admin Frontend / build-and-deploy (push) Successful in 9s
- Remove 5 unused antd imports (Card, Descriptions, message, Spin, Alert)
- Add PaginatedResponse<T> interface for typed API responses
- Add explicit return types to all learningAdminAPI functions
- Remove unused isLoading from UserDiagnosePage / MaterialDiagnosePage

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-10 22:42:59 +08:00
5bfac05bec fix: remove dead detail query in ReadingEventPage
Some checks failed
Deploy Admin Frontend / build-and-deploy (push) Failing after 8s
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-09 22:01:04 +08:00
a9a7d651bb feat: ADMIN-INFO admin learning dashboard frontend (21/21)
Some checks failed
Deploy Admin Frontend / build-and-deploy (push) Failing after 8s
- Dashboard page with statistics cards
- Data pages: ReadingEvents, Sessions, Progress, DailyActivities, Records
- Diagnostic: Anomalies, User/Material Diagnose
- API service: learningAdmin.ts
- Routes: /learning/*

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-09 21:55:52 +08:00