三、企业信息化系统工作流规范介绍

工作流管理系统有很多,企业信息系统都需要工作流技术实现业务流程重组与系统解耦,每个企业化系统都会用到工作流技术,或者自己实现,或者采购成型的产品。国外商业化工作流,最好的是IBM Domino note工作流,还有一些开源工作流技术OFBiz,OBE,Shark等。开发工作流产品都会参照WfMC组织定义的规范。如下是WfMC规范定义的工作流模型和工作流引擎的五个接口。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
通常企业信息化系统用到的工作流接口是
接口一:工作流模板定义接口
接口二:系统模块调用工作流的接口(创建流程,提交流程)
接口三:工作流引擎触发第三方系统的接口(工作流调用短信模块,发邮件模块)

工作流模型文档和工作流XPDL定义语言规定 在云盘

https://pan.baidu.com/s/1c1N20yG

创建工作流实例接口

startWorkflow(processName,HashMap)

提交工作流接口

submitWorkfow(instProcessId,instActivityId,instWorkitemId, HashMap)

获取某用户待办任务列表

getWorkitemList(userId)
工作流相关Jar包

开发人员常用工作流接口
1、 在第一个节点创建流程
2、 在其他节点提交流程
3、 获取某用户待办件列表,办结件列表

@Autowired
	private StatusFlowWAPI wapi;
	
    @Test
    public void testMethod()
    {
    	try
    	{
	    	String defProcessId = "testwf";//工作流模板名称
	    	String startUserId = "1";//流程实例启动用户
	    	String userId = "1";//操作工作流实例当前用户
	    	String instanceId = "order1";//业务模块ID
	    	String type = "请假单";//流程类型,通常取流程模板名称
	    	String title = "UserA的请假单";//流程实例标题
	    	String nexttask = "account";//下一办理环节
	    	String url = "/holidayapply?id="+instanceId;//业务模块应用链接
	    	HashMap hmap = new HashMap();//工作流实例相关数据
	    	hmap.put("days", 5);
	    	String flag = "gf";//区分客户标识,每一个用户分配统一的标识
	    	String testMode = "no";//是否进入测试模式
	    	//wapi.startWorkflow(defProcessId, startUserId, userId, instanceId, type, title, nexttask, url, hmap, flag, testMode);
	    	nexttask = "draft";
	    	String instProcessId = "proc5bfe5bb88e25";//流程实例ID
	    	String instActivityId = "acti5bfea9d88e25";//流程Activity实例ID
	    	String instWorkitemId=  "work5bfea9d98e25";//待办件实例ID
	    	List<String> userIdLst = new ArrayList<String>();
	    	userIdLst.add("2");//下一办理人
	    	//wapi.submitWorkflow(instProcessId, instActivityId, instWorkitemId, userIdLst, instanceId, type, title, nexttask, url, hmap, flag, testMode);
	    	
	    	//获取某用户办结件列表
	    	List lst = wapi.getFinishList("1", testMode);
	    	System.out.println("list="+lst);
	    	for(Iterator it=lst.iterator();it.hasNext();)
	    	{
	    		DefWorkItem dwi = (DefWorkItem)it.next();
	    		System.out.println("instProcessId="+dwi.getInstProcessId());
	    		System.out.println("instActivityId="+dwi.getInstActivityId());
	    		System.out.println("instWorkitem="+dwi.getId());
	    		System.out.println("title="+dwi.getTitle());
	    		System.out.println("url="+dwi.getUrl());
	    	}
	    }
    	catch(Exception e)
    	{
    		e.printStackTrace();
    	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值