402a226a by zhaoqian

Merge remote-tracking branch 'origin/master'

2 parents 8238e3db 99e5f708
...@@ -31,9 +31,87 @@ ...@@ -31,9 +31,87 @@
31 <ul class="icon_lists dib-box"> 31 <ul class="icon_lists dib-box">
32 32
33 <li class="dib"> 33 <li class="dib">
34 <span class="icon iconfont">&#xe71a;</span> 34 <span class="icon iconfont">&#xe78a;</span>
35 <div class="name">查询</div>
36 <div class="code-name">&amp;#xe78a;</div>
37 </li>
38
39 <li class="dib">
40 <span class="icon iconfont">&#xe78b;</span>
41 <div class="name">展开</div>
42 <div class="code-name">&amp;#xe78b;</div>
43 </li>
44
45 <li class="dib">
46 <span class="icon iconfont">&#xe78c;</span>
47 <div class="name">缓冲分析</div>
48 <div class="code-name">&amp;#xe78c;</div>
49 </li>
50
51 <li class="dib">
52 <span class="icon iconfont">&#xe78d;</span>
53 <div class="name">位置</div>
54 <div class="code-name">&amp;#xe78d;</div>
55 </li>
56
57 <li class="dib">
58 <span class="icon iconfont">&#xe78e;</span>
59 <div class="name">重叠分析</div>
60 <div class="code-name">&amp;#xe78e;</div>
61 </li>
62
63 <li class="dib">
64 <span class="icon iconfont">&#xe78f;</span>
65 <div class="name">专题树</div>
66 <div class="code-name">&amp;#xe78f;</div>
67 </li>
68
69 <li class="dib">
70 <span class="icon iconfont">&#xe790;</span>
71 <div class="name">收缩</div>
72 <div class="code-name">&amp;#xe790;</div>
73 </li>
74
75 <li class="dib">
76 <span class="icon iconfont">&#xe788;</span>
77 <div class="name">不动产单元号</div>
78 <div class="code-name">&amp;#xe788;</div>
79 </li>
80
81 <li class="dib">
82 <span class="icon iconfont">&#xe789;</span>
83 <div class="name">宗地代码</div>
84 <div class="code-name">&amp;#xe789;</div>
85 </li>
86
87 <li class="dib">
88 <span class="icon iconfont">&#xe784;</span>
89 <div class="name">多屏对比</div>
90 <div class="code-name">&amp;#xe784;</div>
91 </li>
92
93 <li class="dib">
94 <span class="icon iconfont">&#xe785;</span>
95 <div class="name">坐标定位</div>
96 <div class="code-name">&amp;#xe785;</div>
97 </li>
98
99 <li class="dib">
100 <span class="icon iconfont">&#xe786;</span>
101 <div class="name">空间查询</div>
102 <div class="code-name">&amp;#xe786;</div>
103 </li>
104
105 <li class="dib">
106 <span class="icon iconfont">&#xe787;</span>
107 <div class="name">行政区导航</div>
108 <div class="code-name">&amp;#xe787;</div>
109 </li>
110
111 <li class="dib">
112 <span class="icon iconfont">&#xe783;</span>
35 <div class="name">地球</div> 113 <div class="name">地球</div>
36 <div class="code-name">&amp;#xe71a;</div> 114 <div class="code-name">&amp;#xe783;</div>
37 </li> 115 </li>
38 116
39 <li class="dib"> 117 <li class="dib">
...@@ -363,11 +441,128 @@ ...@@ -363,11 +441,128 @@
363 <ul class="icon_lists dib-box"> 441 <ul class="icon_lists dib-box">
364 442
365 <li class="dib"> 443 <li class="dib">
366 <span class="icon iconfont iconiconset0403"></span> 444 <span class="icon iconfont iconchaxun"></span>
445 <div class="name">
446 查询
447 </div>
448 <div class="code-name">.iconchaxun
449 </div>
450 </li>
451
452 <li class="dib">
453 <span class="icon iconfont iconzhankai1"></span>
454 <div class="name">
455 展开
456 </div>
457 <div class="code-name">.iconzhankai1
458 </div>
459 </li>
460
461 <li class="dib">
462 <span class="icon iconfont iconhuanchongfenxi"></span>
463 <div class="name">
464 缓冲分析
465 </div>
466 <div class="code-name">.iconhuanchongfenxi
467 </div>
468 </li>
469
470 <li class="dib">
471 <span class="icon iconfont iconweizhi"></span>
472 <div class="name">
473 位置
474 </div>
475 <div class="code-name">.iconweizhi
476 </div>
477 </li>
478
479 <li class="dib">
480 <span class="icon iconfont iconzhongdiefenxi"></span>
481 <div class="name">
482 重叠分析
483 </div>
484 <div class="code-name">.iconzhongdiefenxi
485 </div>
486 </li>
487
488 <li class="dib">
489 <span class="icon iconfont iconzhuantishu"></span>
490 <div class="name">
491 专题树
492 </div>
493 <div class="code-name">.iconzhuantishu
494 </div>
495 </li>
496
497 <li class="dib">
498 <span class="icon iconfont iconshousuo"></span>
499 <div class="name">
500 收缩
501 </div>
502 <div class="code-name">.iconshousuo
503 </div>
504 </li>
505
506 <li class="dib">
507 <span class="icon iconfont iconbudongchandanyuanhao"></span>
508 <div class="name">
509 不动产单元号
510 </div>
511 <div class="code-name">.iconbudongchandanyuanhao
512 </div>
513 </li>
514
515 <li class="dib">
516 <span class="icon iconfont iconzongdidaima"></span>
517 <div class="name">
518 宗地代码
519 </div>
520 <div class="code-name">.iconzongdidaima
521 </div>
522 </li>
523
524 <li class="dib">
525 <span class="icon iconfont iconduopingduibi"></span>
526 <div class="name">
527 多屏对比
528 </div>
529 <div class="code-name">.iconduopingduibi
530 </div>
531 </li>
532
533 <li class="dib">
534 <span class="icon iconfont iconzuobiaodingwei"></span>
535 <div class="name">
536 坐标定位
537 </div>
538 <div class="code-name">.iconzuobiaodingwei
539 </div>
540 </li>
541
542 <li class="dib">
543 <span class="icon iconfont iconkongjianchaxun"></span>
544 <div class="name">
545 空间查询
546 </div>
547 <div class="code-name">.iconkongjianchaxun
548 </div>
549 </li>
550
551 <li class="dib">
552 <span class="icon iconfont iconhangzhengqudaohang"></span>
553 <div class="name">
554 行政区导航
555 </div>
556 <div class="code-name">.iconhangzhengqudaohang
557 </div>
558 </li>
559
560 <li class="dib">
561 <span class="icon iconfont icondiqiu"></span>
367 <div class="name"> 562 <div class="name">
368 地球 563 地球
369 </div> 564 </div>
370 <div class="code-name">.iconiconset0403 565 <div class="code-name">.icondiqiu
371 </div> 566 </div>
372 </li> 567 </li>
373 568
...@@ -816,10 +1011,114 @@ ...@@ -816,10 +1011,114 @@
816 1011
817 <li class="dib"> 1012 <li class="dib">
818 <svg class="icon svg-icon" aria-hidden="true"> 1013 <svg class="icon svg-icon" aria-hidden="true">
819 <use xlink:href="#iconiconset0403"></use> 1014 <use xlink:href="#iconchaxun"></use>
1015 </svg>
1016 <div class="name">查询</div>
1017 <div class="code-name">#iconchaxun</div>
1018 </li>
1019
1020 <li class="dib">
1021 <svg class="icon svg-icon" aria-hidden="true">
1022 <use xlink:href="#iconzhankai1"></use>
1023 </svg>
1024 <div class="name">展开</div>
1025 <div class="code-name">#iconzhankai1</div>
1026 </li>
1027
1028 <li class="dib">
1029 <svg class="icon svg-icon" aria-hidden="true">
1030 <use xlink:href="#iconhuanchongfenxi"></use>
1031 </svg>
1032 <div class="name">缓冲分析</div>
1033 <div class="code-name">#iconhuanchongfenxi</div>
1034 </li>
1035
1036 <li class="dib">
1037 <svg class="icon svg-icon" aria-hidden="true">
1038 <use xlink:href="#iconweizhi"></use>
1039 </svg>
1040 <div class="name">位置</div>
1041 <div class="code-name">#iconweizhi</div>
1042 </li>
1043
1044 <li class="dib">
1045 <svg class="icon svg-icon" aria-hidden="true">
1046 <use xlink:href="#iconzhongdiefenxi"></use>
1047 </svg>
1048 <div class="name">重叠分析</div>
1049 <div class="code-name">#iconzhongdiefenxi</div>
1050 </li>
1051
1052 <li class="dib">
1053 <svg class="icon svg-icon" aria-hidden="true">
1054 <use xlink:href="#iconzhuantishu"></use>
1055 </svg>
1056 <div class="name">专题树</div>
1057 <div class="code-name">#iconzhuantishu</div>
1058 </li>
1059
1060 <li class="dib">
1061 <svg class="icon svg-icon" aria-hidden="true">
1062 <use xlink:href="#iconshousuo"></use>
1063 </svg>
1064 <div class="name">收缩</div>
1065 <div class="code-name">#iconshousuo</div>
1066 </li>
1067
1068 <li class="dib">
1069 <svg class="icon svg-icon" aria-hidden="true">
1070 <use xlink:href="#iconbudongchandanyuanhao"></use>
1071 </svg>
1072 <div class="name">不动产单元号</div>
1073 <div class="code-name">#iconbudongchandanyuanhao</div>
1074 </li>
1075
1076 <li class="dib">
1077 <svg class="icon svg-icon" aria-hidden="true">
1078 <use xlink:href="#iconzongdidaima"></use>
1079 </svg>
1080 <div class="name">宗地代码</div>
1081 <div class="code-name">#iconzongdidaima</div>
1082 </li>
1083
1084 <li class="dib">
1085 <svg class="icon svg-icon" aria-hidden="true">
1086 <use xlink:href="#iconduopingduibi"></use>
1087 </svg>
1088 <div class="name">多屏对比</div>
1089 <div class="code-name">#iconduopingduibi</div>
1090 </li>
1091
1092 <li class="dib">
1093 <svg class="icon svg-icon" aria-hidden="true">
1094 <use xlink:href="#iconzuobiaodingwei"></use>
1095 </svg>
1096 <div class="name">坐标定位</div>
1097 <div class="code-name">#iconzuobiaodingwei</div>
1098 </li>
1099
1100 <li class="dib">
1101 <svg class="icon svg-icon" aria-hidden="true">
1102 <use xlink:href="#iconkongjianchaxun"></use>
1103 </svg>
1104 <div class="name">空间查询</div>
1105 <div class="code-name">#iconkongjianchaxun</div>
1106 </li>
1107
1108 <li class="dib">
1109 <svg class="icon svg-icon" aria-hidden="true">
1110 <use xlink:href="#iconhangzhengqudaohang"></use>
1111 </svg>
1112 <div class="name">行政区导航</div>
1113 <div class="code-name">#iconhangzhengqudaohang</div>
1114 </li>
1115
1116 <li class="dib">
1117 <svg class="icon svg-icon" aria-hidden="true">
1118 <use xlink:href="#icondiqiu"></use>
820 </svg> 1119 </svg>
821 <div class="name">地球</div> 1120 <div class="name">地球</div>
822 <div class="code-name">#iconiconset0403</div> 1121 <div class="code-name">#icondiqiu</div>
823 </li> 1122 </li>
824 1123
825 <li class="dib"> 1124 <li class="dib">
......
1
2 @font-face {font-family: "iconfont";
3 src: url('//at.alicdn.com/t/font_8d5l8fzk5b87iudi.eot?t=1501489744354'); /* IE9*/
4 src: url('//at.alicdn.com/t/font_8d5l8fzk5b87iudi.eot?t=1501489744354#iefix') format('embedded-opentype'), /* IE6-IE8 */
5 url('//at.alicdn.com/t/font_8d5l8fzk5b87iudi.woff?t=1501489744354') format('woff'), /* chrome, firefox */
6 url('//at.alicdn.com/t/font_8d5l8fzk5b87iudi.ttf?t=1501489744354') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
7 url('//at.alicdn.com/t/font_8d5l8fzk5b87iudi.svg?t=1501489744354#iconfont') format('svg'); /* iOS 4.1- */
8 }
9
10 .iconfont {
11 font-family:"iconfont" !important;
12 font-size:16px;
13 font-style:normal;
14 -webkit-font-smoothing: antialiased;
15 -moz-osx-font-smoothing: grayscale;
16 }
17
18 .icon-tuichu:before { content: "\e604"; }
19
20 .icon-fanhui:before { content: "\e608"; }
21
22 .icon-facebook:before { content: "\e60e"; }
23
24 .icon-twitter:before { content: "\e60f"; }
25
26 .icon-xiangyou:before { content: "\e609"; }
27
28 .icon-right:before { content: "\e60a"; }
29
30 .icon-fanhui1:before { content: "\e60b"; }
31
32 .icon-fenxiang:before { content: "\e632"; }
33
34 .icon-xiangxia:before { content: "\e605"; }
35
36 .icon-xiangxia1:before { content: "\e606"; }
37
38 .icon-xiangxia2:before { content: "\e607"; }
39
40 .icon-suofang:before { content: "\e677"; }
41
42 .icon-chexiao:before { content: "\e688"; }
43
44 .icon-esc:before { content: "\e629"; }
45
46 .icon-chexiao1:before { content: "\e675"; }
47
48 .icon-iconfont:before { content: "\e631"; }
49
50 .icon-suoding:before { content: "\e633"; }
51
52 .icon-bianji:before { content: "\e636"; }
53
54 .icon-shoucang2:before { content: "\e638"; }
55
56 .icon-xinjian:before { content: "\e639"; }
57
58 .icon-shoucang1:before { content: "\e63a"; }
59
60 .icon-gongkai:before { content: "\e63b"; }
61
62 .icon-gouwuche1:before { content: "\e63c"; }
63
64 .icon-zhongwen:before { content: "\e63f"; }
65
66 .icon-shangchuan:before { content: "\e640"; }
67
68 .icon-yingwen:before { content: "\e641"; }
69
70 .icon-gouwuche2:before { content: "\e642"; }
71
72 .icon-shanchu:before { content: "\e643"; }
73
74 .icon-xiazai:before { content: "\e644"; }
75
76 .icon-sousuo:before { content: "\e645"; }
77
78 .icon-dashang:before { content: "\e634"; }
79
80 .icon-xiangmu:before { content: "\e635"; }
81
82 .icon-fuzhidaima1:before { content: "\e646"; }
83
84 .icon-wofaqi:before { content: "\e647"; }
85
86 .icon-xiangmuchengyuan:before { content: "\e648"; }
87
88 .icon-gengduo:before { content: "\e649"; }
89
90 .icon-wocanyu:before { content: "\e64a"; }
91
92 .icon-lishi:before { content: "\e64b"; }
93
94 .icon-piliang:before { content: "\e64c"; }
95
96 .icon-shijian:before { content: "\e64d"; }
97
98 .icon-gonggao:before { content: "\e652"; }
99
100 .icon-weixin:before { content: "\e653"; }
101
102 .icon-weibo:before { content: "\e654"; }
103
104 .icon-gerenzhanghu:before { content: "\e637"; }
105
106 .icon-tianjiachengyuan:before { content: "\e63d"; }
107
108 .icon-soutubiao:before { content: "\e63e"; }
109
110 .icon-souren:before { content: "\e655"; }
111
112 .icon-yuzhanghao:before { content: "\e656"; }
113
114 .icon-biaoqing:before { content: "\e657"; }
115
116 .icon-qq:before { content: "\e658"; }
117
118 .icon-weibo1:before { content: "\e659"; }
119
120 .icon-zuoxuan:before { content: "\e65a"; }
121
122 .icon-fangda2:before { content: "\e65b"; }
123
124 .icon-zuo2:before { content: "\e65c"; }
125
126 .icon-suoxiao:before { content: "\e65d"; }
127
128 .icon-you2:before { content: "\e65e"; }
129
130 .icon-suoxiao2:before { content: "\e65f"; }
131
132 .icon-youxuan2:before { content: "\e660"; }
133
134 .icon-zuo:before { content: "\e661"; }
135
136 .icon-zuoxuan2:before { content: "\e662"; }
137
138 .icon-shang:before { content: "\e663"; }
139
140 .icon-shang2:before { content: "\e664"; }
141
142 .icon-youxuan:before { content: "\e665"; }
143
144 .icon-xia2:before { content: "\e666"; }
145
146 .icon-fangda:before { content: "\e667"; }
147
148 .icon-xia:before { content: "\e668"; }
149
150 .icon-you:before { content: "\e669"; }
151
152 .icon-zhuanrang:before { content: "\e66a"; }
153
154 .icon-dianzan:before { content: "\e66b"; }
155
156 .icon-huifu:before { content: "\e66c"; }
157
158 .icon-saoyisao:before { content: "\e66d"; }
159
160 .icon-shuoming:before { content: "\e600"; }
161
162 .icon-jinggao:before { content: "\e601"; }
163
164 .icon-jieshi:before { content: "\e602"; }
165
166 .icon-youxiang:before { content: "\e603"; }
167
168 .icon-guanbi:before { content: "\e60c"; }
169
170 .icon-qunzhu:before { content: "\e60d"; }
171
172 .icon-fuzhichenggong:before { content: "\e611"; }
173
174 .icon-weijiaru:before { content: "\e612"; }
175
176 .icon-daishenhe:before { content: "\e613"; }
177
178 .icon-shenhetongguo:before { content: "\e614"; }
179
180 .icon-shenhejujue:before { content: "\e615"; }
181
182 .icon-xinjiantubiaoku:before { content: "\e616"; }
183
184 .icon-tubiaoku:before { content: "\e617"; }
185
186 .icon-gouwuche:before { content: "\e618"; }
187
188 .icon-huidingbu:before { content: "\e619"; }
189
190 .icon-dianzan1:before { content: "\e61a"; }
191
192 .icon-morentouxiang:before { content: "\e610"; }
193
194 .icon-paixu:before { content: "\e61b"; }
195
196 .icon-wenjian:before { content: "\e61c"; }
197
198 .icon-github:before { content: "\e61d"; }
199
200 .icon-yuzhanghao1:before { content: "\e61e"; }
201
202 .icon-weibo2:before { content: "\e61f"; }
203
204 .icon-you1:before { content: "\e620"; }
205
206 .icon-zuo1:before { content: "\e621"; }
207
208 .icon-shang1:before { content: "\e622"; }
209
210 .icon-iconfont1:before { content: "\e623"; }
211
212 .icon-gonggaodayi:before { content: "\e625"; }
213
214 .icon-gongnengjieshao:before { content: "\e626"; }
215
216 .icon-tubiaohuizhi:before { content: "\e627"; }
217
218 .icon-daimayingyong:before { content: "\e628"; }
219
220 .icon-zhifubao:before { content: "\e624"; }
221
222 .icon-alibaba:before { content: "\e62a"; }
223
224 .icon-xiaomi:before { content: "\e62b"; }
225
226 .icon-zhongguodianxin:before { content: "\e62c"; }
227
228 .icon-tianmao:before { content: "\e62d"; }
229
230 .icon-alimama:before { content: "\e62e"; }
231
232 .icon-zhubajie:before { content: "\e62f"; }
233
234 .icon-tengxunwang:before { content: "\e630"; }
235
236 .icon-aliyun:before { content: "\e64e"; }
237
238 .icon-taobaowang:before { content: "\e64f"; }
239
240 .icon-anzhuo:before { content: "\e650"; }
241
242 .icon-ios:before { content: "\e651"; }
243
244 .icon-pcduan:before { content: "\e670"; }
245
246 .icon-qingchu:before { content: "\e673"; }
247
248 .icon-huizhiguize:before { content: "\e66e"; }
249
250 .icon-zhizuoliucheng:before { content: "\e66f"; }
251
252 .icon-fuzhidaima:before { content: "\e671"; }
253
254 .icon-fankui1:before { content: "\e672"; }
255
256 .icon-weitijiao:before { content: "\e674"; }
257
258 .icon-chexiao2:before { content: "\e676"; }
259
...\ No newline at end of file ...\ No newline at end of file
1 @font-face {font-family: "iconfont"; 1 @font-face {font-family: "iconfont";
2 src: url('iconfont.eot?t=1609142478828'); /* IE9 */ 2 src: url('iconfont.eot?t=1609228467295'); /* IE9 */
3 src: url('iconfont.eot?t=1609142478828#iefix') format('embedded-opentype'), /* IE6-IE8 */ 3 src: url('iconfont.eot?t=1609228467295#iefix') format('embedded-opentype'), /* IE6-IE8 */
4 url('data:application/x-font-woff2;charset=utf-8;base64,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') format('woff2'), 4 url('data:application/x-font-woff2;charset=utf-8;base64,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') format('woff2'),
5 url('iconfont.woff?t=1609142478828') format('woff'), 5 url('iconfont.woff?t=1609228467295') format('woff'),
6 url('iconfont.ttf?t=1609142478828') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+ */ 6 url('iconfont.ttf?t=1609228467295') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+ */
7 url('iconfont.svg?t=1609142478828#iconfont') format('svg'); /* iOS 4.1- */ 7 url('iconfont.svg?t=1609228467295#iconfont') format('svg'); /* iOS 4.1- */
8 } 8 }
9 9
10 .iconfont { 10 .iconfont {
...@@ -15,8 +15,60 @@ ...@@ -15,8 +15,60 @@
15 -moz-osx-font-smoothing: grayscale; 15 -moz-osx-font-smoothing: grayscale;
16 } 16 }
17 17
18 .iconiconset0403:before { 18 .iconchaxun:before {
19 content: "\e71a"; 19 content: "\e78a";
20 }
21
22 .iconzhankai1:before {
23 content: "\e78b";
24 }
25
26 .iconhuanchongfenxi:before {
27 content: "\e78c";
28 }
29
30 .iconweizhi:before {
31 content: "\e78d";
32 }
33
34 .iconzhongdiefenxi:before {
35 content: "\e78e";
36 }
37
38 .iconzhuantishu:before {
39 content: "\e78f";
40 }
41
42 .iconshousuo:before {
43 content: "\e790";
44 }
45
46 .iconbudongchandanyuanhao:before {
47 content: "\e788";
48 }
49
50 .iconzongdidaima:before {
51 content: "\e789";
52 }
53
54 .iconduopingduibi:before {
55 content: "\e784";
56 }
57
58 .iconzuobiaodingwei:before {
59 content: "\e785";
60 }
61
62 .iconkongjianchaxun:before {
63 content: "\e786";
64 }
65
66 .iconhangzhengqudaohang:before {
67 content: "\e787";
68 }
69
70 .icondiqiu:before {
71 content: "\e783";
20 } 72 }
21 73
22 .iconxitongguanli:before { 74 .iconxitongguanli:before {
......
This diff could not be displayed because it is too large.
...@@ -6,11 +6,102 @@ ...@@ -6,11 +6,102 @@
6 "description": "", 6 "description": "",
7 "glyphs": [ 7 "glyphs": [
8 { 8 {
9 "icon_id": "554437", 9 "icon_id": "19104781",
10 "name": "查询",
11 "font_class": "chaxun",
12 "unicode": "e78a",
13 "unicode_decimal": 59274
14 },
15 {
16 "icon_id": "19104783",
17 "name": "展开",
18 "font_class": "zhankai1",
19 "unicode": "e78b",
20 "unicode_decimal": 59275
21 },
22 {
23 "icon_id": "19104784",
24 "name": "缓冲分析",
25 "font_class": "huanchongfenxi",
26 "unicode": "e78c",
27 "unicode_decimal": 59276
28 },
29 {
30 "icon_id": "19104785",
31 "name": "位置",
32 "font_class": "weizhi",
33 "unicode": "e78d",
34 "unicode_decimal": 59277
35 },
36 {
37 "icon_id": "19104786",
38 "name": "重叠分析",
39 "font_class": "zhongdiefenxi",
40 "unicode": "e78e",
41 "unicode_decimal": 59278
42 },
43 {
44 "icon_id": "19104787",
45 "name": "专题树",
46 "font_class": "zhuantishu",
47 "unicode": "e78f",
48 "unicode_decimal": 59279
49 },
50 {
51 "icon_id": "19104791",
52 "name": "收缩",
53 "font_class": "shousuo",
54 "unicode": "e790",
55 "unicode_decimal": 59280
56 },
57 {
58 "icon_id": "19104774",
59 "name": "不动产单元号",
60 "font_class": "budongchandanyuanhao",
61 "unicode": "e788",
62 "unicode_decimal": 59272
63 },
64 {
65 "icon_id": "19104775",
66 "name": "宗地代码",
67 "font_class": "zongdidaima",
68 "unicode": "e789",
69 "unicode_decimal": 59273
70 },
71 {
72 "icon_id": "19104764",
73 "name": "多屏对比",
74 "font_class": "duopingduibi",
75 "unicode": "e784",
76 "unicode_decimal": 59268
77 },
78 {
79 "icon_id": "19104765",
80 "name": "坐标定位",
81 "font_class": "zuobiaodingwei",
82 "unicode": "e785",
83 "unicode_decimal": 59269
84 },
85 {
86 "icon_id": "19104766",
87 "name": "空间查询",
88 "font_class": "kongjianchaxun",
89 "unicode": "e786",
90 "unicode_decimal": 59270
91 },
92 {
93 "icon_id": "19104767",
94 "name": "行政区导航",
95 "font_class": "hangzhengqudaohang",
96 "unicode": "e787",
97 "unicode_decimal": 59271
98 },
99 {
100 "icon_id": "19073499",
10 "name": "地球", 101 "name": "地球",
11 "font_class": "iconset0403", 102 "font_class": "diqiu",
12 "unicode": "e71a", 103 "unicode": "e783",
13 "unicode_decimal": 59162 104 "unicode_decimal": 59267
14 }, 105 },
15 { 106 {
16 "icon_id": "19005628", 107 "icon_id": "19005628",
......
...@@ -20,7 +20,46 @@ Created by iconfont ...@@ -20,7 +20,46 @@ Created by iconfont
20 /> 20 />
21 <missing-glyph /> 21 <missing-glyph />
22 22
23 <glyph glyph-name="iconset0403" unicode="&#59162;" d="M565.333333 290.133333c-44.8 38.4-40.533333 55.466667-98.133333 55.466667s-93.866667-12.8-78.933333-93.866667 57.6-44.8 53.333333-104.533333 10.666667-74.666667 19.2-89.6 38.4-57.6 49.066667 2.133333 29.866667 93.866667 53.333333 123.733333S610.133333 251.733333 565.333333 290.133333zM407.466667 430.933333c2.133333 29.866667 51.2 61.866667 85.333333 76.8s64 19.2 59.733333 44.8S539.733333 597.333333 488.533333 597.333333s-29.866667-70.4-72.533333-27.733333 8.533333 29.866667 29.866667 40.533333 42.666667 49.066667 6.4 51.2-29.866667-17.066667-59.733333-6.4-42.666667-38.4-61.866667-29.866667c-12.8 4.266667-44.8 29.866667-68.266667 53.333333-44.8-36.266667-78.933333-83.2-102.4-138.666667 6.4-72.533333 44.8-108.8 44.8-108.8s19.2-46.933333 140.8-104.533333c0 0 23.466667-2.133333-4.266667 25.6s-55.466667 59.733333-23.466667 76.8 42.666667 17.066667 51.2-17.066667S405.333333 398.933333 407.466667 430.933333zM893.866667 420.266667c0 4.266667 0 6.4-2.133333 10.666667 0 8.533333-2.133333 17.066667-4.266667 23.466667 0 4.266667-2.133333 8.533333-2.133333 12.8-2.133333 8.533333-4.266667 14.933333-6.4 23.466667 0 4.266667-2.133333 6.4-2.133333 10.666667-4.266667 10.666667-6.4 21.333333-10.666667 29.866667-2.133333 4.266667-4.266667 8.533333-6.4 12.8-2.133333 6.4-6.4 10.666667-8.533333 17.066667-2.133333 4.266667-6.4 10.666667-8.533333 14.933333-2.133333 4.266667-4.266667 8.533333-8.533333 12.8-4.266667 4.266667-6.4 10.666667-10.666667 14.933333-2.133333 2.133333-4.266667 6.4-6.4 8.533333-14.933333 19.2-32 38.4-51.2 55.466667-2.133333 0-2.133333 2.133333-4.266667 2.133333-6.4 6.4-12.8 10.666667-21.333333 17.066667 0 0 0 0-2.133333 0-29.866667 23.466667-64 42.666667-100.266667 55.466667-10.666667-17.066667-21.333333-38.4-34.133333-46.933333-19.2-10.666667-17.066667-53.333333 19.2-49.066667 0 0-10.666667-10.666667 0-49.066667s27.733333-46.933333 81.066667-25.6c23.466667 8.533333 40.533333 4.266667 38.4-19.2-6.4-49.066667-42.666667-46.933333-14.933333-125.866667 17.066667-49.066667 59.733333-66.133333 76.8-104.533333 8.533333-21.333333 42.666667-38.4 70.4-53.333333 2.133333 10.666667 6.4 21.333333 8.533333 29.866667 0 4.266667 2.133333 8.533333 2.133333 12.8 2.133333 8.533333 2.133333 14.933333 4.266667 23.466667 0 4.266667 0 6.4 2.133333 10.666667 0 10.666667 2.133333 23.466667 2.133333 34.133333C896 396.8 896 407.466667 893.866667 420.266667zM748.8 294.4c-14.933333-8.533333-14.933333-29.866667-2.133333-40.533333 12.8-10.666667 38.4-25.6 46.933333 0S763.733333 302.933333 748.8 294.4zM512 853.333333C251.733333 853.333333 42.666667 644.266667 42.666667 384s209.066667-469.333333 469.333333-469.333333 469.333333 209.066667 469.333333 469.333333S772.266667 853.333333 512 853.333333zM512-42.666667C277.333333-42.666667 85.333333 149.333333 85.333333 384S277.333333 810.666667 512 810.666667c234.666667 0 426.666667-192 426.666667-426.666667S746.666667-42.666667 512-42.666667z" horiz-adv-x="1024" /> 23 <glyph glyph-name="chaxun" unicode="&#59274;" d="M636.885333 155.52a317.141333 317.141333 0 1 0 60.416 60.245333l122.410667-125.056a42.666667 42.666667 0 0 0-61.013333-59.690666l-121.813334 124.501333z m-191.744 20.821333a231.808 231.808 0 1 1 0 463.658667 231.808 231.808 0 0 1 0-463.658667z" horiz-adv-x="1024" />
24
25
26 <glyph glyph-name="zhankai1" unicode="&#59275;" d="M536.803556 595.000889a42.666667 42.666667 0 1 1-59.107556 61.553778l-236.999111-227.555556a42.666667 42.666667 0 0 1 0-61.553778l236.999111-227.555555a42.666667 42.666667 0 0 1 59.164444 61.553778L331.776 398.222222l204.970667 196.778667z m274.944 0a42.666667 42.666667 0 1 1-59.050667 61.553778l-237.056-227.555556a42.666667 42.666667 0 0 1 0-61.553778l237.056-227.555555a42.666667 42.666667 0 0 1 59.050667 61.553778L606.776889 398.222222l204.970667 196.778667z" horiz-adv-x="1024" />
27
28
29 <glyph glyph-name="huanchongfenxi" unicode="&#59276;" d="M436.167111 384a88.519111 88.519111 0 1 0 176.924445 0 88.519111 88.519111 0 0 0-176.924445 0zM128 384a42.666667 42.666667 0 0 0 85.333333 0 298.666667 298.666667 0 1 1 37.944889 145.806222 42.666667 42.666667 0 0 0-74.467555 41.699556A384 384 0 1 0 128 384z" horiz-adv-x="1024" />
30
31
32 <glyph glyph-name="weizhi" unicode="&#59277;" d="M512-121.6c-108.470857 131.657143-365.714286 480.292571-365.714286 650.715429C146.285714 731.355429 310.345143 896 512 896s365.714286-164.608 365.714286-366.884571c0-169.947429-256.256-517.632-365.714286-650.752" horiz-adv-x="1024" />
33
34
35 <glyph glyph-name="zhongdiefenxi" unicode="&#59278;" d="M695.694222 625.379556h48.071111a142.222222 142.222222 0 0 0 142.222223-142.222223v-330.922666a142.222222 142.222222 0 0 0-142.222223-142.222223H412.842667a142.222222 142.222222 0 0 0-142.222223 142.222223v48.071111H240.64a113.777778 113.777778 0 0 0-113.777778 113.777778v341.333333a113.777778 113.777778 0 0 0 113.777778 113.777778h341.333333a113.777778 113.777778 0 0 0 113.777778-113.777778v-30.037333zM270.620444 285.582222h311.296a28.444444 28.444444 0 0 1 28.444445 28.444445v341.333333a28.444444 28.444444 0 0 1-28.444445 28.444444h-341.333333a28.444444 28.444444 0 0 1-28.444444-28.444444v-341.333333a28.444444 28.444444 0 0 1 28.444444-28.444445h30.037333z m425.073778 254.407111v-225.962666a113.777778 113.777778 0 0 0-113.777778-113.777778H355.953778v-48.071111a56.888889 56.888889 0 0 1 56.888889-56.888889h330.922666a56.888889 56.888889 0 0 1 56.888889 56.888889V483.157333a56.888889 56.888889 0 0 1-56.888889 56.888889h-48.071111z" horiz-adv-x="1024" />
36
37
38 <glyph glyph-name="zhuantishu" unicode="&#59279;" d="M812.032 6.712889L483.953778 172.942222l-328.874667-166.286222A28.444444 28.444444 0 0 0 113.777778 32.028444V696.888889a28.444444 28.444444 0 0 0 28.444444 28.444444h682.666667a28.444444 28.444444 0 0 0 28.444444-28.444444v-664.803556a28.444444 28.444444 0 0 0-41.301333-25.372444zM768 640h-568.888889v-515.413333l284.899556 144.042666 283.989333-143.928889V640zM483.271111 447.203556L387.982222 377.912889a42.666667 42.666667 0 0 0-50.176 69.063111l120.32 87.438222a42.666667 42.666667 0 0 0 50.062222 0.113778l121.059556-87.495111a42.666667 42.666667 0 0 0-50.062222-69.176889l-95.914667 69.404444z" horiz-adv-x="1024" />
39
40
41 <glyph glyph-name="shousuo" unicode="&#59280;" d="M515.640889 595.000889a42.666667 42.666667 0 1 0 59.107555 61.553778l236.999112-227.555556a42.666667 42.666667 0 0 0 0-61.553778l-236.999112-227.555555a42.666667 42.666667 0 0 0-59.164444 61.553778l205.027556 196.778666-204.970667 196.778667z m-274.944 0a42.666667 42.666667 0 1 0 59.050667 61.553778l237.056-227.555556a42.666667 42.666667 0 0 0 0-61.553778l-237.056-227.555555a42.666667 42.666667 0 0 0-59.050667 61.553778L445.667556 398.222222 240.64 595.000889z" horiz-adv-x="1024" />
42
43
44 <glyph glyph-name="budongchandanyuanhao" unicode="&#59272;" d="M512-128C229.248-128 0 101.248 0 384S229.248 896 512 896s512-229.248 512-512-229.248-512-512-512z m59.093333 608V597.333333H256v-426.666666h512V480h-196.906667z m0-39.125333h157.525334v-231.082667h-157.525334v231.082667z m-39.381333-231.082667H295.381333V558.208h236.330667v-348.416z m-177.237333 275.626667v-39.168h39.381333v39.210666h-39.381333z m78.762666 0v-39.168h39.381334v39.210666h-39.381334z m-78.762666-90.069334v-39.210666h39.381333v39.210666h-39.381333z m78.762666 0v-39.210666h39.381334v39.210666h-39.381334z m-78.762666-85.930666v-39.210667h39.381333v39.210667h-39.381333z m78.762666 0v-39.210667h39.381334v39.210667h-39.381334z m196.992 85.845333v-39.125333h39.381334v39.125333h-39.381334z m0-85.930667v-39.125333h39.381334v39.125333h-39.381334z" horiz-adv-x="1024" />
45
46
47 <glyph glyph-name="zongdidaima" unicode="&#59273;" d="M512-128C229.248-128 0 101.248 0 384S229.248 896 512 896s512-229.248 512-512-229.248-512-512-512z m217.6 626.858667H294.4V558.208h435.2v-59.349333z m0-39.253334v-249.813333H294.4v249.856h435.2zM256 597.333333v-426.666666h512V597.333333H256z m148.266667-315.306666a17.706667 17.706667 0 0 1-0.213334-25.088c6.826667-6.826667 18.090667-6.741333 25.045334 0.256l63.232 63.189333a17.706667 17.706667 0 0 1 0.213333 25.045333l-62.08 62.08a17.706667 17.706667 0 0 1-25.045333-0.213333 17.706667 17.706667 0 0 1-0.213334-25.088l49.664-49.621333-50.602666-50.602667z m182.954666-28.202667h47.018667a17.749333 17.749333 0 0 1 17.536 17.92 17.749333 17.749333 0 0 1-17.536 17.92h-47.018667a17.749333 17.749333 0 0 1-17.536-17.92c0-9.898667 7.850667-17.92 17.536-17.92z" horiz-adv-x="1024" />
48
49
50 <glyph glyph-name="duopingduibi" unicode="&#59268;" d="M490.030545 663.272727v-558.545454H232.727273a93.090909 93.090909 0 0 0-93.090909 93.090909V570.181818a93.090909 93.090909 0 0 0 93.090909 93.090909h257.303272z m46.545455 0H791.272727a93.090909 93.090909 0 0 0 93.090909-93.090909v-372.363636a93.090909 93.090909 0 0 0-93.090909-93.090909h-254.696727V663.272727z" horiz-adv-x="1024" />
51
52
53 <glyph glyph-name="zuobiaodingwei" unicode="&#59269;" d="M512 35.746909v-24.948364a23.272727 23.272727 0 1 0-46.545455 0v24.948364a325.957818 325.957818 0 0 0-299.147636 277.829818 23.458909 23.458909 0 0 0-3.397818-0.232727h-46.545455a23.272727 23.272727 0 1 0 0 46.545455h46.545455V360.727273A325.818182 325.818182 0 0 0 465.454545 685.707636V733.090909a23.272727 23.272727 0 1 0 46.545455 0v-47.383273a325.818182 325.818182 0 0 0 299.147636-372.130909 23.272727 23.272727 0 0 0 3.397819 46.312728h46.545454a23.272727 23.272727 0 0 0 0-46.545455h-46.545454a23.458909 23.458909 0 0 0-3.397819 0.232727A325.957818 325.957818 0 0 0 512 35.700364z m-23.272727 45.707636a279.272727 279.272727 0 1 1 0 558.545455 279.272727 279.272727 0 0 1 0-558.545455z m0 46.545455a232.727273 232.727273 0 1 0 0 465.454545 232.727273 232.727273 0 0 0 0-465.454545z" horiz-adv-x="1024" />
54
55
56 <glyph glyph-name="kongjianchaxun" unicode="&#59270;" d="M489.751273 435.758545l-294.167273 133.911273a6.609455 6.609455 0 0 1-6.283636 0A7.773091 7.773091 0 0 1 186.181818 562.874182v-410.205091a6.609455 6.609455 0 0 1 4.189091-6.423273l293.934546-134.516363c0.930909-0.139636 1.861818-0.139636 2.746181 0a5.213091 5.213091 0 0 1 3.584 1.303272 6.656 6.656 0 0 1 3.072 5.911273v410.344727a6.795636 6.795636 0 0 1-3.956363 6.469818z m306.781091 167.144728a6.795636 6.795636 0 0 1-4.514909 6.423272L512 709.818182 232.168727 609.326545a6.795636 6.795636 0 0 1-4.654545-6.050909 7.540364 7.540364 0 0 1 3.956363-7.168l277.829819-126.370909 3.072-1.117091 280.389818 127.488a6.981818 6.981818 0 0 1 3.770182 6.795637z m38.167272-33.792a6.609455 6.609455 0 0 1-6.283636 0l-294.306909-133.352728a7.354182 7.354182 0 0 1-3.816727-6.469818v-410.344727c0-2.373818 1.117091-4.608 3.072-5.911273 0.977455-0.930909 2.327273-1.396364 3.630545-1.256727 0.930909-0.186182 1.815273-0.186182 2.699636 0l293.934546 133.911273a6.609455 6.609455 0 0 1 4.189091 6.423272V562.874182a7.773091 7.773091 0 0 1-3.072 6.237091z" horiz-adv-x="1024" />
57
58
59 <glyph glyph-name="hangzhengqudaohang" unicode="&#59271;" d="M326.469818 426.682182c37.608727-60.881455 90.344727-111.057455 128.325818-147.083637l7.214546-6.935272a72.517818 72.517818 0 0 1 99.793454-0.093091l6.237091 5.911273c36.026182 34.164364 90.112 85.504 128.837818 148.107636h59.066182c22.807273 0 42.914909-14.848 49.757091-36.538182l76.241455-241.803636a52.130909 52.130909 0 0 0-36.631273-66.187637l-263.121455-68.747636a52.084364 52.084364 0 0 0-44.683636 8.983273l-127.674182 96.721454a52.130909 52.130909 0 0 1-44.218182 9.076364l-161.000727-40.308364a52.224 52.224 0 0 0-62.650182 65.861818l71.493819 235.985455c6.656 22.062545 26.949818 37.096727 49.989818 37.096727l63.022545-0.046545zM512 756.363636a182.458182 182.458182 0 0 0 182.318545-182.458181c0-111.522909-109.940364-211.595636-166.632727-265.355637a22.807273 22.807273 0 0 0-31.418182 0.093091c-58.088727 55.249455-166.539636 153.413818-166.539636 265.309091 0 48.407273 19.223273 94.766545 53.341091 128.930909A181.899636 181.899636 0 0 0 512.046545 756.363636z m0-113.850181a68.421818 68.421818 0 0 1 0-136.843637 68.282182 68.282182 0 0 1 60.322909 33.792A68.561455 68.561455 0 0 1 512 642.513455z" horiz-adv-x="1024" />
60
61
62 <glyph glyph-name="diqiu" unicode="&#59267;" d="M512.186182-104.587636a487.191273 487.191273 0 0 0-345.367273 143.034181 487.191273 487.191273 0 0 0-143.080727 345.367273 487.191273 487.191273 0 0 0 143.034182 345.367273A487.191273 487.191273 0 0 0 512.139636 872.261818a487.191273 487.191273 0 0 0 345.367273-143.034182 487.191273 487.191273 0 0 0 143.080727-345.367272 487.191273 487.191273 0 0 0-143.034181-345.367273 487.191273 487.191273 0 0 0-345.367273-143.080727z m0 46.545454a440.645818 440.645818 0 0 1 312.459636 129.396364 440.599273 440.599273 0 0 1 129.396364 312.459636 440.645818 440.645818 0 0 1-129.396364 312.459637 440.599273 440.599273 0 0 1-312.459636 129.442909A440.645818 440.645818 0 0 1 199.68 696.32a440.599273 440.599273 0 0 1-129.442909-312.506182 440.645818 440.645818 0 0 1 129.396364-312.459636 440.599273 440.599273 0 0 1 312.506181-129.396364zM144.756364 545.140364a389.818182 389.818182 0 0 0 112.360727 145.361454c23.877818-22.202182 53.434182-44.683636 65.815273-48.64 20.200727-8.704 33.652364 41.192727 65.024 30.347637 31.371636-10.845091 24.669091 8.704 62.789818 6.516363 38.074182-2.187636 15.685818-41.239273-6.749091-52.084363-22.388364-10.845091-76.194909 2.187636-31.371636-41.192728 44.823273-43.426909 22.434909 28.206545 76.194909 28.206546 53.806545 0 62.836364-19.549091 67.258181-45.614546 4.514909-26.018909-26.903273-30.347636-62.743272-45.521454-35.84-15.173818-87.458909-47.755636-89.693091-78.103273-2.234182-32.581818-31.371636-54.272-40.354909-19.549091-8.936727 34.722909-20.154182 34.722909-53.806546 17.361455-33.605818-17.361455-4.468364-49.896727 24.669091-78.103273 29.137455-28.206545 4.468364-26.065455 4.468364-26.065455-127.767273 58.647273-147.921455 106.356364-147.921455 106.356364s-36.770909 33.559273-45.986909 100.724364z m765.579636-195.165091l-0.698182-6.144c-1.582545-7.261091-1.861818-13.265455-3.816727-20.945455 0-4.328727-2.234182-8.657455-2.234182-13.032727-2.234182-8.657455-6.749091-19.502545-8.983273-30.347636-29.137455 15.173818-64.977455 32.581818-74.007272 54.225454-17.873455 39.098182-62.743273 56.413091-80.663273 106.356364-29.137455 80.244364 8.983273 78.103273 15.685818 128 2.234182 23.831273-15.685818 28.206545-40.354909 19.549091-56.040727-21.736727-74.007273-13.032727-85.178182 26.018909-11.170909 39.051636 0 49.896727 0 49.896727-38.120727-4.328727-40.354909 39.051636-20.200727 49.896727 12.753455 8.192 23.458909 28.020364 34.071273 44.869818 156.439273-52.596364 268.753455-196.608 268.753454-365.940363a379.298909 379.298909 0 0 0-2.327273-42.402909z m-340.805818-48.779637c47.104-39.051636 22.434909-78.103273-2.234182-108.450909-24.669091-30.394182-44.823273-65.117091-56.040727-125.858909-11.170909-60.741818-42.589091-17.361455-51.572364-2.187636-8.936727 15.220364-24.669091 30.394182-20.154182 91.136 4.468364 60.741818-40.354909 23.877818-56.040727 106.309818-15.685818 82.432 22.388364 95.464727 82.944 95.464727 60.509091 0 56.040727-17.361455 103.098182-56.413091z m192.837818 4.328728c15.685818 8.704 56.040727-15.173818 47.057455-41.192728-8.983273-26.065455-35.84-10.845091-49.338182 0-13.451636 10.845091-13.451636 32.535273 2.280727 41.192728z" horiz-adv-x="1024" />
24 63
25 64
26 <glyph glyph-name="xitongguanli" unicode="&#59266;" d="M402.318222 794.624A71.111111 71.111111 0 0 0 472.803556 856.291556h79.416888c35.726222 0 65.934222-26.567111 70.542223-62.008889l9.216-71.907556c40.789333-14.392889 78.506667-36.124444 111.502222-63.943111l66.844444 27.477333a71.111111 71.111111 0 0 0 88.576-30.264889l39.708445-68.721777a71.111111 71.111111 0 0 0-18.432-92.103111l-56.661334-43.235556a357.376 357.376 0 0 0-0.113777-129.649778l56.718222-43.804444a71.111111 71.111111 0 0 0 18.147555-91.818667l-39.708444-68.721778a71.111111 71.111111 0 0 0-88.974222-30.094222l-66.446222 27.704889c-32.938667-27.818667-70.712889-49.493333-111.502223-63.829333l-9.671111-72.135111a71.111111 71.111111 0 0 0-70.542222-61.610667H472.120889a71.111111 71.111111 0 0 0-70.542222 62.008889l-9.443556 73.159111a355.271111 355.271111 0 0 0-108.999111 63.601778l-69.12-28.444445a71.111111 71.111111 0 0 0-88.632889 30.264889l-39.708444 68.778667a71.111111 71.111111 0 0 0 18.488889 92.046222l59.619555 45.511111a357.489778 357.489778 0 0 0 0 125.155556l-59.562667 46.023111a71.111111 71.111111 0 0 0-18.204444 91.818666l39.765333 68.778667a71.111111 71.111111 0 0 0 88.917334 30.037333l68.721777-28.672a355.214222 355.214222 0 0 0 109.056 63.544889l9.898667 73.386667z m82.944-23.665778l-15.644444-115.882666-27.249778-7.395556a269.937778 269.937778 0 0 1-119.978667-69.973333l-20.195555-20.309334-108.828445 45.397334-27.249777-47.160889 93.582222-72.248889-7.224889-27.306667a270.677333 270.677333 0 0 1 0-138.069333l7.224889-27.534222-93.866667-71.68 27.192889-47.160889 109.169778 44.828444 20.081778-20.138666a269.937778 269.937778 0 0 1 119.921777-70.030223l27.420445-7.509333 14.961778-115.825778h54.442666l15.530667 115.256889 27.704889 7.224889a269.824 269.824 0 0 1 122.083555 69.916444l20.195556 20.081778 106.382222-44.373333 27.192889 47.160889-90.965333 70.257778 7.452444 27.477333a270.620444 270.620444 0 0 1 0.056889 141.767111l-7.452444 27.648 91.249777 69.688889-27.192889 47.160889-106.666666-43.804445-20.138667 20.024889a269.824 269.824 0 0 1-122.026667 69.973334l-27.875555 7.224888-14.848 115.313778H485.262222zM512 229.034667a156.444444 156.444444 0 1 1 0 312.888889 156.444444 156.444444 0 0 1 0-312.888889z m0 85.333333a71.111111 71.111111 0 1 0 0 142.222222 71.111111 71.111111 0 0 0 0-142.222222z" horiz-adv-x="1024" /> 65 <glyph glyph-name="xitongguanli" unicode="&#59266;" d="M402.318222 794.624A71.111111 71.111111 0 0 0 472.803556 856.291556h79.416888c35.726222 0 65.934222-26.567111 70.542223-62.008889l9.216-71.907556c40.789333-14.392889 78.506667-36.124444 111.502222-63.943111l66.844444 27.477333a71.111111 71.111111 0 0 0 88.576-30.264889l39.708445-68.721777a71.111111 71.111111 0 0 0-18.432-92.103111l-56.661334-43.235556a357.376 357.376 0 0 0-0.113777-129.649778l56.718222-43.804444a71.111111 71.111111 0 0 0 18.147555-91.818667l-39.708444-68.721778a71.111111 71.111111 0 0 0-88.974222-30.094222l-66.446222 27.704889c-32.938667-27.818667-70.712889-49.493333-111.502223-63.829333l-9.671111-72.135111a71.111111 71.111111 0 0 0-70.542222-61.610667H472.120889a71.111111 71.111111 0 0 0-70.542222 62.008889l-9.443556 73.159111a355.271111 355.271111 0 0 0-108.999111 63.601778l-69.12-28.444445a71.111111 71.111111 0 0 0-88.632889 30.264889l-39.708444 68.778667a71.111111 71.111111 0 0 0 18.488889 92.046222l59.619555 45.511111a357.489778 357.489778 0 0 0 0 125.155556l-59.562667 46.023111a71.111111 71.111111 0 0 0-18.204444 91.818666l39.765333 68.778667a71.111111 71.111111 0 0 0 88.917334 30.037333l68.721777-28.672a355.214222 355.214222 0 0 0 109.056 63.544889l9.898667 73.386667z m82.944-23.665778l-15.644444-115.882666-27.249778-7.395556a269.937778 269.937778 0 0 1-119.978667-69.973333l-20.195555-20.309334-108.828445 45.397334-27.249777-47.160889 93.582222-72.248889-7.224889-27.306667a270.677333 270.677333 0 0 1 0-138.069333l7.224889-27.534222-93.866667-71.68 27.192889-47.160889 109.169778 44.828444 20.081778-20.138666a269.937778 269.937778 0 0 1 119.921777-70.030223l27.420445-7.509333 14.961778-115.825778h54.442666l15.530667 115.256889 27.704889 7.224889a269.824 269.824 0 0 1 122.083555 69.916444l20.195556 20.081778 106.382222-44.373333 27.192889 47.160889-90.965333 70.257778 7.452444 27.477333a270.620444 270.620444 0 0 1 0.056889 141.767111l-7.452444 27.648 91.249777 69.688889-27.192889 47.160889-106.666666-43.804445-20.138667 20.024889a269.824 269.824 0 0 1-122.026667 69.973334l-27.875555 7.224888-14.848 115.313778H485.262222zM512 229.034667a156.444444 156.444444 0 1 1 0 312.888889 156.444444 156.444444 0 0 1 0-312.888889z m0 85.333333a71.111111 71.111111 0 1 0 0 142.222222 71.111111 71.111111 0 0 0 0-142.222222z" horiz-adv-x="1024" />
......
1 { 1 {
2 "pointSymbol": { 2 "pointSymbol": {
3 3 "bufferSymbol": {
4 "type": "simple-marker",
5 "style": "circle",
6 "color": "black",
7 "size": "8px",
8 "outline": {
9 "color": [ 255, 255, 0 ],
10 "width": 1
11 }
12 }
4 }, 13 },
5 "lineSymbol": { 14 "lineSymbol": {
6 15
...@@ -32,6 +41,24 @@ ...@@ -32,6 +41,24 @@
32 "color": "#006cff", 41 "color": "#006cff",
33 "width": 2 42 "width": 2
34 } 43 }
44 },
45 "bufferSymbol": {
46 "type": "simple-fill",
47 "color": [ 86,81, 81, 0.5 ],
48 "style": "solid",
49 "outline": {
50 "color": [45,44,44,1],
51 "width": 2
52 }
53 },
54 "bufferGeoSymbol": {
55 "type": "simple-fill",
56 "color": [ 86,81, 81, 0.5 ],
57 "style": "solid",
58 "outline": {
59 "color": [45,44,44,1],
60 "width": 0
61 }
35 } 62 }
36 } 63 }
37 } 64 }
...\ No newline at end of file ...\ No newline at end of file
......
1 [{
2 "label":"专题树",
3 "id":"1",
4 "type":"layerGroup",
5 "children":[
6 {
7 "label":"西安市阎良区",
8 "id":"1-1",
9 "type":"layerGroup",
10 "children":[{
11 "label":"行政区划",
12 "id":"1-1-1",
13 "type":"layerGroup",
14 "children":[
15 {
16 "label":"行政区界限",
17 "id":"1-1-1-1",
18 "type":"layer",
19 "layerId":20,
20 "children":null
21 },
22 {
23 "label":"行政区",
24 "id":"1-1-1-2",
25 "type":"layer",
26 "layerId":19,
27 "children":null
28 }
29 ]
30 },
31 {
32 "label":"地籍分区",
33 "id":"1-1-2",
34 "type":"layerGroup",
35 "children":[
36 {
37 "label":"地籍区",
38 "id":"1-1-2-1",
39 "type":"layer",
40 "layerId":13,
41 "children":null
42 },
43 {
44 "label":"地籍子区",
45 "id":"1-1-2-2",
46 "type":"layer",
47 "layerId":14,
48 "children":null
49 }
50 ]
51 },
52 {
53 "label":"不动产单元",
54 "id":"1-1-3",
55 "type":"layerGroup",
56 "children":[
57 {
58 "label":"线状定着物",
59 "id":"1-1-3-1",
60 "type":"layer",
61 "layerId":7,
62 "children":null
63 },
64 {
65 "label":"宗海",
66 "id":"1-1-3-2",
67 "type":"layer",
68 "layerId":9,
69 "children":null
70 },
71 {
72 "label":"宗地",
73 "id":"1-1-3-3",
74 "type":"layer",
75 "layerId":8,
76 "children":null
77 },
78 {
79 "label":"林权",
80 "id":"1-1-3-4",
81 "type":"layer",
82 "layerId":5,
83 "children":null
84 },
85 {
86 "label":"构筑物",
87 "id":"1-1-3-5",
88 "type":"layer",
89 "layerId":2,
90 "children":null
91 },
92 {
93 "label":"面状定着物",
94 "id":"1-1-3-6",
95 "type":"layer",
96 "layerId":6,
97 "children":null
98 },
99 {
100 "label":"界址线",
101 "id":"1-1-3-7",
102 "type":"layer",
103 "layerId":4,
104 "children":null
105 },
106 {
107 "label":"点状定着物",
108 "id":"1-1-3-8",
109 "type":"layer",
110 "layerId":1,
111 "children":null
112 },
113 {
114 "label":"自然幢",
115 "id":"1-1-3-9",
116 "type":"layer",
117 "layerId":10,
118 "children":null
119 },
120 {
121 "label":"界址点",
122 "id":"1-1-3-10",
123 "type":"layer",
124 "layerId":4,
125 "children":null
126 }
127 ]
128 },
129 {
130 "label":"自然地理",
131 "id":"1-1-4",
132 "type":"layerGroup",
133 "children":[
134 {
135 "label":"辅助面",
136 "id":"1-1-4-1",
137 "type":"layer",
138 "layerId":15,
139 "children":null
140 },
141 {
142 "label":"植被",
143 "id":"1-1-4-2",
144 "type":"layer",
145 "layerId":17,
146 "children":null
147 },
148 {
149 "label":"水系",
150 "id":"1-1-4-3",
151 "type":"layer",
152 "layerId":16,
153 "children":null
154 }
155 ]
156 }
157 ]
158 }]
159 }]
...\ No newline at end of file ...\ No newline at end of file
...@@ -160,9 +160,7 @@ export default { ...@@ -160,9 +160,7 @@ export default {
160 case '/search': 160 case '/search':
161 source = '0,1,2' 161 source = '0,1,2'
162 break; 162 break;
163 case '/manage': 163
164 source = '0,1,2'
165 break;
166 default: 164 default:
167 break; 165 break;
168 } 166 }
......
...@@ -523,7 +523,7 @@ export default { ...@@ -523,7 +523,7 @@ export default {
523 //当确定导入图形是 跳转到图形界面 523 //当确定导入图形是 跳转到图形界面
524 this.queryGeoByBsm(BSM,type,function (features){ 524 this.queryGeoByBsm(BSM,type,function (features){
525 if(features && features.length > 0){ 525 if(features && features.length > 0){
526 if(features[0].geometry){ 526 if(features[0].geometry && features[0].geometry.rings.length > 0){
527 self.$confirm('该条数据有地块信息,是否继续导入?', '提示', { 527 self.$confirm('该条数据有地块信息,是否继续导入?', '提示', {
528 confirmButtonText: '继续', 528 confirmButtonText: '继续',
529 cancelButtonText: '取消', 529 cancelButtonText: '取消',
......
...@@ -165,7 +165,9 @@ export default { ...@@ -165,7 +165,9 @@ export default {
165 if(layer){ 165 if(layer){
166 var graphics = layer.graphics; 166 var graphics = layer.graphics;
167 if(graphics.length > 0 && graphics.items[0].attributes.BSM == bsm){ 167 if(graphics.length > 0 && graphics.items[0].attributes.BSM == bsm){
168 view.extent = graphics.items[0].geometry.extent; 168 // view.extent = graphics.items[0].geometry.extent;
169 view.center = graphics.items[0].geometry.extent.center;
170 view.zoom = 15;
169 } 171 }
170 }else { 172 }else {
171 this.$message.warning("暂无图形信息!!!"); 173 this.$message.warning("暂无图形信息!!!");
...@@ -323,7 +325,9 @@ export default { ...@@ -323,7 +325,9 @@ export default {
323 layer.add(graphic); 325 layer.add(graphic);
324 var extent = new Extent(JSON.parse(JSON.stringify(graphic.geometry.extent))) 326 var extent = new Extent(JSON.parse(JSON.stringify(graphic.geometry.extent)))
325 extent.spatialReference = view.spatialReference; 327 extent.spatialReference = view.spatialReference;
326 view.extent = extent; 328 // view.extent = extent;
329 view.center = extent.center;
330 view.zoom = 15;
327 }).catch(err => { 331 }).catch(err => {
328 console.log(err); 332 console.log(err);
329 333
...@@ -493,7 +497,9 @@ export default { ...@@ -493,7 +497,9 @@ export default {
493 var graphic = features[0]; 497 var graphic = features[0];
494 graphic.symbol = symbol; 498 graphic.symbol = symbol;
495 layer.add(graphic); 499 layer.add(graphic);
496 view.extent = graphic.geometry.extent; 500 // view.extent = graphic.geometry.extent;
501 view.center = graphic.geometry.extent.center;
502 view.zoom = 15;
497 }).catch( err => { 503 }).catch( err => {
498 thow(err); 504 thow(err);
499 }) 505 })
......
1 <template>
2 <div>
3 <div id="changemap">
4 <div v-for="(n,i) in layerArr" :key="i">
5 <div :title="n.text" @click="change(i,n.basemap)">
6 <img :src="require('../../assets/images/map/'+n.img)" />
7 <span></span>
8 <span></span>
9 <span></span>
10 <span></span>
11 <span>{{n.text}}</span>
12 </div>
13 </div>
14 </div>
15 </div>
16 </template>
17 <script>
18 export default {
19 props:{
20 viewId:{
21 type:String,
22 default:""
23 }
24 },
25 data() {
26 return {
27 layerArr: [
28 {
29 img: "shiliang.png",
30 text: "矢量图",
31 basemap: '' //hybrid img
32 },
33 {
34 img: "yingxiang.png",
35 text: "影像图",
36 basemap: 'hybrid' //hybrid img
37 }
38 ]
39 };
40 },
41 methods: {
42 change(index, basemap) {
43 debugger
44 /*var view = maps.threeDView,map = null;
45 if(view){
46 map = view.map;
47 }else {
48 console.log("mapView不存在");
49 }
50 map.basemap = basemap; // streets
51 index > 0 && this.layerArr.unshift(this.layerArr.splice(index, 1)[0]);*/
52 }
53 }
54 };
55 </script>
56 <style scoped>
57 #changemap {
58 /* background-color: #0ff; */
59 display: flex;
60 flex-wrap: wrap-reverse;
61 flex-direction: row-reverse;
62 align-content: flex-start;
63 max-width: 75px;
64 max-height: 75px;
65 overflow: auto;
66 }
67 #changemap > div {
68 width: 75px;
69 height: 75px;
70 box-sizing: border-box;
71 padding: 5px;
72 }
73 #changemap:hover {
74 max-width: 300px;
75 max-height: 300px;
76 transition: max-height 0.3s linear 0s;
77 }
78 #changemap > div > div {
79 height: 100%;
80 width: 100%;
81 border: 1px solid #ccc;
82 display: flex;
83 justify-content: center;
84 align-items: center;
85 position: relative;
86 overflow: hidden;
87 cursor: pointer;
88 }
89 #changemap > div > div > img {
90 height: 100%;
91 width: 100%;
92 display: block;
93 }
94 #changemap > div > div > span {
95 transition: all 0.4s linear 0s;
96 position: absolute;
97 height: 50%;
98 width: 50%;
99 background-color: rgba(0, 0, 0, 0.4);
100 }
101 #changemap > div > div > span:nth-of-type(1) {
102 top: 0px;
103 left: 0px;
104 }
105 #changemap > div > div > span:nth-of-type(2) {
106 top: 0px;
107 right: 0px;
108 }
109 #changemap > div > div > span:nth-of-type(3) {
110 bottom: 0px;
111 left: 0px;
112 }
113 #changemap > div > div > span:nth-of-type(4) {
114 bottom: 0px;
115 right: 0px;
116 }
117 #changemap > div > div > span:nth-of-type(5) {
118 width: 100%;
119 height: 30%;
120 bottom: 0px;
121 left: 0px;
122 color: #fafafa;
123 overflow: hidden;
124 /* text-align: center; */
125 font-size: 12px;
126 display: flex;
127 justify-content: center;
128 align-items: center;
129 }
130 #changemap > div > div:hover span:nth-of-type(1) {
131 left: -50%;
132 top: -50%;
133 }
134 #changemap > div > div:hover span:nth-of-type(2) {
135 top: -50%;
136 right: -50%;
137 }
138 #changemap > div > div:hover span:nth-of-type(3) {
139 bottom: -50%;
140 left: -50%;
141 }
142 #changemap > div > div:hover span:nth-of-type(4) {
143 bottom: -50%;
144 right: -50%;
145 }
146 </style>
...@@ -32,7 +32,7 @@ export default{ ...@@ -32,7 +32,7 @@ export default{
32 }else if(typeof parames[i].value == 'number'){ 32 }else if(typeof parames[i].value == 'number'){
33 where += parames[i].name + " =" + parames[i].value ; 33 where += parames[i].name + " =" + parames[i].value ;
34 }else{ 34 }else{
35 where += parames[i].name + " =" + "'" + parames[i].value +"'"; 35 where += parames[i].name + " like " + "'%" + parames[i].value +"%'";
36 } 36 }
37 } 37 }
38 } else { 38 } else {
......
...@@ -34,7 +34,7 @@ ...@@ -34,7 +34,7 @@
34 </div> 34 </div>
35 35
36 <div class="top-items tuOrShu" > 36 <div class="top-items tuOrShu" >
37 <i class="iconfont iconiconset0403" style="color:#006CFF;font-size:30px" title="图形管理" v-if="!isMap" @click="goMap"></i> 37 <i class="iconfont icondiqiu" style="color:#006CFF;font-size:30px" title="图形管理" v-if="!isMap" @click="goMap"></i>
38 <i class="iconfont iconxinxi" style="color:#006CFF;font-size:30px" title="属性管理" v-else @click="goBack"></i> 38 <i class="iconfont iconxinxi" style="color:#006CFF;font-size:30px" title="属性管理" v-else @click="goBack"></i>
39 </div> 39 </div>
40 </div> 40 </div>
......
...@@ -5,8 +5,21 @@ ...@@ -5,8 +5,21 @@
5 </div> 5 </div>
6 <EsriMap :viewId = "viewId" :afterLoaderFunction="addLayer"></EsriMap> 6 <EsriMap :viewId = "viewId" :afterLoaderFunction="addLayer"></EsriMap>
7 <div class="searchDiv"> 7 <div class="searchDiv">
8 <el-input placeholder="请输入标识码" clearable v-model="inputBsm"> <el-button slot="append" type="primary" icon="el-icon-search" @click="doSearch"></el-button> </el-input> 8 <el-input placeholder="请输入宗地代码或不动产单元号" clearable @focus = "isShowCondition = true" v-model="inputBsm"> <el-button slot="append" type="primary" icon="el-icon-search" @click="doSearch"></el-button> </el-input>
9 <!--搜索弹出框--> 9 <!-- 搜索条件选择 -->
10 <div class="searchCondition" v-if="isShowCondition">
11 <ul>
12 <li @click="fieldName = 'ZDDM'">
13 <i class="iconfont iconzongdidaima"></i>
14 <span>宗地代码</span>
15 </li>
16 <li @click="fieldName = 'BDCDYH'">
17 <i class="iconfont iconbudongchandanyuanhao"></i>
18 <span>不动产单元号</span>
19 </li>
20 </ul>
21 </div>
22 <!--搜索弹出框-->
10 <div class="searchResult" v-show="dialogVisible"> 23 <div class="searchResult" v-show="dialogVisible">
11 <div class="-header"> 24 <div class="-header">
12 <span class="title">地块信息</span> 25 <span class="title">地块信息</span>
...@@ -15,7 +28,7 @@ ...@@ -15,7 +28,7 @@
15 </span> 28 </span>
16 </div> 29 </div>
17 <el-card class="box-card"> 30 <el-card class="box-card">
18 <div slot="header" class="clearfix"> 31 <div slot="header" class="clearfix" v-show="resultLayers.length > 1">
19 <!-- 图层选择--> 32 <!-- 图层选择-->
20 <span class="formTitle">图层选择:</span> 33 <span class="formTitle">图层选择:</span>
21 <el-select v-model="selectResLayerId" size="mini" @change="selectLayerChange" placeholder="请选择"> 34 <el-select v-model="selectResLayerId" size="mini" @change="selectLayerChange" placeholder="请选择">
...@@ -35,15 +48,45 @@ ...@@ -35,15 +48,45 @@
35 <a href="#" @click="toMap(item)">缩放至</a> 48 <a href="#" @click="toMap(item)">缩放至</a>
36 </P> 49 </P>
37 <hr /> 50 <hr />
38 <div class="contentItem" v-for="(value,key,index) in item.attributes" :key="index"> 51 <!-- <div class="contentItem" v-for="(value,key,index) in item.attributes" :key="index">
39 <span class="key">{{key}}</span> 52 <span class="key">{{key}}</span>
40 <span class="value" :title="value">{{value == 'Null' ?"":value}}</span> 53 <span class="value" :title="value">{{value == 'Null' ?"":value}}</span>
41 </div> 54 </div> -->
55 <div class="contentItem">
56 <span class="key">宗地代码:</span>
57 <span class="value" :title="item.attributes['宗地代码']">{{item.attributes['宗地代码'] == 'Null'?"":item.attributes['宗地代码']}}</span>
58 </div>
59 <div class="contentItem">
60 <span class="key">不动产单元号:</span>
61 <span class="value" :title="item.attributes['不动产单元号']">{{item.attributes['不动产单元号'] == 'Null'?"":item.attributes['不动产单元号']}}</span>
62 </div>
63 <div class="contentItem">
64 <span class="key">项目名称:</span>
65 <span class="value" :title="item.attributes['项目名称']">{{item.attributes['项目名称'] == 'Null'?"":item.attributes['项目名称']}}</span>
66 </div>
67 <div class="contentItem">
68 <span class="key">不动产证号:</span>
69 <span class="value" :title="item.attributes['不动产证号']">{{item.attributes['不动产证号'] == 'Null'?"":item.attributes['不动产证号']}}</span>
70 </div>
71 <div class="contentItem">
72 <span class="key">权利人:</span>
73 <span class="value" :title="item.attributes['权利人']">{{item.attributes['权利人'] == 'Null'?"":item.attributes['权利人']}}</span>
74 </div>
75 <div class="contentItem">
76 <span class="key">坐落:</span>
77 <span class="value" :title="item.attributes['坐落']">{{item.attributes['坐落'] == 'Null'?"":item.attributes['坐落']}}</span>
78 </div>
42 </div> 79 </div>
43 </el-card> 80 </el-card>
44 </div> 81 </div>
45 </div> 82 </div>
46 83 <!-- 侧边栏 -->
84 <div class="rightSide">
85 <side-tools :viewId="viewId"></side-tools>
86 </div>
87 <div class="changeMap">
88 <ChangeMap :viewId="viewId"></ChangeMap>
89 </div>
47 </div> 90 </div>
48 </template> 91 </template>
49 <script> 92 <script>
...@@ -54,12 +97,17 @@ import {maps} from '@/libs/map/mapUtils' ...@@ -54,12 +97,17 @@ import {maps} from '@/libs/map/mapUtils'
54 import mapLayerManager from "./mapWeight/js/mapLayerManager"; 97 import mapLayerManager from "./mapWeight/js/mapLayerManager";
55 import layers from '@/assets/json/layers.json' 98 import layers from '@/assets/json/layers.json'
56 import findTask from '@/libs/map/findTask' 99 import findTask from '@/libs/map/findTask'
100 import ChangeMap from "@/components/map/ChangeMap";
101
102 import sideTools from "./mapWeight/sideTools.vue"
57 103
58 export default { 104 export default {
59 inject:['getRightTree','getTreeByBsm'], 105 inject:['getRightTree','getTreeByBsm'],
60 components:{ 106 components:{
61 EsriMap, 107 EsriMap,
62 MapTools 108 MapTools,
109 ChangeMap,
110 sideTools
63 }, 111 },
64 data(){ 112 data(){
65 return{ 113 return{
...@@ -71,7 +119,9 @@ export default { ...@@ -71,7 +119,9 @@ export default {
71 resultLayers:[], 119 resultLayers:[],
72 results:[], 120 results:[],
73 inputBsm:"", 121 inputBsm:"",
74 heighGraphic:null 122 fieldName:"BDCDYH",
123 heighGraphic:null,
124 isShowCondition:false
75 } 125 }
76 }, 126 },
77 mixins:[mapLayerManager,findTask], 127 mixins:[mapLayerManager,findTask],
...@@ -96,7 +146,9 @@ export default { ...@@ -96,7 +146,9 @@ export default {
96 addLayer(){ 146 addLayer(){
97 var self = this; 147 var self = this;
98 var view = maps[this.viewId]; 148 var view = maps[this.viewId];
99 view.ui.remove('zoom'); 149 // view.ui.remove('zoom');
150 view.ui.remove("attribution");
151 view.ui.move(["zoom"], "bottom-right");
100 loadModules([ 152 loadModules([
101 "esri/layers/MapImageLayer" 153 "esri/layers/MapImageLayer"
102 ]).then(([ 154 ]).then(([
...@@ -153,15 +205,31 @@ export default { ...@@ -153,15 +205,31 @@ export default {
153 }, 205 },
154 //属性查询 206 //属性查询
155 doSearch(){ 207 doSearch(){
208 this.closeResultDialog();
156 var self = this; 209 var self = this;
157 if(!this.inputBsm){ 210 if(!this.fieldName){
158 this.$message.warning(" 请输入标识码!!!"); 211 this.$message.warning(" 请选择要查询的字段!!!");
159 return; 212 return;
160 }else if(this.inputBsm.length != 32){ 213 }
161 this.$message.warning("标识码格式输入有误!!!"); 214 if(this.fieldName == 'ZDDM'){
162 return; 215 if(!this.inputBsm){
163 } 216 this.$message.warning("请输入宗地代码!!!");
164 this.findByPro(this.layerUrl,[8,10],'BSM',this.inputBsm,true,function (res) { 217 return;
218 }else if(this.inputBsm.length != 19){
219 this.$message.warning("输入宗地代码有误,请重新输入!!!");
220 return;
221 }
222 } else if(this.fieldName == 'BDCDYH'){
223 if(!this.inputBsm){
224 this.$message.warning("请输入不动产单元号!!!");
225 return;
226 }else if(this.inputBsm.length != 28){
227 this.$message.warning("输入不动产单元有误,请重新输入!!!");
228 return;
229 }
230 }
231 this.isShowCondition = false;
232 this.findByPro(this.layerUrl,[8,10],this.fieldName,this.inputBsm,true,function (res) {
165 var resultes = res.results; 233 var resultes = res.results;
166 if(resultes && resultes.length > 0){ 234 if(resultes && resultes.length > 0){
167 self.delIdentifyData(resultes); 235 self.delIdentifyData(resultes);
...@@ -193,6 +261,9 @@ export default { ...@@ -193,6 +261,9 @@ export default {
193 self.features = []; 261 self.features = [];
194 self.resultLayers = []; 262 self.resultLayers = [];
195 this.heighGraphic = null; 263 this.heighGraphic = null;
264 //清除查询图层
265 this.clearSearchLayer(this.viewId);
266
196 for(var i = 0;i < data.length;i++){ 267 for(var i = 0;i < data.length;i++){
197 var layerId = data[i].layerId; 268 var layerId = data[i].layerId;
198 var layer = self.getLayerById(layerId); 269 var layer = self.getLayerById(layerId);
...@@ -232,6 +303,8 @@ export default { ...@@ -232,6 +303,8 @@ export default {
232 } 303 }
233 } 304 }
234 } 305 }
306 self.selectResLayerId = self.resultLayers.length > 0 ? self.resultLayers[0].id : null;
307 this.selectLayerChange();
235 this.addSearchResultToMap(this.results,this.viewId); 308 this.addSearchResultToMap(this.results,this.viewId);
236 }, 309 },
237 getLayerById(layerId){ 310 getLayerById(layerId){
...@@ -259,18 +332,52 @@ export default { ...@@ -259,18 +332,52 @@ export default {
259 position: absolute; 332 position: absolute;
260 top: 12px; 333 top: 12px;
261 z-index: 99; 334 z-index: 99;
262 right: 5px; 335 right: 21px;
263 } 336 }
264 .searchDiv{ 337 .searchDiv{
265 position: absolute; 338 position: absolute;
266 top: 12px; 339 top: 12px;
267 left: 7px; 340 left: 7px;
268 width: 30%; 341 width: 25%;
269 max-height: 100%; 342 max-height: 100%;
270 /deep/ .el-input-group__append{ 343 /deep/ .el-input-group__append{
271 background-color: #409eff; 344 background-color: #409eff;
272 color: white; 345 color: white;
273 } 346 }
347 .searchCondition{
348 width: 100%;
349 line-height: 60px;
350 background-color: #FFFFFF;;
351 border-radius: 4px;
352 margin-top: 6px;
353 box-shadow: 0px 1px 1px 1px rgba(0, 0, 0, 0.12);
354 ul{
355 //height: 40px;
356 display: inline-flex;
357 width: 100%;
358 li{
359 width: 50%;
360 text-align: center;
361 }
362 li :hover{
363 cursor:pointer
364 }
365 }
366 i{
367 font-size: 24px;
368 margin-right: 3px;
369 }
370 span{
371 font-size: 14px;
372 color: #4A4A4A;
373 }
374 .iconzongdidaima{
375 color: #44AEFF;
376 }
377 .iconbudongchandanyuanhao{
378 color: #F39835;
379 }
380 }
274 .searchResult{ 381 .searchResult{
275 margin-top: 3px; 382 margin-top: 3px;
276 background: white; 383 background: white;
...@@ -319,12 +426,14 @@ export default { ...@@ -319,12 +426,14 @@ export default {
319 display: flex; 426 display: flex;
320 font-size: 14px; 427 font-size: 14px;
321 width: 100%; 428 width: 100%;
322 line-height: 23px; 429 line-height: 30px;
323 align-items: center; 430 align-items: center;
431 font-weight: 400;
324 .key{ 432 .key{
325 width: 30%; 433 width: 30%;
326 margin: 5px 3px; 434 margin: 5px 3px;
327 text-align: right; 435 text-align: right;
436 color: #505050;
328 } 437 }
329 .value{ 438 .value{
330 width: 70%; 439 width: 70%;
...@@ -332,6 +441,7 @@ export default { ...@@ -332,6 +441,7 @@ export default {
332 text-overflow:ellipsis; 441 text-overflow:ellipsis;
333 white-space:nowrap; 442 white-space:nowrap;
334 word-break:keep-all; 443 word-break:keep-all;
444 color: #999999;
335 } 445 }
336 } 446 }
337 447
...@@ -342,5 +452,18 @@ export default { ...@@ -342,5 +452,18 @@ export default {
342 } 452 }
343 } 453 }
344 } 454 }
455 .changeMap{
456 position: absolute;
457 bottom: 8px;
458 right: 52px;
459 }
460 .rightSide{
461 position: absolute;
462 top: 10%;
463 right: 21px;
464 }
465 /deep/ .esri-ui-bottom-right{
466 bottom: -17px;
467 }
345 } 468 }
346 </style> 469 </style>
...\ No newline at end of file ...\ No newline at end of file
......
1 <template>
2 <div>
3 <ul class="uploadDiv" v-if="!resultDialog && !txtResultDialog">
4 <li>
5 <el-upload
6 class="avatar-uploader"
7 action="#"
8 accept=".txt"
9 :auto-upload="false"
10 :on-change="txtFileChange"
11 :show-file-list="false"
12 >
13 <i class="el-icon-upload"></i>
14 <div class="title">TXT文本格式</div>
15 <div class="templateDowload">
16 <a href="#" @click.stop="downloadFile('./fileTemplate/txttemplet.txt','txttemplet.txt')">TXT模板下载</a>
17 </div>
18
19 </el-upload>
20 </li>
21 <li>
22 <el-upload
23 class="avatar-uploader"
24 action="/api/tx/shpUtils/readShp"
25 accept=".zip"
26 :show-file-list="false"
27 :on-success="shpFileSuccess"
28 >
29 <i class="el-icon-upload"></i>
30 <div class="title">ESRI Shape文件格式</div>
31 </el-upload>
32 </li>
33 <li>
34 <el-upload
35 class="avatar-uploader"
36 :show-file-list="false"
37 action="https://jsonplaceholder.typicode.com/posts/"
38 accept=".dwg,.dxf"
39 >
40 <i class="el-icon-upload"></i>
41 <div class="title">CAD文件</div>
42 </el-upload>
43 </li>
44 <li>
45 <el-upload
46 class="avatar-uploader"
47 action="/api/tx/excelGeo/readExcel"
48 accept=".xls,.xlsx"
49 :show-file-list="false"
50 :on-success="excelFileSuccess"
51 >
52 <i class="el-icon-upload"></i>
53 <div class="title">Excel文件格式</div>
54 <div class="templateDowload">
55 <a href="#" @click.stop="downloadFile('./fileTemplate/exceltemplet.xlsx','exceltemplet.xlsx')">Excel模板下载</a>
56 </div>
57 </el-upload>
58 </li>
59 </ul>
60 <div v-if="resultDialog">
61 <el-form :model="zdForm" ref="zdCheckForm" label-width="100px" size="small" @submit.native.prevent class="demo-ruleForm">
62 <el-form-item
63 label="宗地"
64 prop="zdBsm"
65 :rules="[
66 { required: true, message: '请选择宗地', trigger: 'change' },
67 ]"
68 >
69 <el-select v-model="zdForm.zdBsm" filterable placeholder="请选择" @change="zdChange">
70 <el-option
71 v-for="item in resultData"
72 :key="item.objectid"
73 :label="item.XMMC"
74 :value="item">
75 </el-option>
76 </el-select>
77 </el-form-item>
78 <el-form-item>
79 <el-button type="primary" @click="submitForm('zdCheckForm')">导入</el-button>
80 <el-button @click="cancel('zdCheckForm')">取消</el-button>
81 </el-form-item>
82 </el-form>
83 </div>
84 <div v-if="txtResultDialog">
85 <el-form :model="txtZd" ref="txtZdForm" label-width="100px" size="small" @submit.native.prevent class="demo-ruleForm">
86 <el-form-item
87 label="地块名称"
88 prop="name"
89 :rules="[
90 { required: true, message: '请选择地块', trigger: 'change' },
91 ]"
92 >
93 <el-select v-model="txtZd.name" filterable placeholder="请选择" @change="txtChange">
94 <el-option
95 v-for="(item,index) in txtResult"
96 :key="index"
97 :label="item.attributes.name"
98 :value="item.attributes.name">
99 </el-option>
100 </el-select>
101 </el-form-item>
102 <el-form-item>
103 <el-button type="primary" @click="submitTxtForm('txtZdForm')">导入</el-button>
104 <el-button @click="cancelTxtForm('txtZdForm')">取消</el-button>
105 </el-form-item>
106 </el-form>
107 </div>
108 </div>
109 </template>
110 <script>
111 import mapTools from "./js/mapTools";
112 export default {
113 data(){
114 return{
115 resultData:[],
116 resultDialog:false,
117 zdForm:{
118 zdBsm: ""
119 },
120 currentClickZd:null,
121 txtResult:[],
122 txtResultDialog:null,
123 txtZd:{
124 name:""
125 }
126 }
127 },
128 mixins:[mapTools],
129 methods:{
130 downloadFile(url,fileName){
131 let link = document.createElement("a");
132 link.style.display = "none";
133 link.href = url;
134 link.setAttribute("download", fileName);
135 document.body.appendChild(link);
136 link.click();
137 document.body.removeChild(link);
138 },
139 txtFileChange(file, fileList){
140 var self = this;
141 var fileReader = new FileReader();
142 fileReader.readAsText(file.raw);
143 fileReader.onload = function (res){
144 var content = this.result;
145 if(!content || content.length == 0){
146 self.$message.warning("文件内容为空!!!");
147 return;
148 }
149 self.analysisTextFile(content);
150 }
151 },
152 analysisTextFile(content){
153 var index = content.indexOf("[地块坐标]"),
154 geoInfos = content.substr(index),
155 geoList = geoInfos.split("\n");
156 if(geoList.length < 1){
157 this.$message.warning("文本内容格式有误,请效验文本内容格式!!!");
158 return;
159 }
160 //this.$emit("closeImportDialog");
161 var features = [],attributes = {},points = [],j = 1;
162 for(var i =1;i < geoList.length;i++){
163 var rowData = geoList[i];
164 if((rowData.indexOf("J") != -1 && rowData.indexOf("J") == 0)||(rowData.indexOf("j") != -1 && rowData.indexOf("j") == 0)){
165 //解析坐标点信息
166 var pointInfo = rowData.split(",");
167 var point = [parseFloat(pointInfo[2]),parseFloat(pointInfo[3])];
168 points.push(point);
169 }else {
170 if(points.length > 0){
171 var graphic = {
172 attributes:JSON.parse(JSON.stringify(attributes)),
173 geometry:{
174 rings:[points]
175 }
176 }
177 features.push(graphic);
178 }
179 //新建一个信息 坐标名称 类型
180 attributes = {};
181 points = []
182 var info = rowData.split(",");
183 if(info[3] || info[3] == 'null'){
184 attributes.name = '地块'+j;
185 j++
186 }else {
187 attributes.name = info[3];
188 }
189 }
190 }
191 if(points.length > 0){
192 var graphic = {
193 attributes:JSON.parse(JSON.stringify(attributes)),
194 geometry:{
195 rings:[[points.concat()]]
196 }
197 }
198 features.push(graphic);
199 }
200 //新建一个信息 坐标名称 类型
201 attributes = {};
202 points = []
203 this.txtResult = features;
204 this.txtZd.name = "";
205 this.txtResultDialog = true;
206 },
207 shpFileSuccess(response, file, fileList){
208 var self = this;
209 if(response.success){
210 this.resultData = response.result;
211 this.resultDialog = true;
212 }else {
213 this.$message.warning(response.message);
214 }
215 },
216 excelFileSuccess(response, file, fileList){
217 var self = this;
218 if(response.success){
219 var result = response.result;
220 var points = [];
221 for(var i = 0;i < result.length;i++){
222 var point = [];
223 point[0] = parseFloat(result[i].x);
224 point[1] = parseFloat(result[i].y);
225 points.push(point);
226 }
227 var wkt = "PROJCS[\"XADFZBX\",GEOGCS[\"GCS_WGS_1984\",DATUM[\"D_WGS_1984\",SPHEROID[\"WGS_1984\",6378137.0,298.257223563]],PRIMEM[\"Greenwich\",0.0],UNIT[\"Degree\",0.0174532925199433]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"False_Easting\",0.0],PARAMETER[\"False_Northing\",0.0],PARAMETER[\"Central_Meridian\",0.0],PARAMETER[\"Scale_Factor\",1.0],PARAMETER[\"Latitude_Of_Origin\",0.0],UNIT[\"Meter\",1.0]]";
228 var geometry = {
229 rings:[points],
230 spatialReference:{
231 wkt:wkt
232 },
233 type:"polygon"
234 }
235 //self.checkGeo(graphic);
236 self.$emit("setGeometry",geometry);
237 }else{
238 this.$message.warning(response.message);
239 }
240 },
241 //导入
242 submitForm(formName){
243 //校验完整性 直接调用空间方法 提交空间表
244 var self = this;
245 this.$refs[formName].validate((valid) => {
246 if (valid) {
247 var geometry = self.parseWktToArc(self.currentClickZd.wkt);
248 geometry.type = "polygon";
249 var wkt = "PROJCS[\"XADFZBX\",GEOGCS[\"GCS_WGS_1984\",DATUM[\"D_WGS_1984\",SPHEROID[\"WGS_1984\",6378137.0,298.257223563]],PRIMEM[\"Greenwich\",0.0],UNIT[\"Degree\",0.0174532925199433]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"False_Easting\",0.0],PARAMETER[\"False_Northing\",0.0],PARAMETER[\"Central_Meridian\",0.0],PARAMETER[\"Scale_Factor\",1.0],PARAMETER[\"Latitude_Of_Origin\",0.0],UNIT[\"Meter\",1.0]]";
250 geometry.spatialReference = {
251 wkt:wkt
252 }
253 var graphic = {
254 attributes:self.currentClickZd,
255 geometry:geometry
256 }
257 // self.checkGeo(graphic);
258 self.resultDialog = false;
259 self.$emit("setGeometry",geometry);
260 } else {
261 console.log('error submit!!');
262 return false;
263 }
264 });
265 },
266 //文本文档导入
267 submitTxtForm(formName){
268 var self = this;
269 this.$refs[formName].validate((valid) => {
270 if(valid){
271 var wkt = "PROJCS[\"XADFZBX\",GEOGCS[\"GCS_WGS_1984\",DATUM[\"D_WGS_1984\",SPHEROID[\"WGS_1984\",6378137.0,298.257223563]],PRIMEM[\"Greenwich\",0.0],UNIT[\"Degree\",0.0174532925199433]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"False_Easting\",0.0],PARAMETER[\"False_Northing\",0.0],PARAMETER[\"Central_Meridian\",0.0],PARAMETER[\"Scale_Factor\",1.0],PARAMETER[\"Latitude_Of_Origin\",0.0],UNIT[\"Meter\",1.0]]";
272 var graphics = self.txtResult.filter(item => {
273 return item.attributes.name == self.txtZd.name;
274 })
275 var graphic = graphics[0];
276 graphic.geometry.type = "polygon";
277 graphic.geometry.spatialReference = {
278 wkt:wkt
279 }
280 //self.checkGeo(graphic);
281 self.txtResultDialog = false;
282 self.$emit("setGeometry",geometry);
283 }else{
284 console.log('error submit!!');
285 return false;
286 }
287 })
288 },
289 //取消
290 cancel(){
291 this.zdForm.zdBsm = "";
292 this.currentClickZd = null;
293 this.resultDialog = false;
294 // 清空当前图层上显示的图形
295 this.clearOverLayer();
296 },
297 //取消文本选择的弹出框
298 cancelTxtForm(){
299 this.txtZd.name = "";
300 this.txtResultDialog = false;
301 // 清空当前图层上显示的图形
302 this.clearOverLayer();
303 },
304 //宗地选择发生改变
305 zdChange(value){
306 this.zdForm.zdBsm = value.XMMC;
307 this.currentClickZd = value;
308 var geometry = this.parseWktToArc(this.currentClickZd.wkt);
309 geometry.type = "polygon";
310 var wkt = "PROJCS[\"XADFZBX\",GEOGCS[\"GCS_WGS_1984\",DATUM[\"D_WGS_1984\",SPHEROID[\"WGS_1984\",6378137.0,298.257223563]],PRIMEM[\"Greenwich\",0.0],UNIT[\"Degree\",0.0174532925199433]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"False_Easting\",0.0],PARAMETER[\"False_Northing\",0.0],PARAMETER[\"Central_Meridian\",0.0],PARAMETER[\"Scale_Factor\",1.0],PARAMETER[\"Latitude_Of_Origin\",0.0],UNIT[\"Meter\",1.0]]";
311 geometry.spatialReference = {
312 wkt:wkt
313 }
314 this.addOverLayer(geometry);
315 },
316 txtChange(value){
317 var wkt = "PROJCS[\"XADFZBX\",GEOGCS[\"GCS_WGS_1984\",DATUM[\"D_WGS_1984\",SPHEROID[\"WGS_1984\",6378137.0,298.257223563]],PRIMEM[\"Greenwich\",0.0],UNIT[\"Degree\",0.0174532925199433]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"False_Easting\",0.0],PARAMETER[\"False_Northing\",0.0],PARAMETER[\"Central_Meridian\",0.0],PARAMETER[\"Scale_Factor\",1.0],PARAMETER[\"Latitude_Of_Origin\",0.0],UNIT[\"Meter\",1.0]]";
318 var graphics = this.txtResult.filter(item => {
319 return item.attributes.name == value;
320 })
321 var graphic = graphics[0];
322 graphic.geometry.type = "polygon";
323 graphic.geometry.spatialReference = {
324 wkt:wkt
325 }
326 this.addOverLayer(graphic.geometry);
327 },
328 }
329 }
330 </script>
331 <style scoped lang="less">
332 .uploadDiv{
333 display: flex;
334 justify-content:center;
335 li{
336 margin: 5px;
337 width: 20%;
338 /deep/ .el-upload--picture-card{
339 width: 100%;
340 }
341 .title{
342 line-height: 1;
343 margin-top: -57px;
344 font-size: 14px;
345 }
346 .templateDowload{
347 line-height: 1;
348 margin-top: 7px;
349 }
350 }
351 }
352 </style>
...\ No newline at end of file ...\ No newline at end of file
1 import layers from '@/assets/json/layers.json' 1 import layers from '@/assets/json/layers.json'
2 import graphicSymbol from '@/assets/json/graphicSymbol.json' 2 import graphicSymbol from '@/assets/json/graphicSymbol.json'
3 import queryUtils from "@libs/map/queryUtils"; 3 import queryUtils from "@libs/map/queryUtils";
4 import {loadModules} from "esri-loader" 4 import {loadModules} from "esri-loader"
...@@ -56,7 +56,9 @@ export default { ...@@ -56,7 +56,9 @@ export default {
56 var graphic = features[0]; 56 var graphic = features[0];
57 graphic.symbol = symbol; 57 graphic.symbol = symbol;
58 layer.add(graphic); 58 layer.add(graphic);
59 view.extent = graphic.geometry.extent; 59 // view.extent = graphic.geometry.extent;
60 view.center = graphic.geometry.extent.center;
61 view.zoom = 15;
60 }).catch( err => { 62 }).catch( err => {
61 thow(err); 63 thow(err);
62 }) 64 })
...@@ -124,6 +126,37 @@ export default { ...@@ -124,6 +126,37 @@ export default {
124 item.removeAll(); 126 item.removeAll();
125 } 127 }
126 }); 128 });
127 } 129 },
130 //给默认加载矢量图形中添加或者移除图层
131 addSublayers(viewId,layers){
132 var view = maps[viewId],
133 layer = view.map.findLayerById("testLayer");
134 for(var i = 0;i < layers.length;i++){
135 var sublayer = layer.findSublayerById(layers[i].layerId);
136 if(sublayer){
137 sublayer.visible = true;
138 }else{
139 sublayer = {
140 id:layers[i].layerId,
141 visible:true
142 }
143 layer.sublayers.push(sublayer);
144 }
145 }
146 },
147 removeSublayer(viewId,layers){
148 var view = maps[viewId],
149 layer = view.map.findLayerById("testLayer");
150 var items = layer.sublayers.items;
151 for(var i = 0;i < layers.length;i++){
152 for (var k = 0;k<items.length;k++) {
153 if(layers[i].layerId == items[k].id){
154 items.splice(k, 1);
155 break;
156 }
157 }
158 }
159 layer.sublayers = items;
160 }
128 } 161 }
129 } 162 }
...\ No newline at end of file ...\ No newline at end of file
......
1 import {loadModules} from 'esri-loader'
2 import {maps} from '@/libs/map/mapUtils'
3 import graphicSymbol from '@/assets/json/graphicSymbol.json'
4 import point from "shapefile/shp/point";
5 import queryUtils from "@libs/map/queryUtils";
6 import layers from '@/assets/json/layers.json'
7 import arcgisParser from 'terraformer-arcgis-parser'
8 import wktParse from 'terraformer-wkt-parser'
9
10 export default {
11 methods:{
12 getLayerByName(name) {
13 for (var i = 0; i < layers.length; i++) {
14 if (layers[i].layerName == name) {
15 return layers[i];
16 }
17 }
18 return null;
19 },
20 //创建buffer图形
21 createBuffer(geometry,distance,viewId,callBackFunction){
22 loadModules([
23 "esri/geometry/geometryEngine",
24 "esri/Graphic",
25 "esri/layers/GraphicsLayer"
26 ]).then(([
27 geometryEngine,
28 Graphic,
29 GraphicsLayer
30 ])=>{
31 var view = maps[viewId];
32 var bufferGeometry = geometryEngine.buffer(geometry,distance,'meters',true);
33 var layer = view.map.findLayerById("identifyLayer");
34 if(layer){
35 layer.removeAll();
36 }else {
37 layer = new GraphicsLayer({
38 id:"identifyLayer"
39 })
40 view.map.add(layer);
41 }
42 var symbol = geometry.type == 'point' ? graphicSymbol.pointSymbol.bufferSymbol : graphicSymbol.fillSymbol.bufferSymbol;
43 var oldGraphic = new Graphic({
44 geometry:geometry,
45 symbol:symbol
46 })
47 layer.add(oldGraphic);
48 var graphic = new Graphic({
49 geometry:bufferGeometry,
50 symbol:graphicSymbol.fillSymbol.bufferGeoSymbol
51 })
52 layer.add(graphic);
53 if(callBackFunction && typeof callBackFunction == 'function'){
54 callBackFunction(bufferGeometry);
55 }
56 }).catch(err => {
57 console.log(err);
58 })
59 },
60 queryAttributes(url,where,callbackFunction){
61 queryUtils.methods.queryByWhere(url,where,null,false,"",null,function (res) {
62 var features = res.features;
63 if(callbackFunction && typeof callbackFunction == 'function'){
64 callbackFunction(features);
65 }
66 })
67 },
68 //清除缓冲图层
69 clearBufferLayer(viewId){
70 var view = maps[viewId];
71 var layer = view.map.findLayerById("identifyLayer");
72 if(layer){
73 layer.removeAll();
74 }
75 },
76 //查询地籍区/地籍子区根据区域代码
77 queryDjqByDm(url,type,dm,callBackFunction){
78 var where = "";
79 if(type == 'djq'){
80 where = {"DJQDM":dm}
81 }else if(type == 'djzq'){
82 where = {"DJZQDM":dm}
83 }
84 queryUtils.methods.queryByWhere(url,where,null,true,"","",function (res) {
85 var features = res.features;
86 if(callBackFunction && typeof callBackFunction == 'function'){
87 callBackFunction(features);
88 }
89 });
90 },
91 parseWktToArc(wkt){
92 var primitive = wktParse.parse(wkt);
93 /*if(primitive.type == "MultiPolygon"){
94 primitive.type = "Polygon"
95 }*/
96 return arcgisParser.convert(primitive)
97 },
98 //添加添加元素和覆盖的元素到地图上
99 addOverLayer(geometry){
100 var view = maps["testMap"];
101 loadModules([
102 "esri/Graphic",
103 "esri/geometry/Polygon",
104 "esri/layers/GraphicsLayer",
105 "esri/geometry/geometryEngineAsync",
106 "esri/geometry/Extent"
107 ]).then(([
108 Graphic,
109 Polygon,
110 GraphicsLayer,
111 geometryEngineAsync,
112 Extent
113 ])=>{
114 var graphic = new Graphic({
115 geometry:geometry
116 })
117 var layer = view.map.findLayerById("identifyLayer");
118 if(layer){
119 layer.removeAll();
120 }else {
121 layer = new GraphicsLayer({
122 id:"overLayer"
123 })
124 view.map.add(layer);
125 }
126 var impotSymbol = graphicSymbol.fillSymbol.importSymbol;
127 graphic.symbol = impotSymbol;
128 layer.add(graphic);
129 var extent = new Extent(JSON.parse(JSON.stringify(graphic.geometry.extent)))
130 extent.spatialReference = view.spatialReference;
131 // view.extent = extent;
132 view.center = extent.center;
133 view.zoom = 15;
134 }).catch(err => {
135 console.log(err);
136
137 })
138 },
139 }
140 }
...\ No newline at end of file ...\ No newline at end of file
1 <template> 1 <template>
2 <div class="tools"> 2 <div class="tools">
3 <el-button-group> 3 <ul>
4 <li>
5 <i class="iconfont iconhangzhengqudaohang"></i>
6 <span>行政区导航</span>
7 </li>
8 <li>
9 <i class="iconfont iconkongjianchaxun"></i>
10 <span>空间查询</span>
11 </li>
12 <li>
13 <i class="iconfont iconzuobiaodingwei"></i>
14 <span>定位</span>
15 </li>
16 <li>
17 <i class="iconfont iconduopingduibi"></i>
18 <span>多屏对比</span>
19 </li>
20 <li @click="fullMap">
21 <i class="iconfont iconquantu"></i>
22 <span>全图</span>
23 </li>
24 <li @click="measureMent('distance')">
25 <i class="iconfont iconceju"></i>
26 <span>测距</span>
27 </li>
28 <li @click="measureMent('area')">
29 <i class="iconfont iconcemianji"></i>
30 <span>测面</span>
31 </li>
32 <li @click="zoomOut">
33 <i class="iconfont iconlakuangfangda"></i>
34 <span>放大</span>
35 </li>
36 <li @click="zoomIn">
37 <i class="iconfont iconlakuangsuoxiao"></i>
38 <span>缩小</span>
39 </li>
40 <li @click="info">
41 <i class="iconfont iconxinxi"></i>
42 <span>识别</span>
43 </li>
44 <li @click="clear">
45 <i class="iconfont iconqingchu"></i>
46 <span>清除</span>
47 </li>
48 </ul>
49 <!-- <el-button-group>
4 <el-button type="primary" title="全图" icon="iconfont iconquantu" @click="fullMap"></el-button> 50 <el-button type="primary" title="全图" icon="iconfont iconquantu" @click="fullMap"></el-button>
5 <el-button type="primary" title="测面" icon="iconfont iconcemianji" @click="measureMent('area')"></el-button> 51 <el-button type="primary" title="测面" icon="iconfont iconcemianji" @click="measureMent('area')"></el-button>
6 <el-button type="primary" title="测距" icon="iconfont iconceju" @click="measureMent('distance')"></el-button> 52 <el-button type="primary" title="测距" icon="iconfont iconceju" @click="measureMent('distance')"></el-button>
...@@ -9,8 +55,112 @@ ...@@ -9,8 +55,112 @@
9 <el-button type="primary" title="点选" icon="iconfont iconchaxunshuxing" @click="info"></el-button> 55 <el-button type="primary" title="点选" icon="iconfont iconchaxunshuxing" @click="info"></el-button>
10 <el-button type="primary" title="缓冲区分析" icon="iconfont iconqingchu" @click="bufferAnalysis"></el-button> 56 <el-button type="primary" title="缓冲区分析" icon="iconfont iconqingchu" @click="bufferAnalysis"></el-button>
11 <el-button type="primary" title="清除" icon="iconfont iconqingchu" @click="clear"></el-button> 57 <el-button type="primary" title="清除" icon="iconfont iconqingchu" @click="clear"></el-button>
12 </el-button-group> 58 </el-button-group> -->
13 59 <div class="bufferDialog" v-show="bufferDialog">
60 <el-tabs v-model="activeName" type="card" @tab-click="tabClick">
61 <el-tab-pane label="绘制范围" name="hzfw">
62 <div class="contentItem">
63 <span>绘制范围:</span>
64 <div class="drawTypes">
65 <el-button type="text" @click="bufferParams.drawType = 'point'"></el-button>
66 <el-button type="text" @click="bufferParams.drawType = 'circle'"></el-button>
67 <el-button type="text" @click="bufferParams.drawType = 'polygon'">任意多边形</el-button>
68 </div>
69 </div>
70 <div class="contentItem">
71 <span>缓冲距离:</span>
72 <el-input-number :min="0" v-model="bufferParams.distance" size="small"></el-input-number>
73 </div>
74 <div class="contentItem">
75 <span>图层选择:</span>
76 <el-select size="small" multiple v-model="bufferParams.layerId">
77 <el-option
78 v-for="item in bufferLayers"
79 :key="item.id"
80 :label="item.layerName"
81 :value="item.id">
82 </el-option>
83 </el-select>
84 </div>
85 <div class="buttonDiv">
86 <el-button size="small" type="primary" @click="toIdentity">确定</el-button>
87 <el-button size="small" @click="resetBufferParams">重置</el-button>
88 </div>
89 </el-tab-pane>
90 <el-tab-pane label="导入范围" name="drfw">
91 <div class="contentItem">
92 <span>绘制范围:</span>
93 <div class="drawTypes">
94 <i class="el-icon-plus" @click="openImportDialog"></i>
95 </div>
96 </div>
97 <div class="contentItem">
98 <span>缓冲距离:</span>
99 <el-input-number :min="0" v-model="bufferParams.distance" size="small"></el-input-number>
100 </div>
101 <div class="contentItem">
102 <span>图层选择:</span>
103 <el-select size="small" multiple v-model="bufferParams.layerId">
104 <el-option
105 v-for="item in bufferLayers"
106 :key="item.id"
107 :label="item.layerName"
108 :value="item.id">
109 </el-option>
110 </el-select>
111 </div>
112 <div class="buttonDiv">
113 <el-button size="small" type="primary" @click="importIdentity">确定</el-button>
114 <el-button size="small" @click="resetBufferParams">重置</el-button>
115 </div>
116 </el-tab-pane>
117 <el-tab-pane label="选择范围" name="xzfw">
118 <div class="contentItem">
119 <!--地籍区/地籍子区-->
120 <span>选择范围:</span>
121 <el-select v-model="bufferParams.selectDjq" filterable size="small" placeholder="请选择地籍区" @change="getDjzqList">
122 <el-option
123 v-for="(item,index) in djqList"
124 :key="index"
125 :label="item.mc"
126 :value="item.dm">
127 </el-option>
128 </el-select>
129 <el-select v-model="bufferParams.selectDjzq" filterable size="small" placeholder="请选择地籍子区">
130 <el-option
131 v-for="(item,index) in djzqList"
132 :key="index"
133 :label="item.mc"
134 :value="item.dm">
135 </el-option>
136 </el-select>
137 </div>
138 <div class="contentItem">
139 <span>缓冲距离:</span>
140 <el-input-number :min="0" v-model="bufferParams.distance" size="small"></el-input-number>
141 </div>
142 <div class="contentItem">
143 <span>图层选择:</span>
144 <el-select size="small" multiple v-model="bufferParams.layerId">
145 <el-option
146 v-for="item in bufferLayers"
147 :key="item.id"
148 :label="item.layerName"
149 :value="item.id">
150 </el-option>
151 </el-select>
152 </div>
153 <div class="buttonDiv">
154 <el-button size="small" type="primary" @click="toFwIdentity">确定</el-button>
155 <el-button size="small" @click="resetBufferParams">重置</el-button>
156 </div>
157 </el-tab-pane>
158 </el-tabs>
159 </div>
160 <el-dialog title="图形导入" :visible.sync="importDialog"
161 width="30%">
162 <import-geometry @setGeometry="setGeometry"></import-geometry>
163 </el-dialog>
14 </div> 164 </div>
15 </template> 165 </template>
16 <script> 166 <script>
...@@ -19,7 +169,10 @@ import draw from '@/libs/map/draw' ...@@ -19,7 +169,10 @@ import draw from '@/libs/map/draw'
19 import identifyUtils from '@/libs/map/IdentifyUtils' 169 import identifyUtils from '@/libs/map/IdentifyUtils'
20 import measure from '@/libs/map/measure' 170 import measure from '@/libs/map/measure'
21 171
172 import mapTools from "./js/mapTools";
173
22 import {loadModules} from "esri-loader" 174 import {loadModules} from "esri-loader"
175 import importGeometry from './importGeometry'
23 export default { 176 export default {
24 props:{ 177 props:{
25 viewId:{ 178 viewId:{
...@@ -27,14 +180,51 @@ export default { ...@@ -27,14 +180,51 @@ export default {
27 default:"mainView" 180 default:"mainView"
28 } 181 }
29 }, 182 },
30 mixins:[draw,identifyUtils,measure], 183 mixins:[draw,identifyUtils,measure,mapTools],
184 components:{
185 importGeometry
186 },
31 data(){ 187 data(){
32 return{ 188 return{
33 url:"http://192.168.2.201:6080/arcgis/rest/services/%E4%BA%92%E8%81%94%E7%BD%91%E5%8A%A0%E4%B8%8D%E5%8A%A8%E4%BA%A7/XA_%E4%B8%8D%E5%8A%A8%E4%BA%A7/MapServer", 189 url:"http://192.168.2.201:6080/arcgis/rest/services/%E4%BA%92%E8%81%94%E7%BD%91%E5%8A%A0%E4%B8%8D%E5%8A%A8%E4%BA%A7/XA_%E4%B8%8D%E5%8A%A8%E4%BA%A7/MapServer",
34 selectResLayerId:"", 190 selectResLayerId:"",
35 features:[], 191 features:[],
36 resultLayers:[], 192 resultLayers:[],
37 results:[] 193 results:[],
194 bufferParams:{
195 drawType:"",
196 distance:0,
197 layerId:[],
198 impotGeo:null,
199 selectDjq:"",
200 selectDjzq:""
201 },
202 activeName:'hzfw',
203 bufferLayers:[{
204 layerName:"宗地",
205 id:"8"
206 },
207 {
208 layerName:"自然幢",
209 id:"10"
210 },
211 {
212 layerName:"构筑物",
213 id:"2"
214 },
215 {
216 layerName:"林权",
217 id:"5"
218 },
219 {
220 layerName:"宗海",
221 id:"9"
222 }],
223 bufferDialog:false,
224 djqList:[],
225 djzqList:[],
226 importDialog:false,
227 importGeo:""
38 } 228 }
39 }, 229 },
40 methods:{ 230 methods:{
...@@ -51,6 +241,7 @@ export default { ...@@ -51,6 +241,7 @@ export default {
51 }, 241 },
52 clear(){ 242 clear(){
53 this.measure(this.viewId,null); 243 this.measure(this.viewId,null);
244 this.$parent.closeResultDialog();
54 }, 245 },
55 info(){ 246 info(){
56 var view = maps[this.viewId]; 247 var view = maps[this.viewId];
...@@ -61,6 +252,8 @@ export default { ...@@ -61,6 +252,8 @@ export default {
61 if(resultes && resultes.length > 0){ 252 if(resultes && resultes.length > 0){
62 self.$parent.delIdentifyData(resultes); 253 self.$parent.delIdentifyData(resultes);
63 self.$parent.dialogVisible = true; 254 self.$parent.dialogVisible = true;
255 }else{
256 self.$message.success("暂无数据!!!");
64 } 257 }
65 },true,'all',3,view.extent); 258 },true,'all',3,view.extent);
66 }); 259 });
...@@ -100,9 +293,181 @@ export default { ...@@ -100,9 +293,181 @@ export default {
100 }, 293 },
101 //缓冲区分析 294 //缓冲区分析
102 bufferAnalysis(){ 295 bufferAnalysis(){
296 this.bufferDialog = true;
103 297
104 } 298 },
299 //缓冲区分析执行语句
300 toIdentity(){
301 var self = this;
302 var view = maps[this.viewId];
303 for(var key in this.bufferParams){
304 if((key == 'distance' || key == 'layerId' || key == 'drawType')&&!this.bufferParams[key].toString()){
305 var name = "";
306 switch (key) {
307 case 'distance':name = '缓冲距离';break;
308 case 'layerId':name = '分析图层';break;
309 case 'drawType':name = '绘制类型';break;
310 }
311 key == 'distance'?this.$message.warning("请输入"+name):this.$message.warning("请选择"+name);
312 return;
313 }
314 }
315 this.initDraw(this.bufferParams.drawType,this.viewId,null,function(geo){
316 self.createBuffer(geo,self.bufferParams.distance,self.viewId,function (bufGeo) {
317 self.identify(self.url,self.bufferParams.layerId,bufGeo,function(res){
318 var resultes = res.results;
319 if(resultes && resultes.length > 0){
320 self.$parent.delIdentifyData(resultes);
321 self.$parent.dialogVisible = true;
322 }else{
323 self.$message.success("暂无数据!!!");
324 }
325 },true,'all',3,view.extent);
326 })
327 })
328 },
329 toFwIdentity(){
330 var self = this;
331 var view = maps[this.viewId];
332 for(var key in this.bufferParams){
333 if((key == 'distance' || key == 'layerId' || key == 'selectDjq')&&!this.bufferParams[key].toString()){
334 var name = "";
335 switch (key) {
336 case 'distance':name = '缓冲距离';break;
337 case 'layerId':name = '分析图层';break;
338 case 'selectDjq':name = '地籍区/地籍子区';break;
339 }
340 key == 'distance'?this.$message.warning("请输入"+name):this.$message.warning("请选择"+name);
341 return;
342 }
343 }
105 344
345 var layer = null,type = "",dm = "";
346 if(this.bufferParams.selectDjzq){
347 layer = this.getLayerByName("DJZQ");
348 type = 'djzq';
349 dm = this.bufferParams.selectDjzq;
350 }else if(this.bufferParams.selectDjq){
351 layer = this.getLayerByName("DJQ");
352 type = 'djq';
353 dm = this.bufferParams.selectDjq;
354 }
355 this.queryDjqByDm(this.url+"/"+layer.id,type,dm,function (features) {
356 if(features.length > 0){
357 self.createBuffer(features[0].geometry,self.bufferParams.distance,self.viewId,function (bufGeo) {
358 self.identify(self.url,self.bufferParams.layerId,bufGeo,function(res){
359 var resultes = res.results;
360 if(resultes && resultes.length > 0){
361 self.$parent.delIdentifyData(resultes);
362 self.$parent.dialogVisible = true;
363 }else{
364 self.$message.success("暂无数据!!!");
365 }
366 },true,'all',3,view.extent);
367 })
368 }
369 });
370 },
371 importIdentity(){
372 var self = this;
373 var view = maps[this.viewId];
374 if(!this.importGeo){
375 this.$message.warning("请导入空间范围!!");
376 return;
377 }
378 for(var key in this.bufferParams){
379 if((key == 'distance' || key == 'layerId')&&!this.bufferParams[key].toString()){
380 var name = "";
381 switch (key) {
382 case 'distance':name = '缓冲距离';break;
383 case 'layerId':name = '分析图层';break;
384 }
385 key == 'distance'?this.$message.warning("请输入"+name):this.$message.warning("请选择"+name);
386 return;
387 }
388 }
389 self.createBuffer(this.importGeo,self.bufferParams.distance,self.viewId,function (bufGeo) {
390 self.identify(self.url,self.bufferParams.layerId,bufGeo,function(res){
391 var resultes = res.results;
392 if(resultes && resultes.length > 0){
393 self.$parent.delIdentifyData(resultes);
394 self.$parent.dialogVisible = true;
395 }else{
396 self.$message.success("暂无数据!!!");
397 }
398 },true,'all',3,view.extent);
399 })
400 },
401 //清除缓冲区参数
402 resetBufferParams(){
403 //清除参数
404 for(var key in this.bufferParams){
405 if(key == 'distance'){
406 this.bufferParams[key] = 0;
407 }else if(key == 'layerId'){
408 this.bufferParams[key] = []
409 } else {
410 this.bufferParams[key] = "";
411 }
412 }
413 //清除结果图层和绘制图层
414 this.$parent.closeResultDialog();
415 this.clearBufferLayer();
416 },
417 //获取地籍区/地籍子区数据
418 getDjqList(){
419 var self = this;
420 var djqLayer = this.getLayerByName("DJQ");
421 this.queryAttributes(this.url+"/"+djqLayer.id,"",function (features) {
422 //self.djqAndDjzq.concat = features;
423 if(features != null){
424 for(var i = 0;i < features.length;i++){
425 var obj = {
426 dm:features[i].attributes.DJQDM,
427 mc:features[i].attributes.DJQMC,
428 type:"djq"
429 }
430 self.djqList.push(obj);
431 }
432 }
433 })
434
435 },
436 //获取地籍子区
437 getDjzqList(){
438 var self = this,
439 djzqLayer= this.getLayerByName("DJZQ");
440 self.djzqList = [];
441 this.queryAttributes(this.url+"/"+djzqLayer.id,{"DJZQDM":this.bufferParams.selectDjq},function (features) {
442 if(features != null){
443 for(var i = 0;i < features.length;i++){
444 var obj = {
445 dm:features[i].attributes.DJZQDM,
446 mc:features[i].attributes.DJZQMC,
447 type:"djzq"
448 }
449 self.djzqList.push(obj);
450 }
451 }
452 })
453 },
454 tabClick(name){
455 if(this.activeName == 'xzfw'){
456 if(this.djqList.length == 0){
457 this.djzqList = [];
458 this.getDjqList();
459 }
460 }
461 },
462 //设置导入的空间数据
463 setGeometry(geo){
464 this.importGeo = geo;
465 this.importDialog = false;
466 },
467 //打开导入空间
468 openImportDialog(){
469 this.importDialog = true;
470 },
106 } 471 }
107 472
108 473
...@@ -111,6 +476,55 @@ export default { ...@@ -111,6 +476,55 @@ export default {
111 <style lang="less" scoped> 476 <style lang="less" scoped>
112 .tools{ 477 .tools{
113 position: relative; 478 position: relative;
479 display: flex;
480 justify-content: space-around;
481 line-height: 48px;
482 background-color: #FFFFFF;
483 box-shadow: 0px 1px 1px 1px rgba(0, 0, 0, 0.18);
484 border-radius: 4px;
485 ul{
486 height: 48px;
487 li{
488 margin-top:12px;
489 padding:0 10px;
490 border-right: 1px dashed #CBCBCB;
491 float: left;
492 height: 24px;
493 line-height: 24px;
494 i{
495 font-size:16px;
496 color: #8C8E91;
497 position: relative;
498 top: 2px;
499 }
500 span{
501 font-size: 12px;
502 color: #6D7278;
503 }
504 }
505 li:last-child{
506 border: 0;
507 }
508 li :hover{
509 cursor:pointer
510 }
511 }
512 }
513 .bufferDialog{
514 background: #f9f8f7;
515 margin-top: 5px;
516 padding-bottom: 20px;
517 /deep/ .el-tabs__header{
518 margin: 0px;
519 }
520 .contentItem{
521 margin: 8px 5px;
522 .drawTypes{
523 display: contents;
524 }
525 }
526 .buttonDiv{
527 text-align: center;
528 }
114 } 529 }
115
116 </style> 530 </style>
...\ No newline at end of file ...\ No newline at end of file
......
1 <template>
2 <div>
3 <div class="sideTools">
4 <ul>
5 <li @click="sidePanelShow = false;currentActivate = ''">
6 <i class="iconfont iconshousuo"></i>
7 </li>
8 <li @click="clickSideTools('zhuantishu')" :class="currentActivate == 'zhuantishu'?'active':''">
9 <i class="iconfont iconzhuantishu"></i>
10 <span>专题树</span>
11 </li>
12 <li @click="clickSideTools('huanchongqu')" :class="currentActivate == 'huanchongqu'?'active':''">
13 <i class="iconfont iconhuanchongfenxi"></i>
14 <span>缓冲区分析</span>
15 </li>
16 <li @click="clickSideTools('chongdiefenxi')" :class="currentActivate == 'chongdiefenxi'?'active':''">
17 <i class="iconfont iconzhongdiefenxi"></i>
18 <span>重叠分析</span>
19 </li>
20 </ul>
21 </div>
22 <div class="sidePanel" v-show="sidePanelShow">
23 <div class="content" v-show="currentActivate == 'zhuantishu'">
24 <el-tree
25 show-checkbox
26 :data="layerTreeData"
27 node-key="id"
28 highlight-current
29 @check="checkTreeNode"
30 >
31 <span class="custom-tree-node" slot-scope="{ node, data }">
32 <span>{{ node.label }}</span>
33 <span class="setOpacity" v-if="data.type == 'layerGroup'">
34 <el-slider v-model="data.alpha" ref="data.id" :format-tooltip="formatTooltip" @change="alphaChange(data)"></el-slider>
35 </span>
36 </span>
37 </el-tree>
38 </div>
39 </div>
40 </div>
41 </template>
42
43 <script>
44 import layerTree from '@/assets/json/layerTreeData.json'
45 import mapLayerManager from './js/mapLayerManager.js'
46 export default{
47 props:{
48 viewId:{
49 type:String,
50 default:""
51 }
52 },
53 mixins:[mapLayerManager],
54 data(){
55 return{
56 currentActivate:"",
57 layerTreeData:[],
58 defaultSelectNodes:[19,8,10],
59 layerUrl:"http://192.168.2.201:6080/arcgis/rest/services/%E4%BA%92%E8%81%94%E7%BD%91%E5%8A%A0%E4%B8%8D%E5%8A%A8%E4%BA%A7/XA_%E4%B8%8D%E5%8A%A8%E4%BA%A7/MapServer",
60 sidePanelShow:false
61 }
62 },
63 mounted(){
64 this.layerTreeData = layerTree;
65 },
66 methods:{
67 checkTreeNode(treeNode,checkNodeList){
68 var self = this;
69 //先判断是选中还是取消选中
70 var flag = false;
71 for (var i = 0; i < checkNodeList.checkedNodes.length; i++) {
72 if (checkNodeList.checkedNodes[i].id == treeNode.id) {
73 flag = true;
74 }
75 }
76 if(flag){
77 if(treeNode && treeNode.children){
78 var ids = [];
79 this.getChildrens(treeNode,ids);
80 this.addSublayers(this.viewId,ids);
81 }else{
82 this.addSublayers(this.viewId,[treeNode]);
83 }
84 }else{
85 if(treeNode && treeNode.children){
86 var ids = [];
87 this.getChildrens(treeNode,ids);
88 this.removeSublayer(this.viewId,ids);
89 }else{
90 this.removeSublayer(this.viewId,[treeNode]);
91 }
92 }
93 },
94 //获取树节点选中的子节点
95 getChildrens(data, childrens) {
96 if (data.children) {
97 for (var i = 0; i < data.children.length; i++) {
98 if (data.children[i].children) {
99 childrens = this.getChildrens(data.children[i], childrens);
100 } else {
101 if(data.children[i].type == 'layer'){
102 childrens.push(data.children[i]);
103 }
104 }
105 }
106 }
107 return childrens;
108 },
109 clickSideTools(currentName){
110 this.currentActivate = currentName;
111 this.sidePanelShow = true;
112 },
113 formatTooltip(val){
114 return val+"%";
115 },
116 alphaChange(nodeData){
117
118 }
119 }
120 }
121 </script>
122
123 <style scoped lang="less">
124 .sideTools{
125 width: 35px;
126 background-color: #FFFFFF;
127 text-align: center;
128 padding: 3px 0px;
129 box-shadow: 0px 1px 1px 1px rgba(0, 0, 0, 0.18);
130 border-radius: 2px;
131 li{
132 padding: 10px 0px;
133 border-bottom: 1px dashed #CBCBCB;
134 width: 25px;
135 margin-left: 5px;
136 }
137 li:last-child{
138 border: 0;
139 }
140 li :hover{
141 cursor:pointer
142 }
143 span{
144 font-size: 14px;
145 color: #6D7278;
146 }
147 i{
148 font-size: 1rem;
149 color: #8C8E91;
150 }
151 .active{
152 span,i{
153 color: #0091FF;
154 }
155 }
156 }
157 .sidePanel{
158 height: 500px;
159 width: 300px;
160 position: absolute;
161 background-color: #FFFFFF;
162 top: 0px;
163 right: 37px;
164 border-radius: 4px;
165 .content {
166 height:100%;
167 overflow:auto;
168 box-sizing: border-box;
169 padding:10px
170 }
171 }
172 .custom-tree-node{
173 display: contents;
174 span{
175 margin-right: 16px;
176 }
177 }
178 .setOpacity{
179 width: 100px;
180 }
181 /deep/ .el-slider__button{
182 width: 10px;
183 height: 10px;
184 }
185 </style>
...@@ -5,6 +5,7 @@ let Timestamp = new Date().getTime(); ...@@ -5,6 +5,7 @@ let Timestamp = new Date().getTime();
5 function resolve(dir) { 5 function resolve(dir) {
6 return path.join(__dirname, dir) 6 return path.join(__dirname, dir)
7 } 7 }
8 const UglifyJsPlugin = require("uglifyjs-webpack-plugin");
8 9
9 module.exports = { 10 module.exports = {
10 publicPath: './', 11 publicPath: './',
...@@ -13,11 +14,13 @@ module.exports = { ...@@ -13,11 +14,13 @@ module.exports = {
13 config.resolve.alias 14 config.resolve.alias
14 .set('@', resolve('src')) 15 .set('@', resolve('src'))
15 .set('@api', resolve('src/api')) 16 .set('@api', resolve('src/api'))
17 .set('@assets', resolve('src/assets'))
16 .set('@mixins', resolve('src/mixins')) 18 .set('@mixins', resolve('src/mixins'))
17 .set('@store', resolve('src/store')) 19 .set('@store', resolve('src/store'))
18 .set('@libs', resolve('src/libs')) 20 .set('@libs', resolve('src/libs'))
19 .set('@router', resolve('src/router')) 21 .set('@router', resolve('src/router'))
20 .set('@components', resolve('src/components')) 22 .set('@components', resolve('src/components'))
23 .set('@assets', resolve('src/assets'))
21 }, 24 },
22 pluginOptions: { 25 pluginOptions: {
23 'style-resources-loader': { 26 'style-resources-loader': {
...@@ -30,8 +33,17 @@ module.exports = { ...@@ -30,8 +33,17 @@ module.exports = {
30 filename: `js/[name].${Timestamp}.js`, 33 filename: `js/[name].${Timestamp}.js`,
31 chunkFilename: `js/[name].${Timestamp}.js` 34 chunkFilename: `js/[name].${Timestamp}.js`
32 }, 35 },
33 // plugins: [ 36 plugins: [
34 37 // 去除console和debugger
38 // new UglifyJsPlugin({
39 // uglifyOptions: {
40 // compress: {
41 // drop_console: true,
42 // drop_debugger: true,
43 // },
44 // },
45 // parallel: true,
46 // }),
35 // new FileManagerPlugin({ //初始化 filemanager-webpack-plugin 插件实例 47 // new FileManagerPlugin({ //初始化 filemanager-webpack-plugin 插件实例
36 // onEnd: { 48 // onEnd: {
37 // mkdir: ['./zip','./dist'], //初始化生产zip和dist文件夹 49 // mkdir: ['./zip','./dist'], //初始化生产zip和dist文件夹
...@@ -40,17 +52,20 @@ module.exports = { ...@@ -40,17 +52,20 @@ module.exports = {
40 // ] 52 // ]
41 // } 53 // }
42 // }) 54 // })
43 // ] 55 ]
44 }, 56 },
45 devServer: { 57 devServer: {
46 host: "127.0.0.1", 58 host: "192.168.2.61",
59 host: "0.0.0.0",
47 port: 8008, 60 port: 8008,
48 https: false, 61 https: false,
49 hotOnly: false, 62 hotOnly: false,
50 proxy: { 63 proxy: {
51 "/api": { 64 "/api": {
52 //target: process.env.VUE_APP_api, //巍巍 65 // target: 'https://192.168.2.119:8006', //泽平
53 target: process.env.VUE_APP_api1, //本地 66 // target: process.env.VUE_APP_api1, //本地
67 target: process.env.VUE_APP_api, //赵千
68 // target: process.env.VUE_APP_api4, //赵千
54 changeOrigin: true, 69 changeOrigin: true,
55 pathRewrite: { 70 pathRewrite: {
56 "^/api": "/", 71 "^/api": "/",
......