流程事件常用代码
获取事件名称
String eventName = eventContext.eventName;
获得业务主键
String businessKey = eventContext.businessKey;
获取流程实例ID
String processInstanceId = eventContext.processInstanceId;
获得全局事务ID
String xid = eventContext.xid;
获取表单数据
String businessKey = eventContext.formData["zerocloud_data"]["demo"][0]["business_key"];
获取yml配置
String driverClassName = ZcProcessCommonUtils.getProperty("zerocloud.system-db.driver-class-name");
流程组织工具类
// 获取部门
ZcOU returnValue = ZcProcessOrgUtils.getOU(ouSid);
// 获取某编码部门
ZcOU returnValue = ZcProcessOrgUtils.getOUByCode(ouCode);
// 获取部门名称
String returnValue = ZcProcessOrgUtils.getOUName(ouSid);
// 获取部门路径
String returnValue = ZcProcessOrgUtils.getOUFullPath(ouSid);
// 获取某级别部门集合
List<ZcOU> returnValue = ZcProcessOrgUtils.getOUsByLevel(ouLevel);
// 获取部门成员所属部门
ZcOU returnValue = ZcProcessOrgUtils.getOUMemberParentOU(ouMemberSid);
// 获取部门成员所属部门及父部门
List<ZcOU> returnValue = ZcProcessOrgUtils.getOUMemberParentOUs(ouMemberSid);
// 获取部门成员所属某级别部门
ZcOU returnValue = ZcProcessOrgUtils.getOUMemberParentLevelOU(ouMemberSid, ouLevel);
ZcOU数据结构
{
"address": "", //部门地址
"companySid": "", //部门SID
"description": "", //部门简介
"ouCode": "", //部门编码
"ouFullPath": "", //完整层级
"ouLevel": "", //部门级别
"ouName": "", //部门名称
"ouSid": "", //部门SID
"parentOuSid": "" //父级SID
}
// 获取部门成员
ZcOUMember returnValue = ZcProcessOrgUtils.getOUMember(ouMemberSid);
// 获取某用户名对应的部门成员
ZcOUMember returnValue = ZcProcessOrgUtils.getOUMemberByUserName(userName);
// 获取某用户名对应的所有部门成员
List<ZcOUMember> returnValue = ZcProcessOrgUtils.getOUMembersByUserName(userName);
// 获取某职位部门成员
List<ZcOUMember> returnValue = ZcProcessOrgUtils.getOUMembersByPositionCode(positionCode);
// 获取某职级部门成员
List<ZcOUMember> returnValue = ZcProcessOrgUtils.getOUMembersByPositionLevel(positionLevel);
ZcOUMember数据结构
{
"avatar": "", //头像
"director": true, //是否部门负责人
"ouFullPath": "", //部门路径
"ouMemberFullPath": "", //部门成员路径
"ouMemberSid": "", //部门成员SID
"ouSid": "", //所属部门SID
"positionCode": "", //职位编码
"positionLevel": 0, //职级
"positionName": "", //职位名称
"priority": 0, //优先级
"userDisplayName": "", //姓名
"userExtFields": {}, //扩展字段
"userName": "" //用户名
}
SQL工具类
//SQL查询
List<Map<String,Object>> rows = ZcProcessDsSqlUtils.selectList("数据源", "SELECT语句");
Map<String, Object> returnValue = ZcProcessDsSqlUtils.selectOne("数据源", "SELECT语句");
//执行SQL
String dsCode = "zcdata";
String businessKey = eventContext.businessKey;
String xid = eventContext.xid;
String sql = String.format("UPDATE purchase_m SET remark = '123' WHERE business_key = '%s'", businessKey);
ZcProcessDsSqlUtils.executeSql(dsCode, sql, xid);
HTTP工具
//调用HTTP-GET请求
String result = ZcProcessHttpUtils.get("http://localhost:8080/test/hello");
//调用HTTP-POST请求
ObjectNode body = objectMapper.createObjectNode();
body.put("field1", 111);
body.put("field2", 222);
String result = ZcProcessHttpUtils.post("http://localhost:8080/test/post", body.toString());
邮件
//推送邮件
ZcProcessMsgPushUtils.pushMessage(false, "mail", "xxxxxx@qq.com", "主题", "正文");
//推送邮件给系统用户
ZcProcessMsgPushUtils.pushUserMessage(false, "mail", "用户名", "主题", "正文");