当前位置:   article > 正文

移动端vue+vant+高德地图实现拖拽选址,周边选址,搜索选址,自动定位,选择城市功能,获取地址经纬度,详细地址

移动端vue+vant+高德地图实现拖拽选址,周边选址,搜索选址,自动定位,选择城市功能,获取地址经纬度,详细地址

效果图:

 在public文件夹下的index.html文件中head标签下加上script标签如下:

  1. <script type="text/javascript">
  2. window._AMapSecurityConfig = {
  3. serviceHost: '/_AMapService',
  4. securityJsCode: '8875d368900906c0f23d6adb7dhsj' //转译key
  5. //这个key是假的,换成你自己在高德申请的,申请的是web端(js Api)
  6. }
  7. </script>

安装相应插件

  1. yarn add store //存储作用
  2. yarn add vant
  3. yarn add jquery

 

一、自定义GoMap.vue组件

  1. <template>
  2. <div class="page" :style="{ height: pageHeight + 'px' }">
  3. <van-nav-bar title="所在位置" @click-left="onClickLeft" class="topNavFix">
  4. <template #left>
  5. <van-icon name="arrow-left" color="#333752" size="18" />
  6. </template>
  7. <template #right>
  8. <van-button type="info" @click="getInfo">确定</van-button>
  9. </template>
  10. </van-nav-bar>
  11. <div id="search">
  12. <van-search
  13. v-model="queryKey"
  14. :show-action="isSearch"
  15. shape="round"
  16. placeholder="请输入您的地址"
  17. @focus="searchFocus"
  18. @blur="searchBlur"
  19. >
  20. <template slot="label">
  21. <div class="address-search__label" @click="changeCity">
  22. <span>{{ city || "定位中..." }}</span
  23. ><i
  24. class="address-search__icon van-icon van-icon-arrow-down"
  25. style="font-size: 16px"
  26. ><!----></i
  27. >
  28. </div>
  29. </template>
  30. <template slot="action" v-if="isSearch">
  31. <span @click="cancelSearch()">取消</span>
  32. </template>
  33. </van-search>
  34. </div>
  35. <div id="map"></div>
  36. <div class="address-map__pois__title">
  37. <div class="areaStyl">附近位置</div>
  38. <div class="areaBtn">
  39. <!-- <van-button type="info" @click="getInfo">信息提交</van-button> -->
  40. </div>
  41. </div>
  42. <div
  43. class="address-map__pois van-cell-group"
  44. v-if="!isSearch && !isShowSelectCity"
  45. >
  46. <div
  47. class="address-map__poi van-cell van-cell--borderless"
  48. v-for="(item, index) in nearPostion"
  49. :key="index"
  50. @click="selectAddr(item)"
  51. >
  52. <i
  53. class="van-icon van-icon-location van-cell__left-icon"
  54. :class="{ active: selectPosition.id == item.id }"
  55. ><!----></i
  56. >
  57. <div class="van-cell__title">
  58. <span>{{ item.name }}</span>
  59. <div class="van-cell__label">{{ item.address }}</div>
  60. </div>
  61. </div>
  62. <div class="loading" v-show="selectPostionLoading">
  63. <van-loading type="spinner" color="#1989fa" />
  64. </div>
  65. <!-- <div class="address-map__poi van-cell van-cell--borderless">
  66. <i class="van-icon van-icon-location van-cell__left-icon"></i>
  67. <div class="van-cell__title">
  68. <span>深圳安迪妈妈公寓</span>
  69. <div class="van-cell__label">科技园深南花园c栋(地铁口旁)</div>
  70. </div>
  71. </div> -->
  72. </div>
  73. <div class="searchRes" v-show="isSearch">
  74. <div class="searchHistory" v-if="!queryKey">
  75. <div class="title" v-if="searchHistory.length">
  76. <span>历史搜索</span>
  77. <van-icon @click="clearSearchHistory()" class="del" name="delete" />
  78. </div>
  79. <div class="serchHistory-list" v-if="searchHistory.length">
  80. <span
  81. v-for="(item, index) in searchHistory"
  82. :key="index"
  83. @click="selechHistory(item)"
  84. >{{ item }}</span
  85. >
  86. </div>
  87. <!-- 空搜索历史 -->
  88. <van-empty
  89. v-if="!searchHistory.length"
  90. image="search"
  91. description="暂无历史搜索"
  92. />
  93. </div>
  94. <div class="searchRes-list" v-if="queryKey">
  95. <div class="searchRes-list-box" v-if="searchResList.length">
  96. <div
  97. class="item"
  98. v-for="(item, index) in searchResList"
  99. :key="index"
  100. @click="selectSearchAddr(item)"
  101. >
  102. <div class="name">{{ item.name }}</div>
  103. <div class="addr">{{ item.district }}{{ item.address }}</div>
  104. </div>
  105. </div>
  106. <van-empty
  107. v-if="!searchResList.length && noSearchData"
  108. image="search"
  109. description="暂无搜索结果"
  110. />
  111. </div>
  112. </div>
  113. <!-- 选择城市 -->
  114. <transition name="van-slide-right" v-if="isShowSelectCity">
  115. <div
  116. style="
  117. position: fixed;
  118. top: 0;
  119. left: 0;
  120. right: 0;
  121. bottom: 0;
  122. width: 100%;
  123. z-index: 1500;
  124. "
  125. >
  126. <SelectCity
  127. @getCity="getCity"
  128. @closeCity="closeCity"
  129. @showRit="showRit"
  130. :faRit="rightArea"
  131. ></SelectCity>
  132. </div>
  133. </transition>
  134. </div>
  135. </template>
  136. <script>
  137. import { loadJs } from "@/utils/mapfn.js";
  138. import SelectCity from "@/components/SelectCity";
  139. import { Toast } from 'vant';
  140. //便捷存取本地存储工具
  141. import storejs from "store";
  142. export default {
  143. components: { SelectCity },
  144. data() {
  145. return {
  146. rightArea: '',
  147. pageHeight: window.innerHeight,
  148. map: "",
  149. loaction: [], //lng,lat
  150. city: "",
  151. isShowSelectCity: false,
  152. nearPostion: [],
  153. selectPosition: {},
  154. selectPostionLoading: false,
  155. isSearch: false,
  156. queryKey: "",
  157. searchHistory: [], //搜索历史记录
  158. searchResList: [], //搜索记录
  159. noSearchData: false,
  160. timer: "",
  161. isToast: '',
  162. positionInfo: {},
  163. mapShow: false
  164. };
  165. },
  166. watch: {
  167. queryKey: function (val) {
  168. clearTimeout(this.timer);
  169. this.timer = setTimeout(() => {
  170. if (window.AMap) {
  171. //判断地图是否初始化
  172. window.AMap.plugin("AMap.AutoComplete", () => {
  173. let autoOptions = {
  174. city: this.city || "全国", //city 限定城市,默认全国
  175. pageSize: 20, // 单页显示结果条数
  176. children: 0, //不展示子节点数据
  177. pageIndex: 1, //页码
  178. extensions: "base", //返回基本地址信息
  179. };
  180. // 实例化AutoComplete
  181. let autoComplete = new window.AMap.AutoComplete(autoOptions);
  182. // 根据关键字进行搜索
  183. autoComplete.search(val, (status, result) => {
  184. // 搜索成功时,result即是对应的匹配数据
  185. this.noSearchData = false;
  186. console.log(result);
  187. if (result.info == "OK") {
  188. console.log(result);
  189. this.searchResList = result.tips;
  190. if (result.tips && !result.tips.length) {
  191. this.searchResList = [];
  192. this.noSearchData = true;
  193. }
  194. } else {
  195. this.searchResList = [];
  196. this.noSearchData = true;
  197. }
  198. });
  199. });
  200. }
  201. }, 300);
  202. }
  203. },
  204. async mounted() {
  205. // await this.init();
  206. },
  207. methods: {
  208. showRit(val) {
  209. this.rightArea = val
  210. },
  211. onClickLeft() {
  212. this.$emit("showChange", this.mapShow);
  213. },
  214. getInfo() {
  215. this.$emit("getAreaInfo", this.positionInfo);
  216. },
  217. async init() {
  218. // Toast.loading({
  219. // message: '初始化中...',
  220. // forbidClick: true,
  221. // });
  222. await loadJs(
  223. "https://webapi.amap.com/maps?v=2.0&key=d12ec89124d64af8ee33273e3dba23b3",
  224. //用你们自己申请的key,这个key我里面加了随机数字
  225. async () => {
  226. // this.selectPostionLoading = true;
  227. await loadJs("https://webapi.amap.com/ui/1.1/main.js", () => {
  228. window.AMapUI.loadUI(
  229. ["misc/PositionPicker", "misc/PoiPicker"],
  230. (PositionPicker, PoiPicker) => {
  231. //获取定位
  232. this.getLoction(async () => {
  233. //拖拽选址
  234. this.positionPicker(PositionPicker, PoiPicker);
  235. });
  236. //实力化搜索
  237. // await this.autoInput();
  238. }
  239. );
  240. });
  241. }
  242. );
  243. },
  244. //创建地图
  245. createMap() {
  246. this.selectPostionLoading = true;
  247. this.map = new window.AMap.Map("map", {
  248. resizeEnable: true, //是否监控地图容器尺寸变化
  249. zoom: 16,
  250. viewMode: "3D",
  251. features: ["bg", "road", "building", "point"],
  252. center: this.loaction,
  253. });
  254. Toast.clear()
  255. },
  256. //获取定位
  257. getLoction(callback) {
  258. window.AMap.plugin("AMap.Geolocation", () => {
  259. let geolocation = new window.AMap.Geolocation({
  260. enableHighAccuracy: true, //是否使用高精度定位,默认:true
  261. timeout: 10000, //超过10秒后停止定位,默认:5s
  262. buttonPosition: "RB", //定位按钮的停靠位置
  263. buttonOffset: new window.AMap.Pixel(0, 0), //定位按钮与设置的停靠位置的偏移量,默认:Pixel(10, 20)
  264. zoomToAccuracy: true, //定位成功后是否自动调整地图视野到定位点
  265. showMarker: true, //定位成功后在定位到的位置显示点标记,默认:true
  266. showCircle: true, //定位成功后用圆圈表示定位精度范围,默认:true
  267. panToLocation: true, //定位成功后将定位到的位置作为地图中心点,默认:true
  268. extensions: "all",
  269. });
  270. geolocation.getCurrentPosition((status, result) => {
  271. //定位成功
  272. if (status == "complete") {
  273. //获取定位坐标
  274. this.loaction = [result.position.lng, result.position.lat];
  275. //创建地图
  276. this.createMap();
  277. this.map.addControl(geolocation);
  278. } else {
  279. //定位失败
  280. this.loaction = [0, 0];
  281. this.createMap();
  282. this.map.addControl(geolocation);
  283. console.log('888', result)
  284. this.$toast("定位失败,原因:" + result.message);
  285. }
  286. if (typeof callback === "function") {
  287. callback();
  288. }
  289. });
  290. });
  291. },
  292. //拖拽选址
  293. positionPicker(PositionPicker, PoiPicker) {
  294. console.log("PoiPicker", PoiPicker);
  295. let imgurl = require("@/assets/imgs/dingwei.png")
  296. var positionPicker = new PositionPicker({
  297. mode: "dragMap",
  298. map: this.map,
  299. iconStyle: {
  300. //自定义外观
  301. // https://img.yzcdn.cn/public_files/2020/03/04/32a548551986a2c3c22ef3018eb7a9af.png
  302. url: imgurl,
  303. size: [35, 42], //要显示的点大小,将缩放图片
  304. ancher: [11, 40], //锚点的位置,即被size缩放之后,图片的什么位置作为选中的位置
  305. },
  306. });
  307. positionPicker.on("success", (positionResult) => {
  308. this.nearPostion = [];
  309. this.selectPostionLoading = true;
  310. this.city =
  311. positionResult.regeocode.addressComponent.city ||
  312. positionResult.regeocode.addressComponent.province; //city
  313. setTimeout(() => {
  314. //延时在加载出来有更好的体验效果
  315. console.log("positionres", positionResult);
  316. this.nearPostion = positionResult.regeocode.pois;
  317. this.selectPosition = positionResult.regeocode.pois[0];
  318. this.selectPostionLoading = false;
  319. this.positionInfo = positionResult
  320. }, 300);
  321. });
  322. positionPicker.on("fail", (positionResult) => {
  323. console.log("positionResult", positionResult);
  324. this.$toast("定位失败");
  325. });
  326. // var onModeChange = function (e) {
  327. // console.log("e", e);
  328. // positionPicker.setMode(e.target.value);
  329. // };
  330. positionPicker.start();
  331. },
  332. //选择地址
  333. selectAddr(addr) {
  334. this.selectPosition = JSON.parse(JSON.stringify(addr));
  335. this.$toast(`我选择了${addr.name}`);
  336. this.map.setZoomAndCenter(16, this.selectPosition.location); //同时设置地图中心点和层级
  337. },
  338. searchFocus() {
  339. if (storejs.get("searchHistoryList")) {
  340. this.searchHistory = storejs.get("searchHistoryList");
  341. }
  342. this.isSearch = true;
  343. this.rightArea = ''
  344. },
  345. searchBlur() {
  346. this.rightArea = ''
  347. },
  348. cancelSearch() {
  349. this.isSearch = false;
  350. this.queryKey = "";
  351. this.searchResList = [];
  352. },
  353. //删除历史记录
  354. clearSearchHistory() {
  355. this.$dialog
  356. .confirm({
  357. title: "确认删除历史记录?",
  358. message: "删除后不可恢复",
  359. })
  360. .then(() => {
  361. storejs.set("searchHistoryList", []);
  362. this.searchHistory = [];
  363. })
  364. .catch(() => {
  365. // on cancel
  366. });
  367. },
  368. selechHistory(item) {
  369. this.queryKey = item;
  370. },
  371. selectSearchAddr(item) {
  372. if (storejs.get("searchHistoryList")) {
  373. let searchHistory = storejs.get("searchHistoryList");
  374. searchHistory.push(item.name);
  375. searchHistory = [...new Set(searchHistory)];
  376. storejs.set("searchHistoryList", searchHistory);
  377. } else {
  378. let searchHistory = [];
  379. searchHistory.push(item.name);
  380. storejs.set("searchHistoryList", searchHistory);
  381. }
  382. this.$toast(`我选择了${item.name}`);
  383. this.isSearch = false;
  384. this.queryKey = "";
  385. this.searchResList = [];
  386. this.loaction = [item.location.lng, item.location.lat];
  387. this.map.setZoomAndCenter(16, this.loaction); //同时设置地图中心点和层级
  388. },
  389. changeCity() {
  390. this.isShowSelectCity = true;
  391. this.rightArea = '3'
  392. },
  393. async getCity(cityObj) {
  394. this.city = cityObj.name;
  395. this.loaction = [cityObj.lng, cityObj.lat];
  396. this.isShowSelectCity = false;
  397. this.map.setZoomAndCenter(16, this.loaction); //同时设置地图中心点和层级
  398. },
  399. closeCity() {
  400. this.isShowSelectCity = false;
  401. }
  402. //实例化search
  403. // autoInput() {
  404. // AMap.plugin("AMap.Autocomplete", () => {
  405. // // 实例化Autocomplete
  406. // var autoOptions = {
  407. // city: this.city,
  408. // };
  409. // let autoComplete = new AMap.Autocomplete(autoOptions);
  410. // autoComplete.search(this.queryKey, (status, result) => {
  411. // // 搜索成功时,result即是对应的匹配数据
  412. // console, log("resulte", result);
  413. // });
  414. // });
  415. // },
  416. },
  417. };
  418. </script>
  419. <style lang="less" scoped>
  420. .topNavFix {
  421. width: 100%;
  422. position: fixed;
  423. left: 0;
  424. top: 0;
  425. background: #fff;
  426. z-index: 8888;
  427. ::v-deep .van-nav-bar__title {
  428. color: #333;
  429. font-weight: 700;
  430. }
  431. ::v-deep .van-button--info {
  432. background-color: #fff;
  433. border: 1px solid #fff;
  434. color: #005dff;
  435. font-size: 14px;
  436. padding: 0;
  437. }
  438. }
  439. .page {
  440. display: flex;
  441. flex-direction: column;
  442. position: relative;
  443. padding-top: 46px;
  444. box-sizing: border-box;
  445. #search {
  446. width: 100%;
  447. position: absolute;
  448. z-index: 1001;
  449. width: 100%;
  450. top: 40px;
  451. right: 0;
  452. .address-search__label {
  453. font-size: 12px;
  454. color: #323233;
  455. display: flex;
  456. align-items: center;
  457. .address-search__icon {
  458. margin-left: 5px;
  459. color: #c8c9cc;
  460. }
  461. span {
  462. max-width: 70px;
  463. overflow: hidden;
  464. text-overflow: ellipsis;
  465. white-space: nowrap;
  466. }
  467. }
  468. }
  469. #map {
  470. height: 275px;
  471. width: 100%;
  472. }
  473. .address-map__pois__title {
  474. display: flex;
  475. justify-content: space-between;
  476. align-items: center;
  477. height: 40px;
  478. background-color: #fff;
  479. padding: 0 12px;
  480. text-align: left;
  481. .areaStyl {
  482. font-size: 12px;
  483. color: #969799;
  484. }
  485. .areaBtn {
  486. .van-button--info {
  487. height: 32px;
  488. width: 80px;
  489. font-size: 12px;
  490. background-color: #005dff;
  491. border: 1px solid #005dff;
  492. border-radius: 4px;
  493. }
  494. }
  495. }
  496. .address-map__pois {
  497. flex: 1;
  498. overflow-y: auto;
  499. padding: 0 12px;
  500. position: relative;
  501. -webkit-overflow-scrolling: touch;
  502. .loading {
  503. position: absolute;
  504. top: 0;
  505. left: 0;
  506. right: 0;
  507. width: 100%;
  508. height: 100%;
  509. display: flex;
  510. justify-content: center;
  511. align-items: center;
  512. background: #f7f8fa;
  513. }
  514. &::-webkit-scrollbar {
  515. width: 2px;
  516. height: 5px;
  517. }
  518. &::-webkit-scrollbar-track,
  519. ::-webkit-scrollbar-thumb {
  520. border-radius: 999px;
  521. border: 0px solid transparent;
  522. }
  523. &::-webkit-scrollbar-track {
  524. box-shadow: 1px 1px 5px rgba(100, 100, 100, 0.2) inset;
  525. }
  526. &::-webkit-scrollbar-thumb {
  527. min-height: 20px;
  528. background-clip: content-box;
  529. box-shadow: 0 0 0 5px rgba(100, 100, 100, 0.5) inset;
  530. }
  531. &::-webkit-scrollbar-corner {
  532. background: transparent;
  533. }
  534. .van-cell {
  535. position: relative;
  536. display: -webkit-box;
  537. display: -webkit-flex;
  538. display: flex;
  539. box-sizing: border-box;
  540. width: 100%;
  541. padding: 10px 16px;
  542. overflow: hidden;
  543. color: #323233;
  544. font-size: 14px;
  545. line-height: 24px;
  546. background-color: #fff;
  547. &.address-map__poi {
  548. background: #f7f8fa;
  549. border-radius: 8px;
  550. padding: 16px 8px;
  551. line-height: 20px;
  552. .van-icon-location {
  553. color: #dddee0;
  554. line-height: 1.3;
  555. &.active {
  556. color: #ee0a24;
  557. }
  558. }
  559. .van-cell__label {
  560. color: #969799;
  561. }
  562. }
  563. &.address-map__poi:not(:last-child) {
  564. margin-bottom: 8px;
  565. }
  566. }
  567. }
  568. .searchRes {
  569. position: absolute;
  570. width: 100%;
  571. height: 100%;
  572. background: #fff;
  573. z-index: 1000;
  574. padding-top: 54px;
  575. box-sizing: border-box;
  576. top: 0;
  577. left: 0;
  578. right: 0;
  579. .searchHistory {
  580. height: 100%;
  581. padding: 0px 12px;
  582. box-sizing: border-box;
  583. .title {
  584. margin-top: 36px;
  585. height: 25px;
  586. display: flex;
  587. width: 100%;
  588. justify-content: space-between;
  589. align-items: center;
  590. span {
  591. font-size: 12px;
  592. color: #000;
  593. font-weight: 600;
  594. }
  595. .del {
  596. color: #666;
  597. font-size: 14px;
  598. }
  599. }
  600. .serchHistory-list {
  601. width: 100%;
  602. padding-top: 15px;
  603. box-sizing: border-box;
  604. display: flex;
  605. flex-wrap: wrap;
  606. span {
  607. padding: 5px 8px;
  608. background: #eee;
  609. color: #333;
  610. font-size: 12px;
  611. max-width: 90px;
  612. overflow: hidden;
  613. text-overflow: ellipsis;
  614. white-space: nowrap;
  615. margin-right: 8px;
  616. line-height: 1;
  617. border-radius: 3px;
  618. margin-bottom: 10px;
  619. }
  620. }
  621. }
  622. .searchRes-list {
  623. height: 100%;
  624. padding: 30px 12px 0;
  625. box-sizing: border-box;
  626. .searchRes-list-box {
  627. height: 100%;
  628. overflow-y: auto;
  629. -webkit-overflow-scrolling: touch;
  630. .item {
  631. padding: 5px 0;
  632. border-bottom: 1px solid #f1f1f1;
  633. .name {
  634. font-size: 14px;
  635. color: #000;
  636. font-weight: 600;
  637. line-height: 30px;
  638. }
  639. .addr {
  640. color: #666;
  641. font-size: 13px;
  642. line-height: 20px;
  643. overflow: hidden;
  644. text-overflow: ellipsis;
  645. white-space: nowrap;
  646. }
  647. &:last-child {
  648. border-bottom: 0px;
  649. }
  650. }
  651. &::-webkit-scrollbar {
  652. display: none;
  653. }
  654. }
  655. }
  656. }
  657. }
  658. </style>

 二、自定义SelectCity.vue组件

  1. <template>
  2. <!-- :style="{ height: pageHeight + 'px' }" -->
  3. <div class="page" style="height: 100%">
  4. <div id="search">
  5. <van-search
  6. v-model="queryKey"
  7. show-action
  8. shape="round"
  9. placeholder="请输入城市名或者拼音"
  10. @focus="searchFocus"
  11. @blur="searchBlur"
  12. >
  13. <template slot="action">
  14. <span @click="cancelSearch()">取消</span>
  15. </template>
  16. </van-search>
  17. </div>
  18. <div class="position" v-if="!isSearch">
  19. <div class="title">当前定位</div>
  20. <div class="result">
  21. <span class="left" @click="selectCity(cityData, 'position')">
  22. <van-icon name="location" />
  23. <span class="cityName">
  24. <span v-if="cityLoading" style="color: #666; font-size: 13px"
  25. >定位中...</span
  26. >
  27. <span v-else>{{ city || "定位失败" }}</span>
  28. </span>
  29. </span>
  30. <span class="right" @click="getLoction()">重新定位</span>
  31. </div>
  32. </div>
  33. <div
  34. class="bar"
  35. style="height: 5px; background: gainsboro"
  36. v-if="!isSearch"
  37. ></div>
  38. <div
  39. class="index-list"
  40. v-if="!isSearch"
  41. :class="faRit == '1' ? 'topShow' : ''"
  42. >
  43. <van-index-bar :index-list="indexListName">
  44. <div v-for="(value, key, index) in indexList" :key="index">
  45. <van-index-anchor :index="key == '#' ? '热门城市' : key" />
  46. <van-cell
  47. v-for="(el, i) in value"
  48. :key="i"
  49. :title="el.name"
  50. @click="selectCity(el, 'index')"
  51. />
  52. </div>
  53. </van-index-bar>
  54. </div>
  55. <div class="search-list" v-if="isSearch">
  56. <div class="searchRes-list-box" v-if="searchResList.length">
  57. <div
  58. class="item"
  59. v-for="(item, index) in searchResList"
  60. :key="index"
  61. @click="selectCity(item, 'index')"
  62. >
  63. <div class="name">{{ item.name }}</div>
  64. </div>
  65. </div>
  66. <van-empty
  67. v-if="!searchResList.length && noSearchData"
  68. image="search"
  69. description="暂无搜索结果"
  70. />
  71. </div>
  72. </div>
  73. </template>
  74. <script>
  75. import { loadJs } from "@/utils/mapfn.js";
  76. import storejs from "store";
  77. import $ from "jquery";
  78. export default {
  79. data() {
  80. return {
  81. pageHeight: window.innerHeight,
  82. indexListOr: {}, //原始数据
  83. indexListName: [],
  84. indexList: {},
  85. city: "",
  86. cityData: {},
  87. cityLoading: true,
  88. isSearch: false,
  89. searchResList: [], //搜索结果
  90. queryKey: "",
  91. timer: "",
  92. map: "",
  93. loaction: [], //lng,lat
  94. nearPostion: [],
  95. selectPosition: {},
  96. selectPostionLoading: false,
  97. searchHistory: [], //搜索历史记录
  98. noSearchData: false,
  99. AMap: ""
  100. };
  101. },
  102. props: ['faRit'],
  103. watch: {
  104. queryKey: function (val) {
  105. clearTimeout(this.timer);
  106. this.timer = setTimeout(() => {
  107. if (val) {
  108. this.isSearch = true;
  109. let queryKey = val.toUpperCase();
  110. this.searchResList = [];
  111. this.indexListOr.forEach((el) => {
  112. if (
  113. el.name.indexOf(queryKey) != -1 ||
  114. el.spell.toUpperCase().indexOf(queryKey) != -1
  115. ) {
  116. this.searchResList.push(el);
  117. }
  118. });
  119. } else {
  120. this.isSearch = false;
  121. this.searchResList = [];
  122. }
  123. }, 300);
  124. }
  125. },
  126. mounted() {
  127. this.init();
  128. },
  129. methods: {
  130. async init() {
  131. await this.getCityList();
  132. await this.getLoction();
  133. },
  134. searchFocus() {
  135. this.$emit('showRit', '1')
  136. // this.isSearch = true;
  137. },
  138. searchBlur() {
  139. this.$emit('showRit', '2')
  140. },
  141. //获取定位
  142. getLoction() {
  143. loadJs(
  144. "https://webapi.amap.com/maps?v=2.0&key=d12ec89124d64572372e34434e3dba23b3&plugin=AMap.CitySearch",
  145. //用你们自己申请的key,这个key我里面加了随机数字
  146. () => {
  147. //实例化城市查询类
  148. this.AMap = window.AMap;
  149. this.cityLoading = true;
  150. let citysearch = new this.AMap.CitySearch();
  151. //自动获取用户IP,返回当前城市
  152. citysearch.getLocalCity((status, result) => {
  153. console.log("城市定位", result);
  154. if (status === "complete" && result.info === "OK") {
  155. if (result && result.city && result.bounds) {
  156. let obj = {
  157. name: result.city,
  158. lat: result.bounds.northEast.lat - 0.2,
  159. lng: result.bounds.northEast.lng - 0.2
  160. };
  161. this.cityData = obj;
  162. this.city = result.city;
  163. }
  164. } else {
  165. this.$toast("定位失败");
  166. }
  167. this.cityLoading = false;
  168. });
  169. }
  170. );
  171. },
  172. async getCityList() {
  173. let res = await $.getJSON("/city.json", {});
  174. console.log("res", Object.values(res));
  175. let data = Object.values(res);
  176. let letter_reg = /^[A-Z]$/;
  177. let list = new Array();
  178. this.indexListOr = data; //保存一份原始数据,用来搜索使用
  179. for (let i = 0; i < data.length; i++) {
  180. // 添加 # 分组,用来 存放 首字母不能 转为 大写英文的 数据
  181. list["#"] = new Array();
  182. // 首字母 转 大写英文
  183. let letter = data[i]["spell"].substr(0, 1).toUpperCase();
  184. // 是否 大写 英文 字母
  185. if (!letter_reg.test(letter)) {
  186. letter = "#";
  187. }
  188. // 创建 字母 分组
  189. if (!(letter in list)) {
  190. list[letter] = new Array();
  191. }
  192. // 字母 分组 添加 数据
  193. list[letter].push(data[i]);
  194. }
  195. // 转换 格式 进行 排序;
  196. let resault = new Array();
  197. for (let key in list) {
  198. resault.push({
  199. letter: key,
  200. list: list[key],
  201. });
  202. }
  203. resault.sort(function (x, y) {
  204. return x.letter.charCodeAt(0) - y.letter.charCodeAt(0);
  205. });
  206. // # 号分组 放最后
  207. // let last_arr = resault[0];
  208. // resault.splice(0, 1);
  209. // resault.push(last_arr);
  210. // 转换 数据 格式
  211. let json_sort = {};
  212. for (var i = 0; i < resault.length; i++) {
  213. json_sort[resault[i].letter] = resault[i].list;
  214. }
  215. json_sort["#"].push({
  216. adcode: "110000",
  217. name: "北京市",
  218. spell: "Beijing",
  219. lng: 116.405285,
  220. lat: 39.904989,
  221. areaCode: "010",
  222. }); //添加热门城市北京
  223. json_sort["#"].push({
  224. adcode: "440300",
  225. name: "深圳市",
  226. spell: "Shenzhen",
  227. lng: 114.085947,
  228. lat: 22.547,
  229. areaCode: "0755",
  230. }); //添加热门城市深圳
  231. json_sort["#"].push({
  232. adcode: "310000",
  233. name: "上海市",
  234. spell: "Shanghai",
  235. lng: 121.472644,
  236. lat: 31.231706,
  237. areaCode: "021",
  238. }); //添加热门城市上海
  239. this.indexListName = Object.keys(json_sort);
  240. this.indexList = json_sort;
  241. console.log(json_sort);
  242. },
  243. // 选择城市
  244. selectCity(row, type) {
  245. if (type == "index") {
  246. this.$emit("getCity", row);
  247. }
  248. if (type == "position") {
  249. this.$emit("getCity", row);
  250. }
  251. },
  252. //创建地图
  253. createMap() {
  254. this.selectPostionLoading = true;
  255. this.map = new this.AMap.Map("map", {
  256. resizeEnable: true, //是否监控地图容器尺寸变化
  257. zoom: 16,
  258. viewMode: "3D",
  259. features: ["bg", "road", "building", "point"],
  260. center: this.loaction,
  261. });
  262. },
  263. //拖拽选址
  264. positionPicker(PositionPicker, PoiPicker) {
  265. console.log(PoiPicker);
  266. let imgurl = require("@/assets/imgs/dingwei.png")
  267. var positionPicker = new PositionPicker({
  268. mode: "dragMap",
  269. map: this.map,
  270. iconStyle: {
  271. //自定义外观
  272. url: imgurl, //图片地址
  273. size: [35, 42], //要显示的点大小,将缩放图片
  274. ancher: [11, 40], //锚点的位置,即被size缩放之后,图片的什么位置作为选中的位置
  275. },
  276. });
  277. positionPicker.on("success", (positionResult) => {
  278. this.nearPostion = [];
  279. this.selectPostionLoading = true;
  280. this.city = positionResult.regeocode.addressComponent.city; //city
  281. setTimeout(() => {
  282. //延时在加载出来有更好的体验效果
  283. console.log("positionres", positionResult);
  284. this.nearPostion = positionResult.regeocode.pois;
  285. this.selectPosition = positionResult.regeocode.pois[0];
  286. this.selectPostionLoading = false;
  287. }, 300);
  288. });
  289. positionPicker.on("fail", (positionResult) => {
  290. console.log(positionResult);
  291. this.$toast("定位失败");
  292. });
  293. // var onModeChange = function(e) {
  294. // console.log("e", e);
  295. // positionPicker.setMode(e.target.value);
  296. // };
  297. positionPicker.start();
  298. },
  299. //选择地址
  300. selectAddr(addr) {
  301. this.selectPosition = JSON.parse(JSON.stringify(addr));
  302. this.$toast(`我选择了${addr.name}`);
  303. },
  304. cancelSearch() {
  305. this.isSearch = false;
  306. this.queryKey = "";
  307. this.searchResList = [];
  308. this.$emit('closeCity', '')
  309. },
  310. //删除历史记录
  311. clearSearchHistory() {
  312. this.$dialog
  313. .confirm({
  314. title: "确认删除历史记录?",
  315. message: "删除后不可恢复",
  316. })
  317. .then(() => {
  318. storejs.set("searchHistoryList", []);
  319. this.searchHistory = [];
  320. })
  321. .catch(() => {
  322. // on cancel
  323. });
  324. },
  325. selechHistory(item) {
  326. this.queryKey = item;
  327. },
  328. selectSearchAddr(item) {
  329. if (storejs.get("searchHistoryList")) {
  330. let searchHistory = storejs.get("searchHistoryList");
  331. searchHistory.push(item.name);
  332. searchHistory = [...new Set(searchHistory)];
  333. storejs.set("searchHistoryList", searchHistory);
  334. //去重
  335. } else {
  336. let searchHistory = [];
  337. searchHistory.push(item.name);
  338. storejs.set("searchHistoryList", searchHistory);
  339. }
  340. this.$toast(`我选择了${item.name}`);
  341. this.isSearch = false;
  342. this.queryKey = "";
  343. this.searchResList = [];
  344. },
  345. changeCity() {
  346. this.$toast("选择城市待开发");
  347. },
  348. //实例化search
  349. // autoInput() {
  350. // AMap.plugin("AMap.Autocomplete", () => {
  351. // // 实例化Autocomplete
  352. // var autoOptions = {
  353. // city: this.city,
  354. // };
  355. // let autoComplete = new AMap.Autocomplete(autoOptions);
  356. // autoComplete.search(this.queryKey, (status, result) => {
  357. // // 搜索成功时,result即是对应的匹配数据
  358. // console, log("resulte", result);
  359. // });
  360. // });
  361. // },
  362. },
  363. };
  364. </script>
  365. <style lang="less" scoped>
  366. .page {
  367. display: flex;
  368. flex-direction: column;
  369. position: relative;
  370. #search {
  371. width: 100%;
  372. flex-shrink: 0;
  373. .address-search__label {
  374. font-size: 12px;
  375. color: #323233;
  376. display: flex;
  377. align-items: center;
  378. .address-search__icon {
  379. margin-left: 5px;
  380. color: #c8c9cc;
  381. }
  382. }
  383. }
  384. .position {
  385. height: 55px;
  386. flex-shrink: 0;
  387. width: 100%;
  388. padding: 0px 12px;
  389. box-sizing: border-box;
  390. padding-bottom: 10px;
  391. background: #fff;
  392. .title {
  393. line-height: 24px;
  394. color: #666;
  395. font-size: 12px;
  396. }
  397. .result {
  398. display: flex;
  399. justify-content: space-between;
  400. align-items: center;
  401. .left {
  402. display: flex;
  403. align-items: center;
  404. i {
  405. font-size: 12px;
  406. margin-right: 6px;
  407. }
  408. .cityName {
  409. font-size: 14px;
  410. color: #000;
  411. font-weight: 600;
  412. }
  413. }
  414. .right {
  415. font-size: 14px;
  416. color: cornflowerblue;
  417. }
  418. }
  419. }
  420. .topShow {
  421. ::v-deep .van-index-bar__sidebar {
  422. top: 77%;
  423. }
  424. }
  425. .index-list {
  426. flex: 1;
  427. overflow-y: auto;
  428. background: #fff;
  429. width: 100%;
  430. -webkit-overflow-scrolling: touch;
  431. &::-webkit-scrollbar {
  432. width: 2px;
  433. height: 5px;
  434. }
  435. &::-webkit-scrollbar-track,
  436. ::-webkit-scrollbar-thumb {
  437. border-radius: 999px;
  438. border: 0px solid transparent;
  439. }
  440. &::-webkit-scrollbar-track {
  441. box-shadow: 1px 1px 5px rgba(100, 100, 100, 0.2) inset;
  442. }
  443. &::-webkit-scrollbar-thumb {
  444. min-height: 20px;
  445. background-clip: content-box;
  446. box-shadow: 0 0 0 5px rgba(100, 100, 100, 0.5) inset;
  447. }
  448. &::-webkit-scrollbar-corner {
  449. background: transparent;
  450. }
  451. }
  452. .search-list {
  453. flex: 1;
  454. overflow-y: auto;
  455. background: #fff;
  456. width: 100%;
  457. padding: 30px 12px 0;
  458. .searchRes-list-box {
  459. height: 100%;
  460. overflow-y: auto;
  461. -webkit-overflow-scrolling: touch;
  462. .item {
  463. padding: 5px 0;
  464. border-bottom: 1px solid #f1f1f1;
  465. .name {
  466. font-size: 14px;
  467. color: #000;
  468. font-weight: 600;
  469. line-height: 30px;
  470. }
  471. .addr {
  472. color: #666;
  473. font-size: 13px;
  474. line-height: 20px;
  475. overflow: hidden;
  476. text-overflow: ellipsis;
  477. white-space: nowrap;
  478. }
  479. &:last-child {
  480. border-bottom: 0px;
  481. }
  482. }
  483. &::-webkit-scrollbar {
  484. display: none;
  485. }
  486. }
  487. }
  488. }
  489. </style>

