fix 定时任务触发的任务,没有loginUser

This commit is contained in:
lijiarao
2024-05-09 09:32:34 +08:00
parent cec535c623
commit cdf5816315
@@ -170,7 +170,7 @@ public class HiworkTodoServiceImpl implements PushWorkflowIntegrationAPI {
}
HiworkTodo hiworkTodo = new HiworkTodo();
hiworkTodo.setSysCode(hiworkSysCode);
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
String date = DateUtil.formatDateTime(new Date());
hiworkTodo.setFlowid(processApprovalRecord.getProcessInstanceId());
@@ -192,19 +192,22 @@ public class HiworkTodoServiceImpl implements PushWorkflowIntegrationAPI {
// 是否显示(0否,1是)
hiworkTodo.setIsShow(String.valueOf(processNode.getIsView()));
}
String noticeTitle = processApprovalRecord.getTaskName() + "(" + loginUser.getRealname() + " " + date + ")";
String userId = processApprovalRecord.getUserId();
SysUser sysUser = sysUserService.getById(userId);
String noticeTitle = processApprovalRecord.getTaskName() + "(" + sysUser.getRealname() + " " + date + ")";
LambdaQueryWrapper<ProcessAll> queryProcessAll = new LambdaQueryWrapper<>();
queryProcessAll.eq(ProcessAll::getProcessInstanceId,processApprovalRecord.getProcessInstanceId());
ProcessAll processAll = processAllService.getOne(queryProcessAll);
if(!Objects.isNull(processAll)){
String processName = ProcessTypeEnum.getNameByValue(processAll.getPrcType());
noticeTitle = processName + "(" + loginUser.getRealname() + " " + date + ")";
noticeTitle = processName + "(" + sysUser.getRealname() + " " + date + ")";
hiworkTodo.setProcessName(processName);
SysUser sysUser = sysUserService.getById(processAll.getCreateUserId());
if(!Objects.isNull(sysUser)){
hiworkTodo.setCreateUserCode(sysUser.getUsername());
hiworkTodo.setCreateUserName(sysUser.getRealname());
SysUser createUser = sysUserService.getById(processAll.getCreateUserId());
if(!Objects.isNull(createUser)){
hiworkTodo.setCreateUserCode(createUser.getUsername());
hiworkTodo.setCreateUserName(createUser.getRealname());
}
if(!Objects.isNull(processAll.getDueTime())){
hiworkTodo.setDueTime(processAll.getDueTime().getTime());
@@ -238,12 +241,9 @@ public class HiworkTodoServiceImpl implements PushWorkflowIntegrationAPI {
hiworkTodo.setAppBusinessLink(appBusinessLink);
}
hiworkTodo.setNoticeTitle(noticeTitle);
SysUser sysUser = sysUserService.getById(processApprovalRecord.getUserId());
if(!Objects.isNull(sysUser)){
hiworkTodo.setUserId(processApprovalRecord.getUserId());
hiworkTodo.setUserCode(sysUser.getUsername());
hiworkTodo.setUserName(sysUser.getRealname());
}
hiworkTodo.setUserId(userId);
hiworkTodo.setUserCode(sysUser.getUsername());
hiworkTodo.setUserName(sysUser.getRealname());
hiworkTodo.setReceiveTime(Instant.now());
//2已完成时进入下一节点
Integer finishFlag = processApprovalRecord.getFinishFlag();