wangziqi
3bd72596c9
Merge pull request 'Update data.sql' ( #53 ) from update-data-sql into main
2026-07-24 08:57:21 +00:00
wangziqi
4fc77aec07
Update data.sql
2026-07-24 16:57:15 +08:00
wangziqi
6dcb2bc28a
Merge pull request 'Clean up data.sql: remove unused entries' ( #52 ) from cleanup-data-sql into main
2026-07-24 08:48:06 +00:00
wangziqi
d5a1d23037
Clean up data.sql: remove unused entries
2026-07-24 16:47:54 +08:00
wangziqi
1f198d48ea
Merge pull request 'Refactor AI chat: streaming, tool calls, UI polish' ( #51 ) from refactor-ai-chat-streaming into main
2026-07-24 08:28:10 +00:00
wangziqi
5cf68e3f8a
Merge pull request 'main' ( #50 ) from xiongyuxing/gongxue-base:main into main
2026-07-24 08:28:07 +00:00
wangziqi
8656394b9b
Refactor AI chat: streaming, tool calls, UI polish
2026-07-24 16:27:50 +08:00
wangziqi
e605586fc9
Merge pull request 'Refactor AI config to step-based wizard with DeepSeek defaults' ( #49 ) from refactor-ai-config-wizard into main
2026-07-24 06:35:16 +00:00
wangziqi
150e6ecff0
Refactor AI config to step-based wizard with DeepSeek defaults
2026-07-24 14:34:32 +08:00
wangziqi
065dfd9a38
Merge pull request '修复管理员班级可见范围、 修复班级归档查询参数转换、 移除账号启用状态统一使用归档' ( #48 ) from xiongyuxing/gongxue-base:main into main
...
Reviewed-on: https://git.gongxue100.com/wangziqi/gongxue-base/pulls/48
2026-07-24 06:32:55 +00:00
wangziqi
106c30683f
Merge pull request 'fix: 修复 CI — 安装 AI 依赖 + 移除 lucide-react + 删除 docs' ( #47 ) from fix/ci-deps-and-cleanup into main
2026-07-23 07:38:53 +00:00
wangziqi
3a2b3f1239
fix: add AI deps, remove lucide-react; chore: remove docs
2026-07-23 15:25:20 +08:00
wangziqi
b8d5927a16
Merge branch 'review-pr44'
2026-07-23 15:21:51 +08:00
wangziqi
fb787c3e0d
Merge pull request '集成 AI 对话与只读查询工具' ( #44 ) from xiongyuxing/gongxue-base:main into main
2026-07-23 07:15:07 +00:00
wangziqi
176f098923
chore: add @ant-design/x deps for AI chat feature
2026-07-23 15:08:57 +08:00
wangziqi
c401766bc5
fix: replace lucide-react Sparkles with RobotOutlined to avoid extra dependency
2026-07-23 15:02:36 +08:00
wangziqi
2a20b1fc97
Merge pull request 'fix: 权限按钮可见性与Modal/Popconfirm撤权一致性修复' ( #45 ) from worktree-audit-permission-ui into main
2026-07-23 06:40:18 +00:00
wangziqi
446c6bcc91
fix: harden permission-gated UI — minimum-org endpoint, modal/Popconfirm fail-closed on revocation
2026-07-23 14:28:58 +08:00
wangziqi
a7a7af1667
fix: close permission review gaps
...
fix: harden permission-gated UI — minimum-org endpoint, modal/Popconfirm fail-closed on revocation
2026-07-23 14:28:58 +08:00
wangziqi
c98d37307e
fix: align permission-gated UI actions
2026-07-23 12:34:37 +08:00
wangziqi
adf738288f
Merge pull request 'chore: 修复 npm 高危依赖漏洞' ( #43 ) from worktree-npm-security-updates into main
2026-07-23 04:12:10 +00:00
wangziqi
585e955720
Merge pull request 'test: cover end-to-end attendance workflow' ( #41 ) from worktree-working-session into main
2026-07-23 04:10:31 +00:00
wangziqi
eaca56617c
chore: patch vulnerable npm dependencies
2026-07-23 12:02:20 +08:00
wangziqi
0bdc8a067b
fix: satisfy attendance workflow lint
2026-07-23 11:48:50 +08:00
wangziqi
490a337446
Merge remote-tracking branch 'origin/main' into fix/pr41-ci
2026-07-23 11:47:30 +08:00
wangziqi
302dbe0621
Merge pull request 'fix: 避免 PR #40 触屏双击时缩放页面' ( #42 ) from fix/pr40-touch-action into main
2026-07-23 03:32:57 +00:00
wangziqi
5bd63846d1
fix: prevent touch double-tap zoom
2026-07-23 11:27:41 +08:00
wangziqi
301064dbf6
Merge pull request '修复手机端双击编辑单元格' ( #40 ) from xiongyuxing/gongxue-base:main into main
2026-07-23 03:26:42 +00:00
wangziqi
099cff7f00
test: cover end-to-end attendance workflow
2026-07-23 10:31:23 +08:00
wangziqi
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
wangziqi
43ca5a6e36
Merge pull request 'fix: UI优化 + 钉钉考勤已结算课程刷新 + dev脚本改进' ( #38 ) from fix/ux-improvements-20260722 into main
2026-07-22 09:52:03 +00:00
wangziqi
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
wangziqi
d33c37b4b0
Merge pull request '修复学习记录实体未注册问题' ( #37 ) from xiongyuxing/gongxue-base:main into main
2026-07-22 09:38:45 +00:00
wangziqi
5b10e80d3a
Merge pull request '修正换宿当天查寝归属、修复 SQLite 钱包调账锁异常' ( #36 ) from xiongyuxing/gongxue-base:main into main
2026-07-22 08:59:43 +00:00
wangziqi
cd1996f281
Merge pull request '增加金数据学生同步与匹配规则' ( #35 ) from feature/jinshuju-student-sync into main
2026-07-22 04:30:03 +00:00
wangziqi
e1bc3a6b2c
ci: remove cache steps that add overhead
2026-07-22 12:27:51 +08:00
wangziqi
6052b03fc6
ci: cache npm and Turbo artifacts
2026-07-22 11:50:53 +08:00
wangziqi
67fdf093e5
perf: split oversized admin bundles
2026-07-22 11:45:35 +08:00
wangziqi
393ee62168
feat: add Jinshuju student sync
2026-07-22 11:41:50 +08:00
wangziqi
1dc13274de
Merge pull request '增加宿舍查寝功能' ( #34 ) from xiongyuxing/gongxue-base:main into main
2026-07-22 03:33:32 +00:00
wangziqi
e27d8b512e
Merge pull request '修复学生余额多选充值一次性最高只能选15个' ( #33 ) from xiongyuxing/gongxue-base:main into main
2026-07-22 02:23:09 +00:00
wangziqi
25760a4ec7
Merge pull request '学生信息导入' ( #32 ) from xiongyuxing/gongxue-base:main into main
2026-07-22 01:05:47 +00:00
wangziqi
6a35e406d5
Merge pull request '添加可拖拽的路由停靠组件,支持动态标签管理,支持侧边栏多项同时展开' ( #31 ) from xiongyuxing/gongxue-base:main into main
2026-07-21 06:37:33 +00:00
wangziqi
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
wangziqi
151ef06ec2
refactor: 精简部署流程,移除 MySQL 管理
...
MySQL 已在服务器运行,部署只需三步:
1. 本地构建 → rsync 同步
2. npm ci(首次)+ migration:run
3. pm2 startOrReload
2026-07-20 15:35:45 +08:00
wangziqi
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
wangziqi
ad62b8595c
Merge pull request 'test: 为边界条件修复添加测试用例' ( #29 ) from test/boundary-conditions into main
2026-07-20 07:31:36 +00:00
wangziqi
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
wangziqi
bbd700369c
Merge pull request 'fix: 修复多处边界条件问题' ( #27 ) from fix/boundary-conditions into main
2026-07-20 06:50:21 +00:00
wangziqi
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
wangziqi
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
wangziqi
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
wangziqi
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
wangziqi
2ee8bd47e2
feat: add TypeORM CLI migration support
...
- 新增 datasource.ts 支持 mysql/sqlite 双模式
- 新增 migration 脚本: generate/create/run/revert/show
- 生成 InitialSchema migration (35 张表全量建表)
2026-07-20 12:16:48 +08:00
wangziqi
a871bb3f96
Merge pull request 'fix: 修正档案报告品牌名 工学云 → 恭学教育' ( #25 ) from fix/brand-name into main
2026-07-20 04:00:17 +00:00
wangziqi
ed428c8aa3
fix: 修正档案报告品牌名 工学云 → 恭学教育
2026-07-20 11:59:51 +08:00
wangziqi
62a5f817ae
Merge pull request 'feat: 拆分学号/身份证字段 + 考勤教师展示 + 代码优化' ( #24 ) from feat/split-student-id-number into main
2026-07-20 03:54:21 +00:00
wangziqi
c7ba2799b9
feat: 拆分学号/身份证字段 + 考勤教师展示 + 代码优化
...
- 入住导入模板:学号和身份证号拆为独立字段,前后端对齐
- 排课查询关联教师,考勤归档页展示教师姓名
- 抽查时段增加 IsIn 校验
- 抽取 withPessimisticWriteLock 去重悲观锁查询
- import 增加文件空 buffer 校验
- 测试 mock 补全,适配事务 manager
- MySQL init.sql VALUES() 语法兼容修复
2026-07-20 11:54:01 +08:00
wangziqi
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
wangziqi
92d303ed01
Merge pull request #22 : financial safety and attendance workspace
2026-07-18 07:35:49 +00:00
wangziqi
295debee33
Merge teacher attendance workspace
2026-07-18 15:34:36 +08:00
wangziqi
a8da6de235
Merge financial safety fixes
2026-07-18 15:34:36 +08:00
wangziqi
98d335b889
feat: redesign teacher attendance workspace
2026-07-18 15:34:02 +08:00
wangziqi
5836b421d8
fix: harden financial transaction boundaries
2026-07-18 15:33:41 +08:00
wangziqi
4af7acbeaa
Merge pull request #21 : harden DingTalk student synchronization
2026-07-18 06:52:33 +00:00
wangziqi
c11f6bb614
fix: harden DingTalk student synchronization
2026-07-18 14:51:53 +08:00
wangziqi
d25e451b61
Merge pull request #20 : refine deposit workflows and RBAC permissions
2026-07-18 06:07:19 +00:00
wangziqi
7edb4ff853
fix: prune unused RBAC permissions
2026-07-17 17:43:45 +08:00
wangziqi
b3d0bafc22
feat: refine deposit room type workflows
2026-07-17 17:36:04 +08:00
wangziqi
a5bda6f093
Merge pull request 'fix: 归档删除改为软删除' ( #19 )
...
fix: 归档删除改为软删除
2026-07-17 06:18:38 +00:00
wangziqi
f7328d670d
fix: 归档删除改为软删除
2026-07-17 14:13:17 +08:00
wangziqi
3131d2e141
Merge pull request 'fix:修复无法导出账单pdf' ( #18 )
2026-07-16 03:47:38 +00:00
wangziqi
fa086e4c1c
Merge pull request '修复考勤服务测试 mock' ( #17 )
2026-07-16 03:01:59 +00:00
wangziqi
4fbcde48b1
test: update attendance service mocks
2026-07-16 11:01:24 +08:00
wangziqi
c93ac986aa
Merge pull request '移除删除账号功能' ( #15 )
2026-07-16 02:55:22 +00:00
wangziqi
ab7f7c725a
Merge pull request '添加考勤设备 SN 教室绑定' ( #16 )
2026-07-16 02:49:30 +00:00
wangziqi
559b8a56e9
feat: add attendance device SN classroom bindings
2026-07-16 10:22:23 +08:00
wangziqi
d037787346
feat: support batch wallet balance changes
2026-07-16 10:22:23 +08:00
wangziqi
8ba51f48c0
fix: map expense type sort order column
2026-07-16 10:22:23 +08:00
wangziqi
7a62d8962a
chore: update production deployment config
2026-07-16 10:21:40 +08:00
wangziqi
6a43f33f7a
Merge pull request '优化管理端移动端适配与班级教师候选人' ( #14 )
...
Merge PR #14
2026-07-15 05:57:32 +00:00
wangziqi
d582d641c0
feat: improve admin responsive pages and teacher candidates
2026-07-15 13:56:58 +08:00
wangziqi
fb9697bd05
Merge pull request '完善全业务边界校验与回归测试' ( #12 )
...
Merge PR #12
2026-07-15 05:53:46 +00:00
wangziqi
bc49d1016a
feat: filter rooms by rental category
2026-07-15 13:52:39 +08:00
wangziqi
8bd445df5a
fix student import and profile labels
2026-07-15 10:52:43 +08:00
wangziqi
fcde6caaaa
fix: defer attendance settlement until lesson end
2026-07-15 09:39:21 +08:00
wangziqi
b1f35f9d1a
test: harden business boundary conditions
2026-07-15 00:03:55 +08:00
wangziqi
17a5046ea0
Merge pull request '完善考勤排课与接口校验' ( #11 ) from wangziqi/gongxue-base:codex/wzq into main
...
完善考勤排课、钉钉同步与接口参数校验
2026-07-14 15:13:12 +00:00
wangziqi
e45da7f998
feat: improve attendance scheduling and API validation
2026-07-14 23:12:14 +08:00
wangziqi
c75a08affe
feat: add student wallet utility billing
2026-07-14 20:42:21 +08:00
wangziqi
05a936bbc2
Merge pull request 'feat: 优化入住办理与名单导入' ( #9 ) from codex/wzq into main
2026-07-14 04:26:53 +00:00
wangziqi
3adf4933d8
Merge pull request '修复pdf导出' ( #8 ) from xiongyuxing/gongxue-base:main into main
2026-07-14 04:26:34 +00:00
wangziqi
d84f37e98f
feat: streamline occupancy check-in and imports
2026-07-14 12:23:53 +08:00
wangziqi
718c58589f
Merge PR #7 : improve attendance and occupancy workflows
2026-07-14 03:22:19 +00:00
wangziqi
aaf49d5580
fix: guard bill generation submission
2026-07-14 11:20:42 +08:00
wangziqi
5cf6aede1e
feat: improve occupancy import template
2026-07-14 11:20:41 +08:00
wangziqi
811e7ce826
feat: show DingTalk punch device details
2026-07-14 11:20:41 +08:00
wangziqi
d572e984d2
Merge PR #6 : keep room capacity and beds consistent
2026-07-14 02:58:01 +00:00
wangziqi
a93ba657a8
fix: keep room capacity and beds consistent
2026-07-14 10:57:13 +08:00
wangziqi
77714642a5
Merge PR #5 : main
2026-07-14 02:56:04 +00:00