|
|
13ef357448
|
移除账号启用状态统一使用归档
|
2026-07-24 09:53:04 +08:00 |
|
|
|
c98d37307e
|
fix: align permission-gated UI actions
|
2026-07-23 12:34:37 +08:00 |
|
|
|
a585fd42d5
|
feat: 支持表格单元格快捷编辑
CI 检查 / lint (pull_request) Has been cancelled
CI 检查 / typecheck (pull_request) Has been cancelled
CI 检查 / test (pull_request) Has been cancelled
|
2026-07-21 14:17:08 +08:00 |
|
|
|
375c7ec60b
|
feat: refine admin forms, attendance and finance workflows
Squash merge PR #23.
Included changes:
- complete occupancy check-in required fields/default payload
- improve responsive admin management pages
- fix attendance edge cases and attendance period config
- refine wallet/finance-related workflow handling
Checks:
- npm run typecheck -w apps/admin
- npm run typecheck -w apps/server
|
2026-07-18 12:54:10 +00:00 |
|
|
|
d582d641c0
|
feat: improve admin responsive pages and teacher candidates
|
2026-07-15 13:56:58 +08:00 |
|
|
|
acb11b87a3
|
fix: enhance pagination settings across multiple pages with default size and options
|
2026-07-13 16:49:21 +08:00 |
|
|
|
cc4f4dae4e
|
fix: audit remediation — SSE user scoping, FK transactional safety, UI error handling
- H4: scoped SSE import progress to exact userId match; non-HTTP events excluded from all subscribers
- H2: moved PRAGMA foreign_key_check inside SQLite transaction before COMMIT; violations rollback preserving old tables
- M1: removed dead axios-style error branch from extractErrorMessage (interceptor already unwraps)
- M2: split handleSave try/catch — save errors vs reload errors shown distinctly
- M3: added provider field validation before AI config test request
- Added SSE scoping regression tests (import service + controller)
- Added FK check failure rollback test (database-migrations.spec)
- Updated controller spec expectations for userId parameter
Co-authored-by: Code Review <branch-review>
|
2026-07-12 22:59:03 +08:00 |
|
|
|
8ed1682b90
|
fix permissions and teacher attendance workflows
|
2026-07-10 20:40:52 +08:00 |
|
|
|
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 |
|
|
|
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 |
|
|
|
9eec7c34be
|
feat: add teacher management page with profile editing
|
2026-07-06 15:36:52 +08:00 |
|