flowable工作流的学习demo

1.spring

部署流程

删除部署

查看历史信息

加载一个默认的配置文件

里面包含用户名和数据库信息

加载自定义的配置文件

flowable.cfg.xml

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

  <bean id="processEngineConfiguration" class="org.flowable.engine.impl.cfg.StandaloneProcessEngineConfiguration">

    <property name="jdbcUrl" value="jdbc:h2:mem:flowable;DB_CLOSE_DELAY=1000" />
    <property name="jdbcDriver" value="org.h2.Driver" />
    <property name="jdbcUsername" value="sa" />
    <property name="jdbcPassword" value="" />

    <property name="databaseSchemaUpdate" value="true" />

    <property name="asyncExecutorActivate" value="false" />

    <property name="mailServerHost" value="mail.my-corp.com" />
    <property name="mailServerPort" value="5025" />
  </bean>

</beans>

参考:Flowable各表间关系和字段详解_flowable工作流表及字段说明-优快云博客

2.3 Authentication.setAuthenticatedUserId(userId);
Authentication.setAuthenticatedUserId() 是 Flowable 中的一个静态方法,用于设置当前用户的身份信息(即认证用户ID)。在 Flowable 引擎中,为了能够跟踪流程实例的操作历史以及与任务相关的操作,需要记录执行流程操作的用户信息。通过调用 Authentication.setAuthenticatedUserId() 方法,可以在流程的执行过程中设置当前用户的身份,从而将用户信息与流程操作关联起来。

通常在开启一个新的流程实例、完成任务或者进行其他涉及用户身份的操作时,我们可以通过 Authentication.setAuthenticatedUserId() 方法设置当前用户的身份信息,以保留用户与相应操作的关联。这样,在历史表中记录的流程实例历史数据中,可以保留执行操作的用户信息,方便后续审计和查看。

Authentication.setAuthenticatedUserId(userId)操作会影响哪些表、哪些字段?

ACT_HI_TASKINST 表:
ASSIGNEE_ 字段:该字段记录了任务的负责人(执行人)的唯一标识符。在任务完成时,如果你在完成任务前使用 Authentication.setAuthenticatedUserId(currentUserId) 设置了当前用户的ID,那么该 currentUserId 将被记录在 ASSIGNEE_ 字段中,作为任务的负责人。
END_TIME_ 字段:该字段记录了任务的结束时间。在任务完成时,Flowable 引擎会自动将当前时间记录在 END_TIME_ 字段中,标志任务的完成时间。
ACT_HI_COMMENT 表(如果有添加任务评论):
USER_ID_ 字段:该字段记录了评论的作者(即用户ID)。在任务完成时,如果你在完成任务前使用 Authentication.setAuthenticatedUserId(currentUserId) 设置了当前用户的ID,那么该 currentUserId 将被记录在 USER_ID_ 字段中,作为评论的作者。
其他历史表(例如 ACT_HI_VARINST、ACT_HI_ACTINST等,如果涉及流程变量、活动实例等):
如果在完成任务前使用 Authentication.setAuthenticatedUserId(currentUserId) 设置了当前用户的ID,并且在任务完成的过程中与流程变量或活动实例等相关联,那么这些历史表中与当前用户相关的字段也会受到影响。
需要注意的是,Authentication.setAuthenticatedUserId(currentUserId) 方法设置的当前用户ID在任务完成时对历史表产生影响是在任务监听器中触发的,例如在 “complete” 事件的任务监听器中执行了设置当前用户ID的操作。完成任务时,Flowable 引擎会调用任务监听器,并在任务监听器的执行期间记录相应的历史数据。

Flowable工作流详解(基础篇)-优快云博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值