关于工作流的查看方法
首先添加部分角色
@GetMapping ( "/addUser" )
public void addUser ( ) {
User user1 = identityService. newUser ( "user1" ) ;
user1. setFirstName ( "经理" ) ;
user1. setLastName ( "经" ) ;
user1. setPassword ( "123456" ) ;
user1. setEmail ( "jingli@qq.com" ) ;
identityService. saveUser ( user1) ;
User user2 = identityService. newUser ( "user2" ) ;
user2. setFirstName ( "总监" ) ;
user2. setLastName ( "总" ) ;
user2. setPassword ( "123456" ) ;
user2. setEmail ( "zongjian@qq.com" ) ;
identityService. saveUser ( user2) ;
User user3 = identityService. newUser ( "user3" ) ;
user3. setFirstName ( "人事" ) ;
user3. setLastName ( "人" ) ;
user3. setPassword ( "123456" ) ;
user3. setEmail ( "renshi@qq.com" ) ;
identityService. saveUser ( user3) ;
User user4 = identityService. newUser ( "123" ) ;
user4. setFirstName ( "员工" ) ;
user4. setLastName ( "员" ) ;
user4. setPassword ( "123456" ) ;
user4. setEmail ( "yuangong@qq.com" ) ;
identityService. saveUser ( user4) ;
}
创建用户组
@RequestMapping ( "/addGroup" )
public void addGroup ( ) {
Group group1 = identityService. newGroup ( "group1" ) ;
group1. setName ( "员工组" ) ;
group1. setType ( "员工组" ) ;
identityService. saveGroup ( group1) ;
Group group2 = identityService. newGroup ( "group2" ) ;
group2. setName ( "总监组" ) ;
group2. setType ( "总监阻" ) ;
identityService. saveGroup ( group2) ;
Group group3 = identityService. newGroup ( "group3" ) ;
group3. setName ( "经理组" ) ;
group3. setType ( "经理组" ) ;
identityService. saveGroup ( group3) ;
Group group4 = identityService. newGroup ( "group4" ) ;
group4. setName ( "人力资源组" ) ;
group4. setType ( "人力资源组" ) ;
identityService. saveGroup ( group4) ;
}
创建用户-用户组关系
@RequestMapping ( "/addMembership" )
public void addMembership ( ) {
identityService. createMembership ( "user4" , "group1" ) ;
identityService. createMembership ( "user2" , "group2" ) ;
identityService. createMembership ( "user1" , "group3" ) ;
identityService. createMembership ( "user3" , "group4" ) ;
}
通过用户组id查询Activiti用户组
@RequestMapping ( "/queryGroup" )
public void queryGroup ( ) {
Group group = identityService. createGroupQuery ( ) . groupId ( "group1" ) . singleResult ( ) ;
System. out. println ( group. getId ( ) ) ;
System. out. println ( group. getName ( ) ) ;
System. out. println ( group. getType ( ) ) ;
}
查询属于组group1的用户
@RequestMapping ( "/queryUserListByGroup" )
public void queryUserListByGroup ( ) {
List< User> usersInGroup = identityService. createUserQuery ( ) . memberOfGroup ( "group1" ) . list ( ) ;
for ( User user : usersInGroup) {
System. out. println ( user. getFirstName ( ) ) ;
}
}
查询user1所属于的组
@RequestMapping ( "/queryGroupListByUser" )
public void queryGroupListByUser ( ) {
List< Group> groupsForUser = identityService. createGroupQuery ( ) . groupMember ( "user1" ) . list ( ) ;
for ( Group group : groupsForUser) {
System. out. println ( group. getName ( ) ) ;
}
}
历史活动查看(某一次流程的执行经历的多少步)
@Test
public void queryHistoricActivityInstance ( ) throws Exception {
String processInstanceId = "1401" ;
List< HistoricActivityInstance> hais = historyService. createHistoricActivityInstanceQuery ( )
. processInstanceId ( processInstanceId )
. orderByHistoricActivityInstanceEndTime ( ) . asc ( )
. list ( ) ;
for ( HistoricActivityInstance hai : hais) {
System. out. print ( "activitiId:" + hai. getActivityId ( ) + "," ) ;
System. out. print ( "name:" + hai. getActivityName ( ) + "," ) ;
System. out. print ( "type:" + hai. getActivityType ( ) + "," ) ;
System. out. print ( "pid:" + hai. getProcessInstanceId ( ) + "," ) ;
System. out. print ( "assignee:" + hai. getAssignee ( ) + "," ) ;
System. out. print ( "startTime:" + hai. getStartTime ( ) + "," ) ;
System. out. print ( "endTime:" + hai. getEndTime ( ) + "," ) ;
System. out. println ( "duration:" + hai. getDurationInMillis ( ) ) ;
}
}
查询历史流程实例
@Test
public void queryHistoricInstance ( ) {
List< HistoricProcessInstance> list = processEngine. getHistoryService ( )
. createHistoricProcessInstanceQuery ( )
. orderByProcessInstanceStartTime ( ) . asc ( )
. list ( ) ;
if ( list != null && list. size ( ) > 0 ) {
for ( HistoricProcessInstance hpi : list) {
System. out. println ( "流程定义ID:" + hpi. getProcessDefinitionId ( ) ) ;
System. out. println ( "流程实例ID:" + hpi. getId ( ) ) ;
System. out. println ( "开始时间:" + hpi. getStartTime ( ) ) ;
System. out. println ( "结束时间:" + hpi. getEndTime ( ) ) ;
System. out. println ( "流程持续时间:" + hpi. getDurationInMillis ( ) ) ;
System. out. println ( "=======================================" ) ;
}
}
}