• Activiti5 学习笔记—— comment 批注


    一般我们审批任务时,都会填写审批意见、审批时间、审批人等信息。activiti为什么我们提供了act_hi_comment表和操作comment的API,现在我们就来学习如何使用(仅了解,我更喜欢自己建表,毕竟这是业务数据,和流程关系不大)。

    1.  
      //完成任务添加批注
    2.  
      @Test
    3.  
      public void completeTask(){
    4.  
      String taskId = "12504";
    5.  
      Task task = processEngine.getTaskService().createTaskQuery()
    6.  
      .taskId(taskId) //使用任务ID查询
    7.  
      .singleResult();
    8.  
      String processInstanceId = task.getProcessInstanceId(); //获取流程实例id
    9.  
      String message = "审批通过"; //批注信息
    10.  
      Authentication.setAuthenticatedUserId("张三"); //设置审批人,若不设置则数据表userid字段为null
    11.  
      processEngine.getTaskService().addComment(taskId, processInstanceId, message); //添加批注
    12.  
      processEngine.getTaskService().complete(taskId); //完成任务
    13.  
      }
    1.  
      //查询批注
    2.  
      @Test
    3.  
      public void findComment() {
    4.  
       
    5.  
      //如果流程还在继续执行,可以通过正在执行的任务获取流程实例id
    6.  
      String taskId = "12504";
    7.  
      Task task = processEngine.getTaskService().createTaskQuery()
    8.  
      .taskId(taskId)
    9.  
      .singleResult();
    10.  
      String _processInstanceId = task.getProcessInstanceId();
    11.  
      List<Comment> _list = processEngine.getTaskService().getProcessInstanceComments(_processInstanceId);
    12.  
       
    13.  
      //如果流程已经执行完毕,就要想办法获取到流程实例id
    14.  
      /*HistoricProcessInstance historicProcessInstance = processEngine.getHistoryService()
    15.  
      .createHistoricProcessInstanceQuery()
    16.  
      .processInstanceBusinessKey(businessKey) //关于businessKey请查看前面的教程《与业务关联》
    17.  
      .singleResult();*/
    18.  
      String processInstanceId = "12501"; //这里我们直接指定流程实例id
    19.  
      List<Comment> list = processEngine.getTaskService().getProcessInstanceComments(processInstanceId);
    20.  
      for (Comment comment : list) {
    21.  
      System.out.println("审批人:" + comment.getUserId());
    22.  
      System.out.println("审批时间:" + comment.getTime());
    23.  
      System.out.println("审批信息:" + comment.getFullMessage());
    24.  
      }
    25.  
       
    26.  
      }
  • 相关阅读:
    跟小静学CLR via C#(12)委托Delegate
    跟小静读CLR via C#(02)基元类型、引用类型、值类型
    跟小静读CLR via C#(07)静态类,分部类
    jQuery折叠菜单
    ajax调用后台Datatable
    跟小静读CLR via C#(11)无参属性、索引器
    跟小静读CLR via C#(08)操作符
    跟小静读CLR via C#(05) 访问限定、数据成员
    AjaxPro排错指南
    跟小静读CLR via C#(14)可空值类型,关于?和??的故事
  • 原文地址:https://www.cnblogs.com/sea520/p/13646814.html
Copyright © 2020-2023  润新知