基于若依的ruoyi-nbcio流程管理系统增加仿钉钉流程设计(四)

news2024/11/17 5:56:48

更多ruoyi-nbcio功能请看演示系统

gitee源代码地址

前后端代码: https://gitee.com/nbacheng/ruoyi-nbcio

演示地址:RuoYi-Nbcio后台管理系统

这里继续上面的章节,讲讲角色的选择与节点表单的选择。

1、角色的选择

加上下面选择角色的界面

<div v-else-if="approverForm.assigneeType === 'role'">
                <el-select v-model="roleIds" multiple size="mini" placeholder="请选择 角色" @change="changeSelectRoles">
                  <el-option
                    v-for="item in roleOptions"
                    :key="item.roleId"
                    :label="item.roleName"
                    :value="`ROLE${item.roleId}`"
                    :disabled="item.status === 1">
                  </el-option>
                </el-select>
              </div>

同时提供方法

changeSelectRoles(val) {
      let groups = null;
      let text = null;
      if (val && val.length > 0) {
        groups = val.join() || null;
        let textArr = this.roleOptions.filter(k => val.indexOf(`ROLE${k.roleId}`) >= 0);
        text = textArr?.map(k => k.roleName).join() || null;
      } else {
        //userTaskForm.dataType = null;
        //this.multiLoopType = 'Null';
      }
      //userTaskForm.candidateGroups = groups;
      this.selectedUser.text = text;
      this.approverForm.text = text;
      this.orgCollection.role = text;
      
    },

初始化表单修改如下:

   /**
     * 初始化审批节点所需数据
     */
    initApproverNodeData() {
      for (const key in this.approverForm) {
        if (this.value.properties.hasOwnProperty(key)) {
          this.approverForm[key] = this.value.properties[key];
        }
      }
      console.log("initApproverNodeData this.approverForm",this.approverForm)
      const approvers = this.approverForm.approvers
      this.resetOrgColl()
      if (Array.isArray(this.approverForm.approvers)) {
        this.orgCollection[this.approverForm.assigneeType] = approvers
      }
      else if(this.approverForm.assigneeType === 'role'){    
        this.orgCollection[this.approverForm.assigneeType] = approvers
      }
      this.approverForm.formOperates = this.initFormOperates(this.value)
    },

2、表单的选择

     界面代码如下:

<el-tab-pane label="表单选择" name="formSelect">
           <el-form size="mini" label-width="90px" @submit.native.prevent>
             <el-form-item label="表单" prop="formKey">
               <el-select v-model="formKey" placeholder="请选择表单" @change="updateFormKey" clearable>
                 <el-option v-for="item in formOptions" :key="item.formId" :label="item.formName" :value="`key_${item.formId}`" />
               </el-select>
             </el-form-item>
             <el-form-item prop="localScope">
               <span slot="label">
                 <el-tooltip content="若为节点表单,则表单信息仅在此节点可用,默认为全局表单,表单信息在整个流程实例中可用" placement="top-start">
                   <i class="header-icon el-icon-info"></i>
                 </el-tooltip>
                 <span>节点表单</span>
               </span>
               <el-switch :disabled="value.type === 'start'" v-model="localScope" active-text="是" inactive-text="否" @change="updateFormScope()" />
             </el-form-item>
           </el-form>
        </el-tab-pane>

相应的方法如下,后续还需要完善

/** 查询表单列表 */
    getFormList() {
      listForm().then(response => this.formOptions = response.rows)
    },
    updateFormKey() {

    },
    updateFormScope() {

    },

3、效果图如下:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1156070.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

低级语言汇编真的各个面不如汇编吗?

今日话题&#xff0c;低级语言汇编真的各个面不如C语言吗&#xff1f;C语言因其可移植性、开发效率和可读性而在各领域广泛使用&#xff0c;市场占有率极高。然而&#xff0c;汇编语言在特定场景下仍然具有独特优势&#xff0c;稳固地占据一席之地。如果你对这方面感兴趣&#…

使用轻量应用服务器搭建在线写作利器StackEdit

使用轻量应用服务器搭建在线写作利器StackEdit 前言 我经常会分享自己的一些搭建记录&#xff0c;所以我需要一个比较顺手的&#xff0c;Markdown编辑器。最开始我选择使用了CodiMD&#xff0c;但是我慢慢发现&#xff0c;我有一些快速功能CodiMD无法实现&#xff0c;我就转而…

Nginx热升级的完整流程

热升级的完整流程如下&#xff1a; 1.将旧的Nginx二进制文件换成新的Nginx二进制文件&#xff0c;注意需要把旧的Nginx二进制备份好。 2.向master进程发送USR2信号。 3.master进程修改pid文件&#xff0c;加.oldbin后缀。 4.master进程用新的nginx文件启动新的master进程。 5.向…

shell编程基础(第15篇:文件操作相关命令)

前言 计算机磁盘中存储的是文件&#xff08;目录也算文件的一种&#xff09;&#xff0c;常见的文件操作命令有cd、ls、mkdir、rm、等等涉及到文件的增删改查&#xff0c;今天一起学习常见的文件操作命令&#xff0c;come on baby&#xff01; cd change directory的首字母缩写…

php收发邮件的多种方法?

1、添加扩展&#xff1a; # 第一种&#xff1a; composer require php-imap/php-imap # 第二种&#xff1a; composer require phpmailer/phpmailer2、这里采用第二种方式&#xff1a; <?php declare(strict_types1);namespace App\Controller\v1\email;use App\Controll…

Java中String的split函数的详解及应用

