import Vue from 'vue'
export const isFirefox = function () {
  return !Vue.prototype.$isServer && !!window.navigator.userAgent.match(/firefox/i)
}
export function rafThrottle(fn) {
  let locked = false
  return function (...args) {
    if (locked) return
    locked = true
    window.requestAnimationFrame((_) => {
      fn.apply(this, args)
      locked = false
    })
  }
}
// 递归,根据ID找寻父级集合
export function getParentList(treeData, name) {
  for (let i in treeData) {
    if(treeData[i].name===name){
       return [treeData[i]]
    }
    if(treeData[i].children!=null){
      let node = getParentList(treeData[i].children,name);
      if(node!==undefined){
        return node.concat(treeData[i])
      }
    }
  }
}
export function filterUnit(val) {
  switch (val) {
    case '变电站数量':
      return '(个)'
      break;
    case '10KV线路数量':
      return '(条)'
      break;
    case '总容量':
      return '(KVA)'
      break;
    case '杆塔总数量':
      return '(基)'
      break;
    case '杆塔数量':
      return '(基)'
      break;
    case '低压杆塔数量':
      return '(基)'
      break;
    case '影响台区数量':
      return '(台)'
      break;
    case '公变数量':
      return '(台)'
      break;
    case '专变数量':
      return '(台)'
      break;
    case '开关数量':
      return '(个)'
      break;
    case '网格员数量':
      return '(个)'
      break;
    case '线路管理人员数量':
      return '(个)'
      break;
    case '计量箱数量':
      return '(个)'
      break;
    case '户表数量':
      return '(户)'
      break;
    case '影响用户数量':
      return '(户)'
      break;
    case '用户接入点数量':
      return '(个)'
      break;
    case '低压分支箱数量':
      return '(个)'
      break;
    case '低压线路墙支架数量':
      return '(个)'
      break;
      // 
    case '管辖台区数量':
      return '(台)'
      break;
    case '管辖用户数量':
      return '(户)'
      break;
      // 
    case '交跨点数量':
      return '(个)'
      break;
    case '跨鱼塘':
      return '(条)'
      break;
    case '跨公路':
      return '(条)'
      break;
    case '跨铁路':
      return '(条)'
      break;
    case '跨树障':
      return '(条)'
      break;
      // 高故障线路
    case '高故障线路数量':
      return '(个)'
      break;
      // 故障点信息
    case '故障点数量':
      return '(个)'
      break;
    case '一级跳闸数量':
      return '(条)'
      break;
    case '二级跳闸数量':
      return '(条)'
      break;
    default:
      return ''
      break;
  }
}