一、用户组操作
1、添加与修改用户组
package org.crazyit.activiti.IdentityService;
import java.util.UUID;
import org.activiti.engine.IdentityService;
import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngineConfiguration;
import org.activiti.engine.ProcessEngines;
import org.activiti.engine.identity.Group;
/**
* 添加用户组
* @author mz
*新增与修改
*/
public class GroupAdd {
public static void main(String[] args) {
// 创建默认的流程引擎
ProcessEngine engine = ProcessEngines.getDefaultProcessEngine();
// 得到身份服务组件实例
IdentityService identityService = engine.getIdentityService();
// 生成UUID
String genId = UUID.randomUUID().toString();
//调用newGroup方法创建Group实例
Group group = identityService.newGroup(genId);
group.setName("经理组");
group.setType("manager");
//保存Group到数据库
identityService.saveGroup(group);
// 查询用户组
Group data = identityService.createGroupQuery().groupId(genId).singleResult();
// 保存后查询Group
System.out.println("Group ID:" + data.getId() + ", Name:" + data.getName());
// 修改用户组
// // 设置名称
// data.setName("经理2组");
// identityService.saveGroup(data);
// // 再次查询
// data = identityService.createGroupQuery().groupId(genId).singleResult();
// System.out.println("Group ID:" + data.getId() + ", Name:" + data.getName());
}
}
2、删除用户组
package org.crazyit.activiti.IdentityService;
import java.util.UUID;
import org.activiti.engine.IdentityService;
import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngineConfiguration;
import org.activiti.engine.ProcessEngines;
import org.activiti.engine.identity.Group;
/**
* 删除用户组
*
* @author mz
* 删除
*/
public class GroupDelete {
public static void main(String[] args) {
// 创建默认的流程引擎
ProcessEngine engine = ProcessEngines.getDefaultProcessEngine();
// 得到身份服务组件实例
IdentityService identityService = engine.getIdentityService();
String genId = UUID.randomUUID().toString();
// 调用newGroup方法创建Group实例
Group group = identityService.newGroup(genId);
group.setName("经理组");
group.setType("manager");
// 保存Group到数据库
identityService.saveGroup(group);
// 查询用户组
System.out.println("保存后用户组数量:"
+ identityService.createGroupQuery().count());
// 根据ID删除用户组
identityService.deleteGroup(genId);
System.out.println("删除后用户组数量:"
+ identityService.createGroupQuery().count());
}
}
3、统计用户组数
package org.crazyit.activiti.IdentityService;
import java.util.List;
import java.util.UUID;
import org.activiti.engine.IdentityService;
import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngineConfiguration;
import org.activiti.engine.ProcessEngines;
import org.activiti.engine.identity.Group;
/**
* 使用Query的count方法
*
* @author mz
* 计数
*/
public class GroupCount {
public static void main(String[] args) {
// 创建流程引擎
ProcessEngine engine = ProcessEngines.getDefaultProcessEngine();
// 得到身份服务组件实例
IdentityService identityService = engine.getIdentityService();
// 写入5条用户组数据
createGroup(identityService, UUID.randomUUID().toString(), "GroupA", "typeA");
createGroup(identityService, UUID.randomUUID().toString(), "GroupB", "typeB");
createGroup(identityService, UUID.randomUUID().toString(), "GroupC", "typeC");
createGroup(identityService, UUID.randomUUID().toString(), "GroupD", "typeD");
createGroup(identityService, UUID.randomUUID().toString(), "GroupE", "typeE");
// 使用list方法查询全部的部署数据
long size = identityService.createGroupQuery().count();
System.out.println("Group 数量:" + size);
}
// 将用户组数据保存到数据库中
static void createGroup(IdentityService identityService, String id,
String name, String type) {
// 调用newGroup方法创建Group实例
Group group = identityService.newGroup(id);
group.setName(name);
group.setType(type);
identityService.saveGroup(group);
}
}
4、查询用户组列表
package org.crazyit.activiti.IdentityService;
import java.util.List;
import java.util.UUID;
import org.activiti.engine.IdentityService;
import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngines;
import org.activiti.engine.identity.Group;
/**
* 使用Query的list方法
*
* @author mz
* 全部查询返回list
*/
public class GroupListData {
public static void main(String[] args) {
// 创建流程引擎
ProcessEngine engine = ProcessEngines.getDefaultProcessEngine();
// 得到身份服务组件实例
IdentityService identityService = engine.getIdentityService();
// 写入5条用户组数据
createGroup(identityService, "1", "GroupA", "typeA");
createGroup(identityService, "2", "GroupB", "typeB");
createGroup(identityService, "3", "GroupC", "typeC");
createGroup(identityService, "4", "GroupD", "typeD");
createGroup(