package com.mossle.spi.humantask; import java.util.List; public interface TaskDefinitionConnector { /** * 获取分配策略. */ String findTaskAssignStrategy(String taskDefinitionKey, String processDefinitionId); /** * 获取会签配置. */ CounterSignDTO findCounterSign(String taskDefinitionKey, String processDefinitionId); /** * 获取表单配置. */ FormDTO findForm(String taskDefinitionKey, String processDefinitionId); /** * 获取操作配置. */ List<String> findOperations(String taskDefinitionKey, String processDefinitionId); /** * 获取参与者. */ List<TaskUserDTO> findTaskUsers(String taskDefinitionKey, String processDefinitionId); /** * 获取截止日期. */ List<DeadlineDTO> findDeadlines(String taskDefinitionKey, String processDefinitionId); /** * 获取流程实例对应的参与者配置. */ String findTaskConfUser(String taskDefinitionKey, String businessKey); /** * 获取提醒配置. */ List<TaskNotificationDTO> findTaskNotifications(String taskDefinitionKey, String processDefinitionId, String eventName); /** * 创建新的任务定义. */ void create(TaskDefinitionDTO taskDefinition); /** * 保存分配策略. */ void saveAssignStrategy(String taskDefinitionKey, String processDefinitoinId, String assigneeStrategy); /** * 保存会签配置. */ void saveCounterSign(String taskDefinitionKey, String processDefinitionId, CounterSignDTO counterSign); /** * 保存表单配置. */ void saveForm(String taskDefinitionKey, String processDefinitionId, FormDTO form); /** * 添加操作. */ void addOperation(String taskDefinitionKey, String processDefinitionId, String operation); /** * 删除操作. */ void removeOperation(String taskDefinitionKey, String processDefinitionId, String operation); /** * 添加参与者. */ void addTaskUser(String taskDefinitionKey, String processDefinitionId, TaskUserDTO taskUser); /** * 删除参与者. */ void removeTaskUser(String taskDefinitionKey, String processDefinitionId, TaskUserDTO taskUser); /** * 更新参与者. */ void updateTaskUser(String taskDefinitionKey, String processDefinitionId, TaskUserDTO taskUser, String status); /** * 新增提醒. */ void addTaskNotification(String taskDefinitionKey, String processDefinitionId, TaskNotificationDTO taskNotification); /** * 删除提醒. */ void removeTaskNotification(String taskDefinitionKey, String processDefinitionId, TaskNotificationDTO taskNotification); /** * 新增截止. */ void addDeadline(String taskDefinitionKey, String processDefinitionId, DeadlineDTO deadline); /** * 删除截止. */ void removeDeadline(String taskDefinitionKey, String processDefinitionId, DeadlineDTO deadline); }