Activity 工作流引擎[通俗易懂]

Activity 工作流引擎[通俗易懂]Activiti工作流引擎使用详解http://blog.csdn.net/m0_37327416/article/details/71743368Activity用户手册http://www.mossle.com/docs/activiti/index.html#demo.setup.one.minute.version学习视频https://item.taobao

大家好,又见面了,我是你们的朋友全栈君。

Activiti工作流引擎使用详解 http://blog.csdn.net/m0_37327416/article/details/71743368

Activity用户手册 http://www.mossle.com/docs/activiti/index.html#demo.setup.one.minute.version

学习视频 https://item.taobao.com/item.htm?id=545220457066

简单了解Activity流程图 https://www.cnblogs.com/hellowood23/p/5437909.html

Activity各表详解 http://blog.csdn.net/hj7jay/article/details/51302829

Activity-api https://www.activiti.org/userguide/#_rest_api

Activity与web项目结合 https://www.cnblogs.com/xiaochangwei/p/5443173.html

Activity集成diagram-viewer页面展示流程跟踪图 http://blog.csdn.net/hj7jay/article/details/50781083

咖啡兔主站 http://www.kafeitu.me/

自己的小例子

结合业务开启流程:

    @Transactional(readOnly = false)
    public void save(OaInstallTask oaInstallTask) {
        //生成(保存)安装单
        super.save(oaInstallTask);
        //#################这里开始写activity开启流程####################
        //设置流程变量
        Map<String, Object> variables = Maps.newHashMap();
        variables.put("pass", "0");//控制流程线的走向(流程方向线中的属性:流条件->${pass==0})
        variables.put("oaInstallTaskId", oaInstallTask.getId());
        variables.put("oaInstallTask.CreateBy", oaInstallTask.getCreateBy().getName());
        variables.put("oaInstallTask.CreateDate", oaInstallTask.getCreateDate());
        //记录流程发起人
        identityService.setAuthenticatedUserId(UserUtils.getUser().getLoginName());
        //开启流程
        String processDefinitionKey = ActUtils.PD_INSTALL_TASK[0];
        String businessKey = ActUtils.PD_INSTALL_TASK[1]+":"+oaInstallTask.getId();
        ProcessInstance procIns = runtimeService.startProcessInstanceByKey(processDefinitionKey, businessKey, variables);
        //#################这里写完写activity开启流程####################
        //保存到安装单里
        oaInstallTask.setProcInsId(procIns.getProcessInstanceId());
        //更新(保存)安装单
        super.save(oaInstallTask);
    }

用户任务中的执行监听器

package com.thinkgem.jeesite.modules.oainstalltask.service;

import org.activiti.engine.delegate.DelegateExecution;
import org.activiti.engine.delegate.ExecutionListener;

public class AssingeeGroup implements ExecutionListener { 
   

    private static final long serialVersionUID = 1L;

    @Override
    public void notify(DelegateExecution execution) throws Exception {
        System.out.println("getCurrentActivityId:"+execution.getCurrentActivityId());
        execution.setVariable("userGroup", "repair");//角色英文名,分配用户里的候选用户组(${userGroup})
    }

}

流程图
这里写图片描述
箭头方向位置是一个执行监听器,在这里配置用户任务中的执行监听器

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/135333.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Java安全之Fastjson内网利用

    Java安全之Fastjson内网利用0x00前言在打Fastjson的时候,基本上都是使用JNDI注入的方式去打,也就是JdbcRowSetImpl链分析的链去打,但是遇到一些不出网的情况

    2021年12月13日
    116
  • Ajax练手小案例

    Ajax练手小案例一、Ajax介绍1、Ajax不是一项具体的技术,而是几门技术的综合应用。Javascript、XHTML和CSS、DOM、XML和XMLHttpRequest。2、Ajax核心只不过是要在javascript中调用一个叫XMLHttpRequest类,这个类可以与Web服务器使用HTTP协议进行交互,程序不通过浏览器发出请求,而是用这个特殊的JavaScript对象发送请求和接收…

    2022年6月13日
    19
  • 一看就懂:正则表达式[通俗易懂]

    一看就懂:正则表达式[通俗易懂]案例引入在讲正则表达式前,我们不妨先从一个场景来逐渐引入。你可能有过这样的经历:我们去某些网站注册帐号,当你在设置密码的时候,网站会提示你密码的长度范围,以及对应的规则限制(如下图)。根据上图,我们将密码设置规则可以描述为两个条件:(1)长度为6-16位;(2)密码中必须包含数字,大写字母,小写字母,特殊字符(指定字符);现在假设我们不知道正则表达式,作为程序员的你,该如何去实现这样一个密码验证呢?下面是我写的一个校验方法(样本):/***校验用户密码是否满足..

    2022年5月13日
    57
  • 2021十大国际黄金交易APP平台排名一览

    2021十大国际黄金交易APP平台排名一览国际黄金交易作为一个国际投资产品在投资市场中成功接棒。作为当下热门的投资,经常有投资者询问小编国际黄金交易盈利技巧在于哪里,其实国际黄金交易比较简单,找到一个正规合适的平台就是盈利的关键。如今已是移动互联网时代,各类APP层出不穷,也有不少浑水摸鱼之辈。国际黄金市场波动大,需要一个稳定的平台来承受变化莫测的黄金市场,才方便投资者做出相对应的操作,那么国际黄金交易APP怎么选呢?下面让小编给大家介绍“2021十大国际黄金交易APP平台排名一览”,仅供大家参考。1、金荣中国APP金荣中国属金银业贸易场A

    2022年6月16日
    40
  • 正交矩阵的模_正交矩阵的向量组

    正交矩阵的模_正交矩阵的向量组本节主要讲解正交(orthogonal)概念对于向量、基和子空间的意义。1.正交向量Orthogonalvectors2.正交子空间Orthogonalsubspaces3.零空间与行空间正交Nullspaceisperpendiculartorowspace4.矩阵A^TA

    2025年8月23日
    2
  • 一点ASMM总结

    一点ASMM总结Oracle的SGA内存结构:BufferCache数据库高速缓存DefaultPool默认的缓冲池,大小由DB_CACHE_SIZE决定KeepPool…

    2022年6月6日
    41

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号