Merge branch 'master' of http://yun.pashanhoo.com:9090/renchao/CadastralSystem
Showing
38 changed files
with
1914 additions
and
31 deletions
... | @@ -32,7 +32,11 @@ | ... | @@ -32,7 +32,11 @@ |
32 | "vue-router": "^3.0.3", | 32 | "vue-router": "^3.0.3", |
33 | "vuex": "^3.0.1", | 33 | "vuex": "^3.0.1", |
34 | "webpack-theme-color-replacer": "^1.3.14", | 34 | "webpack-theme-color-replacer": "^1.3.14", |
35 | "xlsx": "^0.16.6" | 35 | "xlsx": "^0.16.6", |
36 | "esri-loader": "^2.15.0", | ||
37 | "shapefile": "^0.6.6", | ||
38 | "terraformer-arcgis-parser": "^1.1.0", | ||
39 | "terraformer-wkt-parser": "^1.2.1" | ||
36 | }, | 40 | }, |
37 | "devDependencies": { | 41 | "devDependencies": { |
38 | "@vue/cli-plugin-babel": "^3.11.0", | 42 | "@vue/cli-plugin-babel": "^3.11.0", | ... | ... |
... | @@ -61,6 +61,16 @@ export function getBdcdyh(dpdm, dptype) { | ... | @@ -61,6 +61,16 @@ export function getBdcdyh(dpdm, dptype) { |
61 | } | 61 | } |
62 | }) | 62 | }) |
63 | } | 63 | } |
64 | /* | ||
65 | *新增界址点 | ||
66 | * */ | ||
67 | export function addjzd(data) { | ||
68 | return request({ | ||
69 | url:"/zd/qjJzd/insertBatch", | ||
70 | method:"post", | ||
71 | data:data | ||
72 | }) | ||
73 | } | ||
64 | 74 | ||
65 | /** | 75 | /** |
66 | * 查询界址点 | 76 | * 查询界址点 |
... | @@ -69,12 +79,19 @@ export function queryjzd(glBsm) { | ... | @@ -69,12 +79,19 @@ export function queryjzd(glBsm) { |
69 | return request({ | 79 | return request({ |
70 | url: "/zd/qjJzd/getQjJzdListByGlBsm", | 80 | url: "/zd/qjJzd/getQjJzdListByGlBsm", |
71 | method: "get", | 81 | method: "get", |
72 | params: { | 82 | params: glBsm |
73 | glBsm, | ||
74 | }, | ||
75 | }); | 83 | }); |
76 | } | 84 | } |
77 | 85 | /* | |
86 | * 添加界址线 | ||
87 | * */ | ||
88 | export function addjzx(data){ | ||
89 | return request({ | ||
90 | url:"/zd/qjJzx/insertBatch", | ||
91 | method:"post", | ||
92 | data:data | ||
93 | }) | ||
94 | } | ||
78 | /** | 95 | /** |
79 | * 查询界址线 | 96 | * 查询界址线 |
80 | */ | 97 | */ |
... | @@ -190,3 +207,12 @@ export function hzl(data) { | ... | @@ -190,3 +207,12 @@ export function hzl(data) { |
190 | data:data | 207 | data:data |
191 | }) | 208 | }) |
192 | } | 209 | } |
210 | |||
211 | export function exportShp(data) { | ||
212 | return request({ | ||
213 | url:"/tx/shpUtils/writeShp", | ||
214 | method:"post", | ||
215 | params:data, | ||
216 | responseType: 'arraybuffer' | ||
217 | }) | ||
218 | } | ... | ... |
src/assets/iconfont/demo.css
0 → 100644
1 | /* Logo 字体 */ | ||
2 | @font-face { | ||
3 | font-family: "iconfont logo"; | ||
4 | src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834'); | ||
5 | src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834#iefix') format('embedded-opentype'), | ||
6 | url('https://at.alicdn.com/t/font_985780_km7mi63cihi.woff?t=1545807318834') format('woff'), | ||
7 | url('https://at.alicdn.com/t/font_985780_km7mi63cihi.ttf?t=1545807318834') format('truetype'), | ||
8 | url('https://at.alicdn.com/t/font_985780_km7mi63cihi.svg?t=1545807318834#iconfont') format('svg'); | ||
9 | } | ||
10 | |||
11 | .logo { | ||
12 | font-family: "iconfont logo"; | ||
13 | font-size: 160px; | ||
14 | font-style: normal; | ||
15 | -webkit-font-smoothing: antialiased; | ||
16 | -moz-osx-font-smoothing: grayscale; | ||
17 | } | ||
18 | |||
19 | /* tabs */ | ||
20 | .nav-tabs { | ||
21 | position: relative; | ||
22 | } | ||
23 | |||
24 | .nav-tabs .nav-more { | ||
25 | position: absolute; | ||
26 | right: 0; | ||
27 | bottom: 0; | ||
28 | height: 42px; | ||
29 | line-height: 42px; | ||
30 | color: #666; | ||
31 | } | ||
32 | |||
33 | #tabs { | ||
34 | border-bottom: 1px solid #eee; | ||
35 | } | ||
36 | |||
37 | #tabs li { | ||
38 | cursor: pointer; | ||
39 | width: 100px; | ||
40 | height: 40px; | ||
41 | line-height: 40px; | ||
42 | text-align: center; | ||
43 | font-size: 16px; | ||
44 | border-bottom: 2px solid transparent; | ||
45 | position: relative; | ||
46 | z-index: 1; | ||
47 | margin-bottom: -1px; | ||
48 | color: #666; | ||
49 | } | ||
50 | |||
51 | |||
52 | #tabs .active { | ||
53 | border-bottom-color: #f00; | ||
54 | color: #222; | ||
55 | } | ||
56 | |||
57 | .tab-container .content { | ||
58 | display: none; | ||
59 | } | ||
60 | |||
61 | /* 页面布局 */ | ||
62 | .main { | ||
63 | padding: 30px 100px; | ||
64 | width: 960px; | ||
65 | margin: 0 auto; | ||
66 | } | ||
67 | |||
68 | .main .logo { | ||
69 | color: #333; | ||
70 | text-align: left; | ||
71 | margin-bottom: 30px; | ||
72 | line-height: 1; | ||
73 | height: 110px; | ||
74 | margin-top: -50px; | ||
75 | overflow: hidden; | ||
76 | *zoom: 1; | ||
77 | } | ||
78 | |||
79 | .main .logo a { | ||
80 | font-size: 160px; | ||
81 | color: #333; | ||
82 | } | ||
83 | |||
84 | .helps { | ||
85 | margin-top: 40px; | ||
86 | } | ||
87 | |||
88 | .helps pre { | ||
89 | padding: 20px; | ||
90 | margin: 10px 0; | ||
91 | border: solid 1px #e7e1cd; | ||
92 | background-color: #fffdef; | ||
93 | overflow: auto; | ||
94 | } | ||
95 | |||
96 | .icon_lists { | ||
97 | width: 100% !important; | ||
98 | overflow: hidden; | ||
99 | *zoom: 1; | ||
100 | } | ||
101 | |||
102 | .icon_lists li { | ||
103 | width: 100px; | ||
104 | margin-bottom: 10px; | ||
105 | margin-right: 20px; | ||
106 | text-align: center; | ||
107 | list-style: none !important; | ||
108 | cursor: default; | ||
109 | } | ||
110 | |||
111 | .icon_lists li .code-name { | ||
112 | line-height: 1.2; | ||
113 | } | ||
114 | |||
115 | .icon_lists .icon { | ||
116 | display: block; | ||
117 | height: 100px; | ||
118 | line-height: 100px; | ||
119 | font-size: 42px; | ||
120 | margin: 10px auto; | ||
121 | color: #333; | ||
122 | -webkit-transition: font-size 0.25s linear, width 0.25s linear; | ||
123 | -moz-transition: font-size 0.25s linear, width 0.25s linear; | ||
124 | transition: font-size 0.25s linear, width 0.25s linear; | ||
125 | } | ||
126 | |||
127 | .icon_lists .icon:hover { | ||
128 | font-size: 100px; | ||
129 | } | ||
130 | |||
131 | .icon_lists .svg-icon { | ||
132 | /* 通过设置 font-size 来改变图标大小 */ | ||
133 | width: 1em; | ||
134 | /* 图标和文字相邻时,垂直对齐 */ | ||
135 | vertical-align: -0.15em; | ||
136 | /* 通过设置 color 来改变 SVG 的颜色/fill */ | ||
137 | fill: currentColor; | ||
138 | /* path 和 stroke 溢出 viewBox 部分在 IE 下会显示 | ||
139 | normalize.css 中也包含这行 */ | ||
140 | overflow: hidden; | ||
141 | } | ||
142 | |||
143 | .icon_lists li .name, | ||
144 | .icon_lists li .code-name { | ||
145 | color: #666; | ||
146 | } | ||
147 | |||
148 | /* markdown 样式 */ | ||
149 | .markdown { | ||
150 | color: #666; | ||
151 | font-size: 14px; | ||
152 | line-height: 1.8; | ||
153 | } | ||
154 | |||
155 | .highlight { | ||
156 | line-height: 1.5; | ||
157 | } | ||
158 | |||
159 | .markdown img { | ||
160 | vertical-align: middle; | ||
161 | max-width: 100%; | ||
162 | } | ||
163 | |||
164 | .markdown h1 { | ||
165 | color: #404040; | ||
166 | font-weight: 500; | ||
167 | line-height: 40px; | ||
168 | margin-bottom: 24px; | ||
169 | } | ||
170 | |||
171 | .markdown h2, | ||
172 | .markdown h3, | ||
173 | .markdown h4, | ||
174 | .markdown h5, | ||
175 | .markdown h6 { | ||
176 | color: #404040; | ||
177 | margin: 1.6em 0 0.6em 0; | ||
178 | font-weight: 500; | ||
179 | clear: both; | ||
180 | } | ||
181 | |||
182 | .markdown h1 { | ||
183 | font-size: 28px; | ||
184 | } | ||
185 | |||
186 | .markdown h2 { | ||
187 | font-size: 22px; | ||
188 | } | ||
189 | |||
190 | .markdown h3 { | ||
191 | font-size: 16px; | ||
192 | } | ||
193 | |||
194 | .markdown h4 { | ||
195 | font-size: 14px; | ||
196 | } | ||
197 | |||
198 | .markdown h5 { | ||
199 | font-size: 12px; | ||
200 | } | ||
201 | |||
202 | .markdown h6 { | ||
203 | font-size: 12px; | ||
204 | } | ||
205 | |||
206 | .markdown hr { | ||
207 | height: 1px; | ||
208 | border: 0; | ||
209 | background: #e9e9e9; | ||
210 | margin: 16px 0; | ||
211 | clear: both; | ||
212 | } | ||
213 | |||
214 | .markdown p { | ||
215 | margin: 1em 0; | ||
216 | } | ||
217 | |||
218 | .markdown>p, | ||
219 | .markdown>blockquote, | ||
220 | .markdown>.highlight, | ||
221 | .markdown>ol, | ||
222 | .markdown>ul { | ||
223 | width: 80%; | ||
224 | } | ||
225 | |||
226 | .markdown ul>li { | ||
227 | list-style: circle; | ||
228 | } | ||
229 | |||
230 | .markdown>ul li, | ||
231 | .markdown blockquote ul>li { | ||
232 | margin-left: 20px; | ||
233 | padding-left: 4px; | ||
234 | } | ||
235 | |||
236 | .markdown>ul li p, | ||
237 | .markdown>ol li p { | ||
238 | margin: 0.6em 0; | ||
239 | } | ||
240 | |||
241 | .markdown ol>li { | ||
242 | list-style: decimal; | ||
243 | } | ||
244 | |||
245 | .markdown>ol li, | ||
246 | .markdown blockquote ol>li { | ||
247 | margin-left: 20px; | ||
248 | padding-left: 4px; | ||
249 | } | ||
250 | |||
251 | .markdown code { | ||
252 | margin: 0 3px; | ||
253 | padding: 0 5px; | ||
254 | background: #eee; | ||
255 | border-radius: 3px; | ||
256 | } | ||
257 | |||
258 | .markdown strong, | ||
259 | .markdown b { | ||
260 | font-weight: 600; | ||
261 | } | ||
262 | |||
263 | .markdown>table { | ||
264 | border-collapse: collapse; | ||
265 | border-spacing: 0px; | ||
266 | empty-cells: show; | ||
267 | border: 1px solid #e9e9e9; | ||
268 | width: 95%; | ||
269 | margin-bottom: 24px; | ||
270 | } | ||
271 | |||
272 | .markdown>table th { | ||
273 | white-space: nowrap; | ||
274 | color: #333; | ||
275 | font-weight: 600; | ||
276 | } | ||
277 | |||
278 | .markdown>table th, | ||
279 | .markdown>table td { | ||
280 | border: 1px solid #e9e9e9; | ||
281 | padding: 8px 16px; | ||
282 | text-align: left; | ||
283 | } | ||
284 | |||
285 | .markdown>table th { | ||
286 | background: #F7F7F7; | ||
287 | } | ||
288 | |||
289 | .markdown blockquote { | ||
290 | font-size: 90%; | ||
291 | color: #999; | ||
292 | border-left: 4px solid #e9e9e9; | ||
293 | padding-left: 0.8em; | ||
294 | margin: 1em 0; | ||
295 | } | ||
296 | |||
297 | .markdown blockquote p { | ||
298 | margin: 0; | ||
299 | } | ||
300 | |||
301 | .markdown .anchor { | ||
302 | opacity: 0; | ||
303 | transition: opacity 0.3s ease; | ||
304 | margin-left: 8px; | ||
305 | } | ||
306 | |||
307 | .markdown .waiting { | ||
308 | color: #ccc; | ||
309 | } | ||
310 | |||
311 | .markdown h1:hover .anchor, | ||
312 | .markdown h2:hover .anchor, | ||
313 | .markdown h3:hover .anchor, | ||
314 | .markdown h4:hover .anchor, | ||
315 | .markdown h5:hover .anchor, | ||
316 | .markdown h6:hover .anchor { | ||
317 | opacity: 1; | ||
318 | display: inline-block; | ||
319 | } | ||
320 | |||
321 | .markdown>br, | ||
322 | .markdown>p>br { | ||
323 | clear: both; | ||
324 | } | ||
325 | |||
326 | |||
327 | .hljs { | ||
328 | display: block; | ||
329 | background: white; | ||
330 | padding: 0.5em; | ||
331 | color: #333333; | ||
332 | overflow-x: auto; | ||
333 | } | ||
334 | |||
335 | .hljs-comment, | ||
336 | .hljs-meta { | ||
337 | color: #969896; | ||
338 | } | ||
339 | |||
340 | .hljs-string, | ||
341 | .hljs-variable, | ||
342 | .hljs-template-variable, | ||
343 | .hljs-strong, | ||
344 | .hljs-emphasis, | ||
345 | .hljs-quote { | ||
346 | color: #df5000; | ||
347 | } | ||
348 | |||
349 | .hljs-keyword, | ||
350 | .hljs-selector-tag, | ||
351 | .hljs-type { | ||
352 | color: #a71d5d; | ||
353 | } | ||
354 | |||
355 | .hljs-literal, | ||
356 | .hljs-symbol, | ||
357 | .hljs-bullet, | ||
358 | .hljs-attribute { | ||
359 | color: #0086b3; | ||
360 | } | ||
361 | |||
362 | .hljs-section, | ||
363 | .hljs-name { | ||
364 | color: #63a35c; | ||
365 | } | ||
366 | |||
367 | .hljs-tag { | ||
368 | color: #333333; | ||
369 | } | ||
370 | |||
371 | .hljs-title, | ||
372 | .hljs-attr, | ||
373 | .hljs-selector-id, | ||
374 | .hljs-selector-class, | ||
375 | .hljs-selector-attr, | ||
376 | .hljs-selector-pseudo { | ||
377 | color: #795da3; | ||
378 | } | ||
379 | |||
380 | .hljs-addition { | ||
381 | color: #55a532; | ||
382 | background-color: #eaffea; | ||
383 | } | ||
384 | |||
385 | .hljs-deletion { | ||
386 | color: #bd2c00; | ||
387 | background-color: #ffecec; | ||
388 | } | ||
389 | |||
390 | .hljs-link { | ||
391 | text-decoration: underline; | ||
392 | } | ||
393 | |||
394 | /* 代码高亮 */ | ||
395 | /* PrismJS 1.15.0 | ||
396 | https://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javascript */ | ||
397 | /** | ||
398 | * prism.js default theme for JavaScript, CSS and HTML | ||
399 | * Based on dabblet (http://dabblet.com) | ||
400 | * @author Lea Verou | ||
401 | */ | ||
402 | code[class*="language-"], | ||
403 | pre[class*="language-"] { | ||
404 | color: black; | ||
405 | background: none; | ||
406 | text-shadow: 0 1px white; | ||
407 | font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace; | ||
408 | text-align: left; | ||
409 | white-space: pre; | ||
410 | word-spacing: normal; | ||
411 | word-break: normal; | ||
412 | word-wrap: normal; | ||
413 | line-height: 1.5; | ||
414 | |||
415 | -moz-tab-size: 4; | ||
416 | -o-tab-size: 4; | ||
417 | tab-size: 4; | ||
418 | |||
419 | -webkit-hyphens: none; | ||
420 | -moz-hyphens: none; | ||
421 | -ms-hyphens: none; | ||
422 | hyphens: none; | ||
423 | } | ||
424 | |||
425 | pre[class*="language-"]::-moz-selection, | ||
426 | pre[class*="language-"] ::-moz-selection, | ||
427 | code[class*="language-"]::-moz-selection, | ||
428 | code[class*="language-"] ::-moz-selection { | ||
429 | text-shadow: none; | ||
430 | background: #b3d4fc; | ||
431 | } | ||
432 | |||
433 | pre[class*="language-"]::selection, | ||
434 | pre[class*="language-"] ::selection, | ||
435 | code[class*="language-"]::selection, | ||
436 | code[class*="language-"] ::selection { | ||
437 | text-shadow: none; | ||
438 | background: #b3d4fc; | ||
439 | } | ||
440 | |||
441 | @media print { | ||
442 | |||
443 | code[class*="language-"], | ||
444 | pre[class*="language-"] { | ||
445 | text-shadow: none; | ||
446 | } | ||
447 | } | ||
448 | |||
449 | /* Code blocks */ | ||
450 | pre[class*="language-"] { | ||
451 | padding: 1em; | ||
452 | margin: .5em 0; | ||
453 | overflow: auto; | ||
454 | } | ||
455 | |||
456 | :not(pre)>code[class*="language-"], | ||
457 | pre[class*="language-"] { | ||
458 | background: #f5f2f0; | ||
459 | } | ||
460 | |||
461 | /* Inline code */ | ||
462 | :not(pre)>code[class*="language-"] { | ||
463 | padding: .1em; | ||
464 | border-radius: .3em; | ||
465 | white-space: normal; | ||
466 | } | ||
467 | |||
468 | .token.comment, | ||
469 | .token.prolog, | ||
470 | .token.doctype, | ||
471 | .token.cdata { | ||
472 | color: slategray; | ||
473 | } | ||
474 | |||
475 | .token.punctuation { | ||
476 | color: #999; | ||
477 | } | ||
478 | |||
479 | .namespace { | ||
480 | opacity: .7; | ||
481 | } | ||
482 | |||
483 | .token.property, | ||
484 | .token.tag, | ||
485 | .token.boolean, | ||
486 | .token.number, | ||
487 | .token.constant, | ||
488 | .token.symbol, | ||
489 | .token.deleted { | ||
490 | color: #905; | ||
491 | } | ||
492 | |||
493 | .token.selector, | ||
494 | .token.attr-name, | ||
495 | .token.string, | ||
496 | .token.char, | ||
497 | .token.builtin, | ||
498 | .token.inserted { | ||
499 | color: #690; | ||
500 | } | ||
501 | |||
502 | .token.operator, | ||
503 | .token.entity, | ||
504 | .token.url, | ||
505 | .language-css .token.string, | ||
506 | .style .token.string { | ||
507 | color: #9a6e3a; | ||
508 | background: hsla(0, 0%, 100%, .5); | ||
509 | } | ||
510 | |||
511 | .token.atrule, | ||
512 | .token.attr-value, | ||
513 | .token.keyword { | ||
514 | color: #07a; | ||
515 | } | ||
516 | |||
517 | .token.function, | ||
518 | .token.class-name { | ||
519 | color: #DD4A68; | ||
520 | } | ||
521 | |||
522 | .token.regex, | ||
523 | .token.important, | ||
524 | .token.variable { | ||
525 | color: #e90; | ||
526 | } | ||
527 | |||
528 | .token.important, | ||
529 | .token.bold { | ||
530 | font-weight: bold; | ||
531 | } | ||
532 | |||
533 | .token.italic { | ||
534 | font-style: italic; | ||
535 | } | ||
536 | |||
537 | .token.entity { | ||
538 | cursor: help; | ||
539 | } |
src/assets/iconfont/demo_index.html
0 → 100644
This diff is collapsed.
Click to expand it.
src/assets/iconfont/iconfont.css
0 → 100644
1 | @font-face {font-family: "iconfont"; | ||
2 | src: url('iconfont.eot?t=1604545064148'); /* IE9 */ | ||
3 | src: url('iconfont.eot?t=1604545064148#iefix') format('embedded-opentype'), /* IE6-IE8 */ | ||
4 | url('data:application/x-font-woff2;charset=utf-8;base64,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') format('woff2'), | ||
5 | url('iconfont.woff?t=1604545064148') format('woff'), | ||
6 | url('iconfont.ttf?t=1604545064148') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+ */ | ||
7 | url('iconfont.svg?t=1604545064148#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 | .icontubiao_daoruCAD:before { | ||
19 | content: "\e630"; | ||
20 | } | ||
21 | |||
22 | .icondiqiu1:before { | ||
23 | content: "\e60c"; | ||
24 | } | ||
25 | |||
26 | .iconshuxingguanli:before { | ||
27 | content: "\e610"; | ||
28 | } | ||
29 | |||
30 | .iconuploadicon03:before { | ||
31 | content: "\e71a"; | ||
32 | } | ||
33 | |||
34 | .iconcad-fill:before { | ||
35 | content: "\e7d8"; | ||
36 | } | ||
37 | |||
38 | .iconwenbenwendang:before { | ||
39 | content: "\e645"; | ||
40 | } | ||
41 | |||
42 | .iconexcel:before { | ||
43 | content: "\e66e"; | ||
44 | } | ||
45 | |||
46 | .iconfangda:before { | ||
47 | content: "\e6de"; | ||
48 | } | ||
49 | |||
50 | .iconsuoxiao:before { | ||
51 | content: "\e66d"; | ||
52 | } | ||
53 | |||
54 | .iconmianceliang:before { | ||
55 | content: "\e90f"; | ||
56 | } | ||
57 | |||
58 | .icondayin1:before { | ||
59 | content: "\e665"; | ||
60 | } | ||
61 | |||
62 | .icondiqiu:before { | ||
63 | content: "\e7b9"; | ||
64 | } | ||
65 | |||
66 | .iconceju:before { | ||
67 | content: "\e604"; | ||
68 | } | ||
69 | |||
70 | .iconshuxing:before { | ||
71 | content: "\e62a"; | ||
72 | } | ||
73 |
src/assets/iconfont/iconfont.eot
0 → 100644
No preview for this file type
src/assets/iconfont/iconfont.js
0 → 100644
This diff is collapsed.
Click to expand it.
src/assets/iconfont/iconfont.json
0 → 100644
1 | { | ||
2 | "id": "2105925", | ||
3 | "name": "不动产项目", | ||
4 | "font_family": "iconfont", | ||
5 | "css_prefix_text": "icon", | ||
6 | "description": "权籍及互联网+不动产登记项目", | ||
7 | "glyphs": [ | ||
8 | { | ||
9 | "icon_id": "8554264", | ||
10 | "name": "导入CAD", | ||
11 | "font_class": "tubiao_daoruCAD", | ||
12 | "unicode": "e630", | ||
13 | "unicode_decimal": 58928 | ||
14 | }, | ||
15 | { | ||
16 | "icon_id": "3747068", | ||
17 | "name": "地球", | ||
18 | "font_class": "diqiu1", | ||
19 | "unicode": "e60c", | ||
20 | "unicode_decimal": 58892 | ||
21 | }, | ||
22 | { | ||
23 | "icon_id": "12694038", | ||
24 | "name": "属性管理", | ||
25 | "font_class": "shuxingguanli", | ||
26 | "unicode": "e610", | ||
27 | "unicode_decimal": 58896 | ||
28 | }, | ||
29 | { | ||
30 | "icon_id": "605008", | ||
31 | "name": "zip", | ||
32 | "font_class": "uploadicon03", | ||
33 | "unicode": "e71a", | ||
34 | "unicode_decimal": 59162 | ||
35 | }, | ||
36 | { | ||
37 | "icon_id": "13254178", | ||
38 | "name": "cad-fill", | ||
39 | "font_class": "cad-fill", | ||
40 | "unicode": "e7d8", | ||
41 | "unicode_decimal": 59352 | ||
42 | }, | ||
43 | { | ||
44 | "icon_id": "2325940", | ||
45 | "name": "文本文档", | ||
46 | "font_class": "wenbenwendang", | ||
47 | "unicode": "e645", | ||
48 | "unicode_decimal": 58949 | ||
49 | }, | ||
50 | { | ||
51 | "icon_id": "14476526", | ||
52 | "name": "excel", | ||
53 | "font_class": "excel", | ||
54 | "unicode": "e66e", | ||
55 | "unicode_decimal": 58990 | ||
56 | }, | ||
57 | { | ||
58 | "icon_id": "2676724", | ||
59 | "name": "放大", | ||
60 | "font_class": "fangda", | ||
61 | "unicode": "e6de", | ||
62 | "unicode_decimal": 59102 | ||
63 | }, | ||
64 | { | ||
65 | "icon_id": "9655540", | ||
66 | "name": "缩小", | ||
67 | "font_class": "suoxiao", | ||
68 | "unicode": "e66d", | ||
69 | "unicode_decimal": 58989 | ||
70 | }, | ||
71 | { | ||
72 | "icon_id": "430199", | ||
73 | "name": "面测量", | ||
74 | "font_class": "mianceliang", | ||
75 | "unicode": "e90f", | ||
76 | "unicode_decimal": 59663 | ||
77 | }, | ||
78 | { | ||
79 | "icon_id": "1177695", | ||
80 | "name": "打印 (1)", | ||
81 | "font_class": "dayin1", | ||
82 | "unicode": "e665", | ||
83 | "unicode_decimal": 58981 | ||
84 | }, | ||
85 | { | ||
86 | "icon_id": "1719347", | ||
87 | "name": "地球", | ||
88 | "font_class": "diqiu", | ||
89 | "unicode": "e7b9", | ||
90 | "unicode_decimal": 59321 | ||
91 | }, | ||
92 | { | ||
93 | "icon_id": "5650846", | ||
94 | "name": "测距", | ||
95 | "font_class": "ceju", | ||
96 | "unicode": "e604", | ||
97 | "unicode_decimal": 58884 | ||
98 | }, | ||
99 | { | ||
100 | "icon_id": "15736919", | ||
101 | "name": "属性", | ||
102 | "font_class": "shuxing", | ||
103 | "unicode": "e62a", | ||
104 | "unicode_decimal": 58922 | ||
105 | } | ||
106 | ] | ||
107 | } |
src/assets/iconfont/iconfont.svg
0 → 100644
This diff is collapsed.
Click to expand it.
src/assets/iconfont/iconfont.ttf
0 → 100644
No preview for this file type
src/assets/iconfont/iconfont.woff
0 → 100644
No preview for this file type
src/assets/iconfont/iconfont.woff2
0 → 100644
No preview for this file type
src/assets/json/graphicSymbol.json
0 → 100644
1 | { | ||
2 | "pointSymbol": { | ||
3 | |||
4 | }, | ||
5 | "lineSymbol": { | ||
6 | |||
7 | }, | ||
8 | "fillSymbol": { | ||
9 | "defaultSymbol": { | ||
10 | "type": "simple-fill", | ||
11 | "color": [ 0,233, 245, 0.8 ], | ||
12 | "style": "solid", | ||
13 | "outline": { | ||
14 | "color": "#00e9f5", | ||
15 | "width": 1 | ||
16 | } | ||
17 | }, | ||
18 | "highlightSymbol": { | ||
19 | "type": "simple-fill", | ||
20 | "color": [ 245,3, 37, 0.8 ], | ||
21 | "style": "solid", | ||
22 | "outline": { | ||
23 | "color": "#f50325", | ||
24 | "width": 1 | ||
25 | } | ||
26 | } | ||
27 | |||
28 | } | ||
29 | } | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
src/assets/json/layers.json
0 → 100644
1 | [{ | ||
2 | "layerName": "ZDJBXX", | ||
3 | "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", | ||
4 | "id": "8" | ||
5 | }, | ||
6 | { | ||
7 | "layerName": "ZRZ", | ||
8 | "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", | ||
9 | "id": "10" | ||
10 | } | ||
11 | ] | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
... | @@ -56,9 +56,9 @@ | ... | @@ -56,9 +56,9 @@ |
56 | :style="{ left: left + 'px', top: top + 'px' }" | 56 | :style="{ left: left + 'px', top: top + 'px' }" |
57 | class="contextmenu" | 57 | class="contextmenu" |
58 | > | 58 | > |
59 | <li>定位</li> | 59 | <li @click="postionToMap">定位</li> |
60 | <li>导入图形</li> | 60 | <li @click="importGeo">导入图形</li> |
61 | <li>导出图形</li> | 61 | <li @click="exportToShp">导出图形</li> |
62 | <li v-show="isZD">导入属性</li> | 62 | <li v-show="isZD">导入属性</li> |
63 | <li v-show="!isZD">导入楼盘</li> | 63 | <li v-show="!isZD">导入楼盘</li> |
64 | <li>重叠分析</li> | 64 | <li>重叠分析</li> |
... | @@ -92,6 +92,10 @@ | ... | @@ -92,6 +92,10 @@ |
92 | <li v-show="zdData.type == 'ljz'" @click="deleteLjz">删除逻辑幢</li> | 92 | <li v-show="zdData.type == 'ljz'" @click="deleteLjz">删除逻辑幢</li> |
93 | <li v-show="zdData.type == 'zdy'" @click="deleteZdy">删除幢单元</li> | 93 | <li v-show="zdData.type == 'zdy'" @click="deleteZdy">删除幢单元</li> |
94 | </ul> | 94 | </ul> |
95 | |||
96 | <el-dialog title="导入图形" :visible.sync="improtDialog"> | ||
97 | <import-geo :property-info="zdData" :geo-info="currentClickZdGeo" @closeImportDialog="closeImportDialog"></import-geo> | ||
98 | </el-dialog> | ||
95 | <!-- 添加定着物弹框 --> | 99 | <!-- 添加定着物弹框 --> |
96 | <el-dialog title="新建" :visible.sync="dialogVisible" width="40%"> | 100 | <el-dialog title="新建" :visible.sync="dialogVisible" width="40%"> |
97 | <Create @closeDialog="closeDialog" :auth="true"></Create> | 101 | <Create @closeDialog="closeDialog" :auth="true"></Create> |
... | @@ -100,8 +104,11 @@ | ... | @@ -100,8 +104,11 @@ |
100 | </template> | 104 | </template> |
101 | <script> | 105 | <script> |
102 | import lineItem from "./lineItem.vue"; | 106 | import lineItem from "./lineItem.vue"; |
103 | import {deleteZdInfoByBsm} from "../../api/zd"; | 107 | import {deleteZdInfoByBsm,exportShp} from "../../api/zd"; |
104 | import Create from "../../views/panel/create/index"; | 108 | import Create from "../../views/panel/create/index"; |
109 | import ImportGeo from './tx/importGeo' | ||
110 | import geoUtils from "@components/lineTree/tx/js/geoUtils"; | ||
111 | import featureUpdate from "@libs/map/featureUpdate"; | ||
105 | import {deleteLjz,deleteZdy} from "./../../api/lpb" | 112 | import {deleteLjz,deleteZdy} from "./../../api/lpb" |
106 | export default { | 113 | export default { |
107 | inheritAttrs: false, | 114 | inheritAttrs: false, |
... | @@ -116,7 +123,8 @@ export default { | ... | @@ -116,7 +123,8 @@ export default { |
116 | default: false, | 123 | default: false, |
117 | } | 124 | } |
118 | }, | 125 | }, |
119 | components: { lineItem,Create }, | 126 | components: { lineItem,Create,ImportGeo }, |
127 | mixins:[geoUtils,featureUpdate], | ||
120 | data() { | 128 | data() { |
121 | return { | 129 | return { |
122 | selectedDetail: {}, | 130 | selectedDetail: {}, |
... | @@ -127,6 +135,8 @@ export default { | ... | @@ -127,6 +135,8 @@ export default { |
127 | left: 0, | 135 | left: 0, |
128 | isZD: true, | 136 | isZD: true, |
129 | zdData:{}, | 137 | zdData:{}, |
138 | currentClickZdGeo:"", | ||
139 | improtDialog:false, | ||
130 | dialogVisible:false, | 140 | dialogVisible:false, |
131 | //控制楼盘表 | 141 | //控制楼盘表 |
132 | lpbvisible: false, | 142 | lpbvisible: false, |
... | @@ -371,7 +381,111 @@ export default { | ... | @@ -371,7 +381,111 @@ export default { |
371 | }).catch(() => { | 381 | }).catch(() => { |
372 | 382 | ||
373 | }); | 383 | }); |
384 | var self = this; | ||
385 | var BSM = ""; | ||
386 | var type = this.zdData.type; | ||
387 | if(type == "zd"){ | ||
388 | BSM = this.zdData.zdbsm; | ||
389 | }else { | ||
390 | BSM = this.zdData.bsm; | ||
391 | } | ||
392 | //删除图形相关信息 | ||
393 | var type = this.zdData.type; | ||
394 | this.queryGeoByBsm(BSM,type,function (features){ | ||
395 | if(features && features.length > 0){ | ||
396 | var layer = null; | ||
397 | if(type == 'zd'){ | ||
398 | layer = self.getLayerByName("ZDJBXX"); | ||
399 | }else{ | ||
400 | layer = self.getLayerByName("ZRZ"); | ||
401 | |||
402 | } | ||
403 | var featureUrl = layer.layerUrl.replace("MapServer","FeatureServer"); | ||
404 | featureUrl += "/"+layer.id; | ||
405 | self.delGraphic(featureUrl,features[0],null); | ||
406 | } | ||
407 | }); | ||
374 | }, | 408 | }, |
409 | /* | ||
410 | * 导入图形 | ||
411 | * */ | ||
412 | importGeo(){ | ||
413 | var self = this; | ||
414 | var BSM = ""; | ||
415 | //先这么写着 后面返回类型 根据类型判断 | ||
416 | var type = this.zdData.type; | ||
417 | if(type == "zd"){ | ||
418 | BSM = this.zdData.zdbsm; | ||
419 | }else { | ||
420 | BSM = this.zdData.bsm; | ||
421 | } | ||
422 | this.queryGeoByBsm(BSM,type,function (features){ | ||
423 | if(features && features.length > 0){ | ||
424 | if(features[0].geometry){ | ||
425 | self.$confirm('该条数据有地块信息,是否继续导入?', '提示', { | ||
426 | confirmButtonText: '继续', | ||
427 | cancelButtonText: '取消', | ||
428 | type: 'warning' | ||
429 | }).then(() => { | ||
430 | self.improtDialog = true; | ||
431 | self.currentClickZdGeo = features[0]; | ||
432 | }).catch(() => { | ||
433 | self.$message({ | ||
434 | type: 'info', | ||
435 | message: '已取消' | ||
436 | }); | ||
437 | }); | ||
438 | }else { | ||
439 | self.currentClickZdGeo = features[0]; | ||
440 | self.improtDialog = true; | ||
441 | } | ||
442 | |||
443 | }else{ | ||
444 | self.currentClickZdGeo = null; | ||
445 | self.improtDialog = true; | ||
446 | } | ||
447 | }); | ||
448 | }, | ||
449 | //导出 | ||
450 | exportToShp(){ | ||
451 | var self = this; | ||
452 | var BSM = this.zdData.zdbsm; | ||
453 | var type = this.zdData.type; | ||
454 | this.queryGeoByBsm(BSM,type,function (features){ | ||
455 | var data = JSON.stringify(features[0]); | ||
456 | if(features && features.length > 0){ | ||
457 | window.location.href = "/api/tx/shpUtils/writeShp?strObj="+encodeURI(data) | ||
458 | /*exportShp({ | ||
459 | "strObj":encodeURI(data) | ||
460 | }).then(res => { | ||
461 | debugger | ||
462 | });*/ | ||
463 | }else{ | ||
464 | self.$message.warning("暂无空间信息!!!!"); | ||
465 | } | ||
466 | }); | ||
467 | }, | ||
468 | //图形定位 | ||
469 | postionToMap(){ | ||
470 | var curretRouterInfo = { | ||
471 | path:this.$route.path, | ||
472 | query:this.$route.query | ||
473 | } | ||
474 | sessionStorage.setItem("curretRouterInfo",JSON.stringify(curretRouterInfo)); | ||
475 | this.$router.push({ | ||
476 | path: "/viewMap", | ||
477 | query: { | ||
478 | bsm: this.zdData.zdbsm, | ||
479 | type: this.zdData.type ? 'zd' : 'zrz' | ||
480 | } | ||
481 | }); | ||
482 | }, | ||
483 | |||
484 | //关闭图形弹框 | ||
485 | closeImportDialog(){ | ||
486 | this.improtDialog = false; | ||
487 | } | ||
488 | |||
375 | }, | 489 | }, |
376 | }; | 490 | }; |
377 | </script> | 491 | </script> | ... | ... |
src/components/lineTree/tx/importGeo.vue
0 → 100644
This diff is collapsed.
Click to expand it.
src/components/lineTree/tx/js/geoUtils.js
0 → 100644
1 | /* | ||
2 | * 图形相关的操作 js | ||
3 | * */ | ||
4 | |||
5 | import layers from '@/assets/json/layers.json' | ||
6 | import queryUtils from "@libs/map/queryUtils"; | ||
7 | import {loadModules} from "esri-loader" | ||
8 | import arcgisParser from 'terraformer-arcgis-parser' | ||
9 | import wktParse from 'terraformer-wkt-parser' | ||
10 | |||
11 | |||
12 | export default { | ||
13 | data(){ | ||
14 | return{ | ||
15 | |||
16 | } | ||
17 | }, | ||
18 | methods: { | ||
19 | getLayerByName(name) { | ||
20 | for (var i = 0; i < layers.length; i++) { | ||
21 | if (layers[i].layerName == name) { | ||
22 | return layers[i]; | ||
23 | } | ||
24 | } | ||
25 | return null; | ||
26 | }, | ||
27 | queryGeoByBsm(bsm, type, callBackFunction) { | ||
28 | var layer = null; | ||
29 | if (type == 'zd') { | ||
30 | layer = this.getLayerByName("ZDJBXX"); | ||
31 | } else if (type == 'zrz') { | ||
32 | layer = this.getLayerByName("ZRZ"); | ||
33 | } else { | ||
34 | console.log("未定义类型!!"); | ||
35 | return; | ||
36 | } | ||
37 | if (!layer) { | ||
38 | console.log("没有找到图层,不能查询"); | ||
39 | return; | ||
40 | } | ||
41 | queryUtils.methods.queryByWhere(layer.layerUrl+"/"+layer.id, {"BSM": bsm}, null, true, null, null, function (res) { | ||
42 | var features = res.features; | ||
43 | if (callBackFunction && typeof callBackFunction == 'function') { | ||
44 | callBackFunction(features); | ||
45 | } | ||
46 | }); | ||
47 | }, | ||
48 | //生成介质点 | ||
49 | craetJZPoint(graphic) { | ||
50 | var geomtry = graphic.geometry,rings = geomtry.rings[0]; | ||
51 | var pointInfos = []; | ||
52 | this.getPointByRings(rings,pointInfos); | ||
53 | return pointInfos; | ||
54 | }, | ||
55 | getPointByRings(rings,pointInfos){ | ||
56 | for(var i = 0;i < rings.length;i++){ | ||
57 | var children = rings[i]; | ||
58 | if(children.length == 2 && typeof children[0] == 'number'){ | ||
59 | var obj = {}; | ||
60 | obj.jzdh = "j"+pointInfos.length; | ||
61 | obj.sxh = pointInfos.length; | ||
62 | obj.x = children[0]; | ||
63 | obj.y = children[1]; | ||
64 | pointInfos.push(obj); | ||
65 | }else { | ||
66 | this.getPointByRings(children,pointInfos); | ||
67 | } | ||
68 | } | ||
69 | }, | ||
70 | //生成介质线 | ||
71 | createJZLine(graphic,callBackFunction) { | ||
72 | var self = this; | ||
73 | loadModules([ | ||
74 | "esri/geometry/support/geodesicUtils", | ||
75 | "esri/geometry/Point", | ||
76 | "esri/geometry/Polyline" | ||
77 | |||
78 | ]).then(([ | ||
79 | geodesicUtils, | ||
80 | Point, | ||
81 | Polyline | ||
82 | ])=>{ | ||
83 | //取得各个坐标点 然后生成外围坐标线 | ||
84 | var geometry = graphic.geometry, | ||
85 | rings = geometry.rings, | ||
86 | points = []; | ||
87 | if(rings.length > 0){ | ||
88 | for(var i = 0;i < rings.length;i++){ | ||
89 | var danPoints = []; | ||
90 | self.getPointByRings(rings[i],danPoints); | ||
91 | points.push(danPoints); | ||
92 | } | ||
93 | }else { | ||
94 | var danPoints = []; | ||
95 | self.getPointByRings(rings,danPoints); | ||
96 | points.push(danPoints); | ||
97 | } | ||
98 | var lines = []; | ||
99 | //meters | ||
100 | for(var i = 0;i < points.length;i++){ | ||
101 | for(var j = 0;j < points[i].length;j++){ | ||
102 | if(j < (points[i].length - 1)){ | ||
103 | const join = geodesicUtils.geodesicDistance( | ||
104 | new Point({ x: points[i][j].x, y: points[i][j].y }), | ||
105 | new Point({ x: points[i][j+1].x, y: points[i][j+1].y }), | ||
106 | "meters" | ||
107 | ); | ||
108 | const { distance, azimuth } = join; | ||
109 | |||
110 | var obj = { | ||
111 | startPoint:points[i][j].x +"," +points[i][j].y , | ||
112 | endPoint:points[i][j+1].x +","+points[i][j+1].y, | ||
113 | qdh:points[i][j].sxh, | ||
114 | zdh:points[i][j+1].sxh, | ||
115 | distance:distance, | ||
116 | jzxlx:"", | ||
117 | jzxwz:"", | ||
118 | jzxxz:"", | ||
119 | remark:"" | ||
120 | } | ||
121 | lines.push(obj); | ||
122 | }else{ | ||
123 | const join = geodesicUtils.geodesicDistance( | ||
124 | new Point({ x: points[i][j].x, y: points[i][j].y }), | ||
125 | new Point({ x: points[i][0].x, y: points[i][0].y }), | ||
126 | "meters" | ||
127 | ); | ||
128 | const { distance, azimuth } = join; | ||
129 | var obj = { | ||
130 | startPoint:points[i][j].x +"," +points[i][j].y , | ||
131 | endPoint:points[i][0].x +"," +points[i][0].y , | ||
132 | qdh:points[i][j].sxh, | ||
133 | zdh:points[i][0].sxh, | ||
134 | distance:distance, | ||
135 | jzxlx:"", | ||
136 | jzxwz:"", | ||
137 | jzxxz:"", | ||
138 | remark:"" | ||
139 | } | ||
140 | lines.push(obj); | ||
141 | } | ||
142 | } | ||
143 | } | ||
144 | if(callBackFunction && typeof callBackFunction == "function"){ | ||
145 | callBackFunction(lines); | ||
146 | } | ||
147 | }).catch( err => { | ||
148 | throw (err); | ||
149 | }) | ||
150 | }, | ||
151 | //wkt转换成arcgis | ||
152 | parseWktToArc(wkt){ | ||
153 | var primitive = wktParse.parse(wkt); | ||
154 | /*if(primitive.type == "MultiPolygon"){ | ||
155 | primitive.type = "Polygon" | ||
156 | }*/ | ||
157 | return arcgisParser.convert(primitive) | ||
158 | } | ||
159 | |||
160 | } | ||
161 | } | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
src/components/map/EsriMap.vue
0 → 100644
1 | <template> | ||
2 | <div class="map"> | ||
3 | <div :id="viewId" class="viewDiv"> | ||
4 | </div> | ||
5 | </div> | ||
6 | </template> | ||
7 | <script> | ||
8 | import {loadModules} from 'esri-loader' | ||
9 | import {maps} from '@/libs/map/mapUtils' | ||
10 | export default { | ||
11 | props:{ | ||
12 | viewId:{ | ||
13 | type:String, | ||
14 | default:"mainView" | ||
15 | }, | ||
16 | afterLoaderFunction:{ | ||
17 | type:Function, | ||
18 | default:null | ||
19 | } | ||
20 | }, | ||
21 | data(){ | ||
22 | return{ | ||
23 | |||
24 | } | ||
25 | }, | ||
26 | |||
27 | mounted(){ | ||
28 | this.initMap(); | ||
29 | }, | ||
30 | methods:{ | ||
31 | initMap(){ | ||
32 | var self = this; | ||
33 | loadModules([ | ||
34 | "esri/views/MapView", | ||
35 | "esri/Map" | ||
36 | ]).then(([ | ||
37 | MapView, | ||
38 | esriMap | ||
39 | ]) => { | ||
40 | var map = new esriMap({ | ||
41 | basemap:"hybrid" | ||
42 | }); | ||
43 | //108.95 34.27 | ||
44 | var view = new MapView({ | ||
45 | container: self.viewId, | ||
46 | map: map, | ||
47 | zoom:10, | ||
48 | zoom:10, | ||
49 | center: [-0.154133333770497,0.6138183594020817], | ||
50 | spatialReference: { | ||
51 | wkid: 102100 | ||
52 | } | ||
53 | }); | ||
54 | maps[self.viewId] = view; | ||
55 | if(self.afterLoaderFunction && typeof self.afterLoaderFunction == 'function'){ | ||
56 | self.afterLoaderFunction(view); | ||
57 | } | ||
58 | }).catch(err => { | ||
59 | throw(err); | ||
60 | }); | ||
61 | } | ||
62 | } | ||
63 | |||
64 | } | ||
65 | </script> | ||
66 | <style scoped lang="less"> | ||
67 | .map{ | ||
68 | height: 100%; | ||
69 | width: 100%; | ||
70 | .viewDiv{ | ||
71 | height: 100%; | ||
72 | width: 100%; | ||
73 | } | ||
74 | } | ||
75 | </style> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
src/libs/map/IdentifyUtils.js
0 → 100644
1 | import {loadModules} from 'esri-loader' | ||
2 | |||
3 | export default { | ||
4 | methods: { | ||
5 | |||
6 | identify(url,layerIds,geometry ,callBackFunction){ | ||
7 | var self = this; | ||
8 | loadModules([ | ||
9 | "esri/tasks/IdentifyTask", | ||
10 | "esri/tasks/support/IdentifyParameters" | ||
11 | ]).then(([ | ||
12 | IdentifyTask, | ||
13 | IdentifyParameters | ||
14 | ]) => { | ||
15 | var identifyTask = new IdentifyTask({ | ||
16 | url:url | ||
17 | }), | ||
18 | identifyParameters = new identifyParameters(); | ||
19 | identifyParameters.geometry = geometry; | ||
20 | if(layerIds){ | ||
21 | identifyParameters.layerIds = layerIds; | ||
22 | } | ||
23 | identifyParameters.layerOption = "all"; | ||
24 | identifyParameters.spatialReference = geometry.spatialReference; | ||
25 | identifyTask.execute(identifyParameters).then(result => { | ||
26 | if(callBackFunction && typeof callBackFunction == 'function'){ | ||
27 | callBackFunction(result); | ||
28 | } | ||
29 | }); | ||
30 | }).catch(err => { | ||
31 | throw(err); | ||
32 | }); | ||
33 | |||
34 | } | ||
35 | } | ||
36 | } | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
src/libs/map/draw.js
0 → 100644
1 | import {maps} from '@/libs/map/mapUtils' | ||
2 | import {loadModules} from 'esri-loader' | ||
3 | |||
4 | export default { | ||
5 | data() { | ||
6 | return { | ||
7 | drawAction:null, | ||
8 | graphicLayer:null, | ||
9 | creatEvent:null, | ||
10 | } | ||
11 | }, | ||
12 | methods: { | ||
13 | initDraw(type,viewId,creationMode,callBackFunction){ | ||
14 | var self = this; | ||
15 | loadModules([ | ||
16 | "esri/widgets/Sketch", | ||
17 | "esri/layers/GraphicsLayer" | ||
18 | ]).then(([ | ||
19 | Sketch, | ||
20 | GraphicsLayer | ||
21 | ]) => { | ||
22 | var view = maps[viewId]; | ||
23 | if(!self.drawAction){ | ||
24 | self.graphicLayer = new GraphicsLayer({ | ||
25 | id:"_drawLayer" | ||
26 | }) | ||
27 | self.drawAction = new Sketch({ | ||
28 | view: view, | ||
29 | layer:self.graphicLayer, | ||
30 | creationMode: "single" | ||
31 | }); | ||
32 | }else { | ||
33 | // this.drawAction.cancel(); | ||
34 | if(creationMode){ | ||
35 | self.drawAction.creationMode = creationMode; | ||
36 | } | ||
37 | // graphicLayer = view.map.findLayerById("_drawLayer"); | ||
38 | } | ||
39 | self.drawAction.create(type); | ||
40 | if(self.creatEvent){ | ||
41 | self.creatEvent.remove(); | ||
42 | } | ||
43 | self.creatEvent = self.drawAction.on("create", function(event) { | ||
44 | if (event.state === "complete") { | ||
45 | self.graphicLayer.remove(event.graphic); | ||
46 | if(callBackFunction && typeof callBackFunction == 'function'){ | ||
47 | callBackFunction(event.graphic.geometry); | ||
48 | } | ||
49 | |||
50 | } | ||
51 | }) | ||
52 | }).catch(err=>{ | ||
53 | throw(err); | ||
54 | }); | ||
55 | }, | ||
56 | destroyeDraw() { | ||
57 | if(this.drawAction){ | ||
58 | this.drawAction.cancel(); | ||
59 | } | ||
60 | } | ||
61 | } | ||
62 | } | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
src/libs/map/featureUpdate.js
0 → 100644
1 | /* | ||
2 | * 空间图层数据添加、修改、删除 | ||
3 | * */ | ||
4 | import {loadModules} from "esri-loader" | ||
5 | |||
6 | export default { | ||
7 | methods:{ | ||
8 | addGraphic(url,graphic,callBackFunction){ | ||
9 | loadModules([ | ||
10 | "esri/layers/FeatureLayer", | ||
11 | "esri/Graphic", | ||
12 | "esri/geometry/Point", | ||
13 | "esri/geometry/Polygon", | ||
14 | "esri/geometry/Polyline" | ||
15 | ]).then(([ | ||
16 | FeatureLayer, | ||
17 | Graphic, | ||
18 | Point, | ||
19 | Polygon, | ||
20 | Polyline | ||
21 | ])=>{ | ||
22 | var featureLayer = new FeatureLayer({ | ||
23 | url:url | ||
24 | }) | ||
25 | var geo = null; | ||
26 | if(graphic.geometry.type == 'point'){ | ||
27 | geo = new Point(graphic.geometry); | ||
28 | }else if(graphic.geometry.type == 'polyline'){ | ||
29 | geo = new Polyline(graphic.geometry); | ||
30 | }else if(graphic.geometry.type == 'polygon'){ | ||
31 | geo = new Polygon(graphic.geometry); | ||
32 | } | ||
33 | var saveGraphic = new Graphic({ | ||
34 | attributes:graphic.attributes, | ||
35 | geometry:geo | ||
36 | }); | ||
37 | featureLayer.applyEdits({ | ||
38 | addFeatures:[saveGraphic] | ||
39 | }).then(function (res){ | ||
40 | if(callBackFunction && typeof callBackFunction == 'function'){ | ||
41 | callBackFunction(res); | ||
42 | } | ||
43 | }) | ||
44 | }).catch( err => { | ||
45 | throw (err); | ||
46 | }) | ||
47 | }, | ||
48 | updateGraphic(url,graphic,callBackFunction){ | ||
49 | loadModules([ | ||
50 | "esri/layers/FeatureLayer", | ||
51 | "esri/Graphic", | ||
52 | "esri/geometry/Point", | ||
53 | "esri/geometry/Polygon", | ||
54 | "esri/geometry/Polyline" | ||
55 | ]).then(([ | ||
56 | FeatureLayer, | ||
57 | Graphic, | ||
58 | Point, | ||
59 | Polygon, | ||
60 | Polyline | ||
61 | ])=>{ | ||
62 | var featureLayer = new FeatureLayer({ | ||
63 | url:url | ||
64 | }) | ||
65 | var geo = null; | ||
66 | if(graphic.geometry.type == 'point'){ | ||
67 | geo = new Point(graphic.geometry); | ||
68 | }else if(graphic.geometry.type == 'polyline'){ | ||
69 | geo = new Polyline(graphic.geometry); | ||
70 | }else if(graphic.geometry.type == 'polygon'){ | ||
71 | geo = new Polygon(graphic.geometry); | ||
72 | } | ||
73 | var updGraphic = new Graphic({ | ||
74 | attributes:graphic.attributes, | ||
75 | geometry:geo | ||
76 | }); | ||
77 | featureLayer.applyEdits({ | ||
78 | updateFeatures:[updGraphic] | ||
79 | }).then(function (res){ | ||
80 | if(callBackFunction && typeof callBackFunction == 'function'){ | ||
81 | callBackFunction(res); | ||
82 | } | ||
83 | }) | ||
84 | }).catch( err => { | ||
85 | throw (err); | ||
86 | }) | ||
87 | }, | ||
88 | delGraphic(url,graphic,callBackFunction){ | ||
89 | loadModules([ | ||
90 | "esri/layers/FeatureLayer" | ||
91 | ]).then(([ | ||
92 | FeatureLayer | ||
93 | ])=>{ | ||
94 | var featureLayer = new FeatureLayer({ | ||
95 | url:url | ||
96 | }) | ||
97 | featureLayer.applyEdits({ | ||
98 | deleteFeatures:[graphic] | ||
99 | }).then(function (res){ | ||
100 | if(callBackFunction && typeof callBackFunction == 'function'){ | ||
101 | callBackFunction(res); | ||
102 | } | ||
103 | }) | ||
104 | }).catch( err => { | ||
105 | throw (err); | ||
106 | }) | ||
107 | } | ||
108 | } | ||
109 | } | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
src/libs/map/mapApi.js
0 → 100644
src/libs/map/mapUtils.js
0 → 100644
src/libs/map/measure.js
0 → 100644
1 | import {loadModules} from 'esri-loader' | ||
2 | import {maps} from '@/libs/map/mapUtils' | ||
3 | export default{ | ||
4 | data(){ | ||
5 | return{ | ||
6 | //activeWidget:null, | ||
7 | areaActive:null, | ||
8 | distanceActive:null | ||
9 | } | ||
10 | }, | ||
11 | methods: { | ||
12 | measure(viewId,type){ | ||
13 | var view = maps[viewId]; | ||
14 | var self = this; | ||
15 | loadModules([ | ||
16 | "esri/widgets/DistanceMeasurement2D", | ||
17 | "esri/widgets/AreaMeasurement2D" | ||
18 | ]).then(([ | ||
19 | DistanceMeasurement2D, | ||
20 | AreaMeasurement2D | ||
21 | ]) => { | ||
22 | switch (type) { | ||
23 | case "distance": | ||
24 | if(!self.distanceActive){ | ||
25 | self.distanceActive = new DistanceMeasurement2D({ | ||
26 | view: view | ||
27 | }); | ||
28 | } | ||
29 | // skip the initial 'new measurement' button | ||
30 | self.distanceActive.viewModel.start(); | ||
31 | break; | ||
32 | case "area": | ||
33 | if(!self.areaActive){ | ||
34 | self.areaActive = new AreaMeasurement2D({ | ||
35 | view: view | ||
36 | }); | ||
37 | } | ||
38 | |||
39 | |||
40 | // skip the initial 'new measurement' button | ||
41 | self.areaActive.viewModel.start(); | ||
42 | break; | ||
43 | case null: | ||
44 | if (self.distanceActive) { | ||
45 | self.distanceActive.viewModel.clear(); | ||
46 | // self.distanceActive = null; | ||
47 | } | ||
48 | if (self.areaActive) { | ||
49 | self.areaActive.viewModel.clear(); | ||
50 | // self.areaActive = null; | ||
51 | } | ||
52 | break; | ||
53 | } | ||
54 | |||
55 | }).catch(err => { | ||
56 | throw(err); | ||
57 | }); | ||
58 | |||
59 | } | ||
60 | |||
61 | } | ||
62 | } | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
src/libs/map/queryUtils.js
0 → 100644
1 | |||
2 | import {loadModules} from 'esri-loader' | ||
3 | |||
4 | export default{ | ||
5 | |||
6 | methods: { | ||
7 | queryByWhere(url,queryWhere,geometry,returnGeometry,outFields ,outSpatialReference ,callBackFunction){ | ||
8 | var self = this; | ||
9 | loadModules([ | ||
10 | "esri/tasks/QueryTask", | ||
11 | "esri/tasks/support/Query" | ||
12 | ]).then(([ | ||
13 | QueryTask, | ||
14 | Query | ||
15 | ]) => { | ||
16 | var queryTask = new QueryTask({ | ||
17 | url: url | ||
18 | }), | ||
19 | query = new Query(), | ||
20 | where = ""; | ||
21 | if (queryWhere){ | ||
22 | var parames = self.parseObj2Arr(queryWhere); | ||
23 | //var isFrist = false; | ||
24 | for(var i = 0;i < parames.length; i++ ){ | ||
25 | if(i == 0){ | ||
26 | |||
27 | }else { | ||
28 | where += " and "; | ||
29 | } | ||
30 | if(Array.isArray(parames[i].value)){ | ||
31 | where += parames[i].name + " in (" + parames[i].value.toString + ")"; | ||
32 | }else if(typeof parames[i].value == 'number'){ | ||
33 | where += parames[i].name + " =" + parames[i].value ; | ||
34 | }else{ | ||
35 | where += parames[i].name + " =" + "'" + parames[i].value +"'"; | ||
36 | } | ||
37 | } | ||
38 | } else { | ||
39 | where = "1=1"; | ||
40 | } | ||
41 | |||
42 | query.where = where; | ||
43 | if(geometry){ | ||
44 | query.geometry = geometry; | ||
45 | } | ||
46 | query.outSpatialReference = outSpatialReference ? outSpatialReference : {wkid:3857} | ||
47 | query.returnGeometry = returnGeometry ? true : false; | ||
48 | query.outFields = outFields ? outFields : ["*"]; | ||
49 | queryTask.execute(query).then(function(results){ | ||
50 | if(callBackFunction && typeof callBackFunction == 'function'){ | ||
51 | callBackFunction(results); | ||
52 | } | ||
53 | }); | ||
54 | }).catch( err => { | ||
55 | throw(err); | ||
56 | }) | ||
57 | }, | ||
58 | parseObj2Arr(object){ | ||
59 | var arr = []; | ||
60 | for(var key in object){ | ||
61 | var obj = {}; | ||
62 | obj.name = key; | ||
63 | obj.value = object[key]; | ||
64 | arr.push(obj); | ||
65 | } | ||
66 | return arr; | ||
67 | } | ||
68 | }, | ||
69 | } |
src/libs/map/shpUtils.js
0 → 100644
1 | import {open,openShp} from "shapefile" | ||
2 | |||
3 | export default{ | ||
4 | |||
5 | methods: { | ||
6 | |||
7 | readShpByFile(file,callBackFunction){ | ||
8 | var reader = new FileReader(); | ||
9 | reader.readAsBinaryString(file); | ||
10 | reader.οnlοad=function(){ | ||
11 | var fileData = this.result ; //fileData就是读取到的文件的二进制数据 | ||
12 | openShp(fileData).then(source => source.read() | ||
13 | .then(function log(result) { | ||
14 | if (result.done) return; | ||
15 | if(callBackFunction && typeof callBackFunction == 'function'){ | ||
16 | callBackFunction(result.value); | ||
17 | } | ||
18 | return source.read().then(log); | ||
19 | })) | ||
20 | .catch(error => console.error(error.stack)); | ||
21 | } | ||
22 | }, | ||
23 | readShpByUrl(url,callBackFunction){ | ||
24 | open(url).then(source => source.read() | ||
25 | .then(function log(result) { | ||
26 | if (result.done) return; | ||
27 | if(callBackFunction && typeof callBackFunction == 'function'){ | ||
28 | callBackFunction(result.value); | ||
29 | } | ||
30 | return source.read().then(log); | ||
31 | })) | ||
32 | .catch(error => console.error(error.stack)); | ||
33 | } | ||
34 | }, | ||
35 | readShpByZip(zipUrl,callBackFunction){ | ||
36 | |||
37 | } | ||
38 | |||
39 | } | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
... | @@ -5,6 +5,14 @@ import store from '@store' | ... | @@ -5,6 +5,14 @@ import store from '@store' |
5 | import ElementUI from 'element-ui' | 5 | import ElementUI from 'element-ui' |
6 | import 'element-ui/lib/theme-chalk/index.css' | 6 | import 'element-ui/lib/theme-chalk/index.css' |
7 | import '../mock/index.js' | 7 | import '../mock/index.js' |
8 | |||
9 | //引入arcgis Api | ||
10 | import './libs/map/mapApi' | ||
11 | |||
12 | import './assets/iconfont/iconfont.js' | ||
13 | |||
14 | //引入iconFount字体库 | ||
15 | import './assets/iconfont/iconfont.css' | ||
8 | import ElTreeSelect from 'el-select-tree' | 16 | import ElTreeSelect from 'el-select-tree' |
9 | //树型选择器 | 17 | //树型选择器 |
10 | Vue.use(ElTreeSelect); | 18 | Vue.use(ElTreeSelect); | ... | ... |
... | @@ -71,6 +71,12 @@ const constantRoutes = [ | ... | @@ -71,6 +71,12 @@ const constantRoutes = [ |
71 | code: "1-5", | 71 | code: "1-5", |
72 | component: () => import("@/views/zd/index"), | 72 | component: () => import("@/views/zd/index"), |
73 | }, | 73 | }, |
74 | { | ||
75 | path: "/viewMap", | ||
76 | name: "地图", | ||
77 | code: "0-6", | ||
78 | component: () => import("@/views/systemTX/map"), | ||
79 | } | ||
74 | ], | 80 | ], |
75 | }, | 81 | }, |
76 | ]; | 82 | ]; | ... | ... |
... | @@ -31,6 +31,11 @@ | ... | @@ -31,6 +31,11 @@ |
31 | <i :class="item.icon"></i> | 31 | <i :class="item.icon"></i> |
32 | <span>{{ item.name }}</span> | 32 | <span>{{ item.name }}</span> |
33 | </div> | 33 | </div> |
34 | |||
35 | <div class="top-items tuOrShu" > | ||
36 | <i class="iconfont icondiqiu1" title="图形管理" v-if="!isMap" @click="goMap"></i> | ||
37 | <i class="iconfont iconshuxingguanli" title="属性管理" v-else @click="goBack"></i> | ||
38 | </div> | ||
34 | </div> | 39 | </div> |
35 | <!-- <div class="header-bottom"> | 40 | <!-- <div class="header-bottom"> |
36 | <Navigation ref="navigation"></Navigation> | 41 | <Navigation ref="navigation"></Navigation> |
... | @@ -127,7 +132,9 @@ export default { | ... | @@ -127,7 +132,9 @@ export default { |
127 | }, | 132 | }, |
128 | pd: [], | 133 | pd: [], |
129 | dialogVisible: false, | 134 | dialogVisible: false, |
130 | treeHeight:0, //树结构区域高度 | 135 | isMap:false, |
136 | treeHeight:0, | ||
137 | routerInfo:null | ||
131 | }; | 138 | }; |
132 | }, | 139 | }, |
133 | computed: { | 140 | computed: { |
... | @@ -150,6 +157,13 @@ export default { | ... | @@ -150,6 +157,13 @@ export default { |
150 | this.getRightTreeByZrzbsm(this.$store.state.zrzbsm); | 157 | this.getRightTreeByZrzbsm(this.$store.state.zrzbsm); |
151 | }else if(newPath == "/dz"){ | 158 | }else if(newPath == "/dz"){ |
152 | this.getRightTreeByDzbsm(this.$store.state.dzbsm); | 159 | this.getRightTreeByDzbsm(this.$store.state.dzbsm); |
160 | } else if(newPath == "/viewMap"){ | ||
161 | this.isMap = true; | ||
162 | if(this.$route.query.type == "zd"){ | ||
163 | this.getRightTree(this.$route.query.bsm); | ||
164 | }else if(this.$route.query.type == "/zrz"){ | ||
165 | this.getRightTreeByZrzbsm(this.$route.query.bsm); | ||
166 | } | ||
153 | } else { | 167 | } else { |
154 | this.getTreeList(); | 168 | this.getTreeList(); |
155 | } | 169 | } |
... | @@ -349,7 +363,46 @@ export default { | ... | @@ -349,7 +363,46 @@ export default { |
349 | getTreeList().then((res)=>{ | 363 | getTreeList().then((res)=>{ |
350 | this.pd=res.result; | 364 | this.pd=res.result; |
351 | }) | 365 | }) |
366 | }, | ||
367 | goBack(){ | ||
368 | this.isMap = false; | ||
369 | var curretRouterInfo = JSON.parse(sessionStorage.getItem("curretRouterInfo")); | ||
370 | //this.$router.back(-1); | ||
371 | if(curretRouterInfo){ | ||
372 | this.$router.push({ | ||
373 | path: curretRouterInfo.path, | ||
374 | query: curretRouterInfo.query | ||
375 | }); | ||
376 | }else { | ||
377 | this.$router.back(-1); | ||
378 | } | ||
379 | |||
380 | }, | ||
381 | goMap(){ | ||
382 | var curretRouterInfo = { | ||
383 | path:this.$route.path, | ||
384 | query:this.$route.query | ||
352 | } | 385 | } |
386 | sessionStorage.setItem('curretRouterInfo',JSON.stringify(curretRouterInfo)); | ||
387 | this.isMap = true; | ||
388 | var routerQuery = null; | ||
389 | var path = this.$route.path; | ||
390 | if(path == "/zd"){ | ||
391 | routerQuery = { | ||
392 | bsm:this.$route.query.bsm, | ||
393 | type:"zd" | ||
394 | } | ||
395 | }else if(path == "/zrz"){ | ||
396 | routerQuery = { | ||
397 | bsm:this.$route.query.bsm, | ||
398 | type:"zrz" | ||
399 | } | ||
400 | } | ||
401 | this.$router.push({ | ||
402 | path: "/viewMap", | ||
403 | query: routerQuery | ||
404 | }); | ||
405 | } | ||
353 | }, | 406 | }, |
354 | }; | 407 | }; |
355 | </script> | 408 | </script> |
... | @@ -411,6 +464,13 @@ export default { | ... | @@ -411,6 +464,13 @@ export default { |
411 | border-bottom: 1px solid rgba(234, 234, 234, 1); | 464 | border-bottom: 1px solid rgba(234, 234, 234, 1); |
412 | box-sizing: border-box; | 465 | box-sizing: border-box; |
413 | } | 466 | } |
467 | |||
468 | .tuOrShu{ | ||
469 | float: right !important; | ||
470 | .iconfont{ | ||
471 | font-size: 21px; | ||
472 | } | ||
473 | } | ||
414 | } | 474 | } |
415 | .el-aside { | 475 | .el-aside { |
416 | width: 290px !important; | 476 | width: 290px !important; | ... | ... |
... | @@ -42,7 +42,7 @@ | ... | @@ -42,7 +42,7 @@ |
42 | </el-card> | 42 | </el-card> |
43 | </div> | 43 | </div> |
44 | <div class="notice" ref="notice"> | 44 | <div class="notice" ref="notice"> |
45 | <el-card class="news"> | 45 | <el-card> |
46 | <div slot="header" class="clearfix"> | 46 | <div slot="header" class="clearfix"> |
47 | <span>通知公告</span> | 47 | <span>通知公告</span> |
48 | <span class="edit">查看全部 <i class="fa fa-angle-right " aria-hidden="true"></i></span> | 48 | <span class="edit">查看全部 <i class="fa fa-angle-right " aria-hidden="true"></i></span> |
... | @@ -113,7 +113,7 @@ export default { | ... | @@ -113,7 +113,7 @@ export default { |
113 | handleSelect() { | 113 | handleSelect() { |
114 | //非编辑状态才可以点击 | 114 | //非编辑状态才可以点击 |
115 | if (!isEdit) { | 115 | if (!isEdit) { |
116 | 116 | ||
117 | } | 117 | } |
118 | }, | 118 | }, |
119 | tableRowClassName({ row, rowIndex }) { | 119 | tableRowClassName({ row, rowIndex }) { |
... | @@ -137,7 +137,7 @@ export default { | ... | @@ -137,7 +137,7 @@ export default { |
137 | message: '删除成功!' | 137 | message: '删除成功!' |
138 | }); | 138 | }); |
139 | }).catch(() => { | 139 | }).catch(() => { |
140 | 140 | ||
141 | }); | 141 | }); |
142 | } | 142 | } |
143 | }, | 143 | }, |
... | @@ -182,17 +182,6 @@ export default { | ... | @@ -182,17 +182,6 @@ export default { |
182 | div { | 182 | div { |
183 | cursor: pointer; | 183 | cursor: pointer; |
184 | flex: 1; | 184 | flex: 1; |
185 | .el-badge{ | ||
186 | width: 68px; | ||
187 | height: 68px; | ||
188 | display: block; | ||
189 | margin: 0 auto; | ||
190 | /deep/.el-badge__content{ | ||
191 | top: 10px; | ||
192 | right: 14px; | ||
193 | background-color: #fa6400; | ||
194 | } | ||
195 | } | ||
196 | img { | 185 | img { |
197 | width: 68px; | 186 | width: 68px; |
198 | height: 68px; | 187 | height: 68px; | ... | ... |
... | @@ -15,7 +15,7 @@ | ... | @@ -15,7 +15,7 @@ |
15 | >办理 | 15 | >办理 |
16 | </el-button | 16 | </el-button |
17 | > | 17 | > |
18 | <el-button type="text" size="small">定位</el-button> | 18 | <el-button type="text" size="small" @click="postionToMap(scope.row)">定位</el-button> |
19 | </template> | 19 | </template> |
20 | </el-table-column> | 20 | </el-table-column> |
21 | <el-table-column prop="bdcdyh" align="left" label="不动产单元号"> | 21 | <el-table-column prop="bdcdyh" align="left" label="不动产单元号"> |
... | @@ -170,6 +170,24 @@ | ... | @@ -170,6 +170,24 @@ |
170 | } | 170 | } |
171 | }); | 171 | }); |
172 | }, | 172 | }, |
173 | //定位 | ||
174 | //图形定位 | ||
175 | postionToMap(rowData){ | ||
176 | if(rowData.dylx == "zrz" || rowData.dylx == "zd"){ | ||
177 | var curretRouterInfo = { | ||
178 | path:this.$route.path, | ||
179 | query:this.$route.query | ||
180 | } | ||
181 | sessionStorage.setItem("curretRouterInfo",JSON.stringify(curretRouterInfo)); | ||
182 | this.$router.push({ | ||
183 | path: "/viewMap", | ||
184 | query: { | ||
185 | bsm: rowData.glbsm, | ||
186 | type: rowData.dylx | ||
187 | } | ||
188 | }); | ||
189 | } | ||
190 | } | ||
173 | }, | 191 | }, |
174 | computed: {}, | 192 | computed: {}, |
175 | watch: {}, | 193 | watch: {}, | ... | ... |
src/views/systemTX/map.vue
0 → 100644
1 | <template> | ||
2 | <div class="testMap"> | ||
3 | <div class="mapTools"> | ||
4 | <mapTools :viewId="viewId"></mapTools> | ||
5 | </div> | ||
6 | <EsriMap :viewId = "viewId" :afterLoaderFunction="addLayer"></EsriMap> | ||
7 | </div> | ||
8 | </template> | ||
9 | <script> | ||
10 | import EsriMap from '@/components/map/EsriMap' | ||
11 | import MapTools from './mapWeight/mapTools' | ||
12 | import {loadModules} from 'esri-loader' | ||
13 | import {maps} from '@/libs/map/mapUtils' | ||
14 | import mapLayerManager from "./mapWeight/js/mapLayerManager"; | ||
15 | export default { | ||
16 | components:{ | ||
17 | EsriMap, | ||
18 | MapTools | ||
19 | }, | ||
20 | data(){ | ||
21 | return{ | ||
22 | viewId:"testMap", | ||
23 | 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" | ||
24 | } | ||
25 | }, | ||
26 | mixins:[mapLayerManager], | ||
27 | mounted(){ | ||
28 | var query = this.$route.query; | ||
29 | if(query && JSON.stringify(query) != "{}"){ | ||
30 | this.addGeoByBsm(query.bsm,query.type,this.viewId); | ||
31 | } | ||
32 | }, | ||
33 | methods:{ | ||
34 | addLayer(){ | ||
35 | var self = this; | ||
36 | var view = maps[this.viewId]; | ||
37 | loadModules([ | ||
38 | "esri/layers/MapImageLayer", | ||
39 | ]).then(([ | ||
40 | MapImageLayer, | ||
41 | ])=>{ | ||
42 | var mapImageLayer = new MapImageLayer({ | ||
43 | url:self.layerUrl, | ||
44 | id:"testLayer", | ||
45 | spatialReference:view.spatialReference, | ||
46 | sublayers:[{ | ||
47 | id:19, | ||
48 | visible:true | ||
49 | }, | ||
50 | { | ||
51 | id:8, | ||
52 | visible:true | ||
53 | }, | ||
54 | { | ||
55 | id:10, | ||
56 | visible:true | ||
57 | }] | ||
58 | }); | ||
59 | view.map.add(mapImageLayer,1); | ||
60 | }).catch(err => { | ||
61 | throw(err); | ||
62 | }) | ||
63 | } | ||
64 | |||
65 | } | ||
66 | } | ||
67 | </script> | ||
68 | <style scoped lang="less"> | ||
69 | .testMap{ | ||
70 | height: 100%; | ||
71 | width: 100%; | ||
72 | position: relative; | ||
73 | .mapTools{ | ||
74 | position: absolute; | ||
75 | top: 12px; | ||
76 | z-index: 99; | ||
77 | right: 5px; | ||
78 | } | ||
79 | } | ||
80 | </style> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
1 | import layers from '@/assets/json/layers.json' | ||
2 | import graphicSymbol from '@/assets/json/graphicSymbol.json' | ||
3 | import queryUtils from "@libs/map/queryUtils"; | ||
4 | import {loadModules} from "esri-loader" | ||
5 | import {maps} from '@/libs/map/mapUtils' | ||
6 | |||
7 | export default { | ||
8 | |||
9 | methods:{ | ||
10 | getLayerByName(name) { | ||
11 | for (var i = 0; i < layers.length; i++) { | ||
12 | if (layers[i].layerName == name) { | ||
13 | return layers[i]; | ||
14 | } | ||
15 | } | ||
16 | return null; | ||
17 | }, | ||
18 | addGeoByBsm(bsm, type,viewId) { | ||
19 | var self = this; | ||
20 | var layer = null; | ||
21 | if (type == 'zd') { | ||
22 | layer = this.getLayerByName("ZDJBXX"); | ||
23 | } else if (type == 'zrz') { | ||
24 | layer = this.getLayerByName("ZRZ"); | ||
25 | } else { | ||
26 | console.log("未定义类型!!"); | ||
27 | return; | ||
28 | } | ||
29 | if (!layer) { | ||
30 | console.log("没有找到图层,不能查询"); | ||
31 | return; | ||
32 | } | ||
33 | queryUtils.methods.queryByWhere(layer.layerUrl+"/"+layer.id, {"BSM": bsm }, null, true, null, null, function (res) { | ||
34 | var features = res.features; | ||
35 | if(features && features.length > 0){ | ||
36 | if( !features[0].geometry ){ | ||
37 | self.$message.success("暂无图形信息!!"); | ||
38 | return; | ||
39 | } | ||
40 | loadModules([ | ||
41 | "esri/layers/GraphicsLayer" | ||
42 | ]).then( ([ | ||
43 | GraphicsLayer | ||
44 | ]) => { | ||
45 | var view = maps[viewId]; | ||
46 | var layer = view.map.findLayerById("highlightLayer"); | ||
47 | if(layer){ | ||
48 | layer.removeAll(); | ||
49 | }else { | ||
50 | layer = new GraphicsLayer({ | ||
51 | id:"highlightLayer" | ||
52 | }) | ||
53 | view.map.add(layer); | ||
54 | } | ||
55 | var symbol = graphicSymbol.fillSymbol.highlightSymbol; | ||
56 | var graphic = features[0]; | ||
57 | graphic.symbol = symbol; | ||
58 | layer.add(graphic); | ||
59 | view.center = graphic.geometry.extent.center; | ||
60 | }).catch( err => { | ||
61 | thow(err); | ||
62 | }) | ||
63 | }else { | ||
64 | self.$message.success("暂无图形信息!!"); | ||
65 | return; | ||
66 | } | ||
67 | }); | ||
68 | }, | ||
69 | |||
70 | } | ||
71 | } | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
src/views/systemTX/mapWeight/mapTools.vue
0 → 100644
1 | <template> | ||
2 | <div class="tools"> | ||
3 | <el-button-group> | ||
4 | <el-button type="primary" title="全图" icon="iconfont icondiqiu" @click="fullMap"></el-button> | ||
5 | <el-button type="primary" title="测面" icon="iconfont iconmianceliang" @click="measureMent('area')"></el-button> | ||
6 | <el-button type="primary" title="测距" icon="iconfont iconceju" @click="measureMent('distance')"></el-button> | ||
7 | <el-button type="primary" title="放大" icon="iconfont iconfangda" @click="zoomOut"></el-button> | ||
8 | <el-button type="primary" title="缩小" icon="iconfont iconsuoxiao" @click="zoomIn"></el-button> | ||
9 | <el-button type="primary" title="点选" icon="iconfont iconshuxing" @click="info"></el-button> | ||
10 | <el-button type="primary" title="清除" icon="el-icon-delete" @click="clear"></el-button> | ||
11 | </el-button-group> | ||
12 | |||
13 | </div> | ||
14 | </template> | ||
15 | <script> | ||
16 | import {maps} from '@/libs/map/mapUtils' | ||
17 | import draw from '@/libs/map/draw' | ||
18 | import identifyUtils from '@/libs/map/IdentifyUtils' | ||
19 | import measure from '@/libs/map/measure' | ||
20 | |||
21 | import {loadModules} from "esri-loader" | ||
22 | export default { | ||
23 | props:{ | ||
24 | viewId:{ | ||
25 | type:String, | ||
26 | default:"mainView" | ||
27 | } | ||
28 | }, | ||
29 | mixins:[draw,identifyUtils,measure], | ||
30 | data(){ | ||
31 | return{ | ||
32 | url:"" | ||
33 | } | ||
34 | }, | ||
35 | methods:{ | ||
36 | fullMap(){ | ||
37 | var view = maps[this.viewId]; | ||
38 | view.zoom = 10; | ||
39 | view.center = [108.95,34.27] | ||
40 | }, | ||
41 | measureMent(type){ | ||
42 | this.measure(this.viewId,type); | ||
43 | }, | ||
44 | clearHeightLayer(){ | ||
45 | |||
46 | }, | ||
47 | clear(){ | ||
48 | this.measure(this.viewId,null); | ||
49 | }, | ||
50 | info(){ | ||
51 | var view = maps[this.viewId]; | ||
52 | var self = this; | ||
53 | this.initDraw("point",this.viewId,null,function(geo){ | ||
54 | self.identify(self.url,[],geo,function(result){ | ||
55 | debugger | ||
56 | }); | ||
57 | }); | ||
58 | }, | ||
59 | zoomOut(){ | ||
60 | var view = maps[this.viewId]; | ||
61 | this.initDraw("rectangle",this.viewId,null,function(geo){ | ||
62 | view.extent = geo.extent; | ||
63 | }); | ||
64 | }, | ||
65 | zoomIn(){ | ||
66 | var view = maps[this.viewId]; | ||
67 | this.initDraw("rectangle",this.viewId,null,function(geo){ | ||
68 | var dWidth, dHeight, dXmin, dYmin, dXmax, dYmax; | ||
69 | dWidth = view.extent.width * view.extent.width / geo.extent.width; | ||
70 | dHeight = view.extent.height * view.extent.height / geo.extent.height; | ||
71 | dXmin = view.extent.xmin - ((geo.extent.xmin - view.extent.xmin) * view.extent.width / geo.extent.width); | ||
72 | dYmin = view.extent.ymin - ((geo.extent.ymin - view.extent.ymin) * view.extent.height / geo.extent.height); | ||
73 | dXmax = dXmin + dWidth; | ||
74 | dYmax = dYmin + dHeight; | ||
75 | //pEnv.PutCoords(dXmin, dYmin, dXmax, dYmax); | ||
76 | loadModules(["esri/geometry/Extent"]).then(([Extent]) => { | ||
77 | view.extent = new Extent({ | ||
78 | xmin: dXmin, | ||
79 | ymin: dYmin, | ||
80 | xmax: dXmax, | ||
81 | ymax: dYmax, | ||
82 | spatialReference: { | ||
83 | wkid: 102100 | ||
84 | } | ||
85 | }); | ||
86 | }).catch( err => { | ||
87 | throw (err); | ||
88 | }) | ||
89 | }); | ||
90 | } | ||
91 | |||
92 | } | ||
93 | |||
94 | |||
95 | } | ||
96 | </script> | ||
97 | <style lang="less" scoped> | ||
98 | |||
99 | </style> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
... | @@ -20,6 +20,7 @@ import jzx from "./jzx"; | ... | @@ -20,6 +20,7 @@ import jzx from "./jzx"; |
20 | import djb from "./djb"; | 20 | import djb from "./djb"; |
21 | import lshs from "./lshs"; | 21 | import lshs from "./lshs"; |
22 | import fjcl from "./fjcl/fjcl" | 22 | import fjcl from "./fjcl/fjcl" |
23 | import {queryjzd,queryjzx} from "@/api/zd" | ||
23 | export default { | 24 | export default { |
24 | name: "", | 25 | name: "", |
25 | components: { | 26 | components: { |
... | @@ -29,12 +30,34 @@ export default { | ... | @@ -29,12 +30,34 @@ export default { |
29 | data() { | 30 | data() { |
30 | return { | 31 | return { |
31 | activeName: "djdcb", | 32 | activeName: "djdcb", |
33 | jzd:[], | ||
34 | jzx:[] | ||
32 | }; | 35 | }; |
33 | }, | 36 | }, |
34 | methods: { | 37 | methods: { |
35 | handleClick(tab, event) { | 38 | handleClick(tab, event) { |
36 | // console.log(tab, event); | 39 | // console.log(tab, event); |
37 | }, | 40 | }, |
41 | //查询界址点 | ||
42 | getJZD(){ | ||
43 | var bsm = this.$store.state.zdbsm; | ||
44 | this.jzx = []; | ||
45 | queryjzd({glBsm:bsm}).then(res => { | ||
46 | if(res.code == 200){ | ||
47 | this.jzd = res.data.data; | ||
48 | } | ||
49 | }) | ||
50 | }, | ||
51 | //查询界址线 | ||
52 | getJZX(){ | ||
53 | var bsm = this.$store.state.zdbsm; | ||
54 | this.jzx = []; | ||
55 | queryjzx({glBsm:bsm}).then(res => { | ||
56 | if(res.code = 200){ | ||
57 | this.jzx = res.data.data; | ||
58 | } | ||
59 | }); | ||
60 | } | ||
38 | }, | 61 | }, |
39 | created() {}, | 62 | created() {}, |
40 | mounted() {}, | 63 | mounted() {}, | ... | ... |
... | @@ -171,7 +171,7 @@ | ... | @@ -171,7 +171,7 @@ |
171 | }, | 171 | }, |
172 | methods: { | 172 | methods: { |
173 | getData(bsm) { | 173 | getData(bsm) { |
174 | queryjzd(bsm).then(res => { | 174 | queryjzd({glBsm:bsm}).then(res => { |
175 | for (let i = 0; i < res.result.length; i++) { | 175 | for (let i = 0; i < res.result.length; i++) { |
176 | res.result[i]['isCheck'] = false; | 176 | res.result[i]['isCheck'] = false; |
177 | res.result[i]['iszb'] = 'readonly'; | 177 | res.result[i]['iszb'] = 'readonly'; | ... | ... |
... | @@ -9,9 +9,9 @@ | ... | @@ -9,9 +9,9 @@ |
9 | <table border="1"> | 9 | <table border="1"> |
10 | <tr> | 10 | <tr> |
11 | <td class="cz"><input type="checkbox" @click="allcheck" v-model="isCheckAll"/></td> | 11 | <td class="cz"><input type="checkbox" @click="allcheck" v-model="isCheckAll"/></td> |
12 | <td class="qsd">起始点</td> | 12 | <td class="qdh">起始点号</td> |
13 | <td class="zzd">终止点</td> | 13 | <td class="zdh">终止点号</td> |
14 | <td class="jzdj">界址点距(m)</td> | 14 | <td class="jzjj">界址间距(m)</td> |
15 | <td class="jzxlx">界址线类型</td> | 15 | <td class="jzxlx">界址线类型</td> |
16 | <td class="jzxwz">界址线位置</td> | 16 | <td class="jzxwz">界址线位置</td> |
17 | <td class="jxxz">界限性质</td> | 17 | <td class="jxxz">界限性质</td> | ... | ... |
... | @@ -636,7 +636,7 @@ export default { | ... | @@ -636,7 +636,7 @@ export default { |
636 | this.$store.state.xzqList = res.result; | 636 | this.$store.state.xzqList = res.result; |
637 | }) | 637 | }) |
638 | .catch((error) => {}); | 638 | .catch((error) => {}); |
639 | 639 | ||
640 | getListByPbsm(djqdm) | 640 | getListByPbsm(djqdm) |
641 | .then((res) => { | 641 | .then((res) => { |
642 | this.$store.state.djzqList = res.result; | 642 | this.$store.state.djzqList = res.result; | ... | ... |
-
Please register or sign in to post a comment