| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 | 
							- import {
 
-   getDictData,
 
-   getIndustryListData,
 
-   getSkillList,
 
-   getIndustryTreeData,
 
-   getAreaListData,
 
-   getAreaMapData,
 
-   getPositionTreeData,
 
-   getAreaTreeData,
 
-   getPositionData
 
- } from '@/api/common'
 
- import { getSecondNodes } from '@/utils/dealData'
 
- // const setDict = (type, val, cacheTime = 7200) => {
 
- const setDict = (type, val) => {
 
-   if (!val) {
 
-     return
 
-   }
 
-   if (type === 'areaTreeData') {
 
-     const obj = val.data.find(e => e.name === '中国')
 
-     val.data = obj?.children ? obj.children.map(e =>{
 
-       // 市辖区直接显示区
 
-       const municipality = e.children && e.children.length && e.children[0].name === '市辖区'
 
-       if (municipality && e.children[0].children?.length) e.children = e.children[0].children
 
-       return e
 
-     }) : []
 
-   }
 
-   if (type === 'areaTreeDataExtend') { // 前排加上不限
 
-     const obj = val.data.find(e => e.name === '中国')
 
-     if (obj?.children?.length) {
 
-       // const province = 
 
-       obj.children.forEach(e=> {
 
-         // 市辖区直接显示区
 
-         const municipality = e.children && e.children.length && e.children[0].name === '市辖区'
 
-         if (municipality && e.children[0].children?.length) e.children = e.children[0].children
 
-         // 不限
 
-         extendFun(e)
 
-       })
 
-       val.data = obj.children
 
-     } else val.data = []
 
-     function extendFun (e) {
 
-       const idType = Number.isInteger(e.id) ? 'int' : 'str'
 
-       if(e.children?.length) {
 
-         e.children.unshift({ name: '不限', id: e.id+'unlimited', idType })
 
-         e.children.forEach(i => extendFun(i))
 
-       }
 
-     }
 
-   }
 
-   // 一小时过期
 
-   const currentTime = new Date()
 
-   currentTime.setTime(currentTime.getTime() + 3600 * 1000)
 
-   
 
-   uni.setStorageSync(type, JSON.stringify({
 
-     data: val,
 
-     // expire: Date.now() + cacheTime * 1000
 
-     expire: currentTime.getTime()
 
-   }))
 
- }
 
- export const getDict = (type, params, apiType = 'dict') => {
 
-     if (!type) {
 
-       return []
 
-     }
 
-     return new Promise((resolve) => {
 
-       const item = uni.getStorageSync(type)
 
-       const catchData = item ? JSON.parse(item) : null
 
-       if (catchData && catchData.expire && (Date.now() <= catchData.expire) && catchData.data && catchData.data?.data?.length) {
 
-         return resolve({ data: catchData.data })
 
-       }
 
-       // 传参按照规范参数传
 
-       const query = params ? params : { type }
 
-       const apiFn = {
 
-         dict: getDictData,
 
-         positionTreeData: getPositionTreeData, // 职位tree
 
-         areaTreeData: getAreaTreeData, // 区域tree
 
-         areaTreeDataExtend: getAreaTreeData, // 区域tree(二级以后含不限)
 
-         industryTreeData: getIndustryTreeData, // 行业tree
 
-         industryList: getIndustryListData,
 
-         skillList: getSkillList,
 
-         areaList: getAreaListData,
 
-         areaMap: getAreaMapData,
 
-         positionSecondData: getPositionTreeData,
 
-         positionData: getPositionData
 
-       }
 
-       apiFn[apiType](query).then(data => {
 
-         // setDict(type, data, Date.now())
 
-         if (type === 'positionSecondData') {
 
-           data.data = getSecondNodes(data.data)
 
-         }
 
-         setDict(type, data)
 
-         resolve({ data })
 
-       })
 
-     })
 
- }
 
 
  |