基于jeecgboot的flowable增加流程节点抄送功能

简介: 基于jeecgboot的flowable增加流程节点抄送功能

1、后端

主要增加flow_cc一个表

增加相应的这个表模块功能

@GetMapping(value = "/list")
    public Result<?> queryPageList(FlowCc flowCc,
                                   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
                                   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
                                   HttpServletRequest req) {
        QueryWrapper<FlowCc> queryWrapper = QueryGenerator.initQueryWrapper(flowCc, req.getParameterMap());
        
        queryWrapper.eq("username", iFlowThirdService.getLoginUser().getUsername());
        Page<FlowCc> page = new Page<FlowCc>(pageNo, pageSize);
        IPage<FlowCc> pageList = flowCcService.page(page, queryWrapper);
        return Result.OK(pageList);
    }

这里主要修改了增加条件,只显示自己的数据

增加流程抄送类功能

@Override
    public Boolean flowCc(FlowTaskVo taskVo) {
        if (StringUtils.isEmpty(taskVo.getCcUsers())) {
            // 若抄送用户为空,则不需要处理,返回成功
            return true;
        }
        HistoricProcessInstance historicProcessInstance = historyService.createHistoricProcessInstanceQuery()
            .processInstanceId(taskVo.getInstanceId()).singleResult();
        String[] usernames = taskVo.getCcUsers().split(",");
        List<FlowCc> flowCcList = new ArrayList<>();
        String initiatorUsername = iFlowThirdService.getLoginUser().getUsername();
        String initiatorRealname = iFlowThirdService.getLoginUser().getRealname();
        String title = historicProcessInstance.getProcessDefinitionName();
        for (String username : usernames) {
            FlowCc flowCc = new FlowCc();
            flowCc.setTitle(title);
            flowCc.setFlowId(historicProcessInstance.getProcessDefinitionId());
            flowCc.setFlowName(historicProcessInstance.getProcessDefinitionName());
            flowCc.setDeploymentId(historicProcessInstance.getDeploymentId());
            flowCc.setInstanceId(taskVo.getInstanceId());
            flowCc.setTaskId(taskVo.getTaskId());
            flowCc.setBusinessKey(taskVo.getBusinessKey());
            flowCc.setUsername(username);
            flowCc.setInitiatorUsername(initiatorUsername);
            flowCc.setInitiatorRealname(initiatorRealname);
            flowCcList.add(flowCc);
        }
        return insertBatch(flowCcList);
    }
    /**
     * 批量插入(包含限制条数,目前现在100条)
    */
    @Override
    public boolean insertBatch(List<FlowCc> flowCcList) {
        String sqlStatement = SqlHelper.getSqlStatement(this.currentMapperClass(), SqlMethod.INSERT_ONE);
        return SqlHelper.executeBatch(this.currentModelClass(), log, flowCcList, 100,
                (sqlSession, entity) -> sqlSession.insert(sqlStatement, entity));
    }

2、前端

通过代码自动生成,拷贝进去,就是详情修改一下如下

/** 流程流转记录 */
      handleFlowRecord(row){
        console.log("handleFlowRecord row=",row);
        this.$router.push({ path: '/flowable/task/record/index',
          query: {
            procInsId: row.instanceId,
            deployId: row.deploymentId,
            taskId: row.taskId,
            businessKey: row.businessKey,
            finished: false
        }})
      },

选择抄送人增加一下

<el-form-item label="选择抄送人" prop="ccUsers">
          <j-select-user-by-dep v-model="taskForm.ccUsers" />
        </el-form-item>

3、效果如下:

 

相关文章
|
7月前
基于若依ruoyi-nbcio支持flowable流程角色,同时修改流转用户为username,流程启动做大调整(一)
基于若依ruoyi-nbcio支持flowable流程角色,同时修改流转用户为username,流程启动做大调整(一)
338 1
|
7月前
基于若依ruoyi-nbcio支持flowable流程角色,同时修改流转用户为username,流程启动做大调整(三)
基于若依ruoyi-nbcio支持flowable流程角色,同时修改流转用户为username,流程启动做大调整(三)
329 1
|
7月前
|
前端开发
基于jeecgboot的flowable流程支持退回到发起人节点表单修改功能
基于jeecgboot的flowable流程支持退回到发起人节点表单修改功能
642 0
|
7月前
基于若依ruoyi-nbcio支持flowable流程角色,同时修改流转用户为username,流程启动做大调整(二)
基于若依ruoyi-nbcio支持flowable流程角色,同时修改流转用户为username,流程启动做大调整(二)
175 0
|
6月前
|
前端开发 数据库 JavaScript
基于Flowable的流程挂接自定义业务表单的设计与实践
文章讨论了如何在Flowable流程引擎中挂接自定义业务表单,以及相关设计和实践的步骤。文章中包含了一些前后端代码示例,如Vue组件的模板和脚本部分,这些代码用于实现与Flowable流程引擎交互的界面。例如,有一个按钮组件用于提交申请,点击后会触发applySubmit方法,该方法会与后端API进行交互,处理流程启动、查询关联流程等逻辑。
49742 11
|
7月前
|
前端开发
基于jeecgboot的flowable流程增加节点自动跳过功能
基于jeecgboot的flowable流程增加节点自动跳过功能
511 2
|
7月前
|
前端开发
基于jeecgboot的flowable流程增加节点表单的支持(四)
基于jeecgboot的flowable流程增加节点表单的支持(四)
84 1
|
7月前
基于jeecgboot的flowable流程增加节点表单的支持(三)
基于jeecgboot的flowable流程增加节点表单的支持(三)
155 1
|
7月前
|
搜索推荐
基于jeecgboot的flowabale流程节点动态设置审批人的实现
基于jeecgboot的flowabale流程节点动态设置审批人的实现
649 1
|
7月前
|
移动开发 前端开发
flowable流程跳转或退回到网关上的用户节点后流程走不下去了
flowable流程跳转或退回到网关上的用户节点后流程走不下去了
408 2