buliping
|
f5e8d7f564
|
chore(sync): 同步当前工作区全部变更(学员学号可编辑并留空自动生成等)
|
2026-11-10 13:34:14 +08:00 |
|
wangzhibiao
|
5560a3ac04
|
fix: 收口融合 QA 构建与验收安全基线
|
2026-10-14 11:32:31 +08:00 |
|
wangzhibiao
|
0c1d97a6f0
|
修复物联安全:持久化撤权恢复并统一真实外发门禁
|
2026-10-14 10:52:05 +08:00 |
|
wangzhibiao
|
373921447f
|
新增物联:完成Java 21与IoT融合架构及安全门禁基线归档
|
2026-10-13 21:17:39 +08:00 |
|
wangzhibiao
|
353bfcd3fa
|
优化集成:实现课程资源关系表权威存储与旧字段兼容修复
|
2026-10-09 21:49:54 +08:00 |
|
wangzhibiao
|
9030d797f4
|
合并分支:合并课程两步式向导与教学资源关联管理能力
|
2026-10-09 21:33:35 +08:00 |
|
wangzhibiao
|
61c2b4b36c
|
修复安全:默认关闭Mock开关并强化报到机与打卡接口服务端鉴权与测试环境约束
|
2026-10-09 20:35:12 +08:00 |
|
wangzhibiao
|
cecf11790e
|
新增报到机:实现终端扫码报到核验与受控课堂打卡模拟
|
2026-10-09 20:04:52 +08:00 |
|
dongjie
|
83d22ba5e0
|
新增培训:实现课程两步式向导与教学资源关联
|
2026-10-09 16:55:52 +08:00 |
|
wangzhibiao
|
a8e42b32bd
|
测试学员:适配学员端点修改契约断言以包含合法编辑端点
|
2026-10-09 14:34:15 +08:00 |
|
wangzhibiao
|
b93ac3fa71
|
合并发布:集成GitLab远端主数据扩展与教学资源基线
|
2026-10-09 14:29:26 +08:00 |
|
buliping
|
abb042ff1a
|
增加课程资源管理,对应数据表train_resource
|
2026-10-08 11:14:20 +08:00 |
|
buliping
|
973cc0e7e3
|
实训场地管理增加属性:适用专业(添加+修改+查询条件+列表)+操作栏增加删除功能
|
2026-09-29 14:59:53 +08:00 |
|
buliping
|
2c14bf2b41
|
学员管理增加岗位级别
|
2026-09-29 10:13:47 +08:00 |
|
buliping
|
ad533c55fb
|
增加学员修改逻辑
|
2026-09-28 17:07:58 +08:00 |
|
wangzhibiao
|
3a81cb3f0c
|
修复权限:纠正培训管理员住宿编辑权限并加固住宿删除权限隔离
|
2026-09-24 01:22:03 +08:00 |
|
wangzhibiao
|
6bdf84974b
|
修复一致性:完成成绩V2运行时闭环与API总账对齐
|
2026-09-24 01:15:04 +08:00 |
|
wangzhibiao
|
eb1ddfcaa8
|
修复住宿:床位重叠冲突返回标准化业务错误码
|
2026-09-23 15:29:03 +08:00 |
|
 wangzhibiaoandCursor
|
fb5834bb1e
|
修复能力:统一DMS禁用态门禁能力声明
capabilities 中 manualRevokeAvailable 此前硬编码为 true,在 dms.enabled=false 时
仍向用户表示真实外部门禁撤权可执行。
- manualRevokeAvailable 与 dms.enabled 保持一致
- 新增 localRevokeGovernanceAvailable 与 revokeMode,明确区分外部派发与本地排队治理,
本地授权状态治理与安全补偿路径继续可用,撤权入口不被移除
- 前端门禁能力默认按外部通道不可用初始化,接口返回前不向用户承诺不存在的能力
- 门禁服务未启用时注销确认文案如实说明仅完成本地待注销登记
Co-authored-by: Cursor <cursoragent@cursor.com>
|
2026-09-22 17:04:50 +08:00 |
|
 wangzhibiaoandCursor
