学习 activiti_Service(三)TaskService

activiti 版本号 7.0.0.SR1

一、功能

API解释:Service which provides access to {@link Task} and form related operations.
翻译:提供 Task和表单相关操作 的 方法。

    /**
     * 操作
     *   1. claim(String taskId, String userId);
     *   2. unclaim(String taskId);
     *   3. complete(String taskId);
     *      complete(String taskId, Map<String, Object> variables);
     *      complete(String taskId, Map<String, Object> variables, Map<String, Object> transientVariables);
     *      complete(String taskId, Map<String, Object> variables, boolean localScope);
     *      参数
     *      1. taskId:任务id
     *      2. variables:任务参数, 可以为空。
     *      3. transientVariables:瞬时变量,不会存入历史表
     *      4. localScope:如果为true,则提供的变量将存储在任务本地,而不是进程实例范围
     *   4. delegateTask(String taskId, String userId);
     *   5. resolveTask(String taskId);
     *      resolveTask(String taskId, Map<String, Object> variables);
     *      resolveTask(String taskId, Map<String, Object> variables, Map<String, Object> transientVariables);
     *      参数
     *      1. taskId: 任务id
     *      2. variables: 任务参数
     *      3. transientVariables: 瞬时变量,不会存入历史表
     *
     * 增
     *   1. saveTask(Task task);
     *   2. addCandidateUser(String taskId, String userId);
     *   3. addCandidateGroup(String taskId, String groupId);
     *   4. addUserIdentityLink(String taskId, String userId, String identityLinkType);
     *   5. addGroupIdentityLink(String taskId, String groupId, String identityLinkType);
     *   6. addComment(String taskId, String processInstanceId, String message);
     *      addComment(String taskId, String processInstanceId, String type, String message);
     *   7. saveAttachment(Attachment attachment);
     *   8. createAttachment(String attachmentType, String taskId, String processInstanceId, String attachmentName, String attachmentDescription, String url);
     *      createAttachment(String attachmentType, String taskId, String processInstanceId, String attachmentName, String attachmentDescription, InputStream content);
     *
     * 删
     *   1. deleteTask(String taskId);
     *      deleteTask(String taskId, String deleteReason);
     *      deleteTask(String taskId, boolean cascade);
     *      deleteTask(String taskId, String deleteReason, boolean cancel);
     *      deleteTasks 同 deleteTask
     *      参数:
     *      1. taskId:任务id
     *      2. deleteReason:删除的原因
     *      3. cascade:是否 级联删除 相应的历史信息
     *   2. deleteCandidateUser(String taskId, String userId);
     *   3. deleteCandidateGroup(String taskId, String groupId);
     *   4. deleteUserIdentityLink(String taskId, String userId, String identityLinkType);
     *   5. deleteGroupIdentityLink(String taskId, String groupId, String identityLinkType);
     *   6. variable
     *     1. removeVariable(String taskId, String variableName);
     *     2. removeVariableLocal(String taskId, String variableName);
     *     3. removeVariables(String taskId, Collection<String> variableNames);
     *     4. removeVariablesLocal(String taskId, Collection<String> variableNames);
     *   7. deleteComments(String taskId, String processInstanceId);
     *      deleteComment(String commentId);
     *   8. deleteAttachment(String attachmentId);
     *
     * 查
     *   1. Query / NativeQuery
     *     1. Task
     *   2. 其他
     *     1. getIdentityLinksForTask(String taskId);
     *     2. variable
     *       1. getVariable(String taskId, String variableName);
     *          getVariable(String taskId, String variableName, Class<T> variableClass);
     *       2. getVariables(String taskId);
     *          getVariables(String taskId, Collection<String> variableNames);
     *       3. getVariableLocal(String taskId, String variableName);
     *          getVariableLocal(String taskId, String variableName, Class<T> variableClass);
     *       4. getVariablesLocal(String taskId);
     *          getVariablesLocal(String taskId, Collection<String> variableNames);
     *       5. getVariableInstance(String taskId, String variableName);
     *       6. getVariableInstanceLocal(String taskId, String variableName);
     *       7. getVariableInstances(String taskId);
     *          getVariableInstances(String taskId, Collection<String> variableNames);
     *       8. getVariableInstancesLocalByTaskIds(Set<String> taskIds);
     *       9. getVariableInstancesLocal(String taskId);
     *          getVariableInstancesLocal(String taskId, Collection<String> variableNames);
     *     3. dataObject
     *       1. getDataObjects(String taskId);
     *          getDataObjects(String taskId, String locale, boolean withLocalizationFallback);
     *          getDataObjects(String taskId, Collection<String> dataObjectNames);
     *          getDataObjects(String taskId, Collection<String> dataObjectNames, String locale, boolean withLocalizationFallback);
     *       2. getDataObject(String taskId, String dataObject);
     *          getDataObject(String taskId, String dataObjectName, String locale, boolean withLocalizationFallback);
     *     4. comment
     *       1. getComment(String commentId);
     *       2. getTaskComments(String taskId);
     *          getTaskComments(String taskId, String type);
     *       3. getCommentsByType(String type);
     *       4. getProcessInstanceComments(String processInstanceId);
     *          getProcessInstanceComments(String processInstanceId, String type);
     *     5. getAttachment(String attachmentId);
     *     6. getAttachmentContent(String attachmentId);
     *     7. getTaskAttachments(String taskId);
     *     8. getTaskEvents(String taskId);
     *     9. getEvent(String eventId);
     *     10.getProcessInstanceAttachments(String processInstanceId);
     *     11.getSubTasks(String parentTaskId);
     *
     * 改
     *   1. setAssignee(String taskId, String userId);
     *   2. setOwner(String taskId, String userId);
     *   3. setPriority(String taskId, int priority);
     *   4. setDueDate(String taskId, Date dueDate);
     *   5. variable
     *     1. setVariable(String taskId, String variableName, Object value);
     *     2. setVariables(String taskId, Map<String, ? extends Object> variables);
     *     3. setVariablesLocal(String taskId, Map<String, ? extends Object> variables);
     *
     * 其他
     *   1. newTask();
     *      newTask(String taskId);
     *   2. hasVariable(String taskId, String variableName);
     *   3. hasVariableLocal(String taskId, String variableName);
     */

