update 调整流程办理设置办理人

This commit is contained in:
gssong 2024-11-16 14:44:28 +08:00
parent 2716768dd9
commit 535be209c2
3 changed files with 8 additions and 113 deletions

View File

@ -8,83 +8,6 @@ package org.dromara.workflow.common.constant;
*/ */
public interface FlowConstant { public interface FlowConstant {
String MESSAGE_CURRENT_TASK_IS_NULL = "当前任务不存在或你不是任务办理人!";
String MESSAGE_SUSPENDED = "当前任务已挂起不可审批!";
/**
* 连线
*/
String SEQUENCE_FLOW = "sequenceFlow";
/**
* 并行网关
*/
String PARALLEL_GATEWAY = "parallelGateway";
/**
* 排它网关
*/
String EXCLUSIVE_GATEWAY = "exclusiveGateway";
/**
* 包含网关
*/
String INCLUSIVE_GATEWAY = "inclusiveGateway";
/**
* 结束节点
*/
String END_EVENT = "endEvent";
/**
* 流程委派标识
*/
String PENDING = "PENDING";
/**
* 候选人标识
*/
String CANDIDATE = "candidate";
/**
* 会签任务总数
*/
String NUMBER_OF_INSTANCES = "nrOfInstances";
/**
* 正在执行的会签总数
*/
String NUMBER_OF_ACTIVE_INSTANCES = "nrOfActiveInstances";
/**
* 已完成的会签任务总数
*/
String NUMBER_OF_COMPLETED_INSTANCES = "nrOfCompletedInstances";
/**
* 循环的索引值可以使用elementIndexVariable属性修改loopCounter的变量名
*/
String LOOP_COUNTER = "loopCounter";
String ZIP = "ZIP";
/**
* 业务与流程实例关联对象
*/
String BUSINESS_INSTANCE_DTO = "businessInstanceDTO";
/**
* 流程定义配置
*/
String WF_DEFINITION_CONFIG_VO = "wfDefinitionConfigVo";
/**
* 节点配置
*/
String WF_NODE_CONFIG_VO = "wfNodeConfigVo";
/** /**
* 流程发起人 * 流程发起人
*/ */
@ -100,38 +23,8 @@ public interface FlowConstant {
*/ */
String BUSINESS_KEY = "businessKey"; String BUSINESS_KEY = "businessKey";
/**
* 流程定义id
*/
String PROCESS_DEFINITION_ID = "processDefinitionId";
/**
* 开启跳过表达式变量
*/
String FLOWABLE_SKIP_EXPRESSION_ENABLED = "_FLOWABLE_SKIP_EXPRESSION_ENABLED";
/** /**
* 模型标识key命名规范正则表达式 * 模型标识key命名规范正则表达式
*/ */
String MODEL_KEY_PATTERN = "^[a-zA-Z][a-zA-Z0-9_]{0,254}$"; String MODEL_KEY_PATTERN = "^[a-zA-Z][a-zA-Z0-9_]{0,254}$";
/**
* 用户任务
*/
String USER_TASK = "userTask";
/**
* 会签
*/
String MULTI_INSTANCE = "multiInstance";
/**
*
*/
String TRUE = "0";
/**
*
*/
String FALSE = "1";
} }

View File

@ -51,8 +51,8 @@ import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import static org.dromara.workflow.common.constant.FlowConstant.BUSINESS_KEY; import static org.dromara.workflow.common.constant.FlowConstant.*;
import static org.dromara.workflow.common.constant.FlowConstant.INITIATOR; import static org.dromara.workflow.common.enums.TaskAssigneeEnum.USER;
/** /**
* 任务 服务层实现 * 任务 服务层实现
@ -92,7 +92,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService, AssigneeService {
// 启动流程实例提交申请 // 启动流程实例提交申请
Map<String, Object> variables = startProcessBo.getVariables(); Map<String, Object> variables = startProcessBo.getVariables();
// 流程发起人 // 流程发起人
variables.put(INITIATOR, userId); variables.put(INITIATOR, USER.getCode()+userId);
// 业务id // 业务id
variables.put(BUSINESS_KEY, businessKey); variables.put(BUSINESS_KEY, businessKey);
WfDefinitionConfigVo wfDefinitionConfigVo = wfDefinitionConfigService.getByTableNameLastVersion(startProcessBo.getTableName()); WfDefinitionConfigVo wfDefinitionConfigVo = wfDefinitionConfigService.getByTableNameLastVersion(startProcessBo.getTableName());
@ -103,7 +103,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService, AssigneeService {
FlowInstance flowInstance = iFlwInstanceService.instanceByBusinessId(businessKey); FlowInstance flowInstance = iFlwInstanceService.instanceByBusinessId(businessKey);
if (flowInstance != null) { if (flowInstance != null) {
List<Task> taskList = taskService.list(new FlowTask().setInstanceId(flowInstance.getId())); List<Task> taskList = taskService.list(new FlowTask().setInstanceId(flowInstance.getId()));
return Map.of("processInstanceId", taskList.get(0).getInstanceId(), "taskId", taskList.get(0).getId()); return Map.of(PROCESS_INSTANCE_ID, taskList.get(0).getInstanceId(), "taskId", taskList.get(0).getId());
} }
FlowParams flowParams = new FlowParams(); FlowParams flowParams = new FlowParams();
flowParams.flowCode(wfDefinitionConfigVo.getProcessKey()); flowParams.flowCode(wfDefinitionConfigVo.getProcessKey());

View File

@ -16,6 +16,8 @@ import java.util.*;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import java.util.stream.Stream; import java.util.stream.Stream;
import static org.dromara.workflow.common.enums.TaskAssigneeEnum.USER;
/** /**
* 工作流工具 * 工作流工具
* *
@ -46,7 +48,7 @@ public class WorkflowUtils {
// 用户和部门权限 // 用户和部门权限
Stream.of( Stream.of(
TaskAssigneeEnum.USER.getCode() + userId, USER.getCode() + userId,
TaskAssigneeEnum.DEPT.getCode() + deptId TaskAssigneeEnum.DEPT.getCode() + deptId
) )
) )
@ -94,7 +96,7 @@ public class WorkflowUtils {
users.forEach(dto -> { users.forEach(dto -> {
FlowUser flowUser = new FlowUser(); FlowUser flowUser = new FlowUser();
flowUser.setType(user.getType()); flowUser.setType(user.getType());
flowUser.setProcessedBy(String.valueOf(dto.getUserId())); flowUser.setProcessedBy(USER.getCode()+dto.getUserId());
flowUser.setAssociated(taskId); flowUser.setAssociated(taskId);
list.add(flowUser); list.add(flowUser);
}); });