|
b7a9b89ec5
|
完善考勤:支持未签到学员人工登记缺勤
名册中无任何打卡记录的已报到学员此前只能"先签到再改成缺勤",会留下伪造的签到事实。
- 新增 POST /train/attendance/mark-absence,权限 train:attendance:edit,带操作日志
- 写入 attendance_status=0、sign_in_time 与 sign_out_time 保持 NULL、manual_flag=1,
缺勤原因必填,绝不伪造签到时间
- 前置条件全部 fail closed:课次已开始、与课次同属一个开班计划、
参训状态必须恰好为已报到;请假不得被自动改写为缺勤
- 已有考勤记录时拒绝新建并引导改用调整考勤记录,
并发命中唯一索引转为同一业务错误,不泄露数据库异常
- 名册新增 canMarkAbsence,前端直接采用后端判定,登记后可继续调整考勤记录
- 未改动出勤率统计口径与 Analytics 业务策略
Co-authored-by: Cursor <cursoragent@cursor.com>
|
2026-09-22 17:04:41 +08:00 |
|
 wangzhibiaoandCursor
|
b7eab13a83
|
修复权限:首页按真实业务身份选择工作台
菜单层与 API 层已按真实业务身份限制,但首页只看 role_key,导致有 train_teacher
角色却无教师档案绑定的账号先进入教师工作台再被 API 拒绝。
- 身份服务新增 hasActiveTeacherIdentity / hasActiveStudentIdentity,
语义与原菜单过滤完全一致,异常吞掉返回 false
- SysLoginController 抽出 resolveSelfServiceIdentity 作为唯一事实源,
自服务菜单过滤与 getInfo 新增的 selfService 标志共用该方法,不新增第三套规则
- 前端 store 新增 selfService 标志,缺失时默认全 false 并严格布尔化,登出时重置
- 自服务路由过滤与首页渲染改为按身份标志判断,且与角色授权取交集,与菜单层口径一致
- 有角色无业务档案的账号落到普通首页,Dashboard 组件根本不创建,
不会发起任何自服务 API 请求,页面给出明确的未绑定提示
Co-authored-by: Cursor <cursoragent@cursor.com>
|
2026-09-22 17:04:26 +08:00 |
|
 wangzhibiaoandCursor
