| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 | 
							- import { reactive } from 'vue'
 
- import { getDict } from '@/hooks/useDictionaries'
 
- const dictObj = reactive({})
 
- const dictList = [
 
-   { 
 
-     type: 'positionData', 
 
-     apiType: 'positionData', 
 
-     key: 'positionId', 
 
-     label: 'position', 
 
-     value: 'positionTypeData', 
 
-     itemKey: 'id', 
 
-     itemText: 'nameCn'
 
-   },
 
-   { 
 
-     type: 'industryList', 
 
-     apiType: 'industryList', 
 
-     key: 'industryIdList', 
 
-     label: 'industry', 
 
-     isArray: true, 
 
-     value: 'industryTypeData', 
 
-     itemKey: 'id', 
 
-     itemText: 'nameCn' 
 
-   },
 
-   { 
 
-     type: 'menduner_area_type',
 
-     apiType: 'areaList',
 
-     key: 'workAreaId',
 
-     params: { type: undefined },
 
-     label: 'workArea',
 
-     value: 'areaTypeData',
 
-     itemKey: 'id',
 
-     itemText: 'name'
 
-   },
 
-   { 
 
-     type: 'menduner_job_type',
 
-     key: 'jobType',
 
-     label: 'jobTypeName',
 
-     value: 'jobTypeData',
 
-     itemKey: 'value',
 
-     itemText: 'label'
 
-   },
 
-   { 
 
-     type: 'menduner_area_type', 
 
-     apiType: 'areaList', 
 
-     key: 'interestedAreaIdList', 
 
-     label: 'interestedArea', 
 
-     // params: { type: undefined },
 
-     isArray: true, 
 
-     value: 'areaTypeData', 
 
-     itemKey: 'id', 
 
-     itemText: 'name' 
 
-   }
 
- ]
 
- // 字典
 
- const getDictList = async () => {
 
-   dictList.forEach(async (val) => {
 
-     const { data } = await getDict(val.type, val.params, val.apiType)
 
-     if (!data?.data) {
 
-       dictObj[val.value] = []
 
-       return
 
-     }
 
-     dictObj[val.value] = data.data
 
-   })
 
- }
 
- const getData = async () => {
 
-   await getDictList()
 
- }
 
- getData()
 
- export const dealJobData = (list) => {
 
-   let res = {}
 
-   dictList.forEach(item => {
 
-     res = list.map(e => {
 
-       let obj = {}
 
-       if (item.isArray) {
 
-         if (e[item.key] && e[item.key].length) {
 
-           const result = e[item.key].map(val => {
 
-             return obj = dictObj[item.value].find(i => Number(i[item.itemKey]) === Number(val))
 
-           })
 
-           e[item.label] = result && result.length ? result.filter(Boolean) : []
 
-         }
 
-       } else {
 
-         obj = dictObj[item.value].find(k => Number(k[item.itemKey]) === Number(e[item.key]))
 
-         if (!obj) return
 
-         e[item.label] = obj[item.itemText]
 
-       }
 
-       return e
 
-     })
 
-   })
 
-   return res
 
- }
 
 
  |