cc8c1a63 by zhaoqian

Merge remote-tracking branch 'origin/master'

2 parents 8110500f 5eab16e7
...@@ -175,6 +175,18 @@ export function loadFile(url) { ...@@ -175,6 +175,18 @@ export function loadFile(url) {
175 } 175 }
176 }) 176 })
177 } 177 }
178 /**
179 * 删除文件
180 */
181 export function deleteFile(id) {
182 return request({
183 url:"/file/delete",
184 method:'delete',
185 params:{
186 id
187 }
188 })
189 }
178 190
179 /** 191 /**
180 * 多个宗地代码获取树的数据信息 192 * 多个宗地代码获取树的数据信息
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
8 "fillSymbol": { 8 "fillSymbol": {
9 "defaultSymbol": { 9 "defaultSymbol": {
10 "type": "simple-fill", 10 "type": "simple-fill",
11 "color": [ 0,233, 245, 0.8 ], 11 "color": [ 0,233, 245, 0.4 ],
12 "style": "solid", 12 "style": "solid",
13 "outline": { 13 "outline": {
14 "color": "#00e9f5", 14 "color": "#00e9f5",
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
17 }, 17 },
18 "highlightSymbol": { 18 "highlightSymbol": {
19 "type": "simple-fill", 19 "type": "simple-fill",
20 "color": [ 245,3, 37, 0.8 ], 20 "color": [ 245,3, 37, 0.4 ],
21 "style": "solid", 21 "style": "solid",
22 "outline": { 22 "outline": {
23 "color": "#f50325", 23 "color": "#f50325",
......
1 [{ 1 [{
2 "layerName": "ZDJBXX", 2 "layerName": "ZDJBXX",
3 "layerLabel": "宗地",
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 "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 "id":8,
6 "fieldAliases": {
7 "BSM": "标识码",
8 "YSDM": "要素代码",
9 "ZDDM": "宗地代码",
10 "BDCDYH": "不动产单元号",
11 "ZDTZM": "宗地特征码",
12 "ZL": "坐落",
13 "ZDMJ": "宗地面积",
14 "MJDW": "面积单位",
15 "YT": "用途",
16 "DJ": "等级",
17 "JG": "价格",
18 "QLLX": "权利类型",
19 "QLXZ": "权利性质",
20 "QLSDFS": "权利设定方式",
21 "RJL": "容积率",
22 "JZMD": "建筑密度",
23 "JZXG": "建筑限高",
24 "ZDSZD": "宗地四至-东",
25 "ZDSZN": "宗地四至-南",
26 "ZDSZX": "宗地四至-西",
27 "ZDSZB": "宗地四至-北",
28 "TFH": "图幅号",
29 "DJH": "地籍号",
30 "DAH": "档案号",
31 "BZ": "备注",
32 "ZT": "状态",
33 "YWZT": "业务状态",
34 "XMMC": "项目名称",
35 "BGRQ": "变更日期",
36 "TDZH": "土地证号"
37 }
5 }, 38 },
6 { 39 {
7 "layerName": "ZRZ", 40 "layerName": "ZRZ",
41 "layerLabel": "自然幢",
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", 42 "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" 43 "id": 10,
44 "fieldAliases": {
45 "YSDM": "要素代码",
46 "BDCDYH": "不动产单元号",
47 "ZDDM": "宗地代码",
48 "ZRZH": "自然幢号",
49 "XMMC": "项目名称",
50 "JZWMC": "建筑物名称",
51 "JGRQ": "竣工日期",
52 "JZWGD": "建筑物高度",
53 "ZZDMJ": "幢占地面积",
54 "ZYDMJ": "幢用地面积",
55 "YCJZMJ": "预测建筑面积",
56 "SCJZMJ": "实测建筑面积",
57 "ZCS": "总层数",
58 "DSCS": "地上层数",
59 "DXCS": "地下层数",
60 "DXSD": "地下深度",
61 "GHYT": "规划用途",
62 "FWJG": "房屋结构",
63 "ZTS": "总套数",
64 "JZWJBYT": "建筑物基本用途",
65 "DAH": "档案号",
66 "BZ": "备注",
67 "ZT": "状态",
68 "YWZT": "业务状态",
69 "BSM": "标识码"
70 }
10 }, 71 },
11 { 72 {
12 "layerName": "DJQ", 73 "layerName": "DJQ",
74 "layerLabel": "地籍区",
13 "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", 75 "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",
14 "id": "13" 76 "id": 13,
77 "fieldAliases": {
78 "BSM": "标识码",
79 "YSDM": "要素代码",
80 "DJQDM": "地籍区代码",
81 "DJQMC": "地籍区名称"
82 }
15 }, 83 },
16 { 84 {
17 "layerName": "DJZQ", 85 "layerName": "DJZQ",
86 "layerLabel": "地籍子区",
18 "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", 87 "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",
19 "id": "14" 88 "id": 14,
89 "fieldAliases": {
90 "BSM": "标识码",
91 "YSDM": "要素代码",
92 "DJZQDM": "地籍子区代码",
93 "DJZQMC": "地籍子区名称"
94 }
20 }, 95 },
21 { 96 {
22 "layerName": "XJZQ", 97 "layerName": "XJZQ",
98 "layerLabel": "行政区",
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", 99 "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 "id": "19" 100 "id": 19,
101 "fieldAliases": {
102 "BSM": "标识码",
103 "YSDM": "要素代码",
104 "XZQDM": "行政区代码",
105 "XZQMC": "行政区名称",
106 "XZQMJ": "行政区面积"
107 }
108
25 } 109 }
26 ] 110 ]
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -6,6 +6,7 @@ import layers from '@/assets/json/layers.json' ...@@ -6,6 +6,7 @@ import layers from '@/assets/json/layers.json'
6 import queryUtils from "@libs/map/queryUtils"; 6 import queryUtils from "@libs/map/queryUtils";
7 import identifyUtils from '@/libs/map/IdentifyUtils' 7 import identifyUtils from '@/libs/map/IdentifyUtils'
8 import {loadModules} from "esri-loader" 8 import {loadModules} from "esri-loader"
9 import featureUpdate from "@libs/map/featureUpdate";
9 import arcgisParser from 'terraformer-arcgis-parser' 10 import arcgisParser from 'terraformer-arcgis-parser'
10 import wktParse from 'terraformer-wkt-parser' 11 import wktParse from 'terraformer-wkt-parser'
11 12
...@@ -199,11 +200,38 @@ export default { ...@@ -199,11 +200,38 @@ export default {
199 if(callBacFunction && typeof callBacFunction == "function"){ 200 if(callBacFunction && typeof callBacFunction == "function"){
200 callBacFunction(isJoint,message); 201 callBacFunction(isJoint,message);
201 } 202 }
202 }) 203 },true)
203 }).catch(err => { 204 }).catch(err => {
204 console.log(err); 205 console.log(err);
205 throw (err); 206 throw (err);
206 }) 207 })
208 },
209 //保存或者编辑属性信息
210 updAttributes(bsm,type,attributes,callBackFunction){
211 var layer = null;
212 if(type == 'zd'){
213 layer = this.getLayerByName("ZDJBXX");
214 }else{
215 layer = this.getLayerByName("ZRZ");
216 }
217 var featureUrl = layer.layerUrl.replace("MapServer","FeatureServer");
218 featureUrl += "/"+layer.id;
219 this.queryGeoByBsm(bsm,type,function (features) {
220 if(features && features.length > 0){
221 attributes.OBJECTID = features[0].attributes.OBJECTID;
222 features[0].attributes = attributes;
223 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]]";
224 features[0].geometry.spatialReference = {
225 wkt:wkt
226 }
227 featureUpdate.methods.updateGraphic(featureUrl,features[0],callBackFunction);
228 }else{
229 var graphic = {
230 attributes:attributes
231 }
232 featureUpdate.methods.addGraphic(featureUrl,graphic,callBackFunction) ;
233 }
234 });
207 } 235 }
208 236
209 } 237 }
......
...@@ -3,7 +3,7 @@ import {loadModules} from 'esri-loader' ...@@ -3,7 +3,7 @@ import {loadModules} from 'esri-loader'
3 export default { 3 export default {
4 methods: { 4 methods: {
5 5
6 identify(url,layerIds,geometry ,callBackFunction){ 6 identify(url,layerIds,geometry,callBackFunction,returnGeometry,layerOption,tolerance,mapExtent){
7 var self = this; 7 var self = this;
8 loadModules([ 8 loadModules([
9 "esri/tasks/IdentifyTask", 9 "esri/tasks/IdentifyTask",
...@@ -20,10 +20,11 @@ export default { ...@@ -20,10 +20,11 @@ export default {
20 if(layerIds){ 20 if(layerIds){
21 identifyParameters.layerIds = layerIds; 21 identifyParameters.layerIds = layerIds;
22 } 22 }
23 identifyParameters.layerOption = "all"; 23 identifyParameters.layerOption = layerOption ? layerOption : "all";
24 identifyParameters.tolerance = 3; 24 identifyParameters.tolerance = tolerance ? tolerance : 3;
25 identifyParameters.mapExtent = geometry.extent; 25 identifyParameters.mapExtent = mapExtent ? mapExtent : geometry.extent;
26 identifyParameters.returnGeometry = true; 26 identifyParameters.returnGeometry = returnGeometry ? returnGeometry : false;
27 //identifyParameters.returnFieldName = false;
27 identifyParameters.spatialReference = geometry.spatialReference; 28 identifyParameters.spatialReference = geometry.spatialReference;
28 identifyTask.execute(identifyParameters).then(result => { 29 identifyTask.execute(identifyParameters).then(result => {
29 if(callBackFunction && typeof callBackFunction == 'function'){ 30 if(callBackFunction && typeof callBackFunction == 'function'){
......
...@@ -87,15 +87,36 @@ export default { ...@@ -87,15 +87,36 @@ export default {
87 }, 87 },
88 delGraphic(url,graphic,callBackFunction){ 88 delGraphic(url,graphic,callBackFunction){
89 loadModules([ 89 loadModules([
90 "esri/layers/FeatureLayer" 90 "esri/layers/FeatureLayer",
91 "esri/Graphic",
92 "esri/geometry/Point",
93 "esri/geometry/Polygon",
94 "esri/geometry/Polyline"
91 ]).then(([ 95 ]).then(([
92 FeatureLayer 96 FeatureLayer,
97 Graphic,
98 Point,
99 Polygon,
100 Polyline
93 ])=>{ 101 ])=>{
94 var featureLayer = new FeatureLayer({ 102 var featureLayer = new FeatureLayer({
95 url:url 103 url:url
96 }) 104 })
105 var geo = null;
106 if(graphic.geometry.type == 'point'){
107 geo = new Point(graphic.geometry);
108 }else if(graphic.geometry.type == 'polyline'){
109 geo = new Polyline(graphic.geometry);
110 }else if(graphic.geometry.type == 'polygon'){
111 geo = new Polygon(graphic.geometry);
112 }
113 var delGraphic = new Graphic({
114 attributes:graphic.attributes,
115 geometry:geo
116 });
117
97 featureLayer.applyEdits({ 118 featureLayer.applyEdits({
98 deleteFeatures:[graphic] 119 deleteFeatures:[delGraphic]
99 }).then(function (res){ 120 }).then(function (res){
100 if(callBackFunction && typeof callBackFunction == 'function'){ 121 if(callBackFunction && typeof callBackFunction == 'function'){
101 callBackFunction(res); 122 callBackFunction(res);
......
1 import {loadModules} from 'esri-loader'
2
3 export default {
4
5 methods:{
6 findByPro(url,layerIds,searchFields,searchText,returnGeometry,callBackFunction){
7 loadModules([
8 "esri/tasks/FindTask",
9 "esri/tasks/support/FindParameters"
10 ]).then(([
11 FindTask,
12 FindParameters
13 ]) => {
14 var findTask = new FindTask({
15 url:url
16 }),
17 findParameters = new FindParameters();
18 findParameters.returnGeometry = returnGeometry ? returnGeometry : false;
19 findParameters.layerIds = layerIds;
20 findParameters.searchFields = searchFields;
21 findParameters.searchText = searchText;
22 findTask.execute(findParameters).then(function (result) {
23 if(callBackFunction){
24 callBackFunction(result);
25 }
26 });
27 }).catch(err => {
28 throw (err);
29 })
30
31 }
32
33 }
34 }
...\ No newline at end of file ...\ No newline at end of file
...@@ -23,8 +23,9 @@ ...@@ -23,8 +23,9 @@
23 </div> 23 </div>
24 <ul> 24 <ul>
25 <li v-for="(item,index) in zdZxx.dzList" :key="index" 25 <li v-for="(item,index) in zdZxx.dzList" :key="index"
26 :class="[{'border':'((index+1)%2) == 0'},{'nosearch':!zdDzList.includes(item)}]" 26 :class="[{'search':!zdDzList.includes(item)}]"
27 >{{item.displays}}</li> 27 >{{item.displays}}
28 </li>
28 </ul> 29 </ul>
29 </div> 30 </div>
30 <div class="zrz"> 31 <div class="zrz">
...@@ -33,7 +34,8 @@ ...@@ -33,7 +34,8 @@
33 </div> 34 </div>
34 <ul> 35 <ul>
35 <li v-for="(item,index) in zdZxx.zrzList" :key="index" 36 <li v-for="(item,index) in zdZxx.zrzList" :key="index"
36 :class="[{'border':'((index+1)%2) == 0'},{'nosearch':!zdZrzList.includes(item)}]">{{item.displays}} 37 :class="[{'oddborder':((index+1)%2) === 1},{'search':!zdZrzList.includes(item)}]">
38 {{item.displays}}
37 </li> 39 </li>
38 </ul> 40 </ul>
39 </div> 41 </div>
...@@ -50,7 +52,7 @@ ...@@ -50,7 +52,7 @@
50 <th class="syqlx">所有权类型</th> 52 <th class="syqlx">所有权类型</th>
51 <th class="tdtzm">土地特征码</th> 53 <th class="tdtzm">土地特征码</th>
52 <th class="xmmc">项目名称</th> 54 <th class="xmmc">项目名称</th>
53 <th class="zxx">幢信息</th> 55 <th class="xzzxx">幢信息</th>
54 <th class="">选择</th> 56 <th class="">选择</th>
55 </tr> 57 </tr>
56 <tr v-for="(item,index) in zdFghData.newZdlist" :key="index"> 58 <tr v-for="(item,index) in zdFghData.newZdlist" :key="index">
...@@ -116,14 +118,23 @@ ...@@ -116,14 +118,23 @@
116 <td class="xmmc"> 118 <td class="xmmc">
117 <input type="text" v-model="item.xmmc" class="formInput"/> 119 <input type="text" v-model="item.xmmc" class="formInput"/>
118 </td> 120 </td>
119 <td class="zxx"> 121 <td class="xzzxx">
120 <span>多幢:</span> 122 <span>多幢:</span>
121 <ul> 123 <ul>
122 <li v-for="(dzItem,dzIndex) in item.dz" :key="dzIndex">{{dzItem}}</li> 124 <li v-for="(dzItem,dzIndex) in item.dz" :key="dzIndex"
125 @mouseenter="mouseenter($event,index,dzIndex,'dz')"
126 @mouseleave="mouseleave($event)">{{dzItem.xmmc}}
127 <span v-if="dzIndex<item.dz.length-1">,</span>
128 </li>
123 </ul> 129 </ul>
124 <span>自然幢:</span> 130 <span>自然幢:</span>
125 <ul> 131 <ul>
126 <li v-for="(dzItem,dzIndex) in item.zrz" :key="dzIndex">{{dzItem}}</li> 132 <li v-for="(zrzItem,zrzIndex) in item.zrz" :key="zrzIndex"
133 @mouseenter="mouseenter($event,index,zrzIndex,'zrz')"
134 @mouseleave="mouseleave($event)"
135 >{{zrzItem.xmmc}}
136 <span v-if="zrzIndex<item.zrz.length-1">,</span>
137 </li>
127 </ul> 138 </ul>
128 </td> 139 </td>
129 <td class=""> 140 <td class="">
...@@ -196,7 +207,7 @@ ...@@ -196,7 +207,7 @@
196 <div class="zxx"> 207 <div class="zxx">
197 <div class="dz"> 208 <div class="dz">
198 <div class="title"> 209 <div class="title">
199 <span class="title">多幢信息({{zdZxx.zrzList.length}}个)</span> 210 <span>多幢信息({{zdZxx.zrzList.length}}个)</span>
200 </div> 211 </div>
201 <ul> 212 <ul>
202 <li v-for="(item,index) in zdZxx.zrzList" :key="index">{{item.xmmc}}</li> 213 <li v-for="(item,index) in zdZxx.zrzList" :key="index">{{item.xmmc}}</li>
...@@ -204,11 +215,11 @@ ...@@ -204,11 +215,11 @@
204 </div> 215 </div>
205 <div class="zrz"> 216 <div class="zrz">
206 <div class="title"> 217 <div class="title">
207 <span class="title">自然幢信息({{zdZxx.dzList.length}}个)</span> 218 <span class="">自然幢信息({{zdZxx.dzList.length}}个)</span>
208 </div> 219 </div>
209 <ul> 220 <ul>
210 <li v-for="(item,index) in zdZxx.dzList" :key="index" 221 <li v-for="(item,index) in zdZxx.dzList" :key="index"
211 :class="(index+1)%2==0?'':'border'">{{item.xmmc}} 222 :class="(index+1)%2==0?'':'oddborder'">{{item.xmmc}}
212 </li> 223 </li>
213 </ul> 224 </ul>
214 </div> 225 </div>
...@@ -225,7 +236,6 @@ ...@@ -225,7 +236,6 @@
225 <th class="syqlx">所有权类型</th> 236 <th class="syqlx">所有权类型</th>
226 <th class="tdtzm">土地特征码</th> 237 <th class="tdtzm">土地特征码</th>
227 <th class="xmmc">项目名称</th> 238 <th class="xmmc">项目名称</th>
228 <th class="zxx">幢信息</th>
229 </tr> 239 </tr>
230 <tr v-for="(item,index) in dzFghData.newZdlist" :key="index"> 240 <tr v-for="(item,index) in dzFghData.newZdlist" :key="index">
231 <td class="cz"> 241 <td class="cz">
...@@ -290,9 +300,6 @@ ...@@ -290,9 +300,6 @@
290 <td class="xmmc"> 300 <td class="xmmc">
291 <input type="text" v-model="item.xmmc" class="formInput"/> 301 <input type="text" v-model="item.xmmc" class="formInput"/>
292 </td> 302 </td>
293 <td class="zxx">
294 <span @click="xzzrz(index)" class="xz">选择</span>
295 </td>
296 </tr> 303 </tr>
297 <tr> 304 <tr>
298 <td> 305 <td>
...@@ -309,7 +316,6 @@ ...@@ -309,7 +316,6 @@
309 <td></td> 316 <td></td>
310 <td></td> 317 <td></td>
311 <td></td> 318 <td></td>
312 <td></td>
313 </tr> 319 </tr>
314 </table> 320 </table>
315 </div> 321 </div>
...@@ -328,12 +334,12 @@ ...@@ -328,12 +334,12 @@
328 <div class="fgq"> 334 <div class="fgq">
329 <div class="data"> 335 <div class="data">
330 <ul> 336 <ul>
331 <li><span>宗地代码:</span>{{zdFgqData.zddm}}</li> 337 <li><span>宗地代码:</span>{{hFgqData.zddm}}</li>
332 <li><span>不动产单元号:</span>{{zdFgqData.bdcdyh}}</li> 338 <li><span>不动产单元号:</span>{{hFgqData.bdcdyh}}</li>
333 <li><span>项目名称:</span>{{zdFgqData.xmmc}}</li> 339 <li><span>项目名称:</span>{{hFgqData.xmmc}}</li>
334 <li><span>不动产权证号:</span>{{zdFgqData.bdcqzh}}</li> 340 <li><span>不动产权证号:</span>{{hFgqData.bdcqzh}}</li>
335 <li><span>权利人:</span>{{zdFgqData.qlr}}</li> 341 <li><span>权利人:</span>{{hFgqData.qlr}}</li>
336 <li><span>坐落:</span>{{zdFgqData.zl}}</li> 342 <li><span>坐落:</span>{{hFgqData.zl}}</li>
337 </ul> 343 </ul>
338 </div> 344 </div>
339 <div class="zxx"> 345 <div class="zxx">
...@@ -351,7 +357,7 @@ ...@@ -351,7 +357,7 @@
351 </div> 357 </div>
352 <ul> 358 <ul>
353 <li v-for="(item,index) in zdZxx.dzList" :key="index" 359 <li v-for="(item,index) in zdZxx.dzList" :key="index"
354 :class="(index+1)%2==0?'':'border'">{{item.xmmc}} 360 :class="(index+1)%2==0?'':'oddborder'">{{item.xmmc}}
355 </li> 361 </li>
356 </ul> 362 </ul>
357 </div> 363 </div>
...@@ -368,7 +374,6 @@ ...@@ -368,7 +374,6 @@
368 <th class="syqlx">所有权类型</th> 374 <th class="syqlx">所有权类型</th>
369 <th class="tdtzm">土地特征码</th> 375 <th class="tdtzm">土地特征码</th>
370 <th class="xmmc">项目名称</th> 376 <th class="xmmc">项目名称</th>
371 <th class="zxx">幢信息</th>
372 </tr> 377 </tr>
373 <tr v-for="(item,index) in hFghData.newZdlist" :key="index"> 378 <tr v-for="(item,index) in hFghData.newZdlist" :key="index">
374 379
...@@ -434,10 +439,6 @@ ...@@ -434,10 +439,6 @@
434 <td class="xmmc"> 439 <td class="xmmc">
435 <input type="text" v-model="item.xmmc" class="formInput"/> 440 <input type="text" v-model="item.xmmc" class="formInput"/>
436 </td> 441 </td>
437 <td class="zxx">
438 <!-- {{item.fwlist.zbsm}}-->
439 <span @click="xzzrz(index)" class="xz">选择</span>
440 </td>
441 </tr> 442 </tr>
442 <tr> 443 <tr>
443 <td> 444 <td>
...@@ -454,7 +455,6 @@ ...@@ -454,7 +455,6 @@
454 <td></td> 455 <td></td>
455 <td></td> 456 <td></td>
456 <td></td> 457 <td></td>
457 <td></td>
458 </tr> 458 </tr>
459 </table> 459 </table>
460 </div> 460 </div>
...@@ -558,23 +558,60 @@ ...@@ -558,23 +558,60 @@
558 }) 558 })
559 }, 559 },
560 methods: { 560 methods: {
561 mouseenter(event, index, dzIndex,type) {
562 let range = document.createRange();
563 range.selectNodeContents(event.target);
564 let selection = window.getSelection();
565 selection.removeAllRanges();
566 selection.addRange(range);
567 var self=this;
568 document.onkeydown = function (e){
569 let key = e || window.event || arguments.callee.caller.arguments[0];
570 console.log(key.code, 'keycode')
571 if (key && (key.keyCode == '8' || key.code == 'Delete')) {
572 let dz={};
573 switch (type) {
574 case "dz":
575 dz = self.zdFghData.newZdlist[index].dz[dzIndex];
576 // 删除数据
577 self.zdFghData.newZdlist[index].dz.splice(dzIndex, 1);
578 // 添加数据
579 self.zdDzList.push(dz)
580 break;
581 case "zrz":
582 dz = self.zdFghData.newZdlist[index].zrz[dzIndex];
583 // 删除数据
584 self.zdFghData.newZdlist[index].zrz.splice(dzIndex, 1);
585 // 添加数据
586 self.zdZrzList.push(dz)
587 break;
588 default:
589 break;
590 }
591 }
592 };
593 },
594 mouseleave(event) {
595 let selection = window.getSelection();
596 selection.removeAllRanges();
597 },
561 // 重置数据 598 // 重置数据
562 result(){ 599 result() {
563 switch (this.tabName) { 600 switch (this.tabName) {
564 case "zd": 601 case "zd":
565 this.zdFghData={ 602 this.zdFghData = {
566 oldZdbsm: "", 603 oldZdbsm: "",
567 newZdlist: [] 604 newZdlist: []
568 } 605 }
569 break 606 break
570 case "dz": 607 case "dz":
571 this.dzFghData={ 608 this.dzFghData = {
572 oldZdbsm: "", 609 oldZdbsm: "",
573 newZdlist: [] 610 newZdlist: []
574 } 611 }
575 break 612 break
576 case "h": 613 case "h":
577 this.hFghData={ 614 this.hFghData = {
578 oldZdbsm: "", 615 oldZdbsm: "",
579 newZdlist: [] 616 newZdlist: []
580 } 617 }
...@@ -601,7 +638,7 @@ ...@@ -601,7 +638,7 @@
601 zbsm: command, 638 zbsm: command,
602 ztype: 'dz' 639 ztype: 'dz'
603 }); 640 });
604 this.zdFghData.newZdlist[index].dz.push(item.xmmc) 641 this.zdFghData.newZdlist[index].dz.push(item)
605 this.zdDzList = this.zdDzList.filter(i => i.bsm !== command); 642 this.zdDzList = this.zdDzList.filter(i => i.bsm !== command);
606 }, 643 },
607 zrzHandleCommand(command, index) { 644 zrzHandleCommand(command, index) {
...@@ -610,7 +647,7 @@ ...@@ -610,7 +647,7 @@
610 zbsm: command, 647 zbsm: command,
611 ztype: 'zrz' 648 ztype: 'zrz'
612 }) 649 })
613 this.zdFghData.newZdlist[index].zrz.push(item.xmmc) 650 this.zdFghData.newZdlist[index].zrz.push(item)
614 this.zdZrzList = this.zdZrzList.filter(i => i.bsm !== command); 651 this.zdZrzList = this.zdZrzList.filter(i => i.bsm !== command);
615 }, 652 },
616 ZdgetDzXx(zdbsm) { 653 ZdgetDzXx(zdbsm) {
...@@ -648,7 +685,7 @@ ...@@ -648,7 +685,7 @@
648 saveZd() { 685 saveZd() {
649 zdfg(this.zdFghData).then(res => { 686 zdfg(this.zdFghData).then(res => {
650 if (res.success) { 687 if (res.success) {
651 this.$store.state.zdbsms=res.result; 688 this.$store.state.zdbsms = res.result;
652 this.$router.push({ 689 this.$router.push({
653 path: '/zd', 690 path: '/zd',
654 query: { 691 query: {
...@@ -673,8 +710,8 @@ ...@@ -673,8 +710,8 @@
673 this.checkedData = res.result 710 this.checkedData = res.result
674 // 用户bsm暂时传空 711 // 用户bsm暂时传空
675 this.checkedData.userbsm = '' 712 this.checkedData.userbsm = ''
676 this.checkedData.dz=[], 713 this.checkedData.dz = [],
677 this.checkedData.zrz=[], 714 this.checkedData.zrz = [],
678 // fwlist 暂时传空 715 // fwlist 暂时传空
679 this.checkedData.fwlist = [] 716 this.checkedData.fwlist = []
680 }) 717 })
...@@ -684,8 +721,8 @@ ...@@ -684,8 +721,8 @@
684 this.checkedData = res.result 721 this.checkedData = res.result
685 // 用户bsm暂时传空 722 // 用户bsm暂时传空
686 this.checkedData.userbsm = '' 723 this.checkedData.userbsm = ''
687 this.checkedData.dz=[], 724 this.checkedData.dz = [],
688 this.checkedData.zrz=[], 725 this.checkedData.zrz = [],
689 // fwlist 暂时传空 726 // fwlist 暂时传空
690 this.checkedData.fwlist = [] 727 this.checkedData.fwlist = []
691 }) 728 })
...@@ -695,8 +732,8 @@ ...@@ -695,8 +732,8 @@
695 this.checkedData = res.result 732 this.checkedData = res.result
696 // 用户bsm暂时传空 733 // 用户bsm暂时传空
697 this.checkedData.userbsm = '' 734 this.checkedData.userbsm = ''
698 this.checkedData.dz=[], 735 this.checkedData.dz = [],
699 this.checkedData.zrz=[], 736 this.checkedData.zrz = [],
700 // fwlist 暂时传空 737 // fwlist 暂时传空
701 this.checkedData.fwlist = [] 738 this.checkedData.fwlist = []
702 }) 739 })
...@@ -952,7 +989,7 @@ ...@@ -952,7 +989,7 @@
952 padding: 5px; 989 padding: 5px;
953 line-height: 20px; 990 line-height: 20px;
954 color: #BBB; 991 color: #BBB;
955 span{ 992 span {
956 color: #000; 993 color: #000;
957 } 994 }
958 } 995 }
...@@ -966,6 +1003,7 @@ ...@@ -966,6 +1003,7 @@
966 .title { 1003 .title {
967 color: red; 1004 color: red;
968 text-align: center; 1005 text-align: center;
1006 padding: 5px 0;
969 } 1007 }
970 .dz { 1008 .dz {
971 width: 33%; 1009 width: 33%;
...@@ -997,7 +1035,7 @@ ...@@ -997,7 +1035,7 @@
997 } 1035 }
998 } 1036 }
999 1037
1000 .border { 1038 .oddborder {
1001 border-right: 1px solid #000; 1039 border-right: 1px solid #000;
1002 } 1040 }
1003 1041
...@@ -1075,8 +1113,8 @@ ...@@ -1075,8 +1113,8 @@
1075 height: 480px; 1113 height: 480px;
1076 overflow: auto; 1114 overflow: auto;
1077 margin-top: 10px; 1115 margin-top: 10px;
1078 table{ 1116 table {
1079 margin: 0 20px ; 1117 margin: 0 20px;
1080 } 1118 }
1081 } 1119 }
1082 .header-button { 1120 .header-button {
...@@ -1110,6 +1148,14 @@ ...@@ -1110,6 +1148,14 @@
1110 border-color: rgba(0, 202, 205, .8); 1148 border-color: rgba(0, 202, 205, .8);
1111 } 1149 }
1112 1150
1151 .xzzxx {
1152 ul {
1153 li {
1154 display: inline-block;
1155 }
1156 }
1157 }
1158
1113 .cz, .xh { 1159 .cz, .xh {
1114 width: 100px; 1160 width: 100px;
1115 } 1161 }
...@@ -1117,7 +1163,8 @@ ...@@ -1117,7 +1163,8 @@
1117 .xzq, .djq, .djzq { 1163 .xzq, .djq, .djzq {
1118 width: 150px; 1164 width: 150px;
1119 } 1165 }
1120 .nosearch{ 1166
1167 .search {
1121 color: #BBB !important; 1168 color: #BBB !important;
1122 } 1169 }
1123 </style> 1170 </style>
......
...@@ -18,7 +18,7 @@ ...@@ -18,7 +18,7 @@
18 <td>操作</td> 18 <td>操作</td>
19 </tr> 19 </tr>
20 <tr v-if="zdhbqData.length==0"> 20 <tr v-if="zdhbqData.length==0">
21 <td colspan="7"> 21 <td colspan="8">
22 <span class="noData">暂无数据</span> 22 <span class="noData">暂无数据</span>
23 </td> 23 </td>
24 </tr> 24 </tr>
...@@ -134,9 +134,10 @@ ...@@ -134,9 +134,10 @@
134 <td class="bdcqzh">不动产权证号</td> 134 <td class="bdcqzh">不动产权证号</td>
135 <td class="qlr">权利人</td> 135 <td class="qlr">权利人</td>
136 <td class="zl">坐落</td> 136 <td class="zl">坐落</td>
137 <td class="">操作</td>
137 </tr> 138 </tr>
138 <tr v-if="dzhbqData.length==0"> 139 <tr v-if="dzhbqData.length==0">
139 <td colspan="7"> 140 <td colspan="8">
140 <span class="noData">暂无数据</span> 141 <span class="noData">暂无数据</span>
141 </td> 142 </td>
142 </tr> 143 </tr>
...@@ -154,6 +155,7 @@ ...@@ -154,6 +155,7 @@
154 readonly="readonly"/></td> 155 readonly="readonly"/></td>
155 <td class="zl"><input type="text" class="formInput" v-model="item.zl" 156 <td class="zl"><input type="text" class="formInput" v-model="item.zl"
156 readonly="readonly"/></td> 157 readonly="readonly"/></td>
158 <td class="cz" @click="deleteData(index)"><span>删除</span></td>
157 </tr> 159 </tr>
158 </table> 160 </table>
159 </div> 161 </div>
...@@ -250,9 +252,10 @@ ...@@ -250,9 +252,10 @@
250 <td class="bdcqzh">不动产权证号</td> 252 <td class="bdcqzh">不动产权证号</td>
251 <td class="qlr">权利人</td> 253 <td class="qlr">权利人</td>
252 <td class="zl">坐落</td> 254 <td class="zl">坐落</td>
255 <td class="">操作</td>
253 </tr> 256 </tr>
254 <tr v-if="hhbqData.length==0"> 257 <tr v-if="hhbqData.length==0">
255 <td colspan="7"> 258 <td colspan="8">
256 <span class="noData">暂无数据</span> 259 <span class="noData">暂无数据</span>
257 </td> 260 </td>
258 </tr> 261 </tr>
...@@ -270,6 +273,7 @@ ...@@ -270,6 +273,7 @@
270 readonly="readonly"/></td> 273 readonly="readonly"/></td>
271 <td class="zl"><input type="text" class="formInput" v-model="item.zl" 274 <td class="zl"><input type="text" class="formInput" v-model="item.zl"
272 readonly="readonly"/></td> 275 readonly="readonly"/></td>
276 <td class="cz" @click="deleteData(index)"><span>删除</span></td>
273 </tr> 277 </tr>
274 </table> 278 </table>
275 </div> 279 </div>
......
...@@ -241,7 +241,6 @@ export default { ...@@ -241,7 +241,6 @@ export default {
241 methods: { 241 methods: {
242 // 重置 242 // 重置
243 reset(){ 243 reset(){
244 debugger
245 if(this.$refs['ruleForm']){ 244 if(this.$refs['ruleForm']){
246 this.$refs['ruleForm'].resetFields(); 245 this.$refs['ruleForm'].resetFields();
247 } 246 }
......
...@@ -4,6 +4,46 @@ ...@@ -4,6 +4,46 @@
4 <mapTools :viewId="viewId"></mapTools> 4 <mapTools :viewId="viewId"></mapTools>
5 </div> 5 </div>
6 <EsriMap :viewId = "viewId" :afterLoaderFunction="addLayer"></EsriMap> 6 <EsriMap :viewId = "viewId" :afterLoaderFunction="addLayer"></EsriMap>
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>
9 <!--搜索弹出框-->
10 <div class="searchResult" v-show="dialogVisible">
11 <div class="-header">
12 <span class="title">地块信息</span>
13 <span class="closeButton">
14 <i class="close el-icon-close" @click="closeResultDialog"></i>
15 </span>
16 </div>
17 <el-card class="box-card">
18 <div slot="header" class="clearfix">
19 <!-- 图层选择-->
20 <span class="formTitle">图层选择:</span>
21 <el-select v-model="selectResLayerId" size="mini" @change="selectLayerChange" placeholder="请选择">
22 <el-option
23 v-for="(item,index) in resultLayers"
24 :key="index"
25 :label="item.label"
26 :value="item.id"
27 >
28 </el-option>
29 </el-select>
30 </div>
31 <!-- 数据结果-->
32 <div class="text item" v-for="(item,index) in features" :key="index">
33 <P>
34 <span class="title"><i class="iconfont iconxinxi"></i> 基本信息</span>
35 <a href="#" @click="toMap(item)">缩放至</a>
36 </P>
37 <hr />
38 <div class="contentItem" v-for="(value,key,index) in item.attributes" :key="index">
39 <span class="key">{{key}}</span>
40 <span class="value" :title="value">{{value}}</span>
41 </div>
42 </div>
43 </el-card>
44 </div>
45 </div>
46
7 </div> 47 </div>
8 </template> 48 </template>
9 <script> 49 <script>
...@@ -12,6 +52,9 @@ import MapTools from './mapWeight/mapTools' ...@@ -12,6 +52,9 @@ import MapTools from './mapWeight/mapTools'
12 import {loadModules} from 'esri-loader' 52 import {loadModules} from 'esri-loader'
13 import {maps} from '@/libs/map/mapUtils' 53 import {maps} from '@/libs/map/mapUtils'
14 import mapLayerManager from "./mapWeight/js/mapLayerManager"; 54 import mapLayerManager from "./mapWeight/js/mapLayerManager";
55 import layers from '@/assets/json/layers.json'
56 import findTask from '@/libs/map/findTask'
57
15 export default { 58 export default {
16 components:{ 59 components:{
17 EsriMap, 60 EsriMap,
...@@ -20,10 +63,17 @@ export default { ...@@ -20,10 +63,17 @@ export default {
20 data(){ 63 data(){
21 return{ 64 return{
22 viewId:"testMap", 65 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" 66 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",
67 dialogVisible:false,
68 selectResLayerId:null,
69 features:[],
70 resultLayers:[],
71 results:[],
72 inputBsm:"",
73 heighGraphic:null
24 } 74 }
25 }, 75 },
26 mixins:[mapLayerManager], 76 mixins:[mapLayerManager,findTask],
27 mounted(){ 77 mounted(){
28 var query = this.$route.query; 78 var query = this.$route.query;
29 if(query && JSON.stringify(query) != "{}"){ 79 if(query && JSON.stringify(query) != "{}"){
...@@ -34,6 +84,7 @@ export default { ...@@ -34,6 +84,7 @@ export default {
34 addLayer(){ 84 addLayer(){
35 var self = this; 85 var self = this;
36 var view = maps[this.viewId]; 86 var view = maps[this.viewId];
87 view.ui.remove('zoom');
37 loadModules([ 88 loadModules([
38 "esri/layers/MapImageLayer", 89 "esri/layers/MapImageLayer",
39 ]).then(([ 90 ]).then(([
...@@ -60,8 +111,119 @@ export default { ...@@ -60,8 +111,119 @@ export default {
60 }).catch(err => { 111 }).catch(err => {
61 throw(err); 112 throw(err);
62 }) 113 })
114 },
115 //缩放至
116 toMap(attr){
117 var self = this;
118 this.extentToGraphic(attr,this.heighGraphic,this.viewId,function () {
119 self.heighGraphic = attr;
120 });
121 },
122 //图层选择事件
123 selectLayerChange(){
124 var self = this;
125 var layerAndResult = this.results.filter(function (item) {
126 return item.layerId = self.selectResLayerId;
127 })
128 if(layerAndResult){
129 this.features = layerAndResult[0].features;
130 }
131 },
132 //属性查询
133 doSearch(){
134 var self = this;
135 if(!this.inputBsm){
136 return;
137 }else if(this.inputBsm.length != 19){
138 this.$message.warning("标识码格式输入有误!!!");
139 return;
140 }
141 this.findByPro(this.layerUrl,[8,10],'BSM',this.inputBsm,true,function (res) {
142 var resultes = res.results;
143 if(resultes && resultes.length > 0){
144 self.delIdentifyData(resultes);
145 if(!self.dialogVisible){
146 self.dialogVisible = true;
147 }
148 }else {
149 self.$message.warning("查询不到相关数据!!!");
150 }
151 });
152 },
153 //关闭查询结果
154 closeResultDialog(){
155 //关闭时清除查询结果 清除数据
156 this.results = [];
157 this.selectResLayerId =null;
158 this.features = [];
159 this.resultLayers = [];
160 this.heighGraphic = null;
161 //清除查询图层
162 this.clearSearchLayer(this.viewId);
163 this.dialogVisible = false;
164 },
165 //处理数据
166 delIdentifyData(data){
167 var self = this;
168 self.results = [];
169 self.selectResLayerId =null;
170 self.features = [];
171 self.resultLayers = [];
172 this.heighGraphic = null;
173 for(var i = 0;i < data.length;i++){
174 var layerId = data[i].layerId;
175 var layer = self.getLayerById(layerId);
176 var layerResult = self.results.filter(function (item) {
177 return item.layerId == layerId;
178 })
179 if(layerResult && layerResult.length > 0){
180 var feature = data[i].feature,
181 attributes = {},
182 fieldAliases = layer.fieldAliases;
183 for(var key in feature.attributes){
184 if(!feature.attributes[key]){
185 delete feature.attributes[key]
186 }
187 }
188 layerResult.features.push(feature);
189 }else{
190 if(layer){
191 this.resultLayers.push({
192 id:layerId,
193 label:layer.layerLabel
194 })
195 var layerAndResult = {
196 layerId:layerId,
197 features:[]
198 }
199 var feature = data[i].feature,
200 attributes = {},
201 fieldAliases = layer.fieldAliases;
202 for(var key in feature.attributes){
203 if(!feature.attributes[key]){
204 delete feature.attributes[key]
205 }
206 }
207 layerAndResult.features.push(feature);
208 self.results.push(layerAndResult);
209 }
210 }
211 }
212 this.addSearchResultToMap(this.results,this.viewId);
213 },
214 getLayerById(layerId){
215 var parseLayers = JSON.parse(JSON.stringify(layers));
216 var layer = parseLayers.filter(function (item) {
217 return item.id == layerId;
218 })
219 if(layer){
220 return layer[0];
63 } 221 }
64 222
223 return null;
224 },
225 //展示查询数据结果
226
65 } 227 }
66 } 228 }
67 </script> 229 </script>
...@@ -76,5 +238,86 @@ export default { ...@@ -76,5 +238,86 @@ export default {
76 z-index: 99; 238 z-index: 99;
77 right: 5px; 239 right: 5px;
78 } 240 }
241 .searchDiv{
242 position: absolute;
243 top: 12px;
244 left: 7px;
245 width: 35%;
246 max-height: 100%;
247 /deep/ .el-input-group__append{
248 background-color: #409eff;
249 color: white;
250 }
251 .searchResult{
252 margin-top: 3px;
253 background: white;
254 border-radius: 4px;
255 max-height: 80%;
256 .-header{
257 line-height: 32px;
258 padding: 3px 20px;
259 background-color: #519eff;
260 border-top-right-radius: 4px;
261 border-top-left-radius: 4px;
262 .title{
263 font-size: 14px;
264 color: white;
265 font-weight: 600;
266 }
267 .closeButton{
268 float: right;
269 font-size: 16px;
270 color: black;
271 }
272 .closeButton :hover{
273 cursor:pointer
274 }
275 }
276 /deep/ .el-card__header {
277 padding: 10px 20px;
278 }
279 .formTitle{
280 margin-right: 5px;
281 font-size: 14px;
282 }
283 .item{
284 p{
285 margin: 0px 3px;
286 font-size: 14px;
287 .title{
288
289 }
290 a{
291 float: right;
292 color: #519eff
293 }
294 }
295 .contentItem{
296 display: flex;
297 font-size: 14px;
298 width: 100%;
299 line-height: 23px;
300 align-items: center;
301 .key{
302 width: 30%;
303 margin: 5px 3px;
304 text-align: right;
305 }
306 .value{
307 width: 70%;
308 overflow:hidden;
309 text-overflow:ellipsis;
310 white-space:nowrap;
311 word-break:keep-all;
312 }
313 }
314
315 }
316 /deep/ .el-card__body{
317 max-height: 363px;
318 overflow: auto;
319 }
320 }
321 }
79 } 322 }
80 </style> 323 </style>
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -50,7 +50,7 @@ export default { ...@@ -50,7 +50,7 @@ export default {
50 layer = new GraphicsLayer({ 50 layer = new GraphicsLayer({
51 id:"highlightLayer" 51 id:"highlightLayer"
52 }) 52 })
53 view.map.add(layer); 53 view.map.add(layer,5);
54 } 54 }
55 var symbol = graphicSymbol.fillSymbol.highlightSymbol; 55 var symbol = graphicSymbol.fillSymbol.highlightSymbol;
56 var graphic = features[0]; 56 var graphic = features[0];
...@@ -66,6 +66,61 @@ export default { ...@@ -66,6 +66,61 @@ export default {
66 } 66 }
67 }); 67 });
68 }, 68 },
69 69 //将查询结果展示在地图上
70 addSearchResultToMap(searchResult,viewId){
71 var view = maps[viewId],
72 self = this;
73 loadModules([
74 "esri/layers/GraphicsLayer"
75 ]).then(([
76 GraphicsLayer
77 ]) => {
78 if(!searchResult || searchResult.length == 0){
79 return;
80 }
81 for(var i = 0;i < searchResult.length;i++){
82 var layer = view.map.findLayerById("searchResult"+searchResult.layerName);
83 if(layer){
84 layer.removeAll();
85 }else{
86 layer = new GraphicsLayer({
87 id:"searchResult"+searchResult.layerName
88 })
89 view.map.add(layer);
90 }
91 var symbol = graphicSymbol.fillSymbol.highlightSymbol;
92 var features = searchResult[i].features;
93 for(var j = 0;j < features.length;j++){
94 features[j].symbol = symbol;
95 layer.add(features[j]);
96 }
97 }
98 }).catch(err=>{
99 console.log(err);
100 })
101 },
102 //缩放至当前对象
103 extentToGraphic(feature,highlightGraohic,viewId,callBackFunction){
104 var symbol = graphicSymbol.fillSymbol.highlightSymbol;
105 var highlightSymbol = graphicSymbol.fillSymbol.defaultSymbol;
106 if(highlightGraohic){
107 highlightGraohic.symbol = symbol;
108 }
109 feature.symbol = highlightSymbol;
110 var view = maps[viewId];
111 view.center = feature.geometry.type == 'point' ? feature.geometry : feature.geometry.extent.center;
112 if(callBackFunction && typeof callBackFunction == 'function'){
113 callBackFunction();
114 }
115 },
116 clearSearchLayer(viewId){
117 var view = maps[viewId],
118 layers = view.map.allLayers;
119 layers.filter(function (item) {
120 if(item.id.indexOf("searchResult") != -1){
121 item.removeAll();
122 }
123 });
124 }
70 } 125 }
71 } 126 }
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -29,7 +29,11 @@ export default { ...@@ -29,7 +29,11 @@ export default {
29 mixins:[draw,identifyUtils,measure], 29 mixins:[draw,identifyUtils,measure],
30 data(){ 30 data(){
31 return{ 31 return{
32 url:"" 32 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",
33 selectResLayerId:"",
34 features:[],
35 resultLayers:[],
36 results:[]
33 } 37 }
34 }, 38 },
35 methods:{ 39 methods:{
...@@ -51,11 +55,16 @@ export default { ...@@ -51,11 +55,16 @@ export default {
51 var view = maps[this.viewId]; 55 var view = maps[this.viewId];
52 var self = this; 56 var self = this;
53 this.initDraw("point",this.viewId,null,function(geo){ 57 this.initDraw("point",this.viewId,null,function(geo){
54 self.identify(self.url,[],geo,function(result){ 58 self.identify(self.url,[8,10],geo,function(res){
55 debugger 59 var resultes = res.results;
56 }); 60 if(resultes && resultes.length > 0){
61 self.$parent.delIdentifyData(resultes);
62 self.$parent.dialogVisible = true;
63 }
64 },true,'all',3,view.extent);
57 }); 65 });
58 }, 66 },
67
59 zoomOut(){ 68 zoomOut(){
60 var view = maps[this.viewId]; 69 var view = maps[this.viewId];
61 this.initDraw("rectangle",this.viewId,null,function(geo){ 70 this.initDraw("rectangle",this.viewId,null,function(geo){
......
...@@ -33,7 +33,10 @@ ...@@ -33,7 +33,10 @@
33 <td class="lx">{{item.filepostfix}}</td> 33 <td class="lx">{{item.filepostfix}}</td>
34 <td class="cz"> 34 <td class="cz">
35 <span @click="downloadFile(item.fileurl)">下载</span> 35 <span @click="downloadFile(item.fileurl)">下载</span>
36 <span>/</span>
36 <span @click="loadFile(item.fileurl)">预览</span> 37 <span @click="loadFile(item.fileurl)">预览</span>
38 <span>/</span>
39 <span @click="deleteFile(item.bsm)">删除</span>
37 </td> 40 </td>
38 </tr> 41 </tr>
39 </table> 42 </table>
...@@ -41,7 +44,7 @@ ...@@ -41,7 +44,7 @@
41 </template> 44 </template>
42 45
43 <script> 46 <script>
44 import {insertFile, getFileLis, downloadFile,loadFile} from "./../../../api/common" 47 import {insertFile, getFileLis, downloadFile,loadFile,deleteFile} from "./../../../api/common"
45 import {Message} from "element-ui" 48 import {Message} from "element-ui"
46 49
47 export default { 50 export default {
...@@ -69,21 +72,29 @@ ...@@ -69,21 +72,29 @@
69 } 72 }
70 }, 73 },
71 mounted() { 74 mounted() {
72 switch (this.$route.name) { 75 this.getFileList()
73 case "宗地":
74 this.filesData.dylx = 'zd';
75 this.filesData.glbsm = this.$store.state.zdbsm
76 break;
77 case "自然幢":
78 this.filesData.dylx = 'zrz';
79 this.filesData.glbsm = this.$store.state.zrzbsm
80 break
81 default:
82 break
83 }
84 this.getFileList(this.filesData.glbsm)
85 }, 76 },
86 methods: { 77 methods: {
78 deleteFile(bsm){
79 this.$confirm('将删除该文件, 是否继续?', '提示', {
80 confirmButtonText: '确定',
81 cancelButtonText: '取消',
82 type: 'warning'
83 }).then(() => {
84 deleteFile(bsm).then(res=>{
85 if (res.success) {
86 this.getFileList();
87 }else {
88 this.$message.error("删除失败")
89 }
90 })
91 }).catch(() => {
92 this.$message({
93 type: 'info',
94 message: '已取消'
95 });
96 });
97 },
87 loadFile(url){ 98 loadFile(url){
88 loadFile(url).then(res=>{ 99 loadFile(url).then(res=>{
89 if (res.success) { 100 if (res.success) {
...@@ -94,8 +105,20 @@ ...@@ -94,8 +105,20 @@
94 downloadFile(url) { 105 downloadFile(url) {
95 window.open(`/api/file/download?url=`+url); 106 window.open(`/api/file/download?url=`+url);
96 }, 107 },
97 getFileList(bsm) { 108 getFileList() {
98 getFileLis(bsm).then(res => { 109 switch (this.$route.name) {
110 case "宗地":
111 this.filesData.dylx = 'zd';
112 this.filesData.glbsm = this.$store.state.zdbsm
113 break;
114 case "自然幢":
115 this.filesData.dylx = 'zrz';
116 this.filesData.glbsm = this.$store.state.zrzbsm
117 break
118 default:
119 break
120 }
121 getFileLis(this.filesData.glbsm ).then(res => {
99 if (res.success) { 122 if (res.success) {
100 this.list = res.result; 123 this.list = res.result;
101 } else { 124 } else {
......
...@@ -349,6 +349,7 @@ ...@@ -349,6 +349,7 @@
349 <script> 349 <script>
350 import Qlr from "../../../components/formMenu/qlr"; 350 import Qlr from "../../../components/formMenu/qlr";
351 import Qlxz from "../../../components/formMenu/qlxz"; 351 import Qlxz from "../../../components/formMenu/qlxz";
352 import geoUtils from "@components/lineTree/tx/js/geoUtils";
352 import { 353 import {
353 getAllList, 354 getAllList,
354 getDdicByMC, 355 getDdicByMC,
...@@ -410,8 +411,54 @@ export default { ...@@ -410,8 +411,54 @@ export default {
410 formData: {}, 411 formData: {},
411 dpdm:'', //宗地底盘代码 412 dpdm:'', //宗地底盘代码
412 curZdbsm:'', 413 curZdbsm:'',
414 geoAttributes:{
415 OBJECTID:"",
416 BSM:"",
417 YSDM:"",
418 ZDDM:"",
419 BDCDYH:"",
420 ZDTZM :"",
421 ZL:"",
422 ZDMJ:0,
423 MJDW:"",
424 YT:"",
425 DJ:"",
426 JG:0,
427 QLLX:"",
428 QLXZ:"",
429 QLSDFS:"",
430 RJL:0,
431 JZMD:0,
432 JZXG:0,
433 ZDSZD:"",
434 ZDSZN :"",
435 ZDSZX :"",
436 ZDSZB :"",
437 TFH:"",
438 DJH:"",
439 DAH:"",
440 BZ :"",
441 ZT:"",
442 YWZT:"",
443 BLID:"",
444 XMMC:"",
445 XMID:"",
446 BGRQ:"",
447 BGID:"",
448 BGZT:"",
449 TDZH:"",
450 QSZT:0,
451 BBLX:0,
452 SFDB:0,
453 QLR :"",
454 CUTID:"",
455 BHQKID:"",
456 DJZQDM :"",
457 SYQLXID:"",
458 }
413 }; 459 };
414 }, 460 },
461 mixins:[geoUtils],
415 created() { 462 created() {
416 this.curZdbsm = this.$route.query.bsm; 463 this.curZdbsm = this.$route.query.bsm;
417 }, 464 },
...@@ -612,6 +659,26 @@ export default { ...@@ -612,6 +659,26 @@ export default {
612 } 659 }
613 }) 660 })
614 .catch((error) => {}); 661 .catch((error) => {});
662 //保存到空间库里面
663 var self = this;
664 for(var key in this.geoAttributes){
665 if(key == "BSM"){
666 self.geoAttributes[key] = this.$store.state.zdbsm
667 }else if(key == 'QLSDFS'){
668 var qlsdfsList = self.$store.state.qlsdfsList,value = self.formData.qlsdfs;
669 var qlsdfs = qlsdfsList.filter(item => {
670 return item.bsm == value;
671 })
672 self.geoAttributes[key] = qlsdfs[0] ? qlsdfs[0].mc:"";
673 }else {
674 var formKay = key.toLowerCase();
675 self.geoAttributes[key] = self.formData[formKay];
676 }
677 }
678 self.updAttributes(this.$store.state.zdbsm,'zd',this.geoAttributes,function (res) {
679 console.log("属性保存完成!!");
680 });
681
615 } 682 }
616 683
617 684
......
...@@ -353,6 +353,45 @@ ...@@ -353,6 +353,45 @@
353 fwjgTitleRowspan:1, //房屋结构的单元格垂直合并数量 353 fwjgTitleRowspan:1, //房屋结构的单元格垂直合并数量
354 loading:false, 354 loading:false,
355 source:'', 355 source:'',
356 geoAttributes:{
357 OBJECTID:null,
358 YSDM:"",
359 BDCDYH:"",
360 ZDDM:"",
361 ZRZH:"",
362 XMMC:"",
363 JZWMC:"",
364 JGRQ:"",
365 JZWGD:"",
366 ZZDMJ:0,
367 ZYDMJ:0,
368 YCJZMJ:0,
369 SCJZMJ:0,
370 ZCS:0,
371 DSCS:0,
372 DXCS:0,
373 DXSD:0,
374 GHYT:"",
375 FWJG:"",
376 ZTS:0,
377 JZWJBYT:"",
378 DAH:"",
379 BZ:"",
380 ZT:"",
381 YWZT:"",
382 BLID:"",
383 XMID:"",
384 BGZT:"",
385 BGRQ:"",
386 BGID:"",
387 BBLX:"",
388 QSZT:"",
389 CUTID :"",
390 BHQKID:"",
391 DJZQDM:"",
392 ZDTZM:"",
393 BSM:"",
394 }
356 } 395 }
357 }, 396 },
358 methods: { 397 methods: {
...@@ -421,6 +460,20 @@ ...@@ -421,6 +460,20 @@
421 }) 460 })
422 this.loading=false; 461 this.loading=false;
423 } 462 }
463
464 //保存到空间库里面
465 var self = this;
466 for(var key in this.geoAttributes){
467 if(key == "BSM"){
468 self.geoAttributes[key] = this.bsm
469 }else{
470 var formKay = key.toLowerCase();
471 self.geoAttributes[key] = self.formData[formKay];
472 }
473 }
474 self.updAttributes(this.bsm,'zrz',this.geoAttributes,function (res) {
475 console.log("属性保存完成!!");
476 });
424 } 477 }
425 478
426 }, 479 },
......