|
eb8ce6f85c
|
修复排课:停用教师禁止新排课并消除候选列表静默截断
停用教师仍出现在排课教师下拉且后端未校验 status;教师、教室、场地候选统一按
pageSize=100 拉取,数量超过 100 时会静默丢失合法候选。
- 后端在创建课次时强制校验目标教师在岗,修改课次仅在真的更换授课教师时校验,
维持原教师不变的历史课次继续放行,既不自动删除课次也不自动替换教师
- 新增业务错误文案"该教师当前已停用,不能安排新的授课任务",不暴露内部状态码
- 新增只读端点 GET /train/lessons/scheduling-options 全量返回教师、教室、场地候选,
不分页、服务端无条数上限;教师候选只返回在岗有效教师,且只下发下拉必需字段
- 前端排课面板改用该端点,编辑历史课次时为已停用的原教师补一条禁用选项,
保证原教师名可见但不可被重新选中
- 排课冲突策略不变,仍为前端 Warning 加二次确认后允许保存
Co-authored-by: Cursor <cursoragent@cursor.com>
|
2026-09-22 17:04:10 +08:00 |
|
wangzhibiao
|
ecfd38be17
|
修复权限:隔离教师工作台与学员中心菜单自服务可见性
|
2026-09-22 11:59:38 +08:00 |
|
wangzhibiao
|
38d4851a18
|
测试考勤:覆盖首次签到与未签到展示
|
2026-09-21 23:21:35 +08:00 |
|
wangzhibiao
|
18b8a07f55
|
后端考勤:增加课次学员考勤名册查询
|
2026-09-21 23:21:29 +08:00 |
|
wangzhibiao
|
481c998e82
|
测试门禁:覆盖失败提示与空响应重发保护
|
2026-09-21 16:56:06 +08:00 |
|
wangzhibiao
|
b0917fc36f
|
测试住宿:覆盖跨计划床位时间冲突与并发分配
|
2026-09-21 16:14:27 +08:00 |
|
wangzhibiao
|
0a637bfbbc
|
测试门禁:覆盖外部不确定性与并发派发场景
|
2026-09-21 14:57:53 +08:00 |
|
wangzhibiao
|
1c46efbcad
|
权限门禁:拆分凭据与硬件映射最小权限
|
2026-09-21 14:57:40 +08:00 |
|
wangzhibiao
|
f109b574da
|
优化门禁:对齐宿舍权限查询注解契约
|
2026-09-21 12:52:07 +08:00 |
|
wangzhibiao
|
056f3d7cac
|
测试门禁:增加授权生命周期行为回归
|
2026-09-21 12:51:20 +08:00 |
|
wangzhibiao
|
84e1972947
|
权限门禁:补齐住宿与门禁最小权限迁移
|
2026-09-21 12:51:17 +08:00 |
|
wangzhibiao
|
0d5df72d8e
|
修复门禁:安全化凭据下发与有效期来源
|
2026-09-21 12:51:10 +08:00 |
|
wangzhibiao
|
a83a3a642e
|
修复门禁:统一授权状态机与注销入口
|
2026-09-21 12:50:58 +08:00 |
|
wangzhibiao
|
ec3a7afe46
|
测试路由:增加动态菜单与前端钻取契约检查
|
2026-09-21 00:14:50 +08:00 |
|
wangzhibiao
|
f17526b409
|
新增分析:实现管理驾驶舱聚合接口与可视化
|
2026-09-20 20:36:30 +08:00 |
|
wangzhibiao
|
18c5ff5914
|
维护权限:注册教师与学员安全删除按钮权限
|
2026-09-20 16:42:46 +08:00 |
|
wangzhibiao
|
225f58481a
|
新增学员:支持零业务引用档案安全删除与引用保护
|
2026-09-20 16:16:58 +08:00 |
|
wangzhibiao
|
2dc22b06f8
|
新增教师:支持零业务引用档案安全删除与引用保护
|
2026-09-20 16:16:54 +08:00 |
|
wangzhibiao
|
8ec924012e
|
测试审计:补充破坏性安全测试用例与管理员生命周期审计报告
|
2026-09-20 15:09:33 +08:00 |
|
wangzhibiao
|
88d6c17ca6
|
新增管理:补齐课程教室破坏性操作生命周期与安全引用拦截
|
2026-09-20 15:09:27 +08:00 |
|
wangzhibiao
|
b1433dcaa1
|
修复稳定化:接入考勤人工调整闭环并增加住宿与门禁历史删除防护
|
2026-09-20 14:09:45 +08:00 |
|
wangzhibiao
|
53e2f5e68e
|
修复部署:恢复共享试用数据库配置并补充重启日志
|
2026-09-17 10:50:58 +08:00 |
|
wangzhibiao
|
0c380bdfdf
|
修复验收:修正最终验收证据问题
|
2026-09-17 10:21:34 +08:00 |
|
wangzhibiao
|
63f463d094
|
合并门禁:将R3门禁能力集成至一期综合验收
- 将QA数据库配置对齐至隔离库 railwaysystem_integrated_qa_20260916
|
2026-09-16 15:43:46 +08:00 |
|
wangzhibiao
|
758fd79e16
|
合并门禁:将DMS真实接口探测结果集成至质量验证基线
|
2026-09-16 15:31:49 +08:00 |
|
wangzhibiao
|
e367ec1fe3
|
新增门禁:验证真实接口契约并落地暂行访问策略
|
2026-09-16 14:58:11 +08:00 |
|
wangzhibiao
|
d976fcfb4d
|
新增门禁:实现访问管理界面与Mock端到端测试
|
2026-09-16 11:43:58 +08:00 |
|
wangzhibiao
|
20c5d494cf
|
新增门禁:实现访问授权编排
|
2026-09-16 11:21:21 +08:00 |
|
wangzhibiao
|
1332b45fae
|
新增集成:实现外部资源映射与操作记录持久化
|
2026-09-16 10:22:50 +08:00 |
|