RuoYi
2020-10-03 c19fec2cf8f23b132c292bb783ff7c309b5c5a96
ruoyi-ui/src/utils/ruoyi.js
@@ -1,4 +1,4 @@
/**
/**
 * 通用js方法封装处理
 * Copyright (c) 2019 ruoyi
 */
@@ -78,17 +78,18 @@
}
// 回显数据字典(字符串数组)
export function selectDictLabels (datas = {}, value = '', separator = ',') {
  const actions = []
  const temp = value.split(separator)
  temp.forEach((_, index) => {
    Object.keys(datas).forEach(key => {
      if (datas[key].dictValue === temp[index].toString()) {
        actions.push(datas[key].dictLabel)
      }
    })
  })
  return actions.join(separator)
export function selectDictLabels(datas, value, separator) {
   var actions = [];
   var currentSeparator = undefined === separator ? "," : separator;
   var temp = value.split(currentSeparator);
   Object.keys(value.split(currentSeparator)).some((val) => {
      Object.keys(datas).some((key) => {
         if (datas[key].dictValue == ('' + temp[val])) {
            actions.push(datas[key].dictLabel + currentSeparator);
         }
      })
   })
   return actions.join('').substring(0, actions.join('').length - 1);
}
// 通用下载方法
@@ -126,19 +127,22 @@
 * @param {*} children 孩子节点字段 默认 'children'
 * @param {*} rootId 根Id 默认 0
 */
export function handleTree(data = [], id = 'id', parentId = 'parentId', children = 'children', rootId = 0) {
export function handleTree(data, id, parentId, children, rootId) {
   id = id || 'id'
   parentId = parentId || 'parentId'
   children = children || 'children'
   rootId = rootId || Math.min.apply(Math, data.map(item => { return item[parentId] })) || 0
   //对源数据深度克隆
   const cloneData = JSON.parse(JSON.stringify(data))
   //循环所有项
   const treeData = cloneData.filter(father => {
      const branchArr = cloneData.filter(child => {
      let branchArr = cloneData.filter(child => {
         //返回每一项的子级数组
         return father[id] === child[parentId]
      });
      branchArr.length && (father.children = branchArr);
      branchArr.length > 0 ? father.children = branchArr : '';
      //返回第一层
      return father[parentId] === rootId;
   });
   return treeData !== '' ? treeData : data;
   return treeData != '' ? treeData : data;
}