42d3f0e27f
feat: DingTalk attendance import + integration config + expense types + UI polish
...
Server:
- Add DingTalk attendance import service with SSE progress streaming
- Add IntegrationConfig entity & module for multi-tenant DingTalk setup
- Add ExpenseType entity & ExpenseTypesModule
- Add SeedModule for DB initialization
- Add UserDingMapping entity for DingTalk user linkage
- Attendance service: import flow with dedup & student auto-mapping
- Rooms service: time-range overlap queries
- Sync controller/service: DingTalk integration wiring
- Permission guard: refactor to pure re-export
- Campus scope middleware: tenant-aware filtering
Admin UI:
- Attendance page: import UI with progress & result summary
- All pages: tableStyle/tablePagination standardization
- Login page: responsive styling
- Sensitive data: useViewSensitive hook for masked viewing
- Vite config: path aliases, build optimization
- Test infra: vitest config, test utilities
Docs: PRD DingTalk batch 1 & 2 design docs
2026-07-09 09:11:56 +08:00
9b0a9749a2
fix: type error in dashboard ClassroomUtilStats
2026-07-06 10:30:04 +08:00
3717531bb3
feat(dashboard): add classroom utilization stats endpoint and UI
2026-07-06 09:38:17 +08:00
6b0a21d266
fix: resolve all admin typecheck errors (typed api wrapper, unused imports, missing hooks, PermissionButton children)
2026-07-06 01:02:26 +08:00
4a48a65a48
feat: enhance dashboard with attendance count + Gantt chart
2026-07-06 00:49:20 +08:00
79f503c46a
fix: add missing isMobile definition in Dashboard
2026-07-05 21:53:47 +08:00
2be8b55c93
feat: enhance dashboard with comprehensive stats and charts
2026-07-05 21:52:50 +08:00
940b587df9
fix: remove nested button patterns across all pages, remove Dashboard gantt
2026-07-05 21:35:03 +08:00
99162168b1
feat(dashboard): add classroom/attendance/income stat cards and trend charts
...
- Add second row of stat cards: classroom count, occupancy rate, attendance rate, monthly income
- Add ECharts line charts for attendance trend (30-day) and income trend (6-month)
- All fields sourced from existing GET /dashboard/stats response (Task 7.1 contract)
2026-07-05 19:53:34 +08:00
969f3f4221
feat: Dashboard 响应式网格,统计卡片/图表/工具栏适配三端
2026-07-03 10:07:28 +08:00
4f4cee157a
chore: commit oxfmt formatting changes and verify artifacts
2026-07-02 15:55:09 +08:00
46a817503e
feat(task1): restructure directories for turborepo monorepo
...
- Move backend/ to apps/server/ via git mv
- Move frontend/ to apps/admin/ via git mv
- Create packages/typescript-config/ with base, nestjs, and react-vite presets
2026-07-02 15:05:12 +08:00