收藏 分销(赏)

BPM接口使用说明.docx

上传人:仙人****88 文档编号:11738793 上传时间:2025-08-11 格式:DOCX 页数:5 大小:23.35KB 下载积分:10 金币
下载 相关 举报
BPM接口使用说明.docx_第1页
第1页 / 共5页
BPM接口使用说明.docx_第2页
第2页 / 共5页


点击查看更多>>
资源描述
BPM使用说明 在开发业务模块过程中如果需要使用BPM接口,可以通过IProcInstSrv进行接口调用。 提供的具体接口如下: 1.启动流程实例 /** * 启动流程实例 * @param procEName 流程英文标识 * @param procVersion 流程版本号 * @param vars 流程实例变量 * @param userId 发起流程人员Id * @param username 发起流程人员名称 * @param ccUsers 抄送人员Id * @return */ public ProcInstEntity startProc(String procEName, String procVersion,List<WfRVariableinst> vars, String userId, String userName,String ccUsers); 代码示例: //从前台得到需要的参数 String procEName=reqDTO.getValue("procEName"); String procVersion=reqDTO.getValue("procVersion"); String ccUsers=reqDTO.getValue("ccUsers"); WFUtils utils=new WFUtils(); //通过WFUtils.getProcVariable()得到流程实例变量 List variables=utils.getProcVariable(reqDTO); //得到IProcInstSrv流程调用接口 IProcInstSrv procInstSrv=MemberCache.getInstance().getProcInstSrv(); //调用启动流程实例接口 procInstSrv.startProc(procEName,procVersion, variables, userToken.getUserId(),userToken.getUserName(),ccUsers); 2.得到待审批列表 /** * 根据当前用户和模板类型得到待审批列表 * @param userId 用户ID * @param procType 流程类型 * examineinstId 审批实例Id 一般设为空字符串即可 * examineRoleId 角色Id * @return */ public List getExamineInstListByUserID(String userId, String procType,String examineinstId, String examineRoleId); 代码示例: //列表分页显示代码部分 String currentPage = msg.getValue("currentPage"); if(currentPage==null || currentPage.trim().equals("")) currentPage = "1"; String pageSize = msg.getValue("pageSize"); if(pageSize==null || pageSize.trim().equals("")){ ConfigHandler cfgHd = ConfigFactory.getCfgHandler(); pageSize = cfgHd.getSingleNodeValue("//pagination/pageSize"); } UserToken userToken = reqDTO.getUserToken(); //从前台页面得到参数 String procType=""; String userId=userToken.getUserId(); String orgId=userToken.getOrgId(); String examineRoleId=userToken.getRoleIds(); //得到调用接口 IProcInstSrv procInstSrv=MemberCache.getInstance().getProcInstSrv(); //通过接口得到待审批列表 List list=procInstSrv.getExamineInstListByUserID (userId,procType,"",examineRoleId); msg.setValue("datas", list); msg.setValue("totalRows", list.size()); 3.得到审批页面显示信息 /** * 点击审批时得到审批实例的所有信息和所有下级节点 * @param procinstId 流程实例Id * @param examineinstId 审批实例Id * @param procType 流程类型,一般为空字符串 * @param userId 当前用户Id * @return */ public Map getExamineInfo(String procinstId, String examineinstId, String procType, String userId); 代码示例: //从前台得到需要参数 UserToken userToken = reqDTO.getUserToken(); String procType=""; String userId=userToken.getUserId(); String procinstId=reqDTO.getValue("procinstID"); String examineinstId=reqDTO.getValue("examineinstID"); //得到流程IProcInstSrv调用接口 IProcInstSrv procInstSrv=MemberCache.getInstance().getProcInstSrv(); //得到流程详细信息显示页面接口 Map map=procInstSrv.getExamineInfo(procinstId, examineinstId, procType, userId); //返回前台页面显示 List list=new ArrayList(); list.add(map.get("examineinInfo")); //是否是第一级审批节点--用户能否回退 msg.setValue("isFirstApplyNode", map.get("isFirstApplyNode")); //审批信息显示 msg.setValue("examineinInfo", list ); //下级节点--用户SELECT选择使用 msg.setValue("nodeList", map.get("nodeList")); //是否能够直接通过 msg.setValue("isCanPass", map.get("isCanPass")); msg.setValue("startNode", map.get("startNode")); 4.审批流程实例节点 /** * 审批节点 * @param nextNodeId 下级节点Id * @param examineInfo 本级节点审批信息 * @param isPass 是否通过 * @param examineinstId 审批实例Id * @param procinstId 流程实例Id * @param examineUserName 审批用户名称 * @param taskInstId 审批taskInstId * @return */ public Map examineNode(String nextNodeId, String examineInfo, String isPass, String examineinstId, String procinstId, String examineUserName, String taskInstId); 代码示例: //从前台得到需要参数 String nextNodeId = reqDTO.getValue("nextNodeID"); String examineInfo = reqDTO.getValue("examineInfo"); String isPassstr = reqDTO.getValue("isPass"); String examineinstId = reqDTO.getValue("examineinstID"); String procinstId = reqDTO.getValue("procinstID"); String taskinstId = reqDTO.getValue("taskinstId"); //得到流程IProcInstSrv接口 IProcInstSrv procInstSrv = MemberCache.getInstance().getProcInstSrv(); //调用审批接口 procInstSrv.examineNode(nextNodeId, examineInfo, isPassstr, examineinstId, procinstId, userToken.getUserName(), taskinstId); 5.得到当前用户发起的流程实例列表 /** * 根据当前用户启动的流程实例 * @param userId 当前用户Id * @param procType 流程类型 * @return */ public List getStartProcInstByCurUser (String userId,String procType); 代码示例: //得到相应参数 String userId=userToken.getUserId(); String procType=""; if(reqDTO.getValue("procType")!=null&&!reqDTO.getValue("procType").equals("")) { procType=reqDTO.getValue("procType"); } //得到流程调用接口 IProcInstSrv procInstSrv=MemberCache.getInstance().getProcInstSrv(); //得到当前用户发起的流程列表 List list=procInstSrv.getStartProcInstByCurUser(userId, procType); 6. 查询当前用户的抄送列表 /** * 根据userid查询抄送的流程列表 * @param userId 当前用户Id * @return */ public List queryPorcInstCCByUserId(String userId); 代码示例: UserToken userToken = reqDTO.getUserToken(); //调用流程IProcInstSrv接口 IProcInstSrv procInstSrv = MemberCache.getInstance().getProcInstSrv(); //调用当前用户的抄送列表 List list = procInstSrv.queryPorcInstCCByUserId(userToken.getUserId()); msg.setValue("procInstList", list);
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服