文章目录 一、 split函数详解二、应用 一、 split函数详解 split(String regex)为java.lang.String类的方法&#xff0c;其功能通俗的说就是以传入的分隔符参数拆分该字符串 方法具体为&#xff1a; public String[] split(String regex) {return split(regex, 0); }方法内部…

pycharm怎么运行python代码

创建项目 在PyCharm中&#xff0c;你可以创建一个项目来组织和管理你的Python代码。项目是一个存放代码文件的文件夹&#xff0c;它可以包含多个模块和包。 启动PyCharm后&#xff0c;选择“Create New Project”来创建一个新项目。 在弹出的对话框中&#xff0c;选择项目的位…

作品展示-

------------校二手交易平台---------- ---------植物大战僵尸修改器------------- -------------商品进销存系统------------- --------汽车车牌号码识别系统----------- ------------示波器---------------- ---------激光数据传输仪------------ -----------32*64双色点阵屏…

听GPT 讲Rust源代码--library/std(9)

题图来自 Rust 101 — Everything you need to know about Rust[1] File: rust/library/std/src/sys/wasi/io.rs 在Rust源代码中&#xff0c;rust/library/std/src/sys/wasi/io.rs文件的作用是实现了与WASI&#xff08;WebAssembly System Interface&#xff09;IO相关的功能。…

Leetcode2086. 从房屋收集雨水需要的最少水桶数

Every day a Leetcode 题目来源&#xff1a;2086. 从房屋收集雨水需要的最少水桶数 解法1&#xff1a;贪心 我们可以对字符串 hamsters 从左到右进行一次遍历。 每当我们遍历到一个房屋时&#xff0c;我们可以有如下的选择&#xff1a; 如果房屋的两侧已经有水桶&#xff…

行业追踪,2023-10-31

自动复盘 2023-10-31 凡所有相&#xff0c;皆是虚妄。若见诸相非相&#xff0c;即见如来。 k 线图是最好的老师&#xff0c;每天持续发布板块的rps排名&#xff0c;追踪板块&#xff0c;板块来开仓&#xff0c;板块去清仓&#xff0c;丢弃自以为是的想法&#xff0c;板块去留让…

Linux0.11内核源码解析-exec.c

主要实现对二进制可执行文件和shell文件的加载和执行&#xff0c;其中主要的函数是do_execve(),它是系统中断调用int 0x80的功能号__NR_execve()调用&#xff0c;是exec()函数的主要实现以下几点功能&#xff1a; 1.执行对参数和环境参数空间页面的初始化操作&#xff0c;初始…

2023年09月 Python(二级)真题解析#中国电子学会#全国青少年软件编程等级考试

Python等级考试&#xff08;1~6级&#xff09;全部真题・点这里 一、单选题&#xff08;共25题&#xff0c;每题2分&#xff0c;共50分&#xff09; 第1题 yyh[2023,杭州亚运会,[拱宸桥,玉琮莲叶]] jxwyyh[2][0] print(jxw[1]*2)以上代码运行结果是&#xff1f;&#xff08; …

[已解决]ERROR tool.ExportTool: Error during export: Export job failed!

ERROR tool.ExportTool: Error during export: Export job failed! 问题 sqoop导出数据的时候遇到问题&#xff0c;ERROR tool.ExportTool: Error during export: Export job failed 思路 sqoop的shell命令是这样的 sqoop export –connect jdbc:mysql://cdh00:3306/airq…

JDK常用性能监控和故障处理工具

JDK8 在JDK安装目录下的bin文件夹&#xff0c;有一些辅助命令行工具&#xff0c;通常用来获取JVM的信息或者监控JVM&#xff0c;在排查性能问题方面是非常好用的工具。以Centos7.9系统下的openJDK1.8.0_222为例&#xff08;不同大版本的JDK命令的参数会有差异&#xff0c;不同操…

利用python进行数据分析 pdf

利用python进行数据分析 pdf 介绍 在现代社会中&#xff0c;随着大数据时代的到来&#xff0c;数据分析的需求越来越大。而Python作为一门简洁且易于学习的编程语言&#xff0c;具有强大的数据分析能力&#xff0c;成为了广大数据分析师的首选工具之一。本文将指导一位刚入行的…

相关性网络图 | 热图中添加显著性

一边学习&#xff0c;一边总结&#xff0c;一边分享&#xff01; 本期教程 写在前面 此图是一位同学看到后&#xff0c;想出的一期教程。 最近&#xff0c;自己的事情比较多&#xff0c;会无暇顾及社群和公众号教程。 1 安装和加载相关的R包 library(ggraph) library(tidy…

追求卓越 再添新荣誉 | Softing中国顺利通过ISO9001质量管理体系认证!

近日&#xff0c;羧福汀电子科技&#xff08;上海&#xff09;有限公司&#xff08;简称&#xff1a;Softing中国&#xff09;顺利通过ISO9001质量管理体系认证审核&#xff0c;并被授予认证证书。ISO9001认证的通过&#xff0c;代表Softing中国的软硬件技术研发水平及管理水平…

压敏涂料静态校准装置中的温度、真空压力和氧浓度精密控制解决方案

摘要&#xff1a;针对客户提出的在温度-10℃~80℃、绝对压力1Pa~600kPa、氧浓度0~80%范围内实现对压力敏感涂料静态特性校准测试腔室的精密自动控制要求&#xff0c;本文提出了相应的解决方案。解决方案的主要技术内容是采用TEC半导体制冷器进行温度控制、采用动态平衡法和电控…

C# Onnx 用于边缘检测的轻量级密集卷积神经网络LDC

效果 项目 代码 using Microsoft.ML.OnnxRuntime; using Microsoft.ML.OnnxRuntime.Tensors; using OpenCvSharp; using System; using System.Collections.Generic; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms;namespace Onnx…