三、在utils文件夹下自定义异步加载css、js文件mapfn.js

  1. // 异步加载css文件
  2. export const includeCss = function (filename) {
  3. var head = document.getElementsByTagName("head")[0];
  4. var link = document.createElement("link");
  5. link.href = filename;
  6. link.rel = "stylesheet";
  7. link.type = "text/css";
  8. head.appendChild(link);
  9. }
  10. // 异步加载js文件
  11. export const loadJs = function (libUrl, callback, libName) {
  12. if (window[libName]) {
  13. if (typeof callback === 'function') callback();
  14. }
  15. let head = document.getElementsByTagName("head")[0];
  16. let script = document.createElement("script");
  17. let isCallback = false;
  18. script.type = "text/javascript";
  19. script.src = libUrl;
  20. if (typeof callback == "function") {
  21. script.onload = script.onreadystatechange = function () {
  22. if (
  23. !this.readyState ||
  24. this.readyState === "loaded" ||
  25. this.readyState === "complete"
  26. ) {
  27. if (isCallback === false && typeof callback === 'function') {
  28. isCallback = true;
  29. callback();
  30. }
  31. script.onload = script.onreadystatechange = null;
  32. }
  33. };
  34. }
  35. head.appendChild(script);
  36. }

四、在public文件夹下新建获取城市的json文件city.json

  1. {
  2. "110000": {
  3. "adcode": "110000",
  4. "name": "北京市",
  5. "spell": "Beijing",
  6. "lng": 116.405285,
  7. "lat": 39.904989,
  8. "areaCode": "010"
  9. },
  10. "120000": {
  11. "adcode": "120000",
  12. "name": "天津市",
  13. "spell": "Tianjin",
  14. "lng": 117.190182,
  15. "lat": 39.125596,
  16. "areaCode": "022"
  17. },
  18. "130100": {
  19. "adcode": "130100",
  20. "name": "石家庄市",
  21. "spell": "Shijiazhuang",
  22. "lng": 114.502461,
  23. "lat": 38.045474,
  24. "areaCode": "0311"
  25. },
  26. "130200": {
  27. "adcode": "130200",
  28. "name": "唐山市",
  29. "spell": "Tangshan",
  30. "lng": 118.175393,
  31. "lat": 39.635113,
  32. "areaCode": "0315"
  33. },
  34. "130300": {
  35. "adcode": "130300",
  36. "name": "秦皇岛市",
  37. "spell": "Qinhuangdao",
  38. "lng": 119.586579,
  39. "lat": 39.942531,
  40. "areaCode": "0335"
  41. },
  42. "130400": {
  43. "adcode": "130400",
  44. "name": "邯郸市",
  45. "spell": "Handan",
  46. "lng": 114.490686,
  47. "lat": 36.612273,
  48. "areaCode": "0310"
  49. },
  50. "130500": {
  51. "adcode": "130500",
  52. "name": "邢台市",
  53. "spell": "Xingtai",
  54. "lng": 114.508851,
  55. "lat": 37.0682,
  56. "areaCode": "0319"
  57. },
  58. "130600": {
  59. "adcode": "130600",
  60. "name": "保定市",
  61. "spell": "Baoding",
  62. "lng": 115.482331,
  63. "lat": 38.867657,
  64. "areaCode": "0312"
  65. },
  66. "130700": {
  67. "adcode": "130700",
  68. "name": "张家口市",
  69. "spell": "Zhangjiakou",
  70. "lng": 114.884091,
  71. "lat": 40.811901,
  72. "areaCode": "0313"
  73. },
  74. "130800": {
  75. "adcode": "130800",
  76. "name": "承德市",
  77. "spell": "Chengde",
  78. "lng": 117.939152,
  79. "lat": 40.976204,
  80. "areaCode": "0314"
  81. },
  82. "130900": {
  83. "adcode": "130900",
  84. "name": "沧州市",
  85. "spell": "Cangzhou",
  86. "lng": 116.857461,
  87. "lat": 38.310582,
  88. "areaCode": "0317"
  89. },
  90. "131000": {
  91. "adcode": "131000",
  92. "name": "廊坊市",
  93. "spell": "Langfang",
  94. "lng": 116.713873,
  95. "lat": 39.529244,
  96. "areaCode": "0316"
  97. },
  98. "131100": {
  99. "adcode": "131100",
  100. "name": "衡水市",
  101. "spell": "Hengshui",
  102. "lng": 115.665993,
  103. "lat": 37.735097,
  104. "areaCode": "0318"
  105. },
  106. "140100": {
  107. "adcode": "140100",
  108. "name": "太原市",
  109. "spell": "Taiyuan",
  110. "lng": 112.549248,
  111. "lat": 37.857014,
  112. "areaCode": "0351"
  113. },
  114. "140200": {
  115. "adcode": "140200",
  116. "name": "大同市",
  117. "spell": "Datong",
  118. "lng": 113.295259,
  119. "lat": 40.09031,
  120. "areaCode": "0352"
  121. },
  122. "140300": {
  123. "adcode": "140300",
  124. "name": "阳泉市",
  125. "spell": "Yangquan",
  126. "lng": 113.583285,
  127. "lat": 37.861188,
  128. "areaCode": "0353"
  129. },
  130. "140400": {
  131. "adcode": "140400",
  132. "name": "长治市",
  133. "spell": "Changzhi",
  134. "lng": 113.113556,
  135. "lat": 36.191112,
  136. "areaCode": "0355"
  137. },
  138. "140500": {
  139. "adcode": "140500",
  140. "name": "晋城市",
  141. "spell": "Jincheng",
  142. "lng": 112.851274,
  143. "lat": 35.497553,
  144. "areaCode": "0356"
  145. },
  146. "140600": {
  147. "adcode": "140600",
  148. "name": "朔州市",
  149. "spell": "Shuozhou",
  150. "lng": 112.433387,
  151. "lat": 39.331261,
  152. "areaCode": "0349"
  153. },
  154. "140700": {
  155. "adcode": "140700",
  156. "name": "晋中市",
  157. "spell": "Jinzhong",
  158. "lng": 112.736465,
  159. "lat": 37.696495,
  160. "areaCode": "0354"
  161. },
  162. "140800": {
  163. "adcode": "140800",
  164. "name": "运城市",
  165. "spell": "Yuncheng",
  166. "lng": 111.003957,
  167. "lat": 35.022778,
  168. "areaCode": "0359"
  169. },
  170. "140900": {
  171. "adcode": "140900",
  172. "name": "忻州市",
  173. "spell": "Xinzhou",
  174. "lng": 112.733538,
  175. "lat": 38.41769,
  176. "areaCode": "0350"
  177. },
  178. "141000": {
  179. "adcode": "141000",
  180. "name": "临汾市",
  181. "spell": "Linfen",
  182. "lng": 111.517973,
  183. "lat": 36.08415,
  184. "areaCode": "0357"
  185. },
  186. "141100": {
  187. "adcode": "141100",
  188. "name": "吕梁市",
  189. "spell": "Lvliang",
  190. "lng": 111.134335,
  191. "lat": 37.524366,
  192. "areaCode": "0358"
  193. },
  194. "150100": {
  195. "adcode": "150100",
  196. "name": "呼和浩特市",
  197. "spell": "Hohhot",
  198. "lng": 111.670801,
  199. "lat": 40.818311,
  200. "areaCode": "0471"
  201. },
  202. "150200": {
  203. "adcode": "150200",
  204. "name": "包头市",
  205. "spell": "Baotou",
  206. "lng": 109.840405,
  207. "lat": 40.658168,
  208. "areaCode": "0472"
  209. },
  210. "150300": {
  211. "adcode": "150300",
  212. "name": "乌海市",
  213. "spell": "Wuhai",
  214. "lng": 106.825563,
  215. "lat": 39.673734,
  216. "areaCode": "0473"
  217. },
  218. "150400": {
  219. "adcode": "150400",
  220. "name": "赤峰市",
  221. "spell": "Chifeng",
  222. "lng": 118.956806,
  223. "lat": 42.275317,
  224. "areaCode": "0476"
  225. },
  226. "150500": {
  227. "adcode": "150500",
  228. "name": "通辽市",
  229. "spell": "Tongliao",
  230. "lng": 122.263119,
  231. "lat": 43.617429,
  232. "areaCode": "0475"
  233. },
  234. "150600": {
  235. "adcode": "150600",
  236. "name": "鄂尔多斯市",
  237. "spell": "Ordos",
  238. "lng": 109.99029,
  239. "lat": 39.817179,
  240. "areaCode": "0477"
  241. },
  242. "150700": {
  243. "adcode": "150700",
  244. "name": "呼伦贝尔市",
  245. "spell": "Hulunber",
  246. "lng": 119.758168,
  247. "lat": 49.215333,
  248. "areaCode": "0470"
  249. },
  250. "150800": {
  251. "adcode": "150800",
  252. "name": "巴彦淖尔市",
  253. "spell": "Bayan Nur",
  254. "lng": 107.416959,
  255. "lat": 40.757402,
  256. "areaCode": "0478"
  257. },
  258. "150900": {
  259. "adcode": "150900",
  260. "name": "乌兰察布市",
  261. "spell": "Ulanqab",
  262. "lng": 113.114543,
  263. "lat": 41.034126,
  264. "areaCode": "0474"
  265. },
  266. "152200": {
  267. "adcode": "152200",
  268. "name": "兴安盟",
  269. "spell": "Hinggan",
  270. "lng": 122.070317,
  271. "lat": 46.076268,
  272. "areaCode": "0482"
  273. },
  274. "152500": {
  275. "adcode": "152500",
  276. "name": "锡林郭勒盟",
  277. "spell": "Xilin Gol",
  278. "lng": 116.090996,
  279. "lat": 43.944018,
  280. "areaCode": "0479"
  281. },
  282. "152900": {
  283. "adcode": "152900",
  284. "name": "阿拉善盟",
  285. "spell": "Alxa",
  286. "lng": 105.706422,
  287. "lat": 38.844814,
  288. "areaCode": "0483"
  289. },
  290. "210100": {
  291. "adcode": "210100",
  292. "name": "沈阳市",
  293. "spell": "Shenyang",
  294. "lng": 123.429096,
  295. "lat": 41.796767,
  296. "areaCode": "024"
  297. },
  298. "210200": {
  299. "adcode": "210200",
  300. "name": "大连市",
  301. "spell": "Dalian",
  302. "lng": 121.618622,
  303. "lat": 38.91459,
  304. "areaCode": "0411"
  305. },
  306. "210300": {
  307. "adcode": "210300",
  308. "name": "鞍山市",
  309. "spell": "Anshan",
  310. "lng": 122.995632,
  311. "lat": 41.110626,
  312. "areaCode": "0412"
  313. },
  314. "210400": {
  315. "adcode": "210400",
  316. "name": "抚顺市",
  317. "spell": "Fushun",
  318. "lng": 123.921109,
  319. "lat": 41.875956,
  320. "areaCode": "0413"
  321. },
  322. "210500": {
  323. "adcode": "210500",
  324. "name": "本溪市",
  325. "spell": "Benxi",
  326. "lng": 123.770519,
  327. "lat": 41.297909,
  328. "areaCode": "0414"
  329. },
  330. "210600": {
  331. "adcode": "210600",
  332. "name": "丹东市",
  333. "spell": "Dandong",
  334. "lng": 124.383044,
  335. "lat": 40.124296,
  336. "areaCode": "0415"
  337. },
  338. "210700": {
  339. "adcode": "210700",
  340. "name": "锦州市",
  341. "spell": "Jinzhou",
  342. "lng": 121.135742,
  343. "lat": 41.119269,
  344. "areaCode": "0416"
  345. },
  346. "210800": {
  347. "adcode": "210800",
  348. "name": "营口市",
  349. "spell": "Yingkou",
  350. "lng": 122.235151,
  351. "lat": 40.667432,
  352. "areaCode": "0417"
  353. },
  354. "210900": {
  355. "adcode": "210900",
  356. "name": "阜新市",
  357. "spell": "Fuxin",
  358. "lng": 121.648962,
  359. "lat": 42.011796,
  360. "areaCode": "0418"
  361. },
  362. "211000": {
  363. "adcode": "211000",
  364. "name": "辽阳市",
  365. "spell": "Liaoyang",
  366. "lng": 123.18152,
  367. "lat": 41.269402,
  368. "areaCode": "0419"
  369. },
  370. "211100": {
  371. "adcode": "211100",
  372. "name": "盘锦市",
  373. "spell": "Panjin",
  374. "lng": 122.06957,
  375. "lat": 41.124484,
  376. "areaCode": "0427"
  377. },
  378. "211200": {
  379. "adcode": "211200",
  380. "name": "铁岭市",
  381. "spell": "Tieling",
  382. "lng": 123.844279,
  383. "lat": 42.290585,
  384. "areaCode": "0410"
  385. },
  386. "211300": {
  387. "adcode": "211300",
  388. "name": "朝阳市",
  389. "spell": "Chaoyang",
  390. "lng": 120.451176,
  391. "lat": 41.576758,
  392. "areaCode": "0421"
  393. },
  394. "211400": {
  395. "adcode": "211400",
  396. "name": "葫芦岛市",
  397. "spell": "Huludao",
  398. "lng": 120.856394,
  399. "lat": 40.755572,
  400. "areaCode": "0429"
  401. },
  402. "220100": {
  403. "adcode": "220100",
  404. "name": "长春市",
  405. "spell": "Changchun",
  406. "lng": 125.3245,
  407. "lat": 43.886841,
  408. "areaCode": "0431"
  409. },
  410. "220200": {
  411. "adcode": "220200",
  412. "name": "吉林市",
  413. "spell": "Jilin",
  414. "lng": 126.55302,
  415. "lat": 43.843577,
  416. "areaCode": "0432"
  417. },
  418. "220300": {
  419. "adcode": "220300",
  420. "name": "四平市",
  421. "spell": "Siping",
  422. "lng": 124.370785,
  423. "lat": 43.170344,
  424. "areaCode": "0434"
  425. },
  426. "220400": {
  427. "adcode": "220400",
  428. "name": "辽源市",
  429. "spell": "Liaoyuan",
  430. "lng": 125.145349,
  431. "lat": 42.902692,
  432. "areaCode": "0437"
  433. },
  434. "220500": {
  435. "adcode": "220500",
  436. "name": "通化市",
  437. "spell": "Tonghua",
  438. "lng": 125.936501,
  439. "lat": 41.721177,
  440. "areaCode": "0435"
  441. },
  442. "220600": {
  443. "adcode": "220600",
  444. "name": "白山市",
  445. "spell": "Baishan",
  446. "lng": 126.427839,
  447. "lat": 41.942505,
  448. "areaCode": "0439"
  449. },
  450. "220700": {
  451. "adcode": "220700",
  452. "name": "松原市",
  453. "spell": "Songyuan",
  454. "lng": 124.823608,
  455. "lat": 45.118243,
  456. "areaCode": "0438"
  457. },
  458. "220800": {
  459. "adcode": "220800",
  460. "name": "白城市",
  461. "spell": "Baicheng",
  462. "lng": 122.841114,
  463. "lat": 45.619026,
  464. "areaCode": "0436"
  465. },
  466. "222400": {
  467. "adcode": "222400",
  468. "name": "延边朝鲜族自治州",
  469. "spell": "Yanbian",
  470. "lng": 129.513228,
  471. "lat": 42.904823,
  472. "areaCode": "1433"
  473. },
  474. "230100": {
  475. "adcode": "230100",
  476. "name": "哈尔滨市",
  477. "spell": "Harbin",
  478. "lng": 126.642464,
  479. "lat": 45.756967,
  480. "areaCode": "0451"
  481. },
  482. "230200": {
  483. "adcode": "230200",
  484. "name": "齐齐哈尔市",
  485. "spell": "Qiqihar",
  486. "lng": 123.953486,
  487. "lat": 47.348079,
  488. "areaCode": "0452"
  489. },
  490. "230300": {
  491. "adcode": "230300",
  492. "name": "鸡西市",
  493. "spell": "Jixi",
  494. "lng": 130.975966,
  495. "lat": 45.300046,
  496. "areaCode": "0467"
  497. },
  498. "230400": {
  499. "adcode": "230400",
  500. "name": "鹤岗市",
  501. "spell": "Hegang",
  502. "lng": 130.277487,
  503. "lat": 47.332085,
  504. "areaCode": "0468"
  505. },
  506. "230500": {
  507. "adcode": "230500",
  508. "name": "双鸭山市",
  509. "spell": "Shuangyashan",
  510. "lng": 131.157304,
  511. "lat": 46.643442,
  512. "areaCode": "0469"
  513. },
  514. "230600": {
  515. "adcode": "230600",
  516. "name": "大庆市",
  517. "spell": "Daqing",
  518. "lng": 125.11272,
  519. "lat": 46.590734,
  520. "areaCode": "0459"
  521. },
  522. "230700": {
  523. "adcode": "230700",
  524. "name": "伊春市",
  525. "spell": "Yichun",
  526. "lng": 128.899396,
  527. "lat": 47.724775,
  528. "areaCode": "0458"
  529. },
  530. "230800": {
  531. "adcode": "230800",
  532. "name": "佳木斯市",
  533. "spell": "Jiamusi",
  534. "lng": 130.361634,
  535. "lat": 46.809606,
  536. "areaCode": "0454"
  537. },
  538. "230900": {
  539. "adcode": "230900",
  540. "name": "七台河市",
  541. "spell": "Qitaihe",
  542. "lng": 131.015584,
  543. "lat": 45.771266,
  544. "areaCode": "0464"
  545. },
  546. "231000": {
  547. "adcode": "231000",
  548. "name": "牡丹江市",
  549. "spell": "Mudanjiang",
  550. "lng": 129.618602,
  551. "lat": 44.582962,
  552. "areaCode": "0453"
  553. },
  554. "231100": {
  555. "adcode": "231100",
  556. "name": "黑河市",
  557. "spell": "Heihe",
  558. "lng": 127.499023,
  559. "lat": 50.249585,
  560. "areaCode": "0456"
  561. },
  562. "231200": {
  563. "adcode": "231200",
  564. "name": "绥化市",
  565. "spell": "Suihua",
  566. "lng": 126.99293,
  567. "lat": 46.637393,
  568. "areaCode": "0455"
  569. },
  570. "232700": {
  571. "adcode": "232700",
  572. "name": "大兴安岭地区",
  573. "spell": "Da Hinggan Ling",
  574. "lng": 124.711526,
  575. "lat": 52.335262,
  576. "areaCode": "0457"
  577. },
  578. "310000": {
  579. "adcode": "310000",
  580. "name": "上海市",
  581. "spell": "Shanghai",
  582. "lng": 121.472644,
  583. "lat": 31.231706,
  584. "areaCode": "021"
  585. },
  586. "320100": {
  587. "adcode": "320100",
  588. "name": "南京市",
  589. "spell": "Nanjing",
  590. "lng": 118.767413,
  591. "lat": 32.041544,
  592. "areaCode": "025"
  593. },
  594. "320200": {
  595. "adcode": "320200",
  596. "name": "无锡市",
  597. "spell": "Wuxi",
  598. "lng": 120.301663,
  599. "lat": 31.574729,
  600. "areaCode": "0510"
  601. },
  602. "320300": {
  603. "adcode": "320300",
  604. "name": "徐州市",
  605. "spell": "Xuzhou",
  606. "lng": 117.184811,
  607. "lat": 34.261792,
  608. "areaCode": "0516"
  609. },
  610. "320400": {
  611. "adcode": "320400",
  612. "name": "常州市",
  613. "spell": "Changzhou",
  614. "lng": 119.946973,
  615. "lat": 31.772752,
  616. "areaCode": "0519"
  617. },
  618. "320500": {
  619. "adcode": "320500",
  620. "name": "苏州市",
  621. "spell": "Suzhou",
  622. "lng": 120.619585,
  623. "lat": 31.299379,
  624. "areaCode": "0512"
  625. },
  626. "320600": {
  627. "adcode": "320600",
  628. "name": "南通市",
  629. "spell": "Nantong",
  630. "lng": 120.864608,
  631. "lat": 32.016212,
  632. "areaCode": "0513"
  633. },
  634. "320700": {
  635. "adcode": "320700",
  636. "name": "连云港市",
  637. "spell": "Lianyungang",
  638. "lng": 119.178821,
  639. "lat": 34.600018,
  640. "areaCode": "0518"
  641. },
  642. "320800": {
  643. "adcode": "320800",
  644. "name": "淮安市",
  645. "spell": "Huai'an",
  646. "lng": 119.021265,
  647. "lat": 33.597506,
  648. "areaCode": "0517"
  649. },
  650. "320900": {
  651. "adcode": "320900",
  652. "name": "盐城市",
  653. "spell": "Yancheng",
  654. "lng": 120.139998,
  655. "lat": 33.377631,
  656. "areaCode": "0515"
  657. },
  658. "321000": {
  659. "adcode": "321000",
  660. "name": "扬州市",
  661. "spell": "Yangzhou",
  662. "lng": 119.421003,
  663. "lat": 32.393159,
  664. "areaCode": "0514"
  665. },
  666. "321100": {
  667. "adcode": "321100",
  668. "name": "镇江市",
  669. "spell": "Zhenjiang",
  670. "lng": 119.452753,
  671. "lat": 32.204402,
  672. "areaCode": "0511"
  673. },
  674. "321200": {
  675. "adcode": "321200",
  676. "name": "泰州市",
  677. "spell": "Taizhou",
  678. "lng": 119.915176,
  679. "lat": 32.484882,
  680. "areaCode": "0523"
  681. },
  682. "321300": {
  683. "adcode": "321300",
  684. "name": "宿迁市",
  685. "spell": "Suqian",
  686. "lng": 118.293328,
  687. "lat": 33.945154,
  688. "areaCode": "0527"
  689. },
  690. "330100": {
  691. "adcode": "330100",
  692. "name": "杭州市",
  693. "spell": "Hangzhou",
  694. "lng": 120.153576,
  695. "lat": 30.287459,
  696. "areaCode": "0571"
  697. },
  698. "330200": {
  699. "adcode": "330200",
  700. "name": "宁波市",
  701. "spell": "Ningbo",
  702. "lng": 121.549792,
  703. "lat": 29.868388,
  704. "areaCode": "0574"
  705. },
  706. "330300": {
  707. "adcode": "330300",
  708. "name": "温州市",
  709. "spell": "Wenzhou",
  710. "lng": 120.672111,
  711. "lat": 28.000575,
  712. "areaCode": "0577"
  713. },
  714. "330400": {
  715. "adcode": "330400",
  716. "name": "嘉兴市",
  717. "spell": "Jiaxing",
  718. "lng": 120.750865,
  719. "lat": 30.762653,
  720. "areaCode": "0573"
  721. },
  722. "330500": {
  723. "adcode": "330500",
  724. "name": "湖州市",
  725. "spell": "Huzhou",
  726. "lng": 120.102398,
  727. "lat": 30.867198,
  728. "areaCode": "0572"
  729. },
  730. "330600": {
  731. "adcode": "330600",
  732. "name": "绍兴市",
  733. "spell": "Shaoxing",
  734. "lng": 120.582112,
  735. "lat": 29.997117,
  736. "areaCode": "0575"
  737. },
  738. "330700": {
  739. "adcode": "330700",
  740. "name": "金华市",
  741. "spell": "Jinhua",
  742. "lng": 119.649506,
  743. "lat": 29.089524,
  744. "areaCode": "0579"
  745. },
  746. "330800": {
  747. "adcode": "330800",
  748. "name": "衢州市",
  749. "spell": "Quzhou",
  750. "lng": 118.87263,
  751. "lat": 28.941708,
  752. "areaCode": "0570"
  753. },
  754. "330900": {
  755. "adcode": "330900",
  756. "name": "舟山市",
  757. "spell": "Zhoushan",
  758. "lng": 122.106863,
  759. "lat": 30.016028,
  760. "areaCode": "0580"
  761. },
  762. "331000": {
  763. "adcode": "331000",
  764. "name": "台州市",
  765. "spell": "Taizhou",
  766. "lng": 121.428599,
  767. "lat": 28.661378,
  768. "areaCode": "0576"
  769. },
  770. "331100": {
  771. "adcode": "331100",
  772. "name": "丽水市",
  773. "spell": "Lishui",
  774. "lng": 119.921786,
  775. "lat": 28.451993,
  776. "areaCode": "0578"
  777. },
  778. "340100": {
  779. "adcode": "340100",
  780. "name": "合肥市",
  781. "spell": "Hefei",
  782. "lng": 117.283042,
  783. "lat": 31.86119,
  784. "areaCode": "0551"
  785. },
  786. "340200": {
  787. "adcode": "340200",
  788. "name": "芜湖市",
  789. "spell": "Wuhu",
  790. "lng": 118.376451,
  791. "lat": 31.326319,
  792. "areaCode": "0553"
  793. },
  794. "340300": {
  795. "adcode": "340300",
  796. "name": "蚌埠市",
  797. "spell": "Bengbu",
  798. "lng": 117.36237,
  799. "lat": 32.934037,
  800. "areaCode": "0552"
  801. },
  802. "340400": {
  803. "adcode": "340400",
  804. "name": "淮南市",
  805. "spell": "Huainan",
  806. "lng": 117.025449,
  807. "lat": 32.645947,
  808. "areaCode": "0554"
  809. },
  810. "340500": {
  811. "adcode": "340500",
  812. "name": "马鞍山市",
  813. "spell": "Ma'anshan",
  814. "lng": 118.507906,
  815. "lat": 31.689362,
  816. "areaCode": "0555"
  817. },
  818. "340600": {
  819. "adcode": "340600",
  820. "name": "淮北市",
  821. "spell": "Huaibei",
  822. "lng": 116.794664,
  823. "lat": 33.971707,
  824. "areaCode": "0561"
  825. },
  826. "340700": {
  827. "adcode": "340700",
  828. "name": "铜陵市",
  829. "spell": "Tongling",
  830. "lng": 117.816576,
  831. "lat": 30.929935,
  832. "areaCode": "0562"
  833. },
  834. "340800": {
  835. "adcode": "340800",
  836. "name": "安庆市",
  837. "spell": "Anqing",
  838. "lng": 117.053571,
  839. "lat": 30.524816,
  840. "areaCode": "0556"
  841. },
  842. "341000": {
  843. "adcode": "341000",
  844. "name": "黄山市",
  845. "spell": "Huangshan",
  846. "lng": 118.317325,
  847. "lat": 29.709239,
  848. "areaCode": "0559"
  849. },
  850. "341100": {
  851. "adcode": "341100",
  852. "name": "滁州市",
  853. "spell": "Chuzhou",
  854. "lng": 118.316264,
  855. "lat": 32.303627,
  856. "areaCode": "0550"
  857. },
  858. "341200": {
  859. "adcode": "341200",
  860. "name": "阜阳市",
  861. "spell": "Fuyang",
  862. "lng": 115.819729,
  863. "lat": 32.896969,
  864. "areaCode": "1558"
  865. },
  866. "341300": {
  867. "adcode": "341300",
  868. "name": "宿州市",
  869. "spell": "Suzhou",
  870. "lng": 116.984084,
  871. "lat": 33.633891,
  872. "areaCode": "0557"
  873. },
  874. "341500": {
  875. "adcode": "341500",
  876. "name": "六安市",
  877. "spell": "Lu'an",
  878. "lng": 116.507676,
  879. "lat": 31.752889,
  880. "areaCode": "0564"
  881. },
  882. "341600": {
  883. "adcode": "341600",
  884. "name": "亳州市",
  885. "spell": "Bozhou",
  886. "lng": 115.782939,
  887. "lat": 33.869338,
  888. "areaCode": "0558"
  889. },
  890. "341700": {
  891. "adcode": "341700",
  892. "name": "池州市",
  893. "spell": "Chizhou",
  894. "lng": 117.489157,
  895. "lat": 30.656037,
  896. "areaCode": "0566"
  897. },
  898. "341800": {
  899. "adcode": "341800",
  900. "name": "宣城市",
  901. "spell": "Xuancheng",
  902. "lng": 118.757995,
  903. "lat": 30.945667,
  904. "areaCode": "0563"
  905. },
  906. "350100": {
  907. "adcode": "350100",
  908. "name": "福州市",
  909. "spell": "Fuzhou",
  910. "lng": 119.306239,
  911. "lat": 26.075302,
  912. "areaCode": "0591"
  913. },
  914. "350200": {
  915. "adcode": "350200",
  916. "name": "厦门市",
  917. "spell": "Xiamen",
  918. "lng": 118.11022,
  919. "lat": 24.490474,
  920. "areaCode": "0592"
  921. },
  922. "350300": {
  923. "adcode": "350300",
  924. "name": "莆田市",
  925. "spell": "Putian",
  926. "lng": 119.007558,
  927. "lat": 25.431011,
  928. "areaCode": "0594"
  929. },
  930. "350400": {
  931. "adcode": "350400",
  932. "name": "三明市",
  933. "spell": "Sanming",
  934. "lng": 117.635001,
  935. "lat": 26.265444,
  936. "areaCode": "0598"
  937. },
  938. "350500": {
  939. "adcode": "350500",
  940. "name": "泉州市",
  941. "spell": "Quanzhou",
  942. "lng": 118.589421,
  943. "lat": 24.908853,
  944. "areaCode": "0595"
  945. },
  946. "350600": {
  947. "adcode": "350600",
  948. "name": "漳州市",
  949. "spell": "Zhangzhou",
  950. "lng": 117.661801,
  951. "lat": 24.510897,
  952. "areaCode": "0596"
  953. },
  954. "350700": {
  955. "adcode": "350700",
  956. "name": "南平市",
  957. "spell": "Nanping",
  958. "lng": 118.178459,
  959. "lat": 26.635627,
  960. "areaCode": "0599"
  961. },
  962. "350800": {
  963. "adcode": "350800",
  964. "name": "龙岩市",
  965. "spell": "Longyan",
  966. "lng": 117.02978,
  967. "lat": 25.091603,
  968. "areaCode": "0597"
  969. },
  970. "350900": {
  971. "adcode": "350900",
  972. "name": "宁德市",
  973. "spell": "Ningde",
  974. "lng": 119.527082,
  975. "lat": 26.65924,
  976. "areaCode": "0593"
  977. },
  978. "360100": {
  979. "adcode": "360100",
  980. "name": "南昌市",
  981. "spell": "Nanchang",
  982. "lng": 115.892151,
  983. "lat": 28.676493,
  984. "areaCode": "0791"
  985. },
  986. "360200": {
  987. "adcode": "360200",
  988. "name": "景德镇市",
  989. "spell": "Jingdezhen",
  990. "lng": 117.214664,
  991. "lat": 29.29256,
  992. "areaCode": "0798"
  993. },
  994. "360300": {
  995. "adcode": "360300",
  996. "name": "萍乡市",
  997. "spell": "Pingxiang",
  998. "lng": 113.852186,
  999. "lat": 27.622946,
  1000. "areaCode": "0799"
  1001. },
  1002. "360400": {
  1003. "adcode": "360400",
  1004. "name": "九江市",
  1005. "spell": "Jiujiang",
  1006. "lng": 115.992811,
  1007. "lat": 29.712034,
  1008. "areaCode": "0792"
  1009. },
  1010. "360500": {
  1011. "adcode": "360500",
  1012. "name": "新余市",
  1013. "spell": "Xinyu",
  1014. "lng": 114.930835,
  1015. "lat": 27.810834,
  1016. "areaCode": "0790"
  1017. },
  1018. "360600": {
  1019. "adcode": "360600",
  1020. "name": "鹰潭市",
  1021. "spell": "Yingtan",
  1022. "lng": 117.033838,
  1023. "lat": 28.238638,
  1024. "areaCode": "0701"
  1025. },
  1026. "360700": {
  1027. "adcode": "360700",
  1028. "name": "赣州市",
  1029. "spell": "Ganzhou",
  1030. "lng": 114.940278,
  1031. "lat": 25.85097,
  1032. "areaCode": "0797"
  1033. },
  1034. "360800": {
  1035. "adcode": "360800",
  1036. "name": "吉安市",
  1037. "spell": "Ji'an",
  1038. "lng": 114.986373,
  1039. "lat": 27.111699,
  1040. "areaCode": "0796"
  1041. },
  1042. "360900": {
  1043. "adcode": "360900",
  1044. "name": "宜春市",
  1045. "spell": "Yichun",
  1046. "lng": 114.391136,
  1047. "lat": 27.8043,
  1048. "areaCode": "0795"
  1049. },
  1050. "361000": {
  1051. "adcode": "361000",
  1052. "name": "抚州市",
  1053. "spell": "Fuzhou",
  1054. "lng": 116.358351,
  1055. "lat": 27.98385,
  1056. "areaCode": "0794"
  1057. },
  1058. "361100": {
  1059. "adcode": "361100",
  1060. "name": "上饶市",
  1061. "spell": "Shangrao",
  1062. "lng": 117.971185,
  1063. "lat": 28.44442,
  1064. "areaCode": "0793"
  1065. },
  1066. "370100": {
  1067. "adcode": "370100",
  1068. "name": "济南市",
  1069. "spell": "Jinan",
  1070. "lng": 117.000923,
  1071. "lat": 36.675807,
  1072. "areaCode": "0531"
  1073. },
  1074. "370200": {
  1075. "adcode": "370200",
  1076. "name": "青岛市",
  1077. "spell": "Qingdao",
  1078. "lng": 120.369557,
  1079. "lat": 36.094406,
  1080. "areaCode": "0532"
  1081. },
  1082. "370300": {
  1083. "adcode": "370300",
  1084. "name": "淄博市",
  1085. "spell": "Zibo",
  1086. "lng": 118.047648,
  1087. "lat": 36.814939,
  1088. "areaCode": "0533"
  1089. },
  1090. "370400": {
  1091. "adcode": "370400",
  1092. "name": "枣庄市",
  1093. "spell": "Zaozhuang",
  1094. "lng": 117.557964,
  1095. "lat": 34.856424,
  1096. "areaCode": "0632"
  1097. },
  1098. "370500": {
  1099. "adcode": "370500",
  1100. "name": "东营市",
  1101. "spell": "Dongying",
  1102. "lng": 118.4963,
  1103. "lat": 37.461266,
  1104. "areaCode": "0546"
  1105. },
  1106. "370600": {
  1107. "adcode": "370600",
  1108. "name": "烟台市",
  1109. "spell": "Yantai",
  1110. "lng": 121.391382,
  1111. "lat": 37.539297,
  1112. "areaCode": "0535"
  1113. },
  1114. "370700": {
  1115. "adcode": "370700",
  1116. "name": "潍坊市",
  1117. "spell": "Weifang",
  1118. "lng": 119.107078,
  1119. "lat": 36.70925,
  1120. "areaCode": "0536"
  1121. },
  1122. "370800": {
  1123. "adcode": "370800",
  1124. "name": "济宁市",
  1125. "spell": "Jining",
  1126. "lng": 116.587245,
  1127. "lat": 35.415393,
  1128. "areaCode": "0537"
  1129. },
  1130. "370900": {
  1131. "adcode": "370900",
  1132. "name": "泰安市",
  1133. "spell": "Tai'an",
  1134. "lng": 117.129063,
  1135. "lat": 36.194968,
  1136. "areaCode": "0538"
  1137. },
  1138. "371000": {
  1139. "adcode": "371000",
  1140. "name": "威海市",
  1141. "spell": "Weihai",
  1142. "lng": 122.116394,
  1143. "lat": 37.509691,
  1144. "areaCode": "0631"
  1145. },
  1146. "371100": {
  1147. "adcode": "371100",
  1148. "name": "日照市",
  1149. "spell": "Rizhao",
  1150. "lng": 119.461208,
  1151. "lat": 35.428588,
  1152. "areaCode": "0633"
  1153. },
  1154. "371200": {
  1155. "adcode": "371200",
  1156. "name": "莱芜市",
  1157. "spell": "Laiwu",
  1158. "lng": 117.677736,
  1159. "lat": 36.214397,
  1160. "areaCode": "0634"
  1161. },
  1162. "371300": {
  1163. "adcode": "371300",
  1164. "name": "临沂市",
  1165. "spell": "Linyi",
  1166. "lng": 118.326443,
  1167. "lat": 35.065282,
  1168. "areaCode": "0539"
  1169. },
  1170. "371400": {
  1171. "adcode": "371400",
  1172. "name": "德州市",
  1173. "spell": "Dezhou",
  1174. "lng": 116.307428,
  1175. "lat": 37.453968,
  1176. "areaCode": "0534"
  1177. },
  1178. "371500": {
  1179. "adcode": "371500",
  1180. "name": "聊城市",
  1181. "spell": "Liaocheng",
  1182. "lng": 115.980367,
  1183. "lat": 36.456013,
  1184. "areaCode": "0635"
  1185. },
  1186. "371600": {
  1187. "adcode": "371600",
  1188. "name": "滨州市",
  1189. "spell": "Binzhou",
  1190. "lng": 118.016974,
  1191. "lat": 37.383542,
  1192. "areaCode": "0543"
  1193. },
  1194. "371700": {
  1195. "adcode": "371700",
  1196. "name": "菏泽市",
  1197. "spell": "Heze",
  1198. "lng": 115.469381,
  1199. "lat": 35.246531,
  1200. "areaCode": "0530"
  1201. },
  1202. "410100": {
  1203. "adcode": "410100",
  1204. "name": "郑州市",
  1205. "spell": "Zhengzhou",
  1206. "lng": 113.665412,
  1207. "lat": 34.757975,
  1208. "areaCode": "0371"
  1209. },
  1210. "410200": {
  1211. "adcode": "410200",
  1212. "name": "开封市",
  1213. "spell": "Kaifeng",
  1214. "lng": 114.341447,
  1215. "lat": 34.797049,
  1216. "areaCode": "0378"
  1217. },
  1218. "410300": {
  1219. "adcode": "410300",
  1220. "name": "洛阳市",
  1221. "spell": "Luoyang",
  1222. "lng": 112.434468,
  1223. "lat": 34.663041,
  1224. "areaCode": "0379"
  1225. },
  1226. "410400": {
  1227. "adcode": "410400",
  1228. "name": "平顶山市",
  1229. "spell": "Pingdingshan",
  1230. "lng": 113.307718,
  1231. "lat": 33.735241,
  1232. "areaCode": "0375"
  1233. },
  1234. "410500": {
  1235. "adcode": "410500",
  1236. "name": "安阳市",
  1237. "spell": "Anyang",
  1238. "lng": 114.352482,
  1239. "lat": 36.103442,
  1240. "areaCode": "0372"
  1241. },
  1242. "410600": {
  1243. "adcode": "410600",
  1244. "name": "鹤壁市",
  1245. "spell": "Hebi",
  1246. "lng": 114.295444,
  1247. "lat": 35.748236,
  1248. "areaCode": "0392"
  1249. },
  1250. "410700": {
  1251. "adcode": "410700",
  1252. "name": "新乡市",
  1253. "spell": "Xinxiang",
  1254. "lng": 113.883991,
  1255. "lat": 35.302616,
  1256. "areaCode": "0373"
  1257. },
  1258. "410800": {
  1259. "adcode": "410800",
  1260. "name": "焦作市",
  1261. "spell": "Jiaozuo",
  1262. "lng": 113.238266,
  1263. "lat": 35.23904,
  1264. "areaCode": "0391"
  1265. },
  1266. "410900": {
  1267. "adcode": "410900",
  1268. "name": "濮阳市",
  1269. "spell": "Puyang",
  1270. "lng": 115.041299,
  1271. "lat": 35.768234,
  1272. "areaCode": "0393"
  1273. },
  1274. "411000": {
  1275. "adcode": "411000",
  1276. "name": "许昌市",
  1277. "spell": "Xuchang",
  1278. "lng": 113.826063,
  1279. "lat": 34.022956,
  1280. "areaCode": "0374"
  1281. },
  1282. "411100": {
  1283. "adcode": "411100",
  1284. "name": "漯河市",
  1285. "spell": "Luohe",
  1286. "lng": 114.026405,
  1287. "lat": 33.575855,
  1288. "areaCode": "0395"
  1289. },
  1290. "411200": {
  1291. "adcode": "411200",
  1292. "name": "三门峡市",
  1293. "spell": "Sanmenxia",
  1294. "lng": 111.194099,
  1295. "lat": 34.777338,
  1296. "areaCode": "0398"
  1297. },
  1298. "411300": {
  1299. "adcode": "411300",
  1300. "name": "南阳市",
  1301. "spell": "Nanyang",
  1302. "lng": 112.540918,
  1303. "lat": 32.999082,
  1304. "areaCode": "0377"
  1305. },
  1306. "411400": {
  1307. "adcode": "411400",
  1308. "name": "商丘市",
  1309. "spell": "Shangqiu",
  1310. "lng": 115.650497,
  1311. "lat": 34.437054,
  1312. "areaCode": "0370"
  1313. },
  1314. "411500": {
  1315. "adcode": "411500",
  1316. "name": "信阳市",
  1317. "spell": "Xinyang",
  1318. "lng": 114.075031,
  1319. "lat": 32.123274,
  1320. "areaCode": "0376"
  1321. },
  1322. "411600": {
  1323. "adcode": "411600",
  1324. "name": "周口市",
  1325. "spell": "Zhoukou",
  1326. "lng": 114.649653,
  1327. "lat": 33.620357,
  1328. "areaCode": "0394"
  1329. },
  1330. "411700": {
  1331. "adcode": "411700",
  1332. "name": "驻马店市",
  1333. "spell": "Zhumadian",
  1334. "lng": 114.024736,
  1335. "lat": 32.980169,
  1336. "areaCode": "0396"
  1337. },
  1338. "419001": {
  1339. "adcode": "419001",
  1340. "name": "济源市",
  1341. "spell": "Jiyuan",
  1342. "lng": 112.590047,
  1343. "lat": 35.090378,
  1344. "areaCode": "1391"
  1345. },
  1346. "420100": {
  1347. "adcode": "420100",
  1348. "name": "武汉市",
  1349. "spell": "Wuhan",
  1350. "lng": 114.298572,
  1351. "lat": 30.584355,
  1352. "areaCode": "027"
  1353. },
  1354. "420200": {
  1355. "adcode": "420200",
  1356. "name": "黄石市",
  1357. "spell": "Huangshi",
  1358. "lng": 115.077048,
  1359. "lat": 30.220074,
  1360. "areaCode": "0714"
  1361. },
  1362. "420300": {
  1363. "adcode": "420300",
  1364. "name": "十堰市",
  1365. "spell": "Shiyan",
  1366. "lng": 110.785239,
  1367. "lat": 32.647017,
  1368. "areaCode": "0719"
  1369. },
  1370. "420500": {
  1371. "adcode": "420500",
  1372. "name": "宜昌市",
  1373. "spell": "Yichang",
  1374. "lng": 111.290843,
  1375. "lat": 30.702636,
  1376. "areaCode": "0717"
  1377. },
  1378. "420600": {
  1379. "adcode": "420600",
  1380. "name": "襄阳市",
  1381. "spell": "Xiangyang",
  1382. "lng": 112.144146,
  1383. "lat": 32.042426,
  1384. "areaCode": "0710"
  1385. },
  1386. "420700": {
  1387. "adcode": "420700",
  1388. "name": "鄂州市",
  1389. "spell": "Ezhou",
  1390. "lng": 114.890593,
  1391. "lat": 30.396536,
  1392. "areaCode": "0711"
  1393. },
  1394. "420800": {
  1395. "adcode": "420800",
  1396. "name": "荆门市",
  1397. "spell": "Jingmen",
  1398. "lng": 112.204251,
  1399. "lat": 31.03542,
  1400. "areaCode": "0724"
  1401. },
  1402. "420900": {
  1403. "adcode": "420900",
  1404. "name": "孝感市",
  1405. "spell": "Xiaogan",
  1406. "lng": 113.926655,
  1407. "lat": 30.926423,
  1408. "areaCode": "0712"
  1409. },
  1410. "421000": {
  1411. "adcode": "421000",
  1412. "name": "荆州市",
  1413. "spell": "Jingzhou",
  1414. "lng": 112.23813,
  1415. "lat": 30.326857,
  1416. "areaCode": "0716"
  1417. },
  1418. "421100": {
  1419. "adcode": "421100",
  1420. "name": "黄冈市",
  1421. "spell": "Huanggang",
  1422. "lng": 114.879365,
  1423. "lat": 30.447711,
  1424. "areaCode": "0713"
  1425. },
  1426. "421200": {
  1427. "adcode": "421200",
  1428. "name": "咸宁市",
  1429. "spell": "Xianning",
  1430. "lng": 114.328963,
  1431. "lat": 29.832798,
  1432. "areaCode": "0715"
  1433. },
  1434. "421300": {
  1435. "adcode": "421300",
  1436. "name": "随州市",
  1437. "spell": "Suizhou",
  1438. "lng": 113.37377,
  1439. "lat": 31.717497,
  1440. "areaCode": "0722"
  1441. },
  1442. "422800": {
  1443. "adcode": "422800",
  1444. "name": "恩施土家族苗族自治州",
  1445. "spell": "Enshi",
  1446. "lng": 109.48699,
  1447. "lat": 30.283114,
  1448. "areaCode": "0718"
  1449. },
  1450. "429004": {
  1451. "adcode": "429004",
  1452. "name": "仙桃市",
  1453. "spell": "Xiantao",
  1454. "lng": 113.453974,
  1455. "lat": 30.364953,
  1456. "areaCode": "0728"
  1457. },
  1458. "429005": {
  1459. "adcode": "429005",
  1460. "name": "潜江市",
  1461. "spell": "Qianjiang",
  1462. "lng": 112.896866,
  1463. "lat": 30.421215,
  1464. "areaCode": "2728"
  1465. },
  1466. "429006": {
  1467. "adcode": "429006",
  1468. "name": "天门市",
  1469. "spell": "Tianmen",
  1470. "lng": 113.165862,
  1471. "lat": 30.653061,
  1472. "areaCode": "1728"
  1473. },
  1474. "429021": {
  1475. "adcode": "429021",
  1476. "name": "神农架林区",
  1477. "spell": "Shennongjia",
  1478. "lng": 110.671525,
  1479. "lat": 31.744449,
  1480. "areaCode": "1719"
  1481. },
  1482. "430100": {
  1483. "adcode": "430100",
  1484. "name": "长沙市",
  1485. "spell": "Changsha",
  1486. "lng": 112.982279,
  1487. "lat": 28.19409,
  1488. "areaCode": "0731"
  1489. },
  1490. "430200": {
  1491. "adcode": "430200",
  1492. "name": "株洲市",
  1493. "spell": "Zhuzhou",
  1494. "lng": 113.151737,
  1495. "lat": 27.835806,
  1496. "areaCode": "0733"
  1497. },
  1498. "430300": {
  1499. "adcode": "430300",
  1500. "name": "湘潭市",
  1501. "spell": "Xiangtan",
  1502. "lng": 112.925083,
  1503. "lat": 27.846725,
  1504. "areaCode": "0732"
  1505. },
  1506. "430400": {
  1507. "adcode": "430400",
  1508. "name": "衡阳市",
  1509. "spell": "Hengyang",
  1510. "lng": 112.607693,
  1511. "lat": 26.900358,
  1512. "areaCode": "0734"
  1513. },
  1514. "430500": {
  1515. "adcode": "430500",
  1516. "name": "邵阳市",
  1517. "spell": "Shaoyang",
  1518. "lng": 111.46923,
  1519. "lat": 27.237842,
  1520. "areaCode": "0739"
  1521. },
  1522. "430600": {
  1523. "adcode": "430600",
  1524. "name": "岳阳市",
  1525. "spell": "Yueyang",
  1526. "lng": 113.132855,
  1527. "lat": 29.37029,
  1528. "areaCode": "0730"
  1529. },
  1530. "430700": {
  1531. "adcode": "430700",
  1532. "name": "常德市",
  1533. "spell": "Changde",
  1534. "lng": 111.691347,
  1535. "lat": 29.040225,
  1536. "areaCode": "0736"
  1537. },
  1538. "430800": {
  1539. "adcode": "430800",
  1540. "name": "张家界市",
  1541. "spell": "Zhangjiajie",
  1542. "lng": 110.479921,
  1543. "lat": 29.127401,
  1544. "areaCode": "0744"
  1545. },
  1546. "430900": {
  1547. "adcode": "430900",
  1548. "name": "益阳市",
  1549. "spell": "Yiyang",
  1550. "lng": 112.355042,
  1551. "lat": 28.570066,
  1552. "areaCode": "0737"
  1553. },
  1554. "431000": {
  1555. "adcode": "431000",
  1556. "name": "郴州市",
  1557. "spell": "Chenzhou",
  1558. "lng": 113.032067,
  1559. "lat": 25.793589,
  1560. "areaCode": "0735"
  1561. },
  1562. "431100": {
  1563. "adcode": "431100",
  1564. "name": "永州市",
  1565. "spell": "Yongzhou",
  1566. "lng": 111.608019,
  1567. "lat": 26.434516,
  1568. "areaCode": "0746"
  1569. },
  1570. "431200": {
  1571. "adcode": "431200",
  1572. "name": "怀化市",
  1573. "spell": "Huaihua",
  1574. "lng": 109.97824,
  1575. "lat": 27.550082,
  1576. "areaCode": "0745"
  1577. },
  1578. "431300": {
  1579. "adcode": "431300",
  1580. "name": "娄底市",
  1581. "spell": "Loudi",
  1582. "lng": 112.008497,
  1583. "lat": 27.728136,
  1584. "areaCode": "0738"
  1585. },
  1586. "433100": {
  1587. "adcode": "433100",
  1588. "name": "湘西土家族苗族自治州",
  1589. "spell": "Xiangxi",
  1590. "lng": 109.739735,
  1591. "lat": 28.314296,
  1592. "areaCode": "0743"
  1593. },
  1594. "440100": {
  1595. "adcode": "440100",
  1596. "name": "广州市",
  1597. "spell": "Guangzhou",
  1598. "lng": 113.280637,
  1599. "lat": 23.125178,
  1600. "areaCode": "020"
  1601. },
  1602. "440200": {
  1603. "adcode": "440200",
  1604. "name": "韶关市",
  1605. "spell": "Shaoguan",
  1606. "lng": 113.591544,
  1607. "lat": 24.801322,
  1608. "areaCode": "0751"
  1609. },
  1610. "440300": {
  1611. "adcode": "440300",
  1612. "name": "深圳市",
  1613. "spell": "Shenzhen",
  1614. "lng": 114.085947,
  1615. "lat": 22.547,
  1616. "areaCode": "0755"
  1617. },
  1618. "440400": {
  1619. "adcode": "440400",
  1620. "name": "珠海市",
  1621. "spell": "Zhuhai",
  1622. "lng": 113.552724,
  1623. "lat": 22.255899,
  1624. "areaCode": "0756"
  1625. },
  1626. "440500": {
  1627. "adcode": "440500",
  1628. "name": "汕头市",
  1629. "spell": "Shantou",
  1630. "lng": 116.708463,
  1631. "lat": 23.37102,
  1632. "areaCode": "0754"
  1633. },
  1634. "440600": {
  1635. "adcode": "440600",
  1636. "name": "佛山市",
  1637. "spell": "Foshan",
  1638. "lng": 113.122717,
  1639. "lat": 23.028762,
  1640. "areaCode": "0757"
  1641. },
  1642. "440700": {
  1643. "adcode": "440700",
  1644. "name": "江门市",
  1645. "spell": "Jiangmen",
  1646. "lng": 113.094942,
  1647. "lat": 22.590431,
  1648. "areaCode": "0750"
  1649. },
  1650. "440800": {
  1651. "adcode": "440800",
  1652. "name": "湛江市",
  1653. "spell": "Zhanjiang",
  1654. "lng": 110.405529,
  1655. "lat": 21.195338,
  1656. "areaCode": "0759"
  1657. },
  1658. "440900": {
  1659. "adcode": "440900",
  1660. "name": "茂名市",
  1661. "spell": "Maoming",
  1662. "lng": 110.919229,
  1663. "lat": 21.659751,
  1664. "areaCode": "0668"
  1665. },
  1666. "441200": {
  1667. "adcode": "441200",
  1668. "name": "肇庆市",
  1669. "spell": "Zhaoqing",
  1670. "lng": 112.472529,
  1671. "lat": 23.051546,
  1672. "areaCode": "0758"
  1673. },
  1674. "441300": {
  1675. "adcode": "441300",
  1676. "name": "惠州市",
  1677. "spell": "Huizhou",
  1678. "lng": 114.412599,
  1679. "lat": 23.079404,
  1680. "areaCode": "0752"
  1681. },
  1682. "441400": {
  1683. "adcode": "441400",
  1684. "name": "梅州市",
  1685. "spell": "Meizhou",
  1686. "lng": 116.117582,
  1687. "lat": 24.299112,
  1688. "areaCode": "0753"
  1689. },
  1690. "441500": {
  1691. "adcode": "441500",
  1692. "name": "汕尾市",
  1693. "spell": "Shanwei",
  1694. "lng": 115.364238,
  1695. "lat": 22.774485,
  1696. "areaCode": "0660"
  1697. },
  1698. "441600": {
  1699. "adcode": "441600",
  1700. "name": "河源市",
  1701. "spell": "Heyuan",
  1702. "lng": 114.697802,
  1703. "lat": 23.746266,
  1704. "areaCode": "0762"
  1705. },
  1706. "441700": {
  1707. "adcode": "441700",
  1708. "name": "阳江市",
  1709. "spell": "Yangjiang",
  1710. "lng": 111.975107,
  1711. "lat": 21.859222,
  1712. "areaCode": "0662"
  1713. },
  1714. "441800": {
  1715. "adcode": "441800",
  1716. "name": "清远市",
  1717. "spell": "Qingyuan",
  1718. "lng": 113.036779,
  1719. "lat": 23.704188,
  1720. "areaCode": "0763"
  1721. },
  1722. "441900": {
  1723. "adcode": "441900",
  1724. "name": "东莞市",
  1725. "spell": "Dongguan",
  1726. "lng": 113.760234,
  1727. "lat": 23.048884,
  1728. "areaCode": "0769"
  1729. },
  1730. "442000": {
  1731. "adcode": "442000",
  1732. "name": "中山市",
  1733. "spell": "Zhongshan",
  1734. "lng": 113.382391,
  1735. "lat": 22.521113,
  1736. "areaCode": "0760"
  1737. },
  1738. "445100": {
  1739. "adcode": "445100",
  1740. "name": "潮州市",
  1741. "spell": "Chaozhou",
  1742. "lng": 116.632301,
  1743. "lat": 23.661701,
  1744. "areaCode": "0768"
  1745. },
  1746. "445200": {
  1747. "adcode": "445200",
  1748. "name": "揭阳市",
  1749. "spell": "Jieyang",
  1750. "lng": 116.355733,
  1751. "lat": 23.543778,
  1752. "areaCode": "0663"
  1753. },
  1754. "445300": {
  1755. "adcode": "445300",
  1756. "name": "云浮市",
  1757. "spell": "Yunfu",
  1758. "lng": 112.044439,
  1759. "lat": 22.929801,
  1760. "areaCode": "0766"
  1761. },
  1762. "450100": {
  1763. "adcode": "450100",
  1764. "name": "南宁市",
  1765. "spell": "Nanning",
  1766. "lng": 108.320004,
  1767. "lat": 22.82402,
  1768. "areaCode": "0771"
  1769. },
  1770. "450200": {
  1771. "adcode": "450200",
  1772. "name": "柳州市",
  1773. "spell": "Liuzhou",
  1774. "lng": 109.411703,
  1775. "lat": 24.314617,
  1776. "areaCode": "0772"
  1777. },
  1778. "450300": {
  1779. "adcode": "450300",
  1780. "name": "桂林市",
  1781. "spell": "Guilin",
  1782. "lng": 110.299121,
  1783. "lat": 25.274215,
  1784. "areaCode": "0773"
  1785. },
  1786. "450400": {
  1787. "adcode": "450400",
  1788. "name": "梧州市",
  1789. "spell": "Wuzhou",
  1790. "lng": 111.316229,
  1791. "lat": 23.472309,
  1792. "areaCode": "0774"
  1793. },
  1794. "450500": {
  1795. "adcode": "450500",
  1796. "name": "北海市",
  1797. "spell": "Beihai",
  1798. "lng": 109.119254,
  1799. "lat": 21.473343,
  1800. "areaCode": "0779"
  1801. },
  1802. "450600": {
  1803. "adcode": "450600",
  1804. "name": "防城港市",
  1805. "spell": "Fangchenggang",
  1806. "lng": 108.345478,
  1807. "lat": 21.614631,
  1808. "areaCode": "0770"
  1809. },
  1810. "450700": {
  1811. "adcode": "450700",
  1812. "name": "钦州市",
  1813. "spell": "Qinzhou",
  1814. "lng": 108.624175,
  1815. "lat": 21.967127,
  1816. "areaCode": "0777"
  1817. },
  1818. "450800": {
  1819. "adcode": "450800",
  1820. "name": "贵港市",
  1821. "spell": "Guigang",
  1822. "lng": 109.602146,
  1823. "lat": 23.0936,
  1824. "areaCode": "1755"
  1825. },
  1826. "450900": {
  1827. "adcode": "450900",
  1828. "name": "玉林市",
  1829. "spell": "Yulin",
  1830. "lng": 110.154393,
  1831. "lat": 22.63136,
  1832. "areaCode": "0775"
  1833. },
  1834. "451000": {
  1835. "adcode": "451000",
  1836. "name": "百色市",
  1837. "spell": "Baise",
  1838. "lng": 106.616285,
  1839. "lat": 23.897742,
  1840. "areaCode": "0776"
  1841. },
  1842. "451100": {
  1843. "adcode": "451100",
  1844. "name": "贺州市",
  1845. "spell": "Hezhou",
  1846. "lng": 111.552056,
  1847. "lat": 24.414141,
  1848. "areaCode": "1774"
  1849. },
  1850. "451200": {
  1851. "adcode": "451200",
  1852. "name": "河池市",
  1853. "spell": "Hechi",
  1854. "lng": 108.062105,
  1855. "lat": 24.695899,
  1856. "areaCode": "0778"
  1857. },
  1858. "451300": {
  1859. "adcode": "451300",
  1860. "name": "来宾市",
  1861. "spell": "Laibin",
  1862. "lng": 109.229772,
  1863. "lat": 23.733766,
  1864. "areaCode": "1772"
  1865. },
  1866. "451400": {
  1867. "adcode": "451400",
  1868. "name": "崇左市",
  1869. "spell": "Chongzuo",
  1870. "lng": 107.353926,
  1871. "lat": 22.404108,
  1872. "areaCode": "1771"
  1873. },
  1874. "460100": {
  1875. "adcode": "460100",
  1876. "name": "海口市",
  1877. "spell": "Haikou",
  1878. "lng": 110.33119,
  1879. "lat": 20.031971,
  1880. "areaCode": "0898"
  1881. },
  1882. "460200": {
  1883. "adcode": "460200",
  1884. "name": "三亚市",
  1885. "spell": "Sanya",
  1886. "lng": 109.508268,
  1887. "lat": 18.247872,
  1888. "areaCode": "0899"
  1889. },
  1890. "460300": {
  1891. "adcode": "460300",
  1892. "name": "三沙市",
  1893. "spell": "Sansha",
  1894. "lng": 112.34882,
  1895. "lat": 16.831039,
  1896. "areaCode": "2898"
  1897. },
  1898. "460321": {
  1899. "adcode": "460321",
  1900. "name": "西沙群岛",
  1901. "spell": "Xisha Islands",
  1902. "lng": 112.025528,
  1903. "lat": 16.331342,
  1904. "areaCode": "1895"
  1905. },
  1906. "460322": {
  1907. "adcode": "460322",
  1908. "name": "南沙群岛",
  1909. "spell": "Nansha Islands",
  1910. "lng": 116.749998,
  1911. "lat": 11.471888,
  1912. "areaCode": "1891"
  1913. },
  1914. "460323": {
  1915. "adcode": "460323",
  1916. "name": "中沙群岛的岛礁及其海域",
  1917. "spell": "Zhongsha Islands",
  1918. "lng": 117.740071,
  1919. "lat": 15.112856,
  1920. "areaCode": "2801"
  1921. },
  1922. "460400": {
  1923. "adcode": "460400",
  1924. "name": "儋州市",
  1925. "spell": "Danzhou",
  1926. "lng": 109.576782,
  1927. "lat": 19.517486,
  1928. "areaCode": "0805"
  1929. },
  1930. "469001": {
  1931. "adcode": "469001",
  1932. "name": "五指山市",
  1933. "spell": "Wuzhishan",
  1934. "lng": 109.516662,
  1935. "lat": 18.776921,
  1936. "areaCode": "1897"
  1937. },
  1938. "469002": {
  1939. "adcode": "469002",
  1940. "name": "琼海市",
  1941. "spell": "Qionghai",
  1942. "lng": 110.466785,
  1943. "lat": 19.246011,
  1944. "areaCode": "1894"
  1945. },
  1946. "469005": {
  1947. "adcode": "469005",
  1948. "name": "文昌市",
  1949. "spell": "Wenchang",
  1950. "lng": 110.753975,
  1951. "lat": 19.612986,
  1952. "areaCode": "1893"
  1953. },
  1954. "469006": {
  1955. "adcode": "469006",
  1956. "name": "万宁市",
  1957. "spell": "Wanning",
  1958. "lng": 110.388793,
  1959. "lat": 18.796216,
  1960. "areaCode": "1898"
  1961. },
  1962. "469007": {
  1963. "adcode": "469007",
  1964. "name": "东方市",
  1965. "spell": "Dongfang",
  1966. "lng": 108.653789,
  1967. "lat": 19.10198,
  1968. "areaCode": "0807"
  1969. },
  1970. "469021": {
  1971. "adcode": "469021",
  1972. "name": "定安县",
  1973. "spell": "Ding'an",
  1974. "lng": 110.323959,
  1975. "lat": 19.699211,
  1976. "areaCode": "0806"
  1977. },
  1978. "469022": {
  1979. "adcode": "469022",
  1980. "name": "屯昌县",
  1981. "spell": "Tunchang",
  1982. "lng": 110.102773,
  1983. "lat": 19.362916,
  1984. "areaCode": "1892"
  1985. },
  1986. "469023": {
  1987. "adcode": "469023",
  1988. "name": "澄迈县",
  1989. "spell": "Chengmai",
  1990. "lng": 110.007147,
  1991. "lat": 19.737095,
  1992. "areaCode": "0804"
  1993. },
  1994. "469024": {
  1995. "adcode": "469024",
  1996. "name": "临高县",
  1997. "spell": "Lingao",
  1998. "lng": 109.687697,
  1999. "lat": 19.908293,
  2000. "areaCode": "1896"
  2001. },
  2002. "469025": {
  2003. "adcode": "469025",
  2004. "name": "白沙黎族自治县",
  2005. "spell": "Baisha",
  2006. "lng": 109.452606,
  2007. "lat": 19.224584,
  2008. "areaCode": "0802"
  2009. },
  2010. "469026": {
  2011. "adcode": "469026",
  2012. "name": "昌江黎族自治县",
  2013. "spell": "Changjiang",
  2014. "lng": 109.053351,
  2015. "lat": 19.260968,
  2016. "areaCode": "0803"
  2017. },
  2018. "469027": {
  2019. "adcode": "469027",
  2020. "name": "乐东黎族自治县",
  2021. "spell": "Ledong",
  2022. "lng": 109.175444,
  2023. "lat": 18.74758,
  2024. "areaCode": "2802"
  2025. },
  2026. "469028": {
  2027. "adcode": "469028",
  2028. "name": "陵水黎族自治县",
  2029. "spell": "Lingshui",
  2030. "lng": 110.037218,
  2031. "lat": 18.505006,
  2032. "areaCode": "0809"
  2033. },
  2034. "469029": {
  2035. "adcode": "469029",
  2036. "name": "保亭黎族苗族自治县",
  2037. "spell": "Baoting",
  2038. "lng": 109.70245,
  2039. "lat": 18.636371,
  2040. "areaCode": "0801"
  2041. },
  2042. "469030": {
  2043. "adcode": "469030",
  2044. "name": "琼中黎族苗族自治县",
  2045. "spell": "Qiongzhong",
  2046. "lng": 109.839996,
  2047. "lat": 19.03557,
  2048. "areaCode": "1899"
  2049. },
  2050. "500000": {
  2051. "adcode": "500000",
  2052. "name": "重庆市",
  2053. "spell": "Chongqing",
  2054. "lng": 106.504962,
  2055. "lat": 29.533155,
  2056. "areaCode": "023"
  2057. },
  2058. "510100": {
  2059. "adcode": "510100",
  2060. "name": "成都市",
  2061. "spell": "Chengdu",
  2062. "lng": 104.065735,
  2063. "lat": 30.659462,
  2064. "areaCode": "028"
  2065. },
  2066. "510300": {
  2067. "adcode": "510300",
  2068. "name": "自贡市",
  2069. "spell": "Zigong",
  2070. "lng": 104.773447,
  2071. "lat": 29.352765,
  2072. "areaCode": "0813"
  2073. },
  2074. "510400": {
  2075. "adcode": "510400",
  2076. "name": "攀枝花市",
  2077. "spell": "Panzhihua",
  2078. "lng": 101.716007,
  2079. "lat": 26.580446,
  2080. "areaCode": "0812"
  2081. },
  2082. "510500": {
  2083. "adcode": "510500",
  2084. "name": "泸州市",
  2085. "spell": "Luzhou",
  2086. "lng": 105.443348,
  2087. "lat": 28.889138,
  2088. "areaCode": "0830"
  2089. },
  2090. "510600": {
  2091. "adcode": "510600",
  2092. "name": "德阳市",
  2093. "spell": "Deyang",
  2094. "lng": 104.398651,
  2095. "lat": 31.127991,
  2096. "areaCode": "0838"
  2097. },
  2098. "510700": {
  2099. "adcode": "510700",
  2100. "name": "绵阳市",
  2101. "spell": "Mianyang",
  2102. "lng": 104.741722,
  2103. "lat": 31.46402,
  2104. "areaCode": "0816"
  2105. },
  2106. "510800": {
  2107. "adcode": "510800",
  2108. "name": "广元市",
  2109. "spell": "Guangyuan",
  2110. "lng": 105.829757,
  2111. "lat": 32.433668,
  2112. "areaCode": "0839"
  2113. },
  2114. "510900": {
  2115. "adcode": "510900",
  2116. "name": "遂宁市",
  2117. "spell": "Suining",
  2118. "lng": 105.571331,
  2119. "lat": 30.513311,
  2120. "areaCode": "0825"
  2121. },
  2122. "511000": {
  2123. "adcode": "511000",
  2124. "name": "内江市",
  2125. "spell": "Neijiang",
  2126. "lng": 105.066138,
  2127. "lat": 29.58708,
  2128. "areaCode": "1832"
  2129. },
  2130. "511100": {
  2131. "adcode": "511100",
  2132. "name": "乐山市",
  2133. "spell": "Leshan",
  2134. "lng": 103.761263,
  2135. "lat": 29.582024,
  2136. "areaCode": "0833"
  2137. },
  2138. "511300": {
  2139. "adcode": "511300",
  2140. "name": "南充市",
  2141. "spell": "Nanchong",
  2142. "lng": 106.082974,
  2143. "lat": 30.795281,
  2144. "areaCode": "0817"
  2145. },
  2146. "511400": {
  2147. "adcode": "511400",
  2148. "name": "眉山市",
  2149. "spell": "Meishan",
  2150. "lng": 103.831788,
  2151. "lat": 30.048318,
  2152. "areaCode": "1833"
  2153. },
  2154. "511500": {
  2155. "adcode": "511500",
  2156. "name": "宜宾市",
  2157. "spell": "Yibin",
  2158. "lng": 104.630825,
  2159. "lat": 28.760189,
  2160. "areaCode": "0831"
  2161. },
  2162. "511600": {
  2163. "adcode": "511600",
  2164. "name": "广安市",
  2165. "spell": "Guang'an",
  2166. "lng": 106.633369,
  2167. "lat": 30.456398,
  2168. "areaCode": "0826"
  2169. },
  2170. "511700": {
  2171. "adcode": "511700",
  2172. "name": "达州市",
  2173. "spell": "Dazhou",
  2174. "lng": 107.502262,
  2175. "lat": 31.209484,
  2176. "areaCode": "0818"
  2177. },
  2178. "511800": {
  2179. "adcode": "511800",
  2180. "name": "雅安市",
  2181. "spell": "Ya'an",
  2182. "lng": 103.001033,
  2183. "lat": 29.987722,
  2184. "areaCode": "0835"
  2185. },
  2186. "511900": {
  2187. "adcode": "511900",
  2188. "name": "巴中市",
  2189. "spell": "Bazhong",
  2190. "lng": 106.753669,
  2191. "lat": 31.858809,
  2192. "areaCode": "0827"
  2193. },
  2194. "512000": {
  2195. "adcode": "512000",
  2196. "name": "资阳市",
  2197. "spell": "Ziyang",
  2198. "lng": 104.641917,
  2199. "lat": 30.122211,
  2200. "areaCode": "0832"
  2201. },
  2202. "513200": {
  2203. "adcode": "513200",
  2204. "name": "阿坝藏族羌族自治州",
  2205. "spell": "Aba",
  2206. "lng": 102.221374,
  2207. "lat": 31.899792,
  2208. "areaCode": "0837"
  2209. },
  2210. "513300": {
  2211. "adcode": "513300",
  2212. "name": "甘孜藏族自治州",
  2213. "spell": "Garze",
  2214. "lng": 101.963815,
  2215. "lat": 30.050663,
  2216. "areaCode": "0836"
  2217. },
  2218. "513400": {
  2219. "adcode": "513400",
  2220. "name": "凉山彝族自治州",
  2221. "spell": "Liangshan",
  2222. "lng": 102.258746,
  2223. "lat": 27.886762,
  2224. "areaCode": "0834"
  2225. },
  2226. "520100": {
  2227. "adcode": "520100",
  2228. "name": "贵阳市",
  2229. "spell": "Guiyang",
  2230. "lng": 106.713478,
  2231. "lat": 26.578343,
  2232. "areaCode": "0851"
  2233. },
  2234. "520200": {
  2235. "adcode": "520200",
  2236. "name": "六盘水市",
  2237. "spell": "Liupanshui",
  2238. "lng": 104.846743,
  2239. "lat": 26.584643,
  2240. "areaCode": "0858"
  2241. },
  2242. "520300": {
  2243. "adcode": "520300",
  2244. "name": "遵义市",
  2245. "spell": "Zunyi",
  2246. "lng": 106.937265,
  2247. "lat": 27.706626,
  2248. "areaCode": "0852"
  2249. },
  2250. "520400": {
  2251. "adcode": "520400",
  2252. "name": "安顺市",
  2253. "spell": "Anshun",
  2254. "lng": 105.932188,
  2255. "lat": 26.245544,
  2256. "areaCode": "0853"
  2257. },
  2258. "520500": {
  2259. "adcode": "520500",
  2260. "name": "毕节市",
  2261. "spell": "Bijie",
  2262. "lng": 105.28501,
  2263. "lat": 27.301693,
  2264. "areaCode": "0857"
  2265. },
  2266. "520600": {
  2267. "adcode": "520600",
  2268. "name": "铜仁市",
  2269. "spell": "Tongren",
  2270. "lng": 109.191555,
  2271. "lat": 27.718346,
  2272. "areaCode": "0856"
  2273. },
  2274. "522300": {
  2275. "adcode": "522300",
  2276. "name": "黔西南布依族苗族自治州",
  2277. "spell": "Qianxinan",
  2278. "lng": 104.897971,
  2279. "lat": 25.08812,
  2280. "areaCode": "0859"
  2281. },
  2282. "522600": {
  2283. "adcode": "522600",
  2284. "name": "黔东南苗族侗族自治州",
  2285. "spell": "Qiandongnan",
  2286. "lng": 107.977488,
  2287. "lat": 26.583352,
  2288. "areaCode": "0855"
  2289. },
  2290. "522700": {
  2291. "adcode": "522700",
  2292. "name": "黔南布依族苗族自治州",
  2293. "spell": "Qiannan",
  2294. "lng": 107.517156,
  2295. "lat": 26.258219,
  2296. "areaCode": "0854"
  2297. },
  2298. "530100": {
  2299. "adcode": "530100",
  2300. "name": "昆明市",
  2301. "spell": "Kunming",
  2302. "lng": 102.712251,
  2303. "lat": 25.040609,
  2304. "areaCode": "0871"
  2305. },
  2306. "530300": {
  2307. "adcode": "530300",
  2308. "name": "曲靖市",
  2309. "spell": "Qujing",
  2310. "lng": 103.797851,
  2311. "lat": 25.501557,
  2312. "areaCode": "0874"
  2313. },
  2314. "530400": {
  2315. "adcode": "530400",
  2316. "name": "玉溪市",
  2317. "spell": "Yuxi",
  2318. "lng": 102.543907,
  2319. "lat": 24.350461,
  2320. "areaCode": "0877"
  2321. },
  2322. "530500": {
  2323. "adcode": "530500",
  2324. "name": "保山市",
  2325. "spell": "Baoshan",
  2326. "lng": 99.167133,
  2327. "lat": 25.111802,
  2328. "areaCode": "0875"
  2329. },
  2330. "530600": {
  2331. "adcode": "530600",
  2332. "name": "昭通市",
  2333. "spell": "Zhaotong",
  2334. "lng": 103.717216,
  2335. "lat": 27.336999,
  2336. "areaCode": "0870"
  2337. },
  2338. "530700": {
  2339. "adcode": "530700",
  2340. "name": "丽江市",
  2341. "spell": "Lijiang",
  2342. "lng": 100.233026,
  2343. "lat": 26.872108,
  2344. "areaCode": "0888"
  2345. },
  2346. "530800": {
  2347. "adcode": "530800",
  2348. "name": "普洱市",
  2349. "spell": "Pu'er",
  2350. "lng": 100.972344,
  2351. "lat": 22.777321,
  2352. "areaCode": "0879"
  2353. },
  2354. "530900": {
  2355. "adcode": "530900",
  2356. "name": "临沧市",
  2357. "spell": "Lincang",
  2358. "lng": 100.08697,
  2359. "lat": 23.886567,
  2360. "areaCode": "0883"
  2361. },
  2362. "532300": {
  2363. "adcode": "532300",
  2364. "name": "楚雄彝族自治州",
  2365. "spell": "Chuxiong",
  2366. "lng": 101.546046,
  2367. "lat": 25.041988,
  2368. "areaCode": "0878"
  2369. },
  2370. "532500": {
  2371. "adcode": "532500",
  2372. "name": "红河哈尼族彝族自治州",
  2373. "spell": "Honghe",
  2374. "lng": 103.384182,
  2375. "lat": 23.366775,
  2376. "areaCode": "0873"
  2377. },
  2378. "532600": {
  2379. "adcode": "532600",
  2380. "name": "文山壮族苗族自治州",
  2381. "spell": "Wenshan",
  2382. "lng": 104.24401,
  2383. "lat": 23.36951,
  2384. "areaCode": "0876"
  2385. },
  2386. "532800": {
  2387. "adcode": "532800",
  2388. "name": "西双版纳傣族自治州",
  2389. "spell": "Xishuangbanna",
  2390. "lng": 100.797941,
  2391. "lat": 22.001724,
  2392. "areaCode": "0691"
  2393. },
  2394. "532900": {
  2395. "adcode": "532900",
  2396. "name": "大理白族自治州",
  2397. "spell": "Dali",
  2398. "lng": 100.240037,
  2399. "lat": 25.592765,
  2400. "areaCode": "0872"
  2401. },
  2402. "533100": {
  2403. "adcode": "533100",
  2404. "name": "德宏傣族景颇族自治州",
  2405. "spell": "Dehong",
  2406. "lng": 98.578363,
  2407. "lat": 24.436694,
  2408. "areaCode": "0692"
  2409. },
  2410. "533300": {
  2411. "adcode": "533300",
  2412. "name": "怒江傈僳族自治州",
  2413. "spell": "Nujiang",
  2414. "lng": 98.854304,
  2415. "lat": 25.850949,
  2416. "areaCode": "0886"
  2417. },
  2418. "533400": {
  2419. "adcode": "533400",
  2420. "name": "迪庆藏族自治州",
  2421. "spell": "Deqen",
  2422. "lng": 99.706463,
  2423. "lat": 27.826853,
  2424. "areaCode": "0887"
  2425. },
  2426. "540100": {
  2427. "adcode": "540100",
  2428. "name": "拉萨市",
  2429. "spell": "Lhasa",
  2430. "lng": 91.132212,
  2431. "lat": 29.660361,
  2432. "areaCode": "0891"
  2433. },
  2434. "540200": {
  2435. "adcode": "540200",
  2436. "name": "日喀则市",
  2437. "spell": "Shigatse",
  2438. "lng": 88.885148,
  2439. "lat": 29.267519,
  2440. "areaCode": "0892"
  2441. },
  2442. "540300": {
  2443. "adcode": "540300",
  2444. "name": "昌都市",
  2445. "spell": "Qamdo",
  2446. "lng": 97.178452,
  2447. "lat": 31.136875,
  2448. "areaCode": "0895"
  2449. },
  2450. "542200": {
  2451. "adcode": "542200",
  2452. "name": "山南地区",
  2453. "spell": "Shannan",
  2454. "lng": 91.766529,
  2455. "lat": 29.236023,
  2456. "areaCode": "0893"
  2457. },
  2458. "542400": {
  2459. "adcode": "542400",
  2460. "name": "那曲地区",
  2461. "spell": "Nagqu",
  2462. "lng": 92.060214,
  2463. "lat": 31.476004,
  2464. "areaCode": "0896"
  2465. },
  2466. "542500": {
  2467. "adcode": "542500",
  2468. "name": "阿里地区",
  2469. "spell": "Ngari",
  2470. "lng": 80.105498,
  2471. "lat": 32.503187,
  2472. "areaCode": "0897"
  2473. },
  2474. "542600": {
  2475. "adcode": "542600",
  2476. "name": "林芝市",
  2477. "spell": "Nyingchi",
  2478. "lng": 94.362348,
  2479. "lat": 29.654693,
  2480. "areaCode": "0894"
  2481. },
  2482. "610100": {
  2483. "adcode": "610100",
  2484. "name": "西安市",
  2485. "spell": "Xi'an",
  2486. "lng": 108.948024,
  2487. "lat": 34.263161,
  2488. "areaCode": "029"
  2489. },
  2490. "610200": {
  2491. "adcode": "610200",
  2492. "name": "铜川市",
  2493. "spell": "Tongchuan",
  2494. "lng": 108.963122,
  2495. "lat": 34.90892,
  2496. "areaCode": "0919"
  2497. },
  2498. "610300": {
  2499. "adcode": "610300",
  2500. "name": "宝鸡市",
  2501. "spell": "Baoji",
  2502. "lng": 107.14487,
  2503. "lat": 34.369315,
  2504. "areaCode": "0917"
  2505. },
  2506. "610400": {
  2507. "adcode": "610400",
  2508. "name": "咸阳市",
  2509. "spell": "Xianyang",
  2510. "lng": 108.705117,
  2511. "lat": 34.333439,
  2512. "areaCode": "0910"
  2513. },
  2514. "610500": {
  2515. "adcode": "610500",
  2516. "name": "渭南市",
  2517. "spell": "Weinan",
  2518. "lng": 109.502882,
  2519. "lat": 34.499381,
  2520. "areaCode": "0913"
  2521. },
  2522. "610600": {
  2523. "adcode": "610600",
  2524. "name": "延安市",
  2525. "spell": "Yan'an",
  2526. "lng": 109.49081,
  2527. "lat": 36.596537,
  2528. "areaCode": "0911"
  2529. },
  2530. "610700": {
  2531. "adcode": "610700",
  2532. "name": "汉中市",
  2533. "spell": "Hanzhong",
  2534. "lng": 107.028621,
  2535. "lat": 33.077668,
  2536. "areaCode": "0916"
  2537. },
  2538. "610800": {
  2539. "adcode": "610800",
  2540. "name": "榆林市",
  2541. "spell": "Yulin",
  2542. "lng": 109.741193,
  2543. "lat": 38.290162,
  2544. "areaCode": "0912"
  2545. },
  2546. "610900": {
  2547. "adcode": "610900",
  2548. "name": "安康市",
  2549. "spell": "Ankang",
  2550. "lng": 109.029273,
  2551. "lat": 32.6903,
  2552. "areaCode": "0915"
  2553. },
  2554. "611000": {
  2555. "adcode": "611000",
  2556. "name": "商洛市",
  2557. "spell": "Shangluo",
  2558. "lng": 109.939776,
  2559. "lat": 33.868319,
  2560. "areaCode": "0914"
  2561. },
  2562. "620100": {
  2563. "adcode": "620100",
  2564. "name": "兰州市",
  2565. "spell": "Lanzhou",
  2566. "lng": 103.823557,
  2567. "lat": 36.058039,
  2568. "areaCode": "0931"
  2569. },
  2570. "620200": {
  2571. "adcode": "620200",
  2572. "name": "嘉峪关市",
  2573. "spell": "Jiayuguan",
  2574. "lng": 98.277304,
  2575. "lat": 39.786529,
  2576. "areaCode": "1937"
  2577. },
  2578. "620300": {
  2579. "adcode": "620300",
  2580. "name": "金昌市",
  2581. "spell": "Jinchang",
  2582. "lng": 102.187888,
  2583. "lat": 38.514238,
  2584. "areaCode": "0935"
  2585. },
  2586. "620400": {
  2587. "adcode": "620400",
  2588. "name": "白银市",
  2589. "spell": "Baiyin",
  2590. "lng": 104.173606,
  2591. "lat": 36.54568,
  2592. "areaCode": "0943"
  2593. },
  2594. "620500": {
  2595. "adcode": "620500",
  2596. "name": "天水市",
  2597. "spell": "Tianshui",
  2598. "lng": 105.724998,
  2599. "lat": 34.578529,
  2600. "areaCode": "0938"
  2601. },
  2602. "620600": {
  2603. "adcode": "620600",
  2604. "name": "武威市",
  2605. "spell": "Wuwei",
  2606. "lng": 102.634697,
  2607. "lat": 37.929996,
  2608. "areaCode": "1935"
  2609. },
  2610. "620700": {
  2611. "adcode": "620700",
  2612. "name": "张掖市",
  2613. "spell": "Zhangye",
  2614. "lng": 100.455472,
  2615. "lat": 38.932897,
  2616. "areaCode": "0936"
  2617. },
  2618. "620800": {
  2619. "adcode": "620800",
  2620. "name": "平凉市",
  2621. "spell": "Pingliang",
  2622. "lng": 106.684691,
  2623. "lat": 35.54279,
  2624. "areaCode": "0933"
  2625. },
  2626. "620900": {
  2627. "adcode": "620900",
  2628. "name": "酒泉市",
  2629. "spell": "Jiuquan",
  2630. "lng": 98.510795,
  2631. "lat": 39.744023,
  2632. "areaCode": "0937"
  2633. },
  2634. "621000": {
  2635. "adcode": "621000",
  2636. "name": "庆阳市",
  2637. "spell": "Qingyang",
  2638. "lng": 107.638372,
  2639. "lat": 35.734218,
  2640. "areaCode": "0934"
  2641. },
  2642. "621100": {
  2643. "adcode": "621100",
  2644. "name": "定西市",
  2645. "spell": "Dingxi",
  2646. "lng": 104.626294,
  2647. "lat": 35.579578,
  2648. "areaCode": "0932"
  2649. },
  2650. "621200": {
  2651. "adcode": "621200",
  2652. "name": "陇南市",
  2653. "spell": "Longnan",
  2654. "lng": 104.929379,
  2655. "lat": 33.388598,
  2656. "areaCode": "2935"
  2657. },
  2658. "622900": {
  2659. "adcode": "622900",
  2660. "name": "临夏回族自治州",
  2661. "spell": "Linxia",
  2662. "lng": 103.212006,
  2663. "lat": 35.599446,
  2664. "areaCode": "0930"
  2665. },
  2666. "623000": {
  2667. "adcode": "623000",
  2668. "name": "甘南藏族自治州",
  2669. "spell": "Gannan",
  2670. "lng": 102.911008,
  2671. "lat": 34.986354,
  2672. "areaCode": "0941"
  2673. },
  2674. "630100": {
  2675. "adcode": "630100",
  2676. "name": "西宁市",
  2677. "spell": "Xining",
  2678. "lng": 101.778916,
  2679. "lat": 36.623178,
  2680. "areaCode": "0971"
  2681. },
  2682. "630200": {
  2683. "adcode": "630200",
  2684. "name": "海东市",
  2685. "spell": "Haidong",
  2686. "lng": 102.10327,
  2687. "lat": 36.502916,
  2688. "areaCode": "0972"
  2689. },
  2690. "632200": {
  2691. "adcode": "632200",
  2692. "name": "海北藏族自治州",
  2693. "spell": "Haibei",
  2694. "lng": 100.901059,
  2695. "lat": 36.959435,
  2696. "areaCode": "0970"
  2697. },
  2698. "632300": {
  2699. "adcode": "632300",
  2700. "name": "黄南藏族自治州",
  2701. "spell": "Huangnan",
  2702. "lng": 102.019988,
  2703. "lat": 35.517744,
  2704. "areaCode": "0973"
  2705. },
  2706. "632500": {
  2707. "adcode": "632500",
  2708. "name": "海南藏族自治州",
  2709. "spell": "Hainan",
  2710. "lng": 100.619542,
  2711. "lat": 36.280353,
  2712. "areaCode": "0974"
  2713. },
  2714. "632600": {
  2715. "adcode": "632600",
  2716. "name": "果洛藏族自治州",
  2717. "spell": "Golog",
  2718. "lng": 100.242143,
  2719. "lat": 34.4736,
  2720. "areaCode": "0975"
  2721. },
  2722. "632700": {
  2723. "adcode": "632700",
  2724. "name": "玉树藏族自治州",
  2725. "spell": "Yushu",
  2726. "lng": 97.008522,
  2727. "lat": 33.004049,
  2728. "areaCode": "0976"
  2729. },
  2730. "632800": {
  2731. "adcode": "632800",
  2732. "name": "海西蒙古族藏族自治州",
  2733. "spell": "Haixi",
  2734. "lng": 97.370785,
  2735. "lat": 37.374663,
  2736. "areaCode": "0977"
  2737. },
  2738. "640100": {
  2739. "adcode": "640100",
  2740. "name": "银川市",
  2741. "spell": "Yinchuan",
  2742. "lng": 106.278179,
  2743. "lat": 38.46637,
  2744. "areaCode": "0951"
  2745. },
  2746. "640200": {
  2747. "adcode": "640200",
  2748. "name": "石嘴山市",
  2749. "spell": "Shizuishan",
  2750. "lng": 106.376173,
  2751. "lat": 39.01333,
  2752. "areaCode": "0952"
  2753. },
  2754. "640300": {
  2755. "adcode": "640300",
  2756. "name": "吴忠市",
  2757. "spell": "Wuzhong",
  2758. "lng": 106.199409,
  2759. "lat": 37.986165,
  2760. "areaCode": "0953"
  2761. },
  2762. "640400": {
  2763. "adcode": "640400",
  2764. "name": "固原市",
  2765. "spell": "Guyuan",
  2766. "lng": 106.285241,
  2767. "lat": 36.004561,
  2768. "areaCode": "0954"
  2769. },
  2770. "640500": {
  2771. "adcode": "640500",
  2772. "name": "中卫市",
  2773. "spell": "Zhongwei",
  2774. "lng": 105.189568,
  2775. "lat": 37.514951,
  2776. "areaCode": "1953"
  2777. },
  2778. "650100": {
  2779. "adcode": "650100",
  2780. "name": "乌鲁木齐市",
  2781. "spell": "Urumqi",
  2782. "lng": 87.617733,
  2783. "lat": 43.792818,
  2784. "areaCode": "0991"
  2785. },
  2786. "650200": {
  2787. "adcode": "650200",
  2788. "name": "克拉玛依市",
  2789. "spell": "Karamay",
  2790. "lng": 84.873946,
  2791. "lat": 45.595886,
  2792. "areaCode": "0990"
  2793. },
  2794. "652100": {
  2795. "adcode": "652100",
  2796. "name": "吐鲁番市",
  2797. "spell": "Turpan",
  2798. "lng": 89.184078,
  2799. "lat": 42.947613,
  2800. "areaCode": "0995"
  2801. },
  2802. "652200": {
  2803. "adcode": "652200",
  2804. "name": "哈密地区",
  2805. "spell": "Kumul",
  2806. "lng": 93.51316,
  2807. "lat": 42.833248,
  2808. "areaCode": "0902"
  2809. },
  2810. "652300": {
  2811. "adcode": "652300",
  2812. "name": "昌吉回族自治州",
  2813. "spell": "Changji",
  2814. "lng": 87.304012,
  2815. "lat": 44.014577,
  2816. "areaCode": "0994"
  2817. },
  2818. "652700": {
  2819. "adcode": "652700",
  2820. "name": "博尔塔拉蒙古自治州",
  2821. "spell": "Bortala",
  2822. "lng": 82.074778,
  2823. "lat": 44.903258,
  2824. "areaCode": "0909"
  2825. },
  2826. "652800": {
  2827. "adcode": "652800",
  2828. "name": "巴音郭楞蒙古自治州",
  2829. "spell": "Bayingol",
  2830. "lng": 86.150969,
  2831. "lat": 41.768552,
  2832. "areaCode": "0996"
  2833. },
  2834. "652900": {
  2835. "adcode": "652900",
  2836. "name": "阿克苏地区",
  2837. "spell": "Aksu",
  2838. "lng": 80.265068,
  2839. "lat": 41.170712,
  2840. "areaCode": "0997"
  2841. },
  2842. "653000": {
  2843. "adcode": "653000",
  2844. "name": "克孜勒苏柯尔克孜自治州",
  2845. "spell": "Kizilsu",
  2846. "lng": 76.172825,
  2847. "lat": 39.713431,
  2848. "areaCode": "0908"
  2849. },
  2850. "653100": {
  2851. "adcode": "653100",
  2852. "name": "喀什地区",
  2853. "spell": "Kashgar",
  2854. "lng": 75.989138,
  2855. "lat": 39.467664,
  2856. "areaCode": "0998"
  2857. },
  2858. "653200": {
  2859. "adcode": "653200",
  2860. "name": "和田地区",
  2861. "spell": "Hotan",
  2862. "lng": 79.92533,
  2863. "lat": 37.110687,
  2864. "areaCode": "0903"
  2865. },
  2866. "654000": {
  2867. "adcode": "654000",
  2868. "name": "伊犁哈萨克自治州",
  2869. "spell": "Ili",
  2870. "lng": 81.317946,
  2871. "lat": 43.92186,
  2872. "areaCode": "0999"
  2873. },
  2874. "654200": {
  2875. "adcode": "654200",
  2876. "name": "塔城地区",
  2877. "spell": "Qoqek",
  2878. "lng": 82.985732,
  2879. "lat": 46.746301,
  2880. "areaCode": "0901"
  2881. },
  2882. "654300": {
  2883. "adcode": "654300",
  2884. "name": "阿勒泰地区",
  2885. "spell": "Altay",
  2886. "lng": 88.13963,
  2887. "lat": 47.848393,
  2888. "areaCode": "0906"
  2889. },
  2890. "659001": {
  2891. "adcode": "659001",
  2892. "name": "石河子市",
  2893. "spell": "Shihezi",
  2894. "lng": 86.041075,
  2895. "lat": 44.305886,
  2896. "areaCode": "0993"
  2897. },
  2898. "659002": {
  2899. "adcode": "659002",
  2900. "name": "阿拉尔市",
  2901. "spell": "Aral",
  2902. "lng": 81.285884,
  2903. "lat": 40.541914,
  2904. "areaCode": "1997"
  2905. },
  2906. "659003": {
  2907. "adcode": "659003",
  2908. "name": "图木舒克市",
  2909. "spell": "Tumxuk",
  2910. "lng": 79.077978,
  2911. "lat": 39.867316,
  2912. "areaCode": "1998"
  2913. },
  2914. "659004": {
  2915. "adcode": "659004",
  2916. "name": "五家渠市",
  2917. "spell": "Wujiaqu",
  2918. "lng": 87.526884,
  2919. "lat": 44.167401,
  2920. "areaCode": "1994"
  2921. },
  2922. "659005": {
  2923. "adcode": "659005",
  2924. "name": "北屯市",
  2925. "spell": "Beitun",
  2926. "lng": 87.824932,
  2927. "lat": 47.353177,
  2928. "areaCode": "1906"
  2929. },
  2930. "659006": {
  2931. "adcode": "659006",
  2932. "name": "铁门关市",
  2933. "spell": "Tiemenguan",
  2934. "lng": 85.501218,
  2935. "lat": 41.827251,
  2936. "areaCode": "1996"
  2937. },
  2938. "659007": {
  2939. "adcode": "659007",
  2940. "name": "双河市",
  2941. "spell": "Shuanghe",
  2942. "lng": 82.353656,
  2943. "lat": 44.840524,
  2944. "areaCode": "1909"
  2945. },
  2946. "710000": {
  2947. "adcode": "710000",
  2948. "name": "台湾省",
  2949. "spell": "Taiwan Province",
  2950. "lng": 121.509062,
  2951. "lat": 25.044332,
  2952. "areaCode": "1886"
  2953. },
  2954. "810000": {
  2955. "adcode": "810000",
  2956. "name": "香港特別行政區",
  2957. "spell": "Hong Kong",
  2958. "lng": 114.173355,
  2959. "lat": 22.320048,
  2960. "areaCode": "1852"
  2961. },
  2962. "820000": {
  2963. "adcode": "820000",
  2964. "name": "澳門特別行政區",
  2965. "spell": "Macau",
  2966. "lng": 113.54909,
  2967. "lat": 22.198951,
  2968. "areaCode": "1853"
  2969. }
  2970. }

 五、自定义组件完成,然后在其他页面引用GoMap组件,从而获取想要的地址信息,经纬度,地址等

  1. <template>
  2. <div id="applyOrder">
  3. <van-nav-bar
  4. title="网络接入申请工单"
  5. @click-left="onClickLeft"
  6. class="topNavFix"
  7. >
  8. <template #left>
  9. <van-icon name="arrow-left" color="#fff" size="18" />
  10. </template>
  11. </van-nav-bar>
  12. <div class="infoSubAll" v-show="!mapShow">
  13. <van-form @submit="onSubmit" :label-width="110" :scroll-to-error="true">
  14. <div class="infoSubTop">
  15. <div class="infoSubOne">
  16. <div class="addLiAll">
  17. <van-field
  18. clearable
  19. class="tipTrue"
  20. input-align="right"
  21. error-message-align="right"
  22. v-model.trim="subInfo.xlazdz"
  23. name="线路安装地址"
  24. label="线路安装地址"
  25. placeholder=""
  26. :rules="[{ required: true, message: '线路安装地址' }]"
  27. @click-right-icon="goMap"
  28. right-icon="location"
  29. disabled
  30. />
  31. <van-field
  32. clearable
  33. class="tipTrue"
  34. input-align="right"
  35. error-message-align="right"
  36. v-model.trim="subInfo.xxdz"
  37. name="详细地址"
  38. label="详细地址"
  39. placeholder="详细地址"
  40. :rules="[{ required: true, message: '请输入详细地址' }]"
  41. />
  42. <div class="contBtnAll">
  43. <van-button
  44. round
  45. block
  46. type="info"
  47. native-type="submit"
  48. :loading="subFlag"
  49. loading-type="spinner"
  50. >提交工单</van-button
  51. >
  52. </div>
  53. </div>
  54. </div>
  55. </div>
  56. </van-form>
  57. </div>
  58. <div v-show="mapShow">
  59. <GoMap
  60. ref="mapFnAll"
  61. @getAreaInfo="getAreaInfo"
  62. @showChange="showChange"
  63. ></GoMap>
  64. </div>
  65. </div>
  66. </template>
  67. <script>
  68. import { orderSubmitSave } from '@/api/userApi/index.js'
  69. import GoMap from "@/views/GoMap.vue";
  70. export default {
  71. name: 'ApplyOrder',
  72. data() {
  73. return {
  74. showSub: false,
  75. mapShow: false,
  76. subFlag: false,
  77. subInfo: {
  78. xlazdz: '',
  79. xxdz: '',
  80. provinceName: '',
  81. cityName: '',
  82. districtName: '',
  83. districtCode: ''
  84. },
  85. locationObj: null
  86. }
  87. },
  88. components: {
  89. GoMap
  90. },
  91. mounted() {
  92. if (this.mapShow) {
  93. this.$refs.mapFnAll.init()
  94. }
  95. },
  96. methods: {
  97. showChange(item) {
  98. this.mapShow = item
  99. },
  100. getAreaInfo(item) {
  101. this.mapShow = false
  102. this.locationObj = JSON.parse(JSON.stringify(item))
  103. this.subInfo.xlazdz = `经度:${this.locationObj.position[0]},纬度:${this.locationObj.position[1]}`
  104. this.subInfo.xxdz = this.locationObj.address
  105. this.subInfo.provinceName = this.locationObj.regeocode.addressComponent.province
  106. this.subInfo.cityName = this.locationObj.regeocode.addressComponent.city
  107. this.subInfo.districtName = this.locationObj.regeocode.addressComponent.district
  108. this.subInfo.districtCode = this.locationObj.regeocode.addressComponent.adcode
  109. console.log('222', this.locationObj)
  110. },
  111. goMap() {
  112. this.mapShow = true
  113. this.$refs.mapFnAll.init()
  114. },
  115. getSubmitSave() {
  116. const data = {
  117. lineInstallAddrLongitudeLatitude: this.subInfo.xlazdz,
  118. detailAddr: this.subInfo.xxdz,
  119. provinceName: this.subInfo.provinceName,
  120. cityName: this.subInfo.cityName,
  121. districtName: this.subInfo.districtName,
  122. districtCode: this.subInfo.districtCode
  123. }
  124. this.subFlag = true
  125. orderSubmitSave(data).then(
  126. (resp) => {
  127. if (resp.code === 0) {
  128. this.showSub = true
  129. setTimeout(() => {
  130. this.$router.push({
  131. path: '/homePage'
  132. })
  133. }, 3000)
  134. } else {
  135. this.$toast.fail(resp.errorMessage)
  136. }
  137. this.subFlag = false
  138. },
  139. (error) => {
  140. this.subFlag = false
  141. this.$toast.fail(error)
  142. }
  143. )
  144. },
  145. onSubmit() {
  146. this.getSubmitSave()
  147. },
  148. onClickLeft() {
  149. console.log('1121')
  150. this.$router.push('/homePage')
  151. }
  152. },
  153. }
  154. </script>
  155. <style lang="less" scoped>
  156. .wrapper {
  157. display: flex;
  158. align-items: center;
  159. justify-content: center;
  160. height: 100%;
  161. .subSucess {
  162. width: 230px;
  163. height: 194px;
  164. background: #fff;
  165. display: flex;
  166. justify-content: center;
  167. align-items: center;
  168. flex-direction: column;
  169. .subPic {
  170. width: 41px;
  171. height: 41px;
  172. background: url("~@/assets/imgs/subSucess.png") no-repeat;
  173. background-size: cover;
  174. }
  175. .subName {
  176. font-size: 20px;
  177. color: #333;
  178. margin-top: 14px;
  179. margin-bottom: 4px;
  180. font-weight: 700;
  181. }
  182. .subText {
  183. font-size: 12px;
  184. color: #666;
  185. margin-bottom: 20px;
  186. }
  187. .subBtn {
  188. width: 76px;
  189. height: 30px;
  190. border: 1px solid #999;
  191. border-radius: 2px;
  192. text-align: center;
  193. line-height: 30px;
  194. color: #999;
  195. font-size: 14px;
  196. }
  197. }
  198. }
  199. .topNavFix {
  200. width: 100%;
  201. position: fixed;
  202. left: 0;
  203. top: 0;
  204. background: #005dff;
  205. ::v-deep .van-nav-bar__title {
  206. color: #fff;
  207. }
  208. }
  209. .infoSubAll {
  210. width: 100%;
  211. padding: 46px 12px 0;
  212. box-sizing: border-box;
  213. border: 1px solid #f4f7fe;
  214. background: #f4f7fe;
  215. .infoSubTop {
  216. // padding-bottom: 86px;
  217. box-sizing: border-box;
  218. margin-bottom: 24px;
  219. .infoSubOne {
  220. .subTitle {
  221. display: flex;
  222. align-items: center;
  223. padding: 15px 0px;
  224. box-sizing: border-box;
  225. .subTitleBg {
  226. width: 4px;
  227. height: 17px;
  228. margin-right: 8px;
  229. background: #005dff;
  230. border-radius: 0px 4px 4px 0px;
  231. }
  232. .subTitleText {
  233. color: #333;
  234. font-size: 14px;
  235. }
  236. }
  237. .addLiAll {
  238. display: flex;
  239. flex-direction: column;
  240. padding: 0px 12px;
  241. box-sizing: border-box;
  242. border-radius: 8px;
  243. background: #fff;
  244. ::v-deep .van-cell {
  245. padding: 15px 0px;
  246. border-bottom: 1px solid #ebedf0;
  247. }
  248. ::v-deep .van-cell::after {
  249. border-bottom: 0;
  250. }
  251. ::v-deep .van-cell:nth-last-child(1) {
  252. border-bottom: 0;
  253. }
  254. .tipTrue {
  255. ::v-deep .van-cell__title {
  256. span::after {
  257. color: #f12b44;
  258. font-size: 14px;
  259. content: "*";
  260. margin-left: 6px;
  261. }
  262. }
  263. ::v-deep .van-field__control::placeholder {
  264. color: #c8c9cc;
  265. }
  266. ::v-deep .van-icon-location {
  267. color: #005dff;
  268. font-size: 20px;
  269. }
  270. }
  271. .uploadAll {
  272. display: flex;
  273. justify-content: space-between;
  274. padding: 15px 0px;
  275. box-sizing: border-box;
  276. .uploadName {
  277. font-size: 14px;
  278. color: #646566;
  279. .tipRed {
  280. color: #f12b44;
  281. font-size: 14px;
  282. margin-left: 6px;
  283. }
  284. }
  285. .uploadStyl {
  286. ::v-deep .van-button {
  287. width: 70px;
  288. height: 24px;
  289. border-radius: 20px;
  290. font-size: 12px;
  291. }
  292. ::v-deep .van-button--info {
  293. background-color: #005dff;
  294. border: 1px solid #005dff;
  295. }
  296. }
  297. }
  298. .uploadText {
  299. display: flex;
  300. align-items: center;
  301. padding: 15px 0px;
  302. box-sizing: border-box;
  303. border-top: 1px solid #ebedf0;
  304. .textLeft {
  305. font-size: 14px;
  306. color: #333;
  307. margin-right: 20px;
  308. }
  309. .textRit {
  310. font-size: 14px;
  311. color: #333;
  312. }
  313. }
  314. .contBtnAll {
  315. width: 100%;
  316. padding: 20px 48px;
  317. box-sizing: border-box;
  318. background: #fff;
  319. ::v-deep .van-button--info {
  320. background-color: #005dff;
  321. border: 1px solid #005dff;
  322. width: 100%;
  323. height: 46px;
  324. .van-button__text {
  325. margin-left: 12px;
  326. }
  327. }
  328. }
  329. }
  330. }
  331. }
  332. }
  333. </style>

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/229290
推荐阅读
相关标签
  

闽ICP备14008679号