update 转办时,给hiwork先发送完成消息在发送新待办
This commit is contained in:
+3
@@ -23,4 +23,7 @@ public class HiworkTodoAdd {
|
||||
private String processDefinitionId;
|
||||
@ApiModelProperty(value = "3结束,6删除,其他是待办已办")
|
||||
private String type;
|
||||
@ApiModelProperty(value = "转办时用")
|
||||
private String toUserId;
|
||||
|
||||
}
|
||||
|
||||
+6
-1
@@ -192,7 +192,12 @@ public class HiworkTodoServiceImpl implements PushWorkflowIntegrationAPI {
|
||||
// 是否显示(0否,1是)
|
||||
hiworkTodo.setIsShow(String.valueOf(processNode.getIsView()));
|
||||
}
|
||||
String userId = processApprovalRecord.getUserId();
|
||||
String userId;
|
||||
if (hiworkTodoAdd.getToUserId() == null){
|
||||
userId = processApprovalRecord.getUserId();
|
||||
}else {
|
||||
userId = hiworkTodoAdd.getToUserId();
|
||||
}
|
||||
SysUser sysUser = sysUserService.getById(userId);
|
||||
|
||||
String noticeTitle = processApprovalRecord.getTaskName() + "(" + sysUser.getRealname() + " " + date + ")";
|
||||
|
||||
+35
-12
@@ -31,10 +31,7 @@ import org.activiti.engine.impl.persistence.entity.ExecutionEntityImpl;
|
||||
import org.activiti.engine.impl.persistence.entity.TaskEntity;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* @author liJiaRao
|
||||
@@ -173,14 +170,40 @@ public class MyGlobalEventListener implements ActivitiEventListener {
|
||||
}
|
||||
|
||||
private void taskAssigned(ActivitiEvent event) {
|
||||
//log.info("===================任务分配事件===================");
|
||||
//ActivitiEntityEventImpl activitiEntityEvent = (ActivitiEntityEventImpl) event;
|
||||
//TaskEntity taskEntity = (TaskEntity) activitiEntityEvent.getEntity();
|
||||
//log.info("id = " + id);
|
||||
//log.info("name = " + name);
|
||||
//log.info("taskEntity.getAssignee() = " + taskEntity.getAssignee());
|
||||
//log.info("taskEntity.getIdentityLinks() = " + taskEntity.getIdentityLinks());
|
||||
//log.info("taskEntity.getVariables() = " + taskEntity.getVariables());
|
||||
log.info("===================任务分配事件===================");
|
||||
ActivitiEntityEventImpl activitiEntityEvent = (ActivitiEntityEventImpl) event;
|
||||
TaskEntity delegateTask = (TaskEntity) activitiEntityEvent.getEntity();
|
||||
String taskId = delegateTask.getId();
|
||||
String assignee = delegateTask.getAssignee();
|
||||
String processDefinitionId = delegateTask.getProcessDefinitionId();
|
||||
|
||||
ProcessApprovalRecordService recordService = SpringContextUtil.getBean(ProcessApprovalRecordService.class);
|
||||
LambdaQueryWrapper<ProcessApprovalRecord> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.eq(ProcessApprovalRecord::getTaskId,taskId);
|
||||
ProcessApprovalRecord approvalRecord = recordService.getOne(wrapper);
|
||||
String userId = approvalRecord.getUserId();
|
||||
|
||||
if (!Objects.equals(assignee,userId)) {
|
||||
log.info("由"+userId+"转办给"+assignee);
|
||||
// 对接统一平台生成完成任务
|
||||
PushWorkflowIntegrationAPI pushWorkflowIntegrationAPI = SpringContextUtil.getBean(PushWorkflowIntegrationAPI.class);
|
||||
List<HiworkTodoAdd> list = new ArrayList<>();
|
||||
HiworkTodoAdd hiworkTodoAdd = new HiworkTodoAdd();
|
||||
hiworkTodoAdd.setRecordId(approvalRecord.getId());
|
||||
hiworkTodoAdd.setProcessDefinitionId(processDefinitionId);
|
||||
list.add(hiworkTodoAdd);
|
||||
pushWorkflowIntegrationAPI.sendTodoTask(list);
|
||||
|
||||
// 对接统一平台生成办结
|
||||
pushWorkflowIntegrationAPI.sendActivityComplete(list);
|
||||
|
||||
// 生成被转办人的待办
|
||||
list.clear();
|
||||
hiworkTodoAdd.setToUserId(assignee);
|
||||
list.add(hiworkTodoAdd);
|
||||
pushWorkflowIntegrationAPI.sendTodoTask(list);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void taskComplete(ActivitiEvent event) {
|
||||
|
||||
+2
-12
@@ -248,18 +248,8 @@ public class ActFlowCommonService {
|
||||
/**
|
||||
* 转办
|
||||
*/
|
||||
public void transfer(String taskId, String userId) {
|
||||
//获取审批(未完成的任务id是之前的)
|
||||
ProcessApprovalRecord approvalRecord = approvalRecordService.getToDoByTaskId(taskId);
|
||||
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
|
||||
LambdaUpdateWrapper<ProcessApprovalRecord> updateWrapper = new LambdaUpdateWrapper<>();
|
||||
updateWrapper.eq(ProcessApprovalRecord::getId, approvalRecord.getId());
|
||||
updateWrapper.set(ProcessApprovalRecord::getTransferBy, loginUser.getId());
|
||||
updateWrapper.set(ProcessApprovalRecord::getUserId, userId);
|
||||
approvalRecordService.update(updateWrapper);
|
||||
taskService.setAssignee(taskId, userId);
|
||||
log.info("转办 任务Id:{} 转办用户Id{}", taskId, userId);
|
||||
public void transfer(String taskId, String toUserId) {
|
||||
processHandleService.transfer(taskId, toUserId);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
+4
-8
@@ -27,6 +27,7 @@ import com.jero.modules.activiti.process.esinspectrectify.entity.ProcessEsInspec
|
||||
import com.jero.modules.activiti.process.esinspectrectify.service.IEsInspectRectifyFlowService;
|
||||
import com.jero.modules.activiti.process.esinspectrectify.service.IProcessEsInspectRectifyService;
|
||||
import com.jero.modules.activiti.process.esinspectrectify.vo.EsInspectRectifyFlowVO;
|
||||
import com.jero.modules.activiti.process.fb.service.IProcessHandleService;
|
||||
import com.jero.modules.activiti.service.ProcessAllService;
|
||||
import com.jero.modules.activiti.service.ProcessApprovalRecordService;
|
||||
import com.jero.modules.activiti.service.ProcessNodeLinkService;
|
||||
@@ -109,6 +110,8 @@ public class EsInspectFlowServiceImpl implements IEsInspectFlowService {
|
||||
RuntimeService runtimeService = processEngine.getRuntimeService();
|
||||
@Resource
|
||||
private TaskService taskService;
|
||||
@Resource
|
||||
private IProcessHandleService processHandleService;
|
||||
@Override
|
||||
public void flowStart(EsInspectFlowVO esInspectFlowVO) {
|
||||
// 流程信息
|
||||
@@ -525,14 +528,7 @@ public class EsInspectFlowServiceImpl implements IEsInspectFlowService {
|
||||
|
||||
@Override
|
||||
public void flowTransfer(String taskId, String userId) {
|
||||
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
// 更新流程审批信息
|
||||
processApprovalRecordService.update(new LambdaUpdateWrapper<ProcessApprovalRecord>()
|
||||
.eq(ProcessApprovalRecord::getTaskId, taskId)
|
||||
.set(ProcessApprovalRecord::getTransferBy, loginUser.getId())
|
||||
.set(ProcessApprovalRecord::getUserId, userId));
|
||||
// 转办
|
||||
taskService.setAssignee(taskId, userId);
|
||||
processHandleService.transfer(taskId, userId);
|
||||
}
|
||||
|
||||
public boolean isLastNode(String processInstanceId) {
|
||||
|
||||
+4
-10
@@ -24,6 +24,7 @@ import com.jero.modules.activiti.process.esinspectdelayapply.service.IEsInspectD
|
||||
import com.jero.modules.activiti.process.esinspectdelayapply.service.IProcessEsInspectDelayApplyService;
|
||||
import com.jero.modules.activiti.process.esinspectdelayapply.vo.EsInspectDelayApplyFlowVO;
|
||||
import com.jero.modules.activiti.process.esinspectdelayapply.vo.ProcessEsInspectDelayApplyVO;
|
||||
import com.jero.modules.activiti.process.fb.service.IProcessHandleService;
|
||||
import com.jero.modules.activiti.service.ProcessAllService;
|
||||
import com.jero.modules.activiti.service.ProcessApprovalRecordService;
|
||||
import com.jero.modules.activiti.service.ProcessNodeLinkService;
|
||||
@@ -89,7 +90,8 @@ public class EsInspectDelayApplyFlowServiceImpl implements IEsInspectDelayApplyF
|
||||
RuntimeService runtimeService = processEngine.getRuntimeService();
|
||||
@Resource
|
||||
private TaskService taskService;
|
||||
|
||||
@Resource
|
||||
private IProcessHandleService processHandleService;
|
||||
@Override
|
||||
public void flowStart(EsInspectDelayApplyFlowVO esInspectDelayApplyFlowVO) {
|
||||
// 流程信息
|
||||
@@ -350,14 +352,6 @@ public class EsInspectDelayApplyFlowServiceImpl implements IEsInspectDelayApplyF
|
||||
|
||||
@Override
|
||||
public void flowTransfer(String taskId, String userId) {
|
||||
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
// 更新流程审批信息
|
||||
processApprovalRecordService.update(new LambdaUpdateWrapper<ProcessApprovalRecord>()
|
||||
.eq(ProcessApprovalRecord::getTaskId, taskId)
|
||||
.set(ProcessApprovalRecord::getTransferBy, userId)
|
||||
.set(ProcessApprovalRecord::getTransferBy, loginUser.getId())
|
||||
.set(ProcessApprovalRecord::getUserId, userId));
|
||||
// 转办
|
||||
taskService.setAssignee(taskId, userId);
|
||||
processHandleService.transfer(taskId, userId);
|
||||
}
|
||||
}
|
||||
|
||||
+4
-9
@@ -31,6 +31,7 @@ import com.jero.modules.activiti.process.esinspectplan.service.IEsInspectPlanFlo
|
||||
import com.jero.modules.activiti.process.esinspectplan.service.IProcessEsInspectPlanOpinionService;
|
||||
import com.jero.modules.activiti.process.esinspectplan.service.IProcessEsInspectPlanService;
|
||||
import com.jero.modules.activiti.process.esinspectplan.vo.EsInspectPlanFlowVO;
|
||||
import com.jero.modules.activiti.process.fb.service.IProcessHandleService;
|
||||
import com.jero.modules.activiti.service.ProcessAllService;
|
||||
import com.jero.modules.activiti.service.ProcessApprovalRecordService;
|
||||
import com.jero.modules.activiti.service.ProcessNodeLinkService;
|
||||
@@ -115,6 +116,8 @@ public class EsInspectPlanFlowServiceImpl implements IEsInspectPlanFlowService {
|
||||
RuntimeService runtimeService = processEngine.getRuntimeService();
|
||||
@Resource
|
||||
private TaskService taskService;
|
||||
@Resource
|
||||
private IProcessHandleService processHandleService;
|
||||
private static final String COUNTERSIGN = "countersign";
|
||||
private static final String COUNTERSIGN_TAG = "countersignTag";
|
||||
|
||||
@@ -557,15 +560,7 @@ public class EsInspectPlanFlowServiceImpl implements IEsInspectPlanFlowService {
|
||||
|
||||
@Override
|
||||
public void flowTransfer(String taskId, String userId) {
|
||||
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
// 更新流程审批信息
|
||||
processApprovalRecordService.update(new LambdaUpdateWrapper<ProcessApprovalRecord>()
|
||||
.eq(ProcessApprovalRecord::getTaskId, taskId)
|
||||
.set(ProcessApprovalRecord::getTransferBy, userId)
|
||||
.set(ProcessApprovalRecord::getTransferBy, loginUser.getId())
|
||||
.set(ProcessApprovalRecord::getUserId, userId));
|
||||
// 转办
|
||||
taskService.setAssignee(taskId, userId);
|
||||
processHandleService.transfer(taskId, userId);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+4
-9
@@ -26,6 +26,7 @@ import com.jero.modules.activiti.process.esinspectrectify.service.IProcessEsInsp
|
||||
import com.jero.modules.activiti.process.esinspectrectify.vo.EsInspectRectifyFlowVO;
|
||||
import com.jero.modules.activiti.process.esinspectrectify.vo.ProcessEsInspectRectifyVO;
|
||||
import com.jero.modules.activiti.process.esinspectrectify.vo.UserInfo;
|
||||
import com.jero.modules.activiti.process.fb.service.IProcessHandleService;
|
||||
import com.jero.modules.activiti.service.ProcessAllService;
|
||||
import com.jero.modules.activiti.service.ProcessApprovalRecordService;
|
||||
import com.jero.modules.activiti.service.ProcessNodeLinkService;
|
||||
@@ -87,6 +88,8 @@ public class EsInspectRectifyFlowServiceImpl implements IEsInspectRectifyFlowSer
|
||||
RuntimeService runtimeService = processEngine.getRuntimeService();
|
||||
@Resource
|
||||
private TaskService taskService;
|
||||
@Resource
|
||||
private IProcessHandleService processHandleService;
|
||||
|
||||
private static final String RESPONSIBLE = "responsible";
|
||||
|
||||
@@ -447,15 +450,7 @@ public class EsInspectRectifyFlowServiceImpl implements IEsInspectRectifyFlowSer
|
||||
|
||||
@Override
|
||||
public void flowTransfer(String taskId, String userId) {
|
||||
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
// 更新流程审批信息
|
||||
processApprovalRecordService.update(new LambdaUpdateWrapper<ProcessApprovalRecord>()
|
||||
.eq(ProcessApprovalRecord::getTaskId, taskId)
|
||||
.set(ProcessApprovalRecord::getTransferBy, userId)
|
||||
.set(ProcessApprovalRecord::getTransferBy, loginUser.getId())
|
||||
.set(ProcessApprovalRecord::getUserId, userId));
|
||||
// 转办
|
||||
taskService.setAssignee(taskId, userId);
|
||||
processHandleService.transfer(taskId, userId);
|
||||
}
|
||||
|
||||
private Map<String, Object> listToString(Map<String, Object> map) {
|
||||
|
||||
+4
-9
@@ -22,6 +22,7 @@ import com.jero.modules.activiti.process.espermissionapply.service.EsPermissionA
|
||||
import com.jero.modules.activiti.process.espermissionapply.service.IProcessEsPermissionApplyService;
|
||||
import com.jero.modules.activiti.process.espermissionapply.vo.EsPermissionApplyFlowVO;
|
||||
import com.jero.modules.activiti.process.espermissionapply.vo.ProcessEsPermissionApplyVO;
|
||||
import com.jero.modules.activiti.process.fb.service.IProcessHandleService;
|
||||
import com.jero.modules.activiti.service.ProcessAllService;
|
||||
import com.jero.modules.activiti.service.ProcessApprovalRecordService;
|
||||
import com.jero.modules.activiti.service.ProcessNodeLinkService;
|
||||
@@ -77,6 +78,8 @@ public class EsPermissionApplyFlowServiceImpl implements EsPermissionApplyFlowSe
|
||||
RuntimeService runtimeService = processEngine.getRuntimeService();
|
||||
@Resource
|
||||
private TaskService taskService;
|
||||
@Resource
|
||||
private IProcessHandleService processHandleService;
|
||||
|
||||
@Resource
|
||||
private EnterpriseStandardAuthUserService enterpriseStandardAuthUserService;
|
||||
@@ -288,15 +291,7 @@ public class EsPermissionApplyFlowServiceImpl implements EsPermissionApplyFlowSe
|
||||
|
||||
@Override
|
||||
public void flowTransfer(String taskId, String userId) {
|
||||
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
// 更新流程审批信息
|
||||
processApprovalRecordService.update(new LambdaUpdateWrapper<ProcessApprovalRecord>()
|
||||
.eq(ProcessApprovalRecord::getTaskId, taskId)
|
||||
.set(ProcessApprovalRecord::getTransferBy, userId)
|
||||
.set(ProcessApprovalRecord::getTransferBy, loginUser.getId())
|
||||
.set(ProcessApprovalRecord::getUserId, userId));
|
||||
// 转办
|
||||
taskService.setAssignee(taskId, userId);
|
||||
processHandleService.transfer(taskId, userId);
|
||||
}
|
||||
|
||||
public boolean isLastNode(String processInstanceId) {
|
||||
|
||||
+2
-1
@@ -272,11 +272,12 @@ public class ProcessHandleServiceImpl implements IProcessHandleService {
|
||||
// 删除自己的草稿
|
||||
deleteMyDraft(taskId, processApprovalRecord.getProjectId(), null);
|
||||
|
||||
taskService.setAssignee(taskId, toUserId);
|
||||
|
||||
String userId = processApprovalRecord.getUserId();
|
||||
processApprovalRecord.setTransferBy(CurrentUserUtil.getId()); // 转办人
|
||||
processApprovalRecord.setUserId(toUserId); // 任务处理人
|
||||
processApprovalRecordService.updateById(processApprovalRecord);
|
||||
taskService.setAssignee(taskId, toUserId);
|
||||
WorkCenterService classByValue = null;
|
||||
try {
|
||||
Object o = Class.forName(ProcessTypeEnum.getClassByValue(prcType)).newInstance();
|
||||
|
||||
+4
-9
@@ -16,6 +16,7 @@ import com.jero.modules.activiti.enums.ProcessStatusEnum;
|
||||
import com.jero.modules.activiti.process.common.entity.ProcessDraft;
|
||||
import com.jero.modules.activiti.process.common.enums.ProcessType;
|
||||
import com.jero.modules.activiti.process.common.service.ProcessDraftService;
|
||||
import com.jero.modules.activiti.process.fb.service.IProcessHandleService;
|
||||
import com.jero.modules.activiti.process.meetingmanage.common.ProcessMeetingManageCommon;
|
||||
import com.jero.modules.activiti.process.meetingmanage.entity.ProcessMeetingManage;
|
||||
import com.jero.modules.activiti.process.meetingmanage.entity.ProcessMeetingManagePersonnel;
|
||||
@@ -89,6 +90,8 @@ public class MeetingManageFlowServiceImpl implements IMeetingManageFlowService {
|
||||
RuntimeService runtimeService = processEngine.getRuntimeService();
|
||||
@Resource
|
||||
private TaskService taskService;
|
||||
@Resource
|
||||
private IProcessHandleService processHandleService;
|
||||
|
||||
@Override
|
||||
public void flowStart(MeetingManageFlowVO meetingManageFlowVO) {
|
||||
@@ -339,15 +342,7 @@ public class MeetingManageFlowServiceImpl implements IMeetingManageFlowService {
|
||||
|
||||
@Override
|
||||
public void flowTransfer(String taskId, String userId) {
|
||||
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
// 更新流程审批信息
|
||||
processApprovalRecordService.update(new LambdaUpdateWrapper<ProcessApprovalRecord>()
|
||||
.eq(ProcessApprovalRecord::getTaskId, taskId)
|
||||
.set(ProcessApprovalRecord::getTransferBy, userId)
|
||||
.set(ProcessApprovalRecord::getTransferBy, loginUser.getId())
|
||||
.set(ProcessApprovalRecord::getUserId, userId));
|
||||
// 转办
|
||||
taskService.setAssignee(taskId, userId);
|
||||
processHandleService.transfer(taskId, userId);
|
||||
}
|
||||
|
||||
private Map<String, Object> listToString(Map<String, Object> map) {
|
||||
|
||||
Reference in New Issue
Block a user