areaDeal.js 659 B

1234567891011121314151617
  1. import { getDict } from '@/hooks/web/useDictionaries'
  2. // 根据市获取省份
  3. export const cityToProvince = async (cityId, query, parentList = []) => { // cityToProvince(workAreaId, {}, province.items || [])
  4. if (!cityId) return cityId
  5. query = { pid: true, cityList: true, ...query }
  6. const obj = {}
  7. if (query.cityList || query.pid) {
  8. const areaMap = await getDict('areaMap', {}, 'areaMap')
  9. obj.pid = areaMap?.data && areaMap?.data[cityId]?.parentId
  10. if (query.cityList && obj.pid) {
  11. const parent = parentList.find(pv => pv.id === obj.pid)
  12. obj.cityList = parent?.children.length ? parent.children : []
  13. }
  14. }
  15. return obj
  16. }