activiti

###工作流

####创建流程引擎
1.基于默认的配置文件创建一个流程引擎:

ProcessEngine processEngine = ProcessEngineConfiguration
.createProcessEngineConfigurationFromResourceDefault()
.buildProcessEngine();

2.在缺少配置文件创建一个流程引擎

ProcessEngine processEngine = ProcessEngineConfiguration
  .createStandaloneProcessEngineConfiguration()
  .buildProcessEngine();

3.获取一个默认的流程引擎

ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine()

####部署流程定义文件
Deployment deloyment = processEngine.getRepositoryService()
.createDeployment() //创建一个部署对象
.name(“流程名称”)
.addClasspathResource(".bpmn") //加载配置
.deploy(); //完成部署

校验是否部署成功    deloyment.getId();
				deloyment.getName();

开启一个流程process 流程Id
开启一个实例 task
##部署流程 process

##4启动运行流程
###第一步 开启实例
process 流程名 x
riskcode 险种编码 y
map 备注
startProcessInstanceByKey(processId,riskcode,map)

ProcessEngine processEngine;    //流程引擎

RuntimeService runtimeService = processEngine.getRuntimeService();
TaskService taskService  =  processEngine.getTaskService();

ProcessInstance processInstance = runtimeService.startProcessInstanceByKey(process, business, menuGroup1);  //开启实例

##处理流程任务
###第二步 进行扭转
开始扭转 从定义到审核,审核通过需要网关传递变量进行确定结束任务。
TaskService taskService = procssEngine.getTaskService(); //获取到实例
TaskService taskService =taskService.createTaskQuery() //创建任务查询
.taskName(“节点”) //查询节点
.processInstanceBusinessKey(businessId) //产品业务Id
.singleResult(); //返回单个结果
目的: 获取到taskId

taskService.claim(taskId,assignent);   //进行任务分配
taskService.complete(taskId);    //结束这个节点

##第三步 审核
同第二步一样,首先获取实例,查询节点,
通过网关需要定义变量的值
map.put(“网关变量”,“true”);
processEngine.getTaskService.complete(taskId,map);

###关联的数据库表名
lpf_m_lmRiskApp_m:险种定义表riskcode

ACT_RU_EXECUTION:运行时流程执行实例表  	BUSINESS_KEY_(业务编码)  	ID_
PROC_INST_ID_  流程实例编号

ACT_RU_TASK: 运行时任务表                   EXECUTION_ID_ (执行实例Id)  NAME_(变量名称)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值