Commit Graph

471 Commits

Author SHA1 Message Date
099cff7f00 test: cover end-to-end attendance workflow 2026-07-23 10:31:23 +08:00
0ce8f58adb chore: remove dead code and tune frontend chunks
Remove unused production symbols, starter assets, and stale browser tooling; reduce frontend chunk fragmentation.
2026-07-23 01:26:41 +00:00
43ca5a6e36 Merge pull request 'fix: UI优化 + 钉钉考勤已结算课程刷新 + dev脚本改进' (#38) from fix/ux-improvements-20260722 into main 2026-07-22 09:52:03 +00:00
90cc321221 fix: UI improvements and DingTalk attendance refresh for completed sessions
- DatePicker editors open immediately on double-click
- Student archive drawer hides empty studentNo parentheses
- Student add/edit form uses 2-column grid layout
- Table horizontal scrollbars show only on hover/focus
- Remove fake 近7日趋势 stats from attendance student detail
- Allow DingTalk refresh to update completed attendance sessions
  (late-arriving punches can now change absent → present)
- Switch dev command from concurrently to turbo run dev
- Remove concurrently/wait-on dependencies
2026-07-22 17:50:59 +08:00
d33c37b4b0 Merge pull request '修复学习记录实体未注册问题' (#37) from xiongyuxing/gongxue-base:main into main 2026-07-22 09:38:45 +00:00
bf867eedaa Merge branch 'main' of https://git.gongxue100.com/xiongyuxing/gongxue-base 2026-07-22 17:22:11 +08:00
6286864df0 修复学习记录实体未注册问题 2026-07-22 17:19:20 +08:00
5b10e80d3a Merge pull request '修正换宿当天查寝归属、修复 SQLite 钱包调账锁异常' (#36) from xiongyuxing/gongxue-base:main into main 2026-07-22 08:59:43 +00:00
a9009f86fb fix: 修正换宿当天查寝归属 2026-07-22 15:18:12 +08:00
7ffc573d2e 修复 SQLite 钱包调账锁异常 2026-07-22 15:03:06 +08:00
cd1996f281 Merge pull request '增加金数据学生同步与匹配规则' (#35) from feature/jinshuju-student-sync into main 2026-07-22 04:30:03 +00:00
e1bc3a6b2c ci: remove cache steps that add overhead 2026-07-22 12:27:51 +08:00
6052b03fc6 ci: cache npm and Turbo artifacts 2026-07-22 11:50:53 +08:00
67fdf093e5 perf: split oversized admin bundles 2026-07-22 11:45:35 +08:00
393ee62168 feat: add Jinshuju student sync 2026-07-22 11:41:50 +08:00
1dc13274de Merge pull request '增加宿舍查寝功能' (#34) from xiongyuxing/gongxue-base:main into main 2026-07-22 03:33:32 +00:00
576dab0d41 fix: 修复测试文件日期比较逻辑 2026-07-22 11:25:13 +08:00
22a4431ba3 Merge branch 'main' of https://git.gongxue100.com/xiongyuxing/gongxue-base 2026-07-22 11:18:04 +08:00
da023759a1 fix: 修复后端 CI 检查与测试 2026-07-22 11:17:39 +08:00
f2cae27575 merge upstream 2026-07-22 02:58:11 +00:00
257c39db90 feat: 优化 CI 工作流,简化依赖安装和类型检查步骤 2026-07-22 10:57:46 +08:00
54e283b687 feat: 增加宿舍查寝功能 2026-07-22 10:55:48 +08:00
e27d8b512e Merge pull request '修复学生余额多选充值一次性最高只能选15个' (#33) from xiongyuxing/gongxue-base:main into main 2026-07-22 02:23:09 +00:00
c888dce065 feat: 更新 CI 工作流,优化依赖安装步骤 2026-07-22 10:13:31 +08:00
d4fb55a20c feat: 更新 CI 工作流,添加 checkout 步骤的配置 2026-07-22 09:49:12 +08:00
8f1ff5970d feat: 更新学生余额页面的分页设置,增加页面大小选择功能 2026-07-22 09:43:54 +08:00
25760a4ec7 Merge pull request '学生信息导入' (#32) from xiongyuxing/gongxue-base:main into main 2026-07-22 01:05:47 +00:00
4fdf190d69 feat: 优化 CI 工作流,简化步骤并更新环境配置 2026-07-21 17:35:16 +08:00
04082820b0 feat: 重构 CI 工作流,合并 lint、类型检查和测试步骤 2026-07-21 17:31:44 +08:00
cbc04fea4f feat: add exam score management 2026-07-21 16:04:17 +08:00
37ef6f9dd7 feat: add college archive fields 2026-07-21 15:35:35 +08:00
2626d5f460 Merge branch 'main' of https://git.gongxue100.com/xiongyuxing/gongxue-base 2026-07-21 15:12:24 +08:00
90cc0c10b2 feat: expand student archive import template 2026-07-21 15:11:52 +08:00
6a35e406d5 Merge pull request '添加可拖拽的路由停靠组件,支持动态标签管理,支持侧边栏多项同时展开' (#31) from xiongyuxing/gongxue-base:main into main 2026-07-21 06:37:33 +00:00
a585fd42d5 feat: 支持表格单元格快捷编辑 2026-07-21 14:17:08 +08:00
fe0b71a0a9 feat:调整登陆页面输入框布局 2026-07-21 10:43:07 +08:00
a9961d1a99 feat: 更新系统名称为学生管理系统,修改相关页面标题和生成的账单信息 2026-07-21 10:32:21 +08:00
29c55ebff1 feat: 添加可拖拽的路由停靠组件,支持动态标签管理 2026-07-21 10:13:47 +08:00
5e1ba70e59 功能:支持侧边栏多项同时展开 2026-07-21 09:59:17 +08:00
d306de48e4 修复:兼容 SQLite 开发环境启动 2026-07-21 09:57:19 +08:00
b32dc33e8b Merge pull request 'feat: 移除 Docker 部署,添加 Gitea CI/CD + PM2 手动部署' (#30) from worktree-ci-cd-pm2-deploy into main 2026-07-20 07:46:18 +00:00
151ef06ec2 refactor: 精简部署流程,移除 MySQL 管理
MySQL 已在服务器运行,部署只需三步:
1. 本地构建 → rsync 同步
2. npm ci(首次)+ migration:run
3. pm2 startOrReload
2026-07-20 15:35:45 +08:00
a87f26a915 feat: 移除 Docker 部署,添加 Gitea CI/CD workflows
- 删除 docker-compose.yml、Dockerfile、.dockerignore、docker/ 目录
- 更新 deploy.sh:移除 Docker Compose MySQL 启动,改为 systemd 检查
- 新增 .gitea/workflows/deploy.yml:手动触发、rsync + SSH + PM2 部署
- 新增 .gitea/workflows/ci.yml:PR lint + typecheck + test 自动检查
2026-07-20 15:33:46 +08:00
ad62b8595c Merge pull request 'test: 为边界条件修复添加测试用例' (#29) from test/boundary-conditions into main 2026-07-20 07:31:36 +00:00
2c0be0f033 test: 为边界条件修复添加测试用例
- rooms: parseRoomNumber 未知格式、楼层0、capacity ?? 测试
- occupancies: capacity undefined/null/0 fail-closed 防守测试
- schedules: startTime > endTime 拒绝测试
- attendance: 重叠检查按时间排序、raw[index] 移除测试
- expenses: 金额零/负/NaN 拒绝、period反转校验测试

5 modules, 40 tests, all passing
2026-07-20 15:30:41 +08:00
bbd700369c Merge pull request 'fix: 修复多处边界条件问题' (#27) from fix/boundary-conditions into main 2026-07-20 06:50:21 +00:00
00e9c5e45a fix: 修复多处边界条件问题
- rooms: parseRoomNumber 未知格式返回默认 capacity=4,防止 undefined 绕过入住容量检查
- rooms: 修复 parseInt() || undefined 导致楼层 0 被吞掉
- rooms: batchImport 中 capacity 使用 ?? 代替 ||,显式 0 不被覆盖
- occupancies: 所有 capacity 比较加 ?? 0 防守兜底,fail closed
- schedules: assertValidScheduleRange 增加 startTime > endTime 校验
- attendance: 时段重叠检查改为按 startTime 排序后再比较,消除漏检
- attendance: 移除 getScheduleOptionsForAttendance 中不可靠的 raw[index] fallback
- expenses: 个人附加费批量导入增加 assertPositiveAmount 校验
- expenses: 水电费导入增加 periodEnd >= periodStart 校验
2026-07-20 14:45:53 +08:00
990c0c16e6 feat: Docker Compose deployment + auto migration on startup
- docker-compose.yml: 移除 MySQL 容器,连宿主机 MySQL
- main.ts: 启动前通过独立 DataSource 执行 runMigrations
- migration-runner.ts: 独立 migration 执行器
- app.module.ts: TypeORM 配置增加 migrations
- 修复 InitialSchema 中 room_expenses 和 financial_operations 重复索引
2026-07-20 12:43:13 +08:00
4c2192d85e feat: switch to Docker Compose + auto-migration
- docker-compose.yml: 移除 MySQL 容器,后端连宿主机 MySQL
- main.ts: 启动时自动 runMigrations
- 前端 Nginx 反代 /api/ → backend:3000 不变
2026-07-20 12:24:51 +08:00
2d7c30eb30 Merge pull request 'feat: add TypeORM CLI migration support' (#26) from feat/migration-setup into main 2026-07-20 04:16:59 +00:00