二、API

英文版点这里

  /**
   * 创建与任何流程实例都不相关的新任务.
   * 
   * 返回的任务是暂时的,必须用{@link#saveTask(task)}“manually”保存.
   */
  Task newTask();

  /** 
   * 使用用户定义的任务id创建新任务
   */
  Task newTask(String taskId);

  /**
   * 将给定任务保存到持久数据存储。如果任务已存在于持久存储中,则会更新该任务。保存新任务后,传递到此方法的任务实例将用新创建的任务的id更新.
   * 
   * @param task 任务,不能为空.
   */
  Task saveTask(Task task);

  /**
   * 删除给定任务,而不删除与此任务相关的历史信息.
   * 
   * @param taskId 要删除的任务的id不能为空。如果不存在具有给定taskId的任务,则忽略该操作.
   * @throws ActivitiObjectNotFoundException 当给定id的任务不存在时.
   * @throws ActivitiException 删除任务时发生错误或任务是正在运行的进程的一部分时.
   */
  void deleteTask(String taskId);

  /**
   * 删除给定集合的所有任务,而不删除与这些任务相关的历史信息.
   * 
   * @param taskIds 要删除的任务的id不能为空。列表中所有没有现有任务的id都将被忽略.
   * @throws ActivitiObjectNotFoundException 当其中一个任务不存在时.
   * @throws ActivitiException 当删除任务时发生错误,或者其中一个任务是正在运行的进程的一部分时.
   */
  void deleteTasks(Collection<String> taskIds);

  /**
   * 删除给定任务.
   * 
   * @param taskId 要删除的任务的id不能为空。如果不存在具有给定taskId的任务,则忽略该操作.
   * @param cascade 如果cascade为true,则还将删除与此任务相关的历史信息.
   * @throws ActivitiObjectNotFoundException 当给定id的任务不存在时.
   * @throws ActivitiException 删除任务时发生错误或任务是正在运行的进程的一部分时.
   */
  void deleteTask(String taskId, boolean cascade);

  /**
   * 删除给定集合的所有任务.
   * 
   * @param taskIds 要删除的任务的id不能为空。列表中所有没有现有任务的id都将被忽略.
   * @param cascade 如果cascade为true,则还将删除与此任务相关的历史信息.
   * @throws ActivitiObjectNotFoundException 当其中一个任务不存在时.
   * @throws ActivitiException 当删除任务时发生错误,或者其中一个任务是正在运行的进程的一部分时.
   */
  void deleteTasks(Collection<String> taskIds, boolean cascade);

  /**
   * 删除给定任务,而不是删除与此任务相关的历史信息..
   * 
   * @param taskId 要删除的任务的id不能为空。如果不存在具有给定taskId的任务,则忽略该操作.
   * @param deleteReason 删除任务的原因。如果启用,则记录在历史记录中.
   * @throws ActivitiObjectNotFoundException 当给定id的任务不存在时.
   * @throws ActivitiException 删除任务时发生错误或任务是正在运行的进程的一部分时
   */
  void deleteTask(String taskId, String deleteReason);

  
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值