Skip to content

Feature/bug fix and enhancements#2

Open
LING-lab72 wants to merge 4 commits into
anweat:developfrom
LING-lab72:feature/bug-fix-and-enhancements
Open

Feature/bug fix and enhancements#2
LING-lab72 wants to merge 4 commits into
anweat:developfrom
LING-lab72:feature/bug-fix-and-enhancements

Conversation

@LING-lab72

Copy link
Copy Markdown

No description provided.

Bug修复:
- 修复AssignRequest空值验证缺失 (Bug anweat#4)
- 修复resubmit()只重置被拒绝的任务 (Bug #6)
- 修复hasPendingTask严格相等类型不匹配 (Bug #8)

功能增强:
- 用户注册验证增强
- 权限管理页面
- 操作日志双标签页
- 合同取消功能
- 添加缺失的 OperationLog 相关文件
- 修复 RoleController 和 UserController 构造函数中 operationLogService 未初始化的问题
- 修复 ContractController.cancel() 返回类型不匹配问题
Bug修复:
- Bug4: AssignRequest 增加服务层显式非空校验,防止空分配死锁
- Bug6: resubmit() 重置所有审批任务(含已DONE),避免跳过审批人
- Bug8: hasPendingTask 使用 Number() 转换避免 number/string 比较恒false

功能优化:
1. 角色分配改为单选(radio),备选员工列表过滤起草人
2. 附件上传限制为非DRAFT状态方可提交
3. 状态标签更新: 起草→待分配, 已分配→待会签
4. 合同访问权限: 普通用户仅见关联合同, 新增管理员合同查询页
5. 分配/定稿纳入待办, 待办按合同分组展示
6. 审批/签订按钮仅在用户有对应待办任务时显示
7. 侧边栏待办小红点(30秒轮询), 移除起草合同子菜单
8. 注册/创建用户密码最小长度6位校验
9. 权限管理页面增加增删改功能
10. 权限分配按模块分组+全选/取消全选
11. 操作日志新增系统操作日志选项卡(用户/角色/权限审计)
12. 合同取消流程: 后端cancel端点+前端取消按钮
1. 重建 V2 Flyway 迁移文件 (H2+MySQL): 创建 operation_log 表及索引
2. ContractService.detail() 增加权限校验: 起草人/被分配人/管理员方可访问
3. ContractController 附件端点 (上传/列表/下载/删除) 增加 requireContractAccess 校验
4. router.js /tasks 路由权限数组添加 contract:assign
@anweat

anweat commented Jun 8, 2026

Copy link
Copy Markdown
Owner

已接受并吸收这个 PR 里值得保留的关键改动,不过没有直接合并原分支,因为它和当前 develop/本地工作流实现有重叠与冲突。

已吸收内容包括:

  • 重新提交审批时所有审批人全员重审
  • 合同取消流程与待办关闭
  • 权限管理 CRUD 与核心权限保护
  • 密码长度校验、待办按钮 ID 类型修复
  • 角色权限按模块分组/全选
  • smoke 测试脚本覆盖上述场景

对应发布分支和 draft PR:#4

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants