美文网首页
activiti7+springboot2.1.x添加业务主键(

activiti7+springboot2.1.x添加业务主键(

作者: zhanghaolian | 来源:发表于2020-01-30 13:18 被阅读0次

我们研究工作流,实质上还是为了解决现实中的问题,工作流的执行不能与实际业务脱离关系,任何与实际业务脱离的技术都是耍流氓。

实际点的应用中我们的工作流是通过业务主键关联到我们到实际的业务,即:businessKey(业务主键)。举一个现实生活中的例子,比如说我们去即快递,包裹的流转用工作流来表示。我们把这个过程简单的抽象为以下几个步骤。

  1. 客户填写资料并提供包裹
  2. 快递站点收录包裹
  3. 运输
  4. 收货人取件
    在这这个期间若果收货人拿运单号来查询物流状态,那么这个运单号我们就可以把他当做业务主键。通过这个业务主键我们可以让工作流和其它工作流之外的业务关联起来。

在工作流中添加业务主键十分容易,只需在启动流程实例的时候,再填写一个参数:businessKey。参照之前的工作流程启动

/**
     * 启动流程实例:
     *      前提是先已经完成流程定义的部署工作
     *
     *      背后影响的表:
     *      act_hi_actinst          已完成的活动信息
     *      act_hi_identitylink     参与者信息
     *      act_hi_procinst         流程实例
     *      act_hi_taskinst         任务实例
     *      act_ru_execution        执行表
     *      act_ru_identitylink     参与者信息
     *      act_ru_task             任务表
     */
    @Override
    public void startPorcInstance() {
        //创建流程实例,通过流程定义的id
        //通过流程部署的key启动
//        runtimeService.startProcessInstanceByKey("myProcess_1");
        //通过流程部署id启动
        runtimeService.startProcessInstanceById("myProcess_1:1:2504","123456");
        List<HistoricProcessInstance> list = historyService.createHistoricProcessInstanceQuery().processDefinitionId("myProcess_1:1:2504").list();
        System.out.println(list.get(0).getBusinessKey());
    }

startProcessInstanceById方法的第二个参数就是业务主键。并且通过查看流程实例也是可以查看业务主键的。

再看一下数据库表,act_hi_procinst。 image.png

相关文章

  • activiti7+springboot2.1.x添加业务主键(

    我们研究工作流,实质上还是为了解决现实中的问题,工作流的执行不能与实际业务脱离关系,任何与实际业务脱离的技术都是耍...

  • EFCore 获取主表自增Id并多表同时插入

    业务需求:主表:采购表 主键Id为自增Int. 子表:采购明细 药品编码+ 主表自增Id 双主键。 业务逻辑:添加...

  • 分布式id

    20210825 首先介绍下代理主键和业务主键 代理主键:表中单独建个id字段作为主键 业务主键:使用有业务含义的...

  • SQL基础6:sqlserver、oracle 如何添加主键、索

    一、sqlserver 表已创建好,往表中添加主键 删除主键 二、oracle 添加主键 删除主键

  • 添加主键

    将表table_name的add_pkey字段改为主键 先删除所有主键 Alter table [table_na...

  • MYSQL--ALTER TABLE

    1、添加字段 2、添加索引 3、添加主键

  • 索引、视图

    索引 主键和UNIQUE约束字段会自动添加索引。 约束字段会自动添加索引。 因此根据主键查询效率较高。尽量根据主键...

  • 数据表修改

    添加单列 添加多列 删除列 添加主键约束 添加唯一约束 添加外键约束 添加/删除默认约束 删除主键约束 删除唯一约...

  • Elasticsearch-HttpAPI

    1.添加索引 添加索引person,类型为student,主键为1 当主键ID已存在时Elasticsearch执...

  • 动态修改字段信息

    修改字段类型、属性: 修改字段名称: 添加主键: 删除主键: 添加唯一: 删除唯一: 修改表名称:

网友评论

      本文标题:activiti7+springboot2.1.x添加业务主键(

      本文链接:https://www.haomeiwen.com/subject/cceithtx.html