e7aa202603
fix: 修改 PDFDocument 导入方式以符合 ES6 模块规范
2026-07-14 10:45:27 +08:00
8f0991a51f
feat: replace tenants with organization management
2026-07-10 21:27:26 +08:00
44105c1689
refactor: remove obsolete scaffolding and dead modules
...
Drop the unused root hello-world controller, empty CommonModule imports, development seeding code, legacy student report entity, stale DTOs, notification hook, and their placeholder tests.
2026-07-10 14:12:56 +08:00
6029d8e2fd
refactor(server): remove Department/UserDepartment entities, CampusScope, and departmentId from all entities
...
- Delete department.entity.ts, user-department.entity.ts
- Remove Department/UserDepartment from entities/index.ts
- Remove departmentId column from 18 entities (AttendanceRecord, ArchiveAttachment, Bill, ClassSchedule, Classroom, ClassroomRental, Deposit, DepositInstallment, ExamScore, LearningRecord, Occupancy, PersonalExpense, ResultArchive, Room, RoomExpense, Student, StudentEnrollment, StudentProfile, StudentReport)
- Remove departments/ module entirely
- Delete campus-scope.ts, campus-scope.middleware.ts (request-utils.ts kept — it's just IP extraction)
- Simplify common.module.ts to empty module
- Remove CampusScopeMiddleware from app.module.ts
- Remove all CampusScope injections and filter calls across all services
- Remove departmentId from all DTOs and controllers
- Simplify dingtalk/wecom sync to only sync users (no dept table)
- Update seed module to remove department seeding
- Clean frontend compilation
2026-07-09 17:51:32 +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
20f3b79179
feat: bills expense type filter (backend join + frontend Select), sync stub docs
2026-07-06 14:48:47 +08:00
7b298a615c
feat: complete PRD verification fixes and deployment readiness
...
- Add CommonModule to provide/export CampusScope across business modules
- Replace DepartmentsModule imports with CommonModule in 11 modules
- Add missing Class/Tenant repository imports to StudentsModule and SchedulesModule
- Fix service specs with CampusScope, ClassRepository, StudentRepository mocks
- Move better-sqlite3 to optionalDependencies for production Docker builds
- Rewrite Dockerfiles for monorepo root build context
- Update docker-compose.yml service build contexts
2026-07-06 01:55:35 +08:00
b3655da012
fix: resolve 9 P0+P1 review findings (bills decorators, campus isolation bypass, ding raw crash, batch import counter, SSE multi-tab, interval leak, dept permissions, cycle prevention, tree depth)
2026-07-06 00:38:51 +08:00
df61ebbc5b
feat: auto-populate department_id on create + seed default campus with backfill
2026-07-06 00:05:00 +08:00
cd6364268d
feat: integrate CampusScope.filter() into all business services (12 services + 12 modules)
2026-07-05 23:58:51 +08:00
9d9d4719b5
feat: add Student-User association and activate all notification TODOs
2026-07-05 23:42:22 +08:00
7020e86809
feat: integrate notification creation into business modules (classes, schedules done; bills/occupancies/deposits need student→userId mapping)
2026-07-05 23:25:34 +08:00
a7a1969d79
test: add unit tests for Schedules, Bills, and Attendance services
2026-07-05 20:51:24 +08:00
f962633f67
fix: normalize operation log module names across controllers
2026-07-05 19:38:18 +08:00
efe13fe664
feat: add long-term rental independent billing in generate logic
2026-07-05 19:33:45 +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