antdesign vue 步骤条a-step按审核人员节点排序显示逻辑
一、需求内容
目前审核人员角色有:学术、法务、售后,串行执行审核流程。
审核流程:发起/修改审核-》审核节点
审核节点规则:学术-》法务-》售后,每个节点均可以审核或修改。
审核状态:发起、修改、待审核、已审核。
因此前端根据节点规则来展示审核步骤给用户。
二、开发思路
1.根据节点规则,自定义一个字段存储审核节点类型:nodeType:1-8
2.区分审核节点是一组还是多组,
例如:一组审核时['发起审核','学术待审核','法务待审核','售后待审核'] ;
而多组审核则是8个状态都会出现,例如:['发起审核','学术已审核','法务已审核','售后已审核','修改审核','学术已审核','法务待审核','售后待审核',...]等此循环出现;
3.多组审核数据需要按照'审核节点规则'重新排序,用sort()重新生产结果数组。
4. 根据生成结果数组result,设置当前步骤值current。
三、项目运用代码(不分)
function auditCheckClick(result){
if(result && result.length){
let len = result.length
result.map((item,index)=>{
if(item.auditType==1){ item.nodeType=6}
else if(item.auditType==2){ item.nodeType=7}
else if(item.auditType==3){ item.nodeType=8}
else if(item.auditType==4){ item.nodeType=2}
else if(item.auditType==5){ item.nodeType=3}
else if(item.auditType==6){ item.nodeType=4}
else if(item.auditType==7||item.auditType==8){ item.nodeType=1}
if(item.auditType==8){item.nodeIndex=index}
return item
})
console.log(1,result)
if(len<=4){ // 一组审核
result.sort((r1,r2)=>{
return r1.nodeType - r2.nodeType
})
}else{ // 多组审核
let lastArr = result.filter(el=>el.nodeIndex)
let lastIndex= lastArr&&lastArr.length?lastArr[lastArr.length-1].nodeIndex:0
let hisSort = result.slice(0,lastIndex)
let sortArr = result.slice(lastIndex)
sortArr.sort((r1,r2)=>{return r1.nodeType - r2.nodeType})
result = hisSort.concat(sortArr)
console.log(2, lastArr,lastIndex)
console.log(3, hisSort,sortArr)
console.log(4, result)
}
}
// result 结果数组
antdesign vue 步骤条a-step按审核人员节点排序显示逻辑的更多相关文章
- C#开发step步骤条控件
现在很多的javascript控件,非常的不错,其中step就是一个,如下图所示: 那么如何用C#来实现一个step控件呢? 先定义一个StepEntity类来存储步骤条节点的信息: public c ...
- WPF教程002 - 实现Step步骤条控件
原文:WPF教程002 - 实现Step步骤条控件 在网上看到这么一个效果,刚好在用WPF做控件,就想着用WPF来实现一下 1.实现原理 1.1.该控件分为2个模块,类似ComboBox控件分为Ste ...
- Vue项目中实现tab栏和步骤条的数据联动
也就是tab栏切换步骤条随之变化 <template> <div> <!-- 面包屑导航 --> <el-breadcrumb sepa ...
- element-ui Steps步骤条组件源码分析整理笔记(九)
Steps步骤条组件源码: steps.vue <template> <!--设置 simple 可应用简洁风格,该条件下 align-center / description / ...
- uni-app插件ColorUI步骤条
1. uni-app插件ColorUI步骤条 1.1. 前言 uni-app就不介绍了,前面几篇已经有所介绍,不知道的可以翻看我前面几篇博客 ColorUI-uniApp是uni-app的一款ui组件 ...
- Steps 步骤条
引导用户按照流程完成任务的分步导航条,可根据实际应用场景设定步骤,步骤不得少于 2 步. 基础用法 简单的步骤条. 设置active属性,接受一个Number,表明步骤的 index,从 0 开始.需 ...
- AntDesign VUE:上传组件自定义限制的两种方式(Boolean、Promise)
AntD上传组件 AntDesign VUE文档 第一种方式 beforeUpload(file) { let isLt = true if (filesSize) { isLt = file.siz ...
- 微信小程序 - 步骤条组件
<!-- 未激活颜色: uncolor:'#ccc' 激活 active:0 数据源 data:[{},{}] 步骤条类型:type basic detail num more --> & ...
- WPF-自定义实现步骤条控件
步骤条实现的效果: 步骤条控件是在listbox的基础上实现的. 一. xaml代码: <Window.Resources> <convert1:StepListBarWidthCo ...
- AntDesign vue学习笔记(七)Form 读写与图片上传
AntDesign Form使用布局相比传统Jquery有点繁琐 (一)先读写一个简单的input为例 <a-form :form="form" layout="v ...
随机推荐
- SMU Spring 2023 Trial Contest Round 10
A. Remove Duplicates 题意大概就是从左到右数字最先数完的最先输出 所以我们可以在输入每个数时记录每个数的出现次数,然后在循环一遍,每次该数字的次数减1,当数字的次数只剩1的时候就输 ...
- Linux离线安装Tomcat
系统环境: centos7.3.1611 openjdk version "1.8.0_102" apache-tomcat-9.0.36.tar.gz tomcat 安装 #链接 ...
- SNMP基础概念
一.什么是SNMP? SNMP=Simple Network Management Protocol (简单网络管理协议) SNMP是被广泛接受并投入使用的工业标准,提供了一个框架来定义管理信 ...
- zabbix报错大全
zabbix报错 https://www.cnblogs.com/losbyday/category/876878.html作者总结的很全棒 1.在启动zabbix-agent 时系统日志输出 PID ...
- LaTeX 常见希腊字母
字母名称 大写 命令 小写 命令 alpha A A α \alpha beta B B β \beta gamma Γ \Gamma γ \gamma delta Δ \Delta δ \delta ...
- 【Jenkins】Mac系统之忘记jenkins密码,如何修改密码
参考文章<jenkins管理员密码登录不了> 一.修改config.xml文件 Mac下的文件在 /Users/xxx/.jenkins/users/登录的用户名/config.xml 复 ...
- 【YashanDB知识库】YAS-00103 no free block in dictionary cache
[问题分类]功能使用 [关键字]YAS-00103,no free block in dictionary cache [问题描述]执行union all 太多子查询导致报错,例子如下: [问题原因分 ...
- SSH 安全机制 及常见问题
常见问题: ssh_dispatch_run_fatal: Connection to {your_ip} port 22: invalid argument ssh -oKexAlgorithms= ...
- 开源大模型占GPU显存计算方法
运行大模型GPU占用计算公式: \(M=\frac{(P * 4B)}{32 / Q} * 1/2\) M : 以GB标识的GPU内存 P : 模型中的参数数量,例如一个7B模型有70亿参数 4B : ...
- 深入理解Java对象结构
一.Java对象结构 实例化一个Java对象之后,该对象在内存中的结构是怎么样的?Java对象(Object实例)结构包括三部分:对象头.对象体和对齐字节,具体下图所示 1.Java对象的三部分 (1 ...