fix(hrm): 修复流程任务用户ID赋值逻辑并调整时间字段类型

- 将 Objects.requireNonNullElse 替换为三元运算符以避免空指针异常
- 在 HrmFlowTaskServiceImpl 中引入 java.util.Date 类以支持新的时间字段类型
- 修改 seal 模块中的 isEnabled 方法调用方式以确保配置正确读取
- 统一流程实例与任务创建时 assigneeUserId 的默认值处理逻辑
- 调整操作日志创建时间为 Date 类型以兼容数据库存储需求
This commit is contained in:
2025-12-16 17:14:10 +08:00
parent d9501d41c4
commit faac750ff6
11 changed files with 8 additions and 5 deletions

View File

@@ -74,7 +74,9 @@ public class HrmFlowInstanceServiceImpl implements IHrmFlowInstanceService {
HrmFlowTask task = new HrmFlowTask();
task.setInstId(inst.getInstId());
task.setNodeId(firstNode.getNodeId());
task.setAssigneeUserId(Objects.requireNonNullElse(bo.getStartUserId(), 0L));
//task.setAssigneeUserId(Objects.requireNonNullElse(bo.getStartUserId(), 0L));
// 修复:使用三元运算符替代 Objects.requireNonNullElse
task.setAssigneeUserId(bo.getStartUserId() != null ? bo.getStartUserId() : 0L);
task.setStatus("pending");
taskMapper.insert(task);

View File

@@ -25,6 +25,7 @@ import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDateTime;
import java.util.Collection;
import java.util.Date;
import java.util.List;
import java.util.Objects;
@@ -109,7 +110,7 @@ public class HrmFlowTaskServiceImpl implements IHrmFlowTaskService {
HrmFlowTask nextTask = new HrmFlowTask();
nextTask.setInstId(inst.getInstId());
nextTask.setNodeId(next.getNodeId());
nextTask.setAssigneeUserId(Objects.requireNonNullElse(actionUserId, 0L));
nextTask.setAssigneeUserId(actionUserId != null ? actionUserId : 0L);
nextTask.setStatus("pending");
baseMapper.insert(nextTask);
} else {
@@ -170,7 +171,7 @@ public class HrmFlowTaskServiceImpl implements IHrmFlowTaskService {
HrmFlowTask reTask = new HrmFlowTask();
reTask.setInstId(inst.getInstId());
reTask.setNodeId(task.getNodeId());
reTask.setAssigneeUserId(Objects.requireNonNullElse(actionUserId, task.getAssigneeUserId()));
reTask.setAssigneeUserId(actionUserId != null ? actionUserId : task.getAssigneeUserId());
reTask.setStatus("pending");
baseMapper.insert(reTask);
if ("seal".equalsIgnoreCase(inst.getBizType())) {
@@ -186,7 +187,7 @@ public class HrmFlowTaskServiceImpl implements IHrmFlowTaskService {
log.setAction(action);
log.setRemark(remark);
log.setActionUserId(userId);
log.setCreateTime(LocalDateTime.now());
log.setCreateTime(new Date());
actionMapper.insert(log);
}

View File

@@ -118,7 +118,7 @@ public class HrmSealReqServiceImpl implements IHrmSealReqService {
@Override
@Transactional(rollbackFor = Exception.class)
public String stampWithJava(Long bizId, HrmSealStampBo cmd) {
if (!Boolean.TRUE.equals(stampProperties.getJavaService().getEnabled())) {
if (!Boolean.TRUE.equals(stampProperties.getJavaService().isEnabled())) {
throw new ServiceException("Java盖章未启用");
}
String resultUrl = doPdfStamp(cmd);