a9961d1a99
feat: 更新系统名称为学生管理系统,修改相关页面标题和生成的账单信息
2026-07-21 10:32:21 +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
5836b421d8
fix: harden financial transaction boundaries
2026-07-18 15:33:41 +08:00
f7328d670d
fix: 归档删除改为软删除
2026-07-17 14:13:17 +08:00
2beedc22af
fix:修复无法导出账单pdf
2026-07-16 11:25:59 +08:00
d582d641c0
feat: improve admin responsive pages and teacher candidates
2026-07-15 13:56:58 +08:00
c75a08affe
feat: add student wallet utility billing
2026-07-14 20:42:21 +08:00
598b4e8acd
feat: link deposits to bill payment
2026-07-14 16:38:38 +08:00
16b56ffcd5
merge upstream
2026-07-14 04:09:42 +00:00
aaf49d5580
fix: guard bill generation submission
2026-07-14 11:20:42 +08:00
029af37f3a
fix: render bill pdf from frontend print view
2026-07-14 11:18:49 +08:00
acb11b87a3
fix: enhance pagination settings across multiple pages with default size and options
2026-07-13 16:49:21 +08:00
8ed1682b90
fix permissions and teacher attendance workflows
2026-07-10 20:40:52 +08:00
97c2ceccde
fix: re-apply UX fixes on Bills, Expenses, Deposits
...
- Add Empty component to antd imports
- Replace console.error with message.error in catch blocks
- Add batchLoading state + guard on batch operations
- Add locale emptyText to Tables
2026-07-09 19:57:10 +08:00
8f28c172c4
fix: close unclosed fragments in Expenses/Deposits, fix brace in Bills
2026-07-09 19:52:33 +08:00
c59fd6ce92
fix(admin): UX improvements — silent fetch failures, empty states, batch loading guards, dashboard refresh
...
- Replace console.error-only catches with message.error user-facing notifications
across Bills, Classes, ClassroomRentals, ClassroomSchedule, Classrooms, Deposits,
Expenses, OperationLogs, Permissions, Roles, RoomVisual, Rooms, Students,
Tenants, Users
- Add Empty component via Table locale prop on list pages: Bills, Classes,
ClassroomRentals, Classrooms, Deposits, Expenses (room+personal), Occupancies,
Rooms, Students, Tenants, Roles
- Add batchLoading state to batch delete/update operations: Bills (batchDelete,
batchUpdateStatus), Expenses (batchDeleteRoom, batchDeletePersonal),
Occupancies (batchCheckOut, batchDelete), Rooms (batchDelete),
Students (batchDelete)
- Add refreshLoading indicator to Dashboard header when re-fetching data
- Consistent error pattern: catch (e: unknown) { const err = e as { message?: string }; message.error(...); }
2026-07-09 18:03:42 +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
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
20f3b79179
feat: bills expense type filter (backend join + frontend Select), sync stub docs
2026-07-06 14:48:47 +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
940b587df9
fix: remove nested button patterns across all pages, remove Dashboard gantt
2026-07-05 21:35:03 +08:00
bfdb12d9ea
feat: 账单管理表格添加 scroll,详情内嵌表格也添加 scroll
2026-07-03 10:14:23 +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