修正flowable的发起流程中根据用户信息流转不同的流程

简介: 修正flowable的发起流程中根据用户信息流转不同的流程

根据用户反馈,下面流程流转出现问题

后来根据代码,下面需要修正==的逻辑判断

/**
     * 校验el表达示例
     *
     * @param map
     * @param expression
     * @return
     */
    public static Object result(Map<String, Object> map, String expression) {
      Object result = null; 
      try {
          FelEngine fel = new FelEngineImpl();
          FelContext ctx = fel.getContext();
          for (Map.Entry<String, Object> entry : map.entrySet()) {
              ctx.set(entry.getKey(), entry.getValue());
              System.out.print(entry.getKey() + "-"+ entry.getValue());
          }
          String exp = "";
          if (expression.indexOf("<") >0) {
            exp = expression.substring(0, expression.indexOf("<"));
          }
          else if (expression.indexOf(">") >0) {
            int index =expression.indexOf(">");
            exp = expression.substring(0, index);
          }
          else if (expression.indexOf("==") >0) {
            exp = expression.substring(0, expression.indexOf("=="));
          }
          exp =expression.replace(exp, ctx.get(exp).toString());
          result = fel.eval(exp);
          //result = fel.eval(expression);
    } catch (Exception e) {
      result = null;  
    }
       return result;
    }

同时在判断网关的地方需要判断一下逻辑

usermap =  GetExclusiveGatewayUser(targetFlowElement,variables);//还是需要返回用户与是否并发,因为并发要做特殊处理
             if(usermap != null) {
             userlist = (ArrayList<String>) usermap.get("approval");
               variablesnew.put("approval", userlist);
             }

同时对于这种条件的逻辑写好要正确

如下:

表达式要注意 ${fd_1662433136523=='zhang'}

最后效果如下:

 

相关文章
|
存储 XML Java
Flowable工作流-高级篇
Flowable工作流-高级篇
5526 0
flowable 启动流程的三种方式
flowable 启动流程的三种方式
416 0
|
XML 存储 JavaScript
Flowable学习笔记(二、BPMN 2.0-基础 )
Flowable学习笔记(二、BPMN 2.0-基础 )
3724 0
Flowable学习笔记(二、BPMN 2.0-基础 )
|
移动开发 前端开发
基于jeecg-boot的flowable流程审批时增加下一个审批人设置
基于jeecg-boot的flowable流程审批时增加下一个审批人设置
1109 0
|
9天前
|
人工智能 缓存 安全
阿里云发布《AI 原生应用架构白皮书》
阿里云联合阿里巴巴爱橙科技,共同发布《AI 原生应用架构白皮书》,围绕 AI 原生应用的 DevOps 全生命周期,从架构设计、技术选型、工程实践到运维优化,对概念和重难点进行系统的拆解,并尝试提供一些解题思路。白皮书覆盖 AI 原生应用的 11 大关键要素,获得 15 位业界专家联名推荐,来自 40 多位一线工程师实践心的,全书合计超 20w 字,分为 11 章。
|
前端开发
基于jeecgboot的flowable流程支持退回到发起人节点表单修改功能
基于jeecgboot的flowable流程支持退回到发起人节点表单修改功能
1066 0
|
前端开发
基于jeecg-boot的flowable流程自定义业务驳回到发起人的一种处理方式
基于jeecg-boot的flowable流程自定义业务驳回到发起人的一种处理方式
632 0
基于jeecgboot的flowable流程按照条件进行流转的例子
基于jeecgboot的flowable流程按照条件进行流转的例子
403 1
|
前端开发 数据库 JavaScript
基于Flowable的流程挂接自定义业务表单的设计与实践
文章讨论了如何在Flowable流程引擎中挂接自定义业务表单,以及相关设计和实践的步骤。文章中包含了一些前后端代码示例,如Vue组件的模板和脚本部分,这些代码用于实现与Flowable流程引擎交互的界面。例如,有一个按钮组件用于提交申请,点击后会触发applySubmit方法,该方法会与后端API进行交互,处理流程启动、查询关联流程等逻辑。
52817 11
|
Java 数据库连接 mybatis
flowable项目启动项目报错:Consider defining a bean of type ‘org.mybatis.spring.SqlSessionTemplate‘ in ……
flowable项目启动项目报错:Consider defining a bean of type ‘org.mybatis.spring.SqlSessionTemplate‘ in ……
504 0