Browse Source

滨江一本账控规地图图层优化

songxy 1 year ago
parent
commit
e627bd0a97

+ 1 - 0
BJYSYBZ_C/public/config.js

@@ -171,6 +171,7 @@ window.ApplicationConfig = {
               params: {
               params: {
                 layers: "show:0,1"
                 layers: "show:0,1"
               },
               },
+              opacity: 0.5,
               url: "https://ditu.hangzhoumap.gov.cn:6443/arcgis/rest/services/KGDK_CESHI/MapServer",
               url: "https://ditu.hangzhoumap.gov.cn:6443/arcgis/rest/services/KGDK_CESHI/MapServer",
             },
             },
             {
             {

+ 0 - 1
BJYSYBZ_C/src/assets/openlayer/components/IdentifyTool/IdentifyTool.vue

@@ -43,7 +43,6 @@
 </template>
 </template>
 
 
 <script>
 <script>
-import img from '../../../images/map/identify.png'
 import {Circle} from 'ol/geom'
 import {Circle} from 'ol/geom'
 import EsriJson from 'ol/format/EsriJSON'
 import EsriJson from 'ol/format/EsriJSON'
 
 

+ 84 - 0
BJYSYBZ_C/src/utils/arcgis-map-server-identify.js

@@ -0,0 +1,84 @@
+import axios from 'axios'
+// eslint-disable-next-line no-unused-vars
+import { AxiosResponse } from 'axios'
+// eslint-disable-next-line no-unused-vars
+import { Feature } from 'ol'
+import { EsriJSON } from 'ol/format'
+
+/**
+ * https://developers.arcgis.com/rest/services-reference/enterprise/query-image-service-.htm
+ * @typedef RequestParameters
+ * @type {object}
+ */
+
+/**
+ * @typedef {Object} ResponseS
+ * @property {string} displayFieldName
+ * @property {Array<({attributes:Object,geometry:{rings:Array}}|Feature)>} features
+ * @property {Object} fieldAliases
+ * @property {Array<Object>} fields
+ */
+
+/**
+ * @param {String} url
+ * @param {Object} [param]
+ * @param {string} [param.where='1=1']
+ * @param {string} [param.text]
+ * @param {string} [param.objectIds]
+ * @param {string} [param.time]
+ * @param {string} [param.geometry]
+ * @param {string} [param.geometryType='esriGeometryEnvelope']
+ * @param {string} [param.inSR]
+ * @param {string} [param.spatialRel='esriSpatialRelIntersects']
+ * @param {string} [param.relationParam]
+ * @param {string} [param.outFields]
+ * @param {boolean} [param.returnGeometry=true]
+ * @param {boolean} [param.returnTrueCurves=false]
+ * @param {string} [param.maxAllowableOffset]
+ * @param {string} [param.geometryPrecision]
+ * @param {string} [param.outSR='4326']
+ * @param {boolean} [param.returnIdsOnly=false]
+ * @param {boolean} [param.returnCountOnly=false]
+ * @param {string} [param.orderByFields]
+ * @param {string} [param.groupByFieldsForStatistics]
+ * @param {string} [param.outStatistics]
+ * @param {boolean} [param.returnZ=false]
+ * @param {boolean} [param.returnM=false]
+ * @param {string} [param.gdbVersion]
+ * @param {boolean} [param.returnDistinctValues=false]
+ * @param {string} [param.resultOffset]
+ * @param {string} [param.resultRecordCount]
+ * @param {string} [param.f='pjson']
+ * @param {boolean} [toFeature=false]
+ * @returns {Promise<ResponseS>}
+ */
+export function arcgisIdentify (url, param, toFeature = false) {
+  const _default = {
+    geometry: '',
+    geometryType: 'esriGeometryEnvelope',
+    sr: 4326,
+    layers: 'visible',
+    tolerance: 3,
+    returnGeometry: true,
+    maxAllowableOffset: '',
+    geometryPrecision: '',
+    f: 'json'
+  }
+
+  Object.assign(_default, param)
+  const data = new FormData()
+  for (const key in _default) {
+    data.set(key, _default[key])
+  }
+  return axios.get(url, {params : data}).then(({ data: resp }) => {
+    if (resp.error) {
+      const { details, message } = resp.error
+      // return Promise.reject(new Error([message, ...details].join(';') || 'Error'))
+      return Promise.reject([message, ...details].join(';') || 'Error')
+    }
+    if (toFeature) {
+      resp.features = new EsriJSON().readFeatures(resp)
+    }
+    return resp
+  })
+}

+ 2 - 2
BJYSYBZ_C/src/views/YbzBjView/components/BzybzMap.vue

@@ -33,14 +33,14 @@
       导出
       导出
     </el-button> -->
     </el-button> -->
 
 
-    <el-select class="yearSelect" v-model="year" placeholder="请选择"  @change="yearChange">
+    <!-- <el-select class="yearSelect" v-model="year" placeholder="请选择"  @change="yearChange">
       <template #prefix>
       <template #prefix>
         <img src="@/assets/images/map/calendar.png" class="prefix-icon">
         <img src="@/assets/images/map/calendar.png" class="prefix-icon">
       </template>
       </template>
       <el-option value="2021"></el-option>
       <el-option value="2021"></el-option>
       <el-option value="2022"></el-option>
       <el-option value="2022"></el-option>
       <el-option value="2023"></el-option>
       <el-option value="2023"></el-option>
-    </el-select>
+    </el-select> -->
 
 
     <!-- <el-select class="yearSelect" style="left:18.5rem;" v-model="jd" placeholder="请选择">
     <!-- <el-select class="yearSelect" style="left:18.5rem;" v-model="jd" placeholder="请选择">
       <el-option value="全年"></el-option>
       <el-option value="全年"></el-option>

+ 7 - 3
BJYSYBZ_C/src/views/YbzBjView/components/OneContent.vue

@@ -4,7 +4,7 @@
       <div class="main-box">
       <div class="main-box">
         <card-item2
         <card-item2
             :hover="true"
             :hover="true"
-            :is_selected="moreLayers.some(it => it === 'bj-stbhhx')"
+            :is_selected="moreLayers.some(it => it === 'bj-kzxxxgh')"
             unit=""
             unit=""
             :icon="require('@/assets/images/YsybzView/gymj.png')"
             :icon="require('@/assets/images/YsybzView/gymj.png')"
             title="控制性详细规划"
             title="控制性详细规划"
@@ -121,6 +121,8 @@ import CardItem2 from "@/views/YsbzDetail/components/common/CardItem2";
 import TitleCard6 from "@/views/components/TitleCard6.vue";
 import TitleCard6 from "@/views/components/TitleCard6.vue";
 import TitleCard5 from "@/views/components/TitleCard5.vue";
 import TitleCard5 from "@/views/components/TitleCard5.vue";
 import TitleCard7 from "@/views/components/TitleCard7.vue";
 import TitleCard7 from "@/views/components/TitleCard7.vue";
+
+const _moreLayers = ["bj-czkfbj", 'bj-kfbjw', 'bj-stbhhx', "hzyx-202311"]
 export default {
 export default {
   name: "OneContent",
   name: "OneContent",
   components: {CartItem,TitleCard6,TitleCard5,TitleCard7,CardItem2},
   components: {CartItem,TitleCard6,TitleCard5,TitleCard7,CardItem2},
@@ -277,9 +279,11 @@ export default {
           break;
           break;
         case 'bj-kzxxxgh':
         case 'bj-kzxxxgh':
           if (this.moreLayers.includes('bj-kzxxxgh')) {
           if (this.moreLayers.includes('bj-kzxxxgh')) {
-            this.moreLayers.splice(this.moreLayers.indexOf('bj-kzxxxgh'), 1)
+            this.moreLayers = [].concat(_moreLayers);
+            // this.moreLayers.splice(this.moreLayers.indexOf('bj-kzxxxgh'), 1)
           } else {
           } else {
-            this.moreLayers.unshift("bj-kzxxxgh")
+            this.moreLayers = ['bj-kzxxxgh']
+            // this.moreLayers.unshift("bj-kzxxxgh")
           }
           }
           this.$vm.$emit("showMoreLayer", this.moreLayers);
           this.$vm.$emit("showMoreLayer", this.moreLayers);
           break;
           break;

+ 6 - 6
BJYSYBZ_C/src/views/YbzBjView/components/RightContent.vue

@@ -6,37 +6,37 @@
         <div class="item" :class="{selected:currentActive=='czhl'}">
         <div class="item" :class="{selected:currentActive=='czhl'}">
           <div class="item-top">GDP</div>
           <div class="item-top">GDP</div>
           <div class="item-bottom">
           <div class="item-bottom">
-            <span>{{ 2184.8 }}</span>亿
+            <span>{{ 2467.9 }}</span>亿
           </div>
           </div>
         </div>
         </div>
         <div class="item" :class="{selected:currentActive=='gdpzs'}">
         <div class="item" :class="{selected:currentActive=='gdpzs'}">
           <div class="item-top">GDP增速</div>
           <div class="item-top">GDP增速</div>
           <div class="item-bottom">
           <div class="item-bottom">
-            <span>{{ 1.8 }}</span>%
+            <span>{{ 8.0 }}</span>%
           </div>
           </div>
         </div>
         </div>
         <div class="item" :class="{selected:currentActive=='gdzctzzs'}">
         <div class="item" :class="{selected:currentActive=='gdzctzzs'}">
           <div class="item-top">固定资产投资增速</div>
           <div class="item-top">固定资产投资增速</div>
           <div class="item-bottom">
           <div class="item-bottom">
-            <span>{{ 16.4 }}</span>%
+            <span>{{ 5 }}</span>%
           </div>
           </div>
         </div>
         </div>
         <div class="item" :class="{selected:currentActive=='gmysgyzjzzs'}">
         <div class="item" :class="{selected:currentActive=='gmysgyzjzzs'}">
           <div class="item-top">规上工业增加值增速</div>
           <div class="item-top">规上工业增加值增速</div>
           <div class="item-bottom">
           <div class="item-bottom">
-            <span>{{ 4.4 }}</span>%
+            <span>{{ 7 }}</span>%
           </div>
           </div>
         </div>
         </div>
         <div class="item" :class="{selected:currentActive=='zzyzz'}">
         <div class="item" :class="{selected:currentActive=='zzyzz'}">
           <div class="item-top">制造业投资增长</div>
           <div class="item-top">制造业投资增长</div>
           <div class="item-bottom">
           <div class="item-bottom">
-            <span>{{17}}</span>%
+            <span>{{7.4}}</span>%
           </div>
           </div>
         </div>
         </div>
         <div class="item" :class="{selected:currentActive=='gxjscy'}">
         <div class="item" :class="{selected:currentActive=='gxjscy'}">
           <div class="item-top">高新技术产业投资增长</div>
           <div class="item-top">高新技术产业投资增长</div>
           <div class="item-bottom">
           <div class="item-bottom">
-            <span>{{ 1.8 }}</span>%
+            <span>{{ 17.6 }}</span>%
           </div>
           </div>
         </div>
         </div>
       </div>
       </div>

+ 8 - 1
BJYSYBZ_C/src/views/components/BJOpenModalComp/comps/Base.vue

@@ -121,6 +121,7 @@ export default {
       layerIds: ['bj-gyyd-new', 'bj-zzyd-new', 'syyd', 'nyd', 'wlyd'],
       layerIds: ['bj-gyyd-new', 'bj-zzyd-new', 'syyd', 'nyd', 'wlyd'],
       layerIdsyh: ['gyydyh', 'zzydyh', 'syydyh', 'qtjsydyh', 'nydyh', 'wlydyh'],
       layerIdsyh: ['gyydyh', 'zzydyh', 'syydyh', 'qtjsydyh', 'nydyh', 'wlydyh'],
       currentKfqmc:'',
       currentKfqmc:'',
+      xzqVal: '330108',
       ssMapping: {
       ssMapping: {
         "2022": {
         "2022": {
           ss: 0,
           ss: 0,
@@ -139,7 +140,8 @@ export default {
   },
   },
   created() {
   created() {
   },
   },
-  mounted() {
+  mounted () {
+    this.changeXzq()
     this.currentKfqmc = this.obj.KFQMC ||this.obj.kfqmc
     this.currentKfqmc = this.obj.KFQMC ||this.obj.kfqmc
     if (this.currentKfqmc == '杭州国家高新技术产业开发区管委会(滨江区)') {
     if (this.currentKfqmc == '杭州国家高新技术产业开发区管委会(滨江区)') {
       this.init()
       this.init()
@@ -198,6 +200,11 @@ export default {
     init3() {
     init3() {
       this.initKfqYQData()
       this.initKfqYQData()
     },
     },
+    changeXzq () {
+      this.$nextTick(() => {
+        this.$vm.$emit("location-mask-self-where", { layerId: 'xzqh-x-search', where: `xzqdm = '${this.xzqVal}'` });
+      })
+    },
     initLandInfoData() {
     initLandInfoData() {
       const urlApi = `/api/kfq/getLandInfoData`;
       const urlApi = `/api/kfq/getLandInfoData`;
       let params = new FormData()
       let params = new FormData()

+ 8 - 2
BJYSYBZ_C/src/views/components/BJTownOpenModalComp/comps/Map.vue

@@ -168,7 +168,8 @@ export default {
         }
         }
       ],
       ],
       singleConfigShow:false,
       singleConfigShow:false,
-      selectHy:'',
+      selectHy: '',
+      xzqVal: '330108'
 
 
     }
     }
   },
   },
@@ -179,7 +180,7 @@ export default {
     })
     })
   },
   },
   mounted() {
   mounted() {
-
+    this.changeXzq();
     this.$vm.$on("getBaseData",(payload)=>{
     this.$vm.$on("getBaseData",(payload)=>{
       this.baseData=payload
       this.baseData=payload
     })
     })
@@ -263,6 +264,11 @@ export default {
       this.$vm.$emit('getBaseCalRes', {})
       this.$vm.$emit('getBaseCalRes', {})
     },
     },
 
 
+    changeXzq () {
+      this.$nextTick(() => {
+        this.$vm.$emit("location-mask-self-where", { layerId: 'xzqh-x-search', where: `xzqdm = '${this.xzqVal}'` });
+      })
+    },
     showZxRes(){
     showZxRes(){
 
 
       const loading = this.$loading({
       const loading = this.$loading({

+ 4 - 3
BJYSYBZ_C/src/views/components/BigScreenMap/index.vue

@@ -265,8 +265,7 @@
           <div class="content" v-if="detailType == 25">
           <div class="content" v-if="detailType == 25">
             <h2>{{ props["name"] }}</h2>
             <h2>{{ props["name"] }}</h2>
             <p>
             <p>
-              面积:{{ (props["sde.sde.特色小镇.area"] * 100 * 15).toFixed(1) }}
-              亩
+              面积:{{ (props["fscxydmj"] * 15).toFixed(1) }}亩
             </p>
             </p>
           </div>
           </div>
           <div class="content" v-if="detailType == 26">
           <div class="content" v-if="detailType == 26">
@@ -382,6 +381,8 @@ import {
 import VlLegend from "@/components/ol/VlLegend";
 import VlLegend from "@/components/ol/VlLegend";
 import VlImglayers from "@/components/ol/VLImgLayers";
 import VlImglayers from "@/components/ol/VLImgLayers";
 import { arcgisQuery } from "@/utils/arcgis-map-server-query";
 import { arcgisQuery } from "@/utils/arcgis-map-server-query";
+import { arcgisIdentify } from "@/utils/arcgis-map-server-identify";
+
 import { GeoServerQuery } from '@/utils/geo-map-server-query'
 import { GeoServerQuery } from '@/utils/geo-map-server-query'
 import VlMapDevInfo from "@/components/ol/VlMapDevInfo";
 import VlMapDevInfo from "@/components/ol/VlMapDevInfo";
 import VlChinaCities from "@/components/ol/VlChinaCities";
 import VlChinaCities from "@/components/ol/VlChinaCities";
@@ -1801,7 +1802,7 @@ export default {
             }
             }
           })
           })
         }
         }
-        arcgisQuery(
+                arcgisQuery(
           `${layerConfig.url}/${this.layerIndex}/query`,
           `${layerConfig.url}/${this.layerIndex}/query`,
           param,
           param,
           true
           true

+ 2 - 2
BJYSYBZ_C/src/views/components/FourContent.vue

@@ -41,12 +41,12 @@
         type="year"
         type="year"
         placeholder="选择年">
         placeholder="选择年">
       </el-date-picker> -->
       </el-date-picker> -->
-      <el-select class="yearSelect" v-model="year" placeholder="请选择">
+      <!-- <el-select class="yearSelect" v-model="year" placeholder="请选择">
         <template #prefix>
         <template #prefix>
           <img src="@/assets/images/map/calendar.png" class="prefix-icon">
           <img src="@/assets/images/map/calendar.png" class="prefix-icon">
         </template>
         </template>
         <el-option v-if="(item,index) in years" :key="index" :value="item"> </el-option>
         <el-option v-if="(item,index) in years" :key="index" :value="item"> </el-option>
-      </el-select>
+      </el-select> -->
     </div>
     </div>
   </div>
   </div>
 </template>
 </template>