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
be75437861
fix: comprehensive UI fix — all table columns have explicit widths, no ellipsis on data, consistent scroll.x
2026-07-06 16:56:35 +08:00
43ee4dc5d5
fix(admin): replace scroll.x='max-content' with calculated fixed widths for all tables
2026-07-06 16:39:53 +08:00
f4eac7b804
fix: add scroll.x='max-content' to 15 tables, widen narrow columns to prevent header wrapping
2026-07-06 16:10:33 +08:00
ca909fae86
feat: add status+tenant filter to Students page, status filter to Rooms page
2026-07-06 14:33:30 +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
b77e5a2f50
fix: remove PermissionButton wrappers from Upload components
2026-07-05 21:37:47 +08:00
1b49d971ae
fix: add missing fragment closing tag in Rooms page
2026-07-05 21:29:42 +08:00
831a2c35d0
fix: remove nested button pattern in Rooms page (Popconfirm outside PermissionButton)
2026-07-05 21:26:05 +08:00
881e9c6175
feat: add rental_category/rate to Room, rental_type/tenant_id to Occupancy, tenant_id to Student
2026-07-05 19:31:03 +08:00
ef805fc823
fix: PermissionButton 包裹 Upload 时添加 type=text 消除外层按钮白底
2026-07-03 10:35:30 +08:00
87445a0ca6
feat: 宿舍管理表格添加 scroll 横向滚动
2026-07-03 10:12:03 +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