• 02Activity


    每一个请假的成员都会产生一个流程实例的

     

    流程变量

    请假申请没有执行人,不能写固定的名字比如说张三,这样的话只能是张三一个人请假了

     

     

    在act-ru-variable存在记录

     

    还有act-hi-varinst表存在记录

     

    0220

    流程变量不是用来解决业务中的数据问题

    Activity的表和系统设计的表是没有关联的,如果需要关联的话要通过业务逻辑建进行关联

     

     

    把对象进行实例化存入到activity的表

     

    获取对象变量

     

    给任务赋值;任务的执行人,任务的执行人不是固定的,是一个变量来的

                                                                                  

    审批人不能定死,不然就只能由这一个人才能审批,如果这个人不在或者请假了

    创建一个请假流程

    Start和end为event组件,连接箭头是connect组件,申请请假这些是task组件

    使用占位符为assignee赋值

     

    例如申请请假为applicator,在main config里面设置

     

     

     

     

     

     

    第二种方法,在进入该节点之后才能确定节点的执行者是谁,不推荐这种方法有存在弊端,原因是监听器是由activity框架来调用的,不能在spring里面配置

     


    在任务节点有一个listener任务监听
    在任务节点有一个listener任务监听

    在任务节点有一个listener任务监听

    创建一个listener的类

     

    点击new按钮创建一个事件

     

    点击select class按钮选择创建的class类

     

    04 05

     

    完成任务,有点复杂。会去调用这个监听器,给所在的任务赋值

     

     组任务;

     

    设置执行人,暂时没有用变量

     

    启动流程实例,但是在act-run-task表里面的assignee字段还是为null

     

    但是在act-ru-identitylink表里面出现了工程师1,工程师2,工程师3而且出现了两次

     

    0510

     

    组成员认领任务,因为不能对任务进行固定的执行人,所以在同一个组内的成员都可以认领这个任务

     

    在act-ru-task表就会存在记录了

     

    完成任务,候选人就不会再act-ru-identitylink这个表存在记录了

     

    上面的组候选成员是写死在属性里的,要实现动态配置成员,以后这些都是从数据库获取

    不会直接写成张三和王五

     

    在act-ru-identitylink表就会存在记录

     

    添加组

    Process.getidentityservice().deletegroup这行代码是删除组

     

    在act-id-group表里面存在

     

    0510

    在组里面添加成员

     

    在act-id-group里面就有组的id和名称

     

    在act-id-membership表里面存在组员与groupid的关系

     

    把一个组赋值给任务作为候选人,这个任务的执行人就可以从组的成员里面选,任何一个成员都可以是这个任务的执行人

     

    可以通过这两种方法添加组任务

     

    泳道就是同一个执行人可以执行多个任务,这多个任务就可以组成一个泳道

    A就是一个泳道,他的执行人是aaa可以执行task1和task2多个任务,任务赋值泳道就可以了

     

    容器组件

    连线sequenceflow

     

    To总经理审批这个箭头的属性设置${day>3},也就是请假的天数大于三天就需要总经理审批,否则部门经理审批就可以结束流程了

    To结束箭头的属性就设置为${day> 1 && day<=3}就可以了

     

    打回去的设置等于1就可以了${day==3}

     

    部署流程,流程可以部署多次

     

    启动流程实例,可以有多个每一个请假的人都有一个实例

     

    完成任务

     

    这个day<3这种方式不太好,因为3是写死的要用变量的配置方法,${day>=person.day}

     

     

    找出流程节点,这个节点要去的下一个节点,能够动态的知道这个节点要去哪

    Activityimpl就是查询的那个节点

    Transition就是流程的箭头sequenceflow

     

    结果

     

    一般的节点都需要有执行人审核之后才能完成,但是有些节点是不需要审核的

    Receivetask是不需要审核的

     

    部署流程

     

    启动流程实例

     

    Receivetask只在act-ru-execution表里面

     

    传入流程实例id

     

  • 相关阅读:
    Java学习——字符串
    Java学习——字符串
    【费马小定理+快速幂取模】ACM-ICPC 2018 焦作赛区网络预赛 G. Give Candies
    【费马小定理+快速幂取模】ACM-ICPC 2018 焦作赛区网络预赛 G. Give Candies
    Java学习——Eclipse下载,java配置,新建,输入输出
    Java学习——Eclipse下载,java配置,新建,输入输出
    python使用scikit-learn计算TF-IDF
    scanf,printf函数细节
    UVA 4855 Hyper Box
    poj 2001 Shortest Prefixes(字典树)
  • 原文地址:https://www.cnblogs.com/handsome1013/p/10007802.html
Copyright © 2020-2023  润新知