分支
用户 tuqin <tuqin@tuqin.cn>
星期一, 十一月 2, 2026 14:15 +0800
提交者 tuqin <tuqin@tuqin.cn>
星期一, 十一月 2, 2026 14:15 +0800
提交d85ec778237cd9af68c8d6b96895d22e0cf158df
目录 2846e22556122d2bfd900e3218243f18425cec6e 目录 | zip | gz
上一版本 1466672f09a4fc1037c78cc2bb096fca551c1683 查看 | 对比
fix(hrm/system): 修复调岗申请与提交报错、公积金误扣、用户搜索,新增核算批量删除

一、调岗申请报错修复
1. 新增报错:hrm_transfer_application.current_dept_id / current_post_id 为 NOT NULL 无默认值,
而客户 133 个员工全部未配置岗位(hrm_employee.post_id 为 NULL),
insert 报 "Field 'current_post_id' doesn't have a default value"。
改为允许 NULL(原部门/原岗位是申请快照,员工未配置时为空合理),目标字段仍必填。
2. 提交报错:submit 接口的 processDefinitionKey 为必填,但前端只传 id,
导致 Spring 参数缺失 → 500 系统异常。改为可选,不传时自动取
「调动审批(hrm_transfer_approve)」分类下最新活跃流程。
3. 撤销报错:前端「撤销」调用的 /hrm/transfer/cancel 后端不存在 → 404。
补端点:校验审批中 → 取消 BPM 流程实例 → 状态置为已撤销。

二、薪资核算
1. 公积金误扣:原来方案未配置公积金比例时会回退默认 12%,
且员工档案无公积金基数时回退基本工资 → 「公司没交公积金却扣了钱」。
改为必须「方案比例 > 0」且「员工公积金基数 > 0」才扣款,否则为 0。
2. 新增批量删除:DELETE /delete-batch?ids=,不限制状态(全选后一键删)。

三、用户搜索(流程模型 - 发起选择人)
UserPageReqVO 新增 keyword,AdminUserMapper 按「账号 OR 姓名」模糊匹配。
原来只支持 username(登录账号),输入中文姓名搜不到。

SQL:hrm_transfer_application_nullable_current.sql(幂等)

实测(mom-zyjc):
- 调岗 create → code 0;submit(不传 key)→ code 0 且生成流程实例;cancel 仅审批中可撤销 ✔
- 核算 2026-12 共 133 条:公积金扣款 0 条、社保扣款 133 条 ✔
- 批量删除 2 条(含已发放状态)→ 删除成功,不存在的 id 返回 0 ✔
- keyword=刘 → 刘卫/刘梦缘/刘占昌;keyword=刘卫 → 1 条;keyword=手机号 → 1 条 ✔
已添加1个文件
已修改9个文件
190 ■■■■■ 文件已修改
sql/mysql/hrm_transfer_application_nullable_current.sql 41 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-hrm-api/src/main/java/cn/iocoder/yudao/module/hrm/enums/ErrorCodeConstants.java 1 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/controller/admin/approval/HrmTransferApplicationController.java 13 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/controller/admin/salary/HrmSalaryCalculationController.java 8 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/approval/HrmTransferApplicationService.java 8 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/approval/HrmTransferApplicationServiceImpl.java 54 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/salary/HrmSalaryCalculationService.java 8 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/salary/HrmSalaryCalculationServiceImpl.java 44 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/controller/admin/user/vo/user/UserPageReqVO.java 3 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/user/AdminUserMapper.java 10 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史