资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

会签2:会签的主要后台JAVA代码-创新互联

指定会签任务,流转到任务节点会自动生成若干个会签任务,我们需要在任务完成前设置一些流程变量传递过去让流程判断自己何时结束,传递参数的主要后台JAVA代码:

创新互联"三网合一"的企业建站思路。企业可建设拥有电脑版、微信版、手机版的企业网站。实现跨屏营销,产品发布一步更新,电脑网络+移动网络一网打尽,满足企业的营销需求!创新互联具备承接各种类型的成都网站设计、成都网站建设项目的能力。经过十载的努力的开拓,为不同行业的企事业单位提供了优质的服务,并获得了客户的一致好评。
//判断是否是会签任务
        BpmnModel bpmnModel = repositoryService.getBpmnModel(task.getProcessDefinitionId());
        CollectionflowElements =bpmnModel.getMainProcess().getFlowElements();
        String sequentialType="notEnabled",taskRate="50";

        for(FlowElement e : flowElements) {
            if(e.getId().equals(task.getTaskDefinitionKey())){
                if(e.getAttributes().containsKey("sequentialType")) {
                    sequentialType = e.getAttributes().get("sequentialType").get(0).getValue();
                }
                if(e.getAttributes().containsKey("taskRate")){
                    taskRate=(String)e.getAttributes().get("taskRate").get(0).getValue();
                }
            }
        }

        //会签节点设置
        if(StringUtils.equals(sequentialType,"notEnabled")){
            //不是会签节点
            map.values().removeIf(key ->key == "taskRate");
            map.values().removeIf(key ->key == "nrOfAgreeInstances");
        }else{
            //会签设置
            map.put("taskRate",taskRate);
            //通过数
            int nrOfAgreeInstances=0;
            if(runtimeService.getVariable(task.getProcessInstanceId(),"nrOfAgreeInstances")!=null){
                String agreeCount=String.valueOf(runtimeService.getVariable(task.getProcessInstanceId(),"nrOfAgreeInstances"));
                if(StringUtils.isNotEmpty(agreeCount)){
                    nrOfAgreeInstances=Integer.valueOf(agreeCount);
                }
            }
            if(StringUtils.equals((String)map.get("taskResult"),"agree")){
                nrOfAgreeInstances++;
            }
            map.put("nrOfAgreeInstances",nrOfAgreeInstances);

            runtimeService.setVariable(task.getProcessInstanceId(),"nrOfAgreeInstances",nrOfAgreeInstances);
        }

计算投票通过的人数,取出任务完成率(通过率)的阈值传递到流程里面,然后完成任务。

taskService.setVariablesLocal(task.getId(), map);
taskService.complete(taskId, map);

设计器这样的,然后看下完成的截图,大概长这样。

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


本文标题:会签2:会签的主要后台JAVA代码-创新互联
网页路径:http://cdkjz.cn/article/ihidi.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220