Преглед изворни кода

智能选址前端,支持多数据源

liutao пре 2 месеци
родитељ
комит
0556784f54

+ 211 - 133
web_ui/src/views/industrial-land/AiIndustriaLandDetail.vue

@@ -119,8 +119,17 @@
             >
             </textarea>
             <div class="data_source">
-              <Select v-model="dSource" style="width:100px;text-align: center;" @on-change="dSourceChange">
-                  <Option v-for="item in dataSources" :value="item.value" :key="item.value">{{ item.label }}</Option>
+              <Select
+                v-model="dSource"
+                style="width: 100px; text-align: center"
+                @on-change="dSourceChange"
+              >
+                <Option
+                  v-for="item in dataSources"
+                  :value="item.value"
+                  :key="item.value"
+                  >{{ item.label }}</Option
+                >
               </Select>
             </div>
             <AIBtn @send="hotQuestionReset()" />
@@ -187,15 +196,21 @@
                   >
                     <div class="dk_title">
                       <div>
-                        <span>{{ i+1 }}</span>
-                        <span>{{ citem.ydxz }}</span>
+                        <span>{{ i + 1 }}</span>
+                        <span>{{ citem.name }}</span>
                       </div>
                       <div @click="toggleContentVisabled(citem)">
                         <template v-if="citem['show']">
-                          <span class="arrowIcon arrow_up" type="ios-arrow-up" />
+                          <span
+                            class="arrowIcon arrow_up"
+                            type="ios-arrow-up"
+                          />
                         </template>
                         <template v-else>
-                          <span class="arrowIcon arrow_down" type="ios-arrow-down" />
+                          <span
+                            class="arrowIcon arrow_down"
+                            type="ios-arrow-down"
+                          />
                         </template>
                       </div>
                     </div>
@@ -204,11 +219,19 @@
                       <div>
                         <p>
                           <span>地块信息:</span>
-                          <span>该地块为{{citem.ydxz}}(M1),面积36.45亩。</span>
+                          <span
+                            >该地块为{{ citem.tdyt }},面积{{
+                              citem.dkmj
+                            }}亩。</span
+                          >
                         </p>
                         <p>
                           <span>位置周边:</span>
-                          <span>该地块位于工业区内,距离机场(萧山国际机场) 4.4km,距高速出入口(萧山南)1.5km,距高铁站(杭州南) 2.8km。</span>
+                          <span
+                            >该地块位于工业区内,距离机场(萧山国际机场)
+                            4.4km,距高速出入口(萧山南)1.5km,距高铁站(杭州南)
+                            2.8km。</span
+                          >
                         </p>
                       </div>
                     </div>
@@ -254,8 +277,17 @@
             >
             </textarea>
             <div class="data_source">
-              <Select v-model="dSource" style="width:100px;text-align: center;" @on-change="dSourceChange">
-                  <Option v-for="item in dataSources" :value="item.value" :key="item.value">{{ item.label }}</Option>
+              <Select
+                v-model="dSource"
+                style="width: 100px; text-align: center"
+                @on-change="dSourceChange"
+              >
+                <Option
+                  v-for="item in dataSources"
+                  :value="item.value"
+                  :key="item.value"
+                  >{{ item.label }}</Option
+                >
               </Select>
             </div>
             <AIBtn @send="zwsend" :disabled="btnSendDisabled" />
@@ -357,18 +389,20 @@ export default {
         left: 0,
         top: 0,
       },
-      dSource: '1',
+      dSource: "1",
       dataSources: [
         {
-          label: '控详规',
-          value: '1'
-        },{
-          label: '公告地块',
-          value: '2'
-        },{
-          label: '土地储备',
-          value: '3'
-        }
+          label: "控详规",
+          value: "1",
+        },
+        {
+          label: "公告地块",
+          value: "2",
+        },
+        {
+          label: "土地储备",
+          value: "3",
+        },
       ],
       hzData: [],
       showQuery: false,
@@ -476,63 +510,29 @@ export default {
       // this.showQuery = true;
       // this.xgdk = [
       //   {
-      //     objectid: 18249,
-      //     xzqmc: "萧山区",
-      //     xzqdm: 330109,
-      //     dymc: "",
-      //     yddm: "M1",
-      //     ydxz: "一类工业用地",
-      //     ydmj: 4.11,
-      //     rjlsx: 3,
-      //     rjlxx: 1,
-      //     jzmdsx: 1,
-      //     jzmdxx: 1,
-      //     jzgdsx: 1,
-      //     jzgdxx: 1,
-      //     ldlsx: 1,
-      //     ldlxx: 1,
-      //     center_wkt: "POINT(120.532207502681 30.1664883620282)",
-      //     geom: "POLYGON((120.530131556 30.168314732,120.530525256 30.168215047,120.530878871 30.168123523,120.531632501 30.16792846,120.531631828 30.167926322,120.531631117 30.167924192,120.531630373 30.167922072,120.531629593 30.16791996,120.531544007 30.167693986,120.531364964 30.167155818,120.531320061 30.167020849,120.530246946 30.167281865,120.530103254 30.166849934,120.529762626 30.165826014,120.52896681 30.166024878,120.528937662 30.166031967,120.528908402 30.166038698,120.528879035 30.166045068,120.528849567 30.166051076,120.528820004 30.166056722,120.528833696 30.166089628,120.52889148 30.166213522,120.528920385 30.166204896,120.528934816 30.166238378,120.529183192 30.166165913,120.529253176 30.1663749,120.529253546 30.16637481,120.529253601 30.166374968,120.52926568 30.166371977,120.529271071 30.166384946,120.529000619 30.166485071,120.5290278 30.166544188,120.529126001 30.16671611,120.529200817 30.166846306,120.529267328 30.166968542,120.529310181 30.167048353,120.529381231 30.167243535,120.529403943 30.167305507,120.529514176 30.167606297,120.529609137 30.16787516,120.529736109 30.168180701,120.529812571 30.168370639,120.529820607 30.168391677,120.530131556 30.168314732))",
+      //     objectid: 1839,
       //   },
       //   {
-      //     objectid: 2091,
-      //     xzqmc: "萧山区",
-      //     xzqdm: 330109,
-      //     dymc: "",
-      //     yddm: "M1",
-      //     ydxz: "一类工业用地",
-      //     ydmj: 4.01,
-      //     rjlsx: 3,
-      //     rjlxx: 1,
-      //     jzmdsx: 1,
-      //     jzmdxx: 1,
-      //     jzgdsx: 1,
-      //     jzgdxx: 1,
-      //     ldlsx: 1,
-      //     ldlxx: 1,
-      //     center_wkt: "POINT(120.527286218151 30.1681019850924)",
-      //     geom: "POLYGON((120.537755625 30.180120155,120.538096026 30.180016897,120.538130112 30.180101238,120.53840443 30.180038604,120.538635688 30.179985801,120.538690742 30.179973231,120.538668558 30.179921898,120.538503023 30.179568443,120.538319597 30.179176783,120.538294432 30.179132302,120.538240693 30.179138349,120.537922455 30.179225031,120.537918655 30.17921591,120.537917661 30.179213054,120.537557113 30.178312381,120.537309966 30.177721942,120.536887458 30.177806658,120.536126249 30.178008438,120.53612485 30.178011462,120.536106701 30.178054671,120.53611147 30.178067168,120.536192522 30.178279549,120.536845675 30.179858098,120.536847251 30.179861474,120.537580483 30.179665201,120.537724753 30.180063279,120.537726707 30.18006447,120.537726917 30.180065118,120.537735187 30.180062925,120.537755625 30.180120155))",
+      //     objectid: 1843,
       //   },
       //   {
-      //     objectid: 1924,
-      //     xzqmc: "萧山区",
-      //     xzqdm: 330109,
-      //     dymc: "物流产业单元",
-      //     yddm: "M1",
-      //     ydxz: "一类兼容二类工业用地",
-      //     ydmj: 3.95,
-      //     rjlsx: 3,
-      //     rjlxx: 1,
-      //     jzmdsx: 1,
-      //     jzmdxx: 1,
-      //     jzgdsx: 1,
-      //     jzgdxx: 1,
-      //     ldlsx: 1,
-      //     ldlxx: 1,
-      //     center_wkt: "POINT(120.485180194156 30.2474354153549)",
-      //     geom: "POLYGON((120.502129268 30.168593076,120.501546244 30.167333288,120.501537309 30.167317156,120.501526002 30.167302191,120.500703524 30.167926949,120.499290933 30.168947797,120.499089718 30.169139869,120.499102336 30.169156599,120.499478655 30.169583076,120.499495744 30.169599471,120.499515679 30.169613228,120.499537927 30.169623978,120.499561893 30.169631437,120.499586937 30.169635401,120.499612391 30.169635768,120.499637573 30.169632527,120.49966181 30.169625764,120.500722401 30.169244194,120.502044364 30.168768574,120.502068293 30.168757769,120.502089718 30.168743538,120.502107997 30.168726308,120.50212258 30.168706597,120.50213303 30.168684996,120.502139035 30.168662151,120.502140414 30.16863875,120.502137126 30.168615492,120.502129268 30.168593076))",
+      //     objectid: 1845,
       //   },
       // ];
+      // // this.xgdk = [
+      // //   {
+      // //     id: 7685,
+      // //   },
+      // //   {
+      // //     id: 37091,
+      // //   },
+      // //   {
+      // //     id: 40175,
+      // //   },
+      // // ];
+      // this.getDetailByIdList(this.xgdk, (data) => {
+      //   this.xgdk = data;
+      // });
       // this.addGdLayer(this.xgdk);
       // this.detailData = {
       //   id: 48668,
@@ -558,20 +558,20 @@ export default {
   },
 
   methods: {
-    dSourceChange () {
-      if (this.dSource === '3') {
-          this.$Message.error("暂无数据,请选择其他源!");
+    dSourceChange() {
+      if (this.dSource === "3") {
+        this.$Message.error("暂无数据,请选择其他源!");
       }
     },
-    toggleContentVisabledAll () {
+    toggleContentVisabledAll() {
       this.mContentVisabled = !this.mContentVisabled;
       this.xgdk.forEach((item) => {
-        item['show'] = this.mContentVisabled
-      })
+        item["show"] = this.mContentVisabled;
+      });
     },
-    toggleContentVisabled (item) {
-      item['show'] = item['show'] ? false : true
-      this.mContentVisabled = item['show']
+    toggleContentVisabled(item) {
+      item["show"] = item["show"] ? false : true;
+      this.mContentVisabled = item["show"];
     },
     mapExtend() {
       // 18级的地图
@@ -708,6 +708,17 @@ export default {
         // return;
         this.inputText = "帮我在萧山区推荐3宗50-80亩之间的工业用地";
       }
+      if (
+        this.inputText.indexOf("控制性详细规划") == -1 &&
+        this.inputText.indexOf("公告地块") == -1
+      ) {
+        if (this.dSource == "1") {
+          this.inputText += ",数据表是控制性详细规划";
+        } else if (this.dSource == "2") {
+          this.inputText += ",数据表是公告地块";
+        }
+      }
+
       this.hideDetail();
       this.zwinputText = "";
       this.questionModal = false;
@@ -723,7 +734,7 @@ export default {
       this.toggleInfoTab();
       this.toggleTab(0);
     },
-    zwsend () {
+    zwsend() {
       if (!this.zwinputText) {
         this.zwinputText = "帮我在萧山区推荐3宗50-80亩之间的工业用地";
       }
@@ -1044,26 +1055,90 @@ export default {
       if (this.identifyGeojsonLayer) {
         this.map.removeLayer(this.identifyGeojsonLayer);
       }
-
-      let queryGeometryUrl = window.ApplicationConfig.queryGeometryUrl;
       let that = this;
-      axios
-        .get(queryGeometryUrl, { params: { id: item.objectid } })
-        .then((data) => {
-          if (data && data.data && data.data.length) {
-            that.detailData = data.data[0];
-            let geojson = wkt.parse(data.data[0].geom);
-            var geos = L.geoJSON(geojson, {
-              style: function (feature) {
-                return { color: "red", fillOpacity: 0 };
-              },
-            });
-            that.geojsonLayer = geos.addTo(that.map);
-            that.map.fitBounds(geos.getBounds(), { padding: [200, 200] });
-          }
+      let layerName = "kzxxxgh";
+      //控详归
+      if (this.dSource == "2") {
+        //公告地块
+        layerName = "ecgap_klyzy";
+        this.klyzyQuery([item.id], (res) => {
+          that.detailData = res[0];
+          that.detailData.layerName = layerName;
+          let geojson = wkt.parse(res[0].geom);
+          var geos = L.geoJSON(geojson, {
+            style: function (feature) {
+              return { color: "red", fillOpacity: 0 };
+            },
+          });
+          that.geojsonLayer = geos.addTo(that.map);
+          that.map.fitBounds(geos.getBounds(), { padding: [200, 200] });
         });
-
-      // });
+      } else if (this.dSource == "1") {
+        this.kgQuery([item.id], (res) => {
+          that.detailData = res[0];
+          that.detailData.layerName = layerName;
+          let geojson = wkt.parse(res[0].geom);
+          var geos = L.geoJSON(geojson, {
+            style: function (feature) {
+              return { color: "red", fillOpacity: 0 };
+            },
+          });
+          that.geojsonLayer = geos.addTo(that.map);
+          that.map.fitBounds(geos.getBounds(), { padding: [200, 200] });
+        });
+      }
+    },
+    kgQuery(idList, callback) {
+      let idStr = idList.join();
+      let queryGeometryUrl = window.ApplicationConfig.kgQueryUrl;
+      axios.get(queryGeometryUrl, { params: { id: idStr } }).then((data) => {
+        if (data && data.data && data.data.length) {
+          callback(data.data);
+        }
+      });
+    },
+    klyzyQuery(idList, callback) {
+      let idStr = idList.join();
+      let queryGeometryUrl = window.ApplicationConfig.klyzyQueryUrl;
+      axios.get(queryGeometryUrl, { params: { id: idStr } }).then((data) => {
+        if (data && data.data && data.data.length) {
+          callback(data.data);
+        }
+      });
+    },
+    getDetailByIdList(idList, func) {
+      let layerName = null;
+      //公告地块
+      if (this.dSource == "2") {
+        layerName = "ecgap_klyzy";
+        idList = idList.map((ele) => ele.id);
+        this.klyzyQuery(idList, (res) => {
+          let result = res.map((ele) => {
+            return {
+              id: ele.id,
+              name: ele.dkmc,
+              tdyt: ele.tdyt,
+              dkmj: ele.dkmj.toFixed(2),
+            };
+          });
+          func(result);
+        });
+      } else if (this.dSource == "1") {
+        //控制性详细规划
+        layerName = "kzxxxgh";
+        idList = idList.map((ele) => ele.objectid);
+        this.kgQuery(idList, (res) => {
+          let result = res.map((ele) => {
+            return {
+              id: ele.objectid,
+              name: ele.ydxz,
+              tdyt: `${ele.ydxz}(${ele.yddm})`,
+              dkmj: (ele.pfmarea * 0.0015).toFixed(2),
+            };
+          });
+          func(result);
+        });
+      }
     },
     locationByGeojson(geojson, name) {
       if (this.cyyqLayer) {
@@ -1176,7 +1251,7 @@ export default {
       }
     },
     //详情页tab切换地图绘制相关清空
-    toggleInfoTab(type,index) {
+    toggleInfoTab(type, index) {
       console.log(type, index);
       if (this.markerLayer) {
         this.map.removeLayer(this.markerLayer);
@@ -1203,22 +1278,22 @@ export default {
       }
       if (type == "jbxx") {
         //现状分析
-          if(index==1) {
-            this.checkedJbxxLayers(3,4,5)
-          } else if(index==2) {
-            this.checkedJbxxLayers(4,3,5)
-          }else if(index==3) {
-            this.checkedJbxxLayers(5,3,4)
-        }
-       } else if(type=='qyts'){
+        if (index == 1) {
+          this.checkedJbxxLayers(3, 4, 5);
+        } else if (index == 2) {
+          this.checkedJbxxLayers(4, 3, 5);
+        } else if (index == 3) {
+          this.checkedJbxxLayers(5, 3, 4);
+        }
+      } else if (type == "qyts") {
         this.checkedQysLayers(index);
-       } else if(type == 'zhjt'){
+      } else if (type == "zhjt") {
         this.checkedOtherLayers();
-       } else if(type == 'ggss'){
+      } else if (type == "ggss") {
         this.checkedOtherLayers();
-       }
-      },
-    checkedOtherLayers(){
+      }
+    },
+    checkedOtherLayers() {
       this.layers[2].layers.forEach((item) => {
         if (item.checked) {
           item.checked = false;
@@ -1245,8 +1320,8 @@ export default {
       });
     },
     checkedQysLayers(selectIndex) {
-      this.layers[2].layers.forEach((item,index) => {
-        if(index==selectIndex && !item.checked) {
+      this.layers[2].layers.forEach((item, index) => {
+        if (index == selectIndex && !item.checked) {
           item.checked = true;
           this.switchMapLayer(item);
         } else {
@@ -1273,7 +1348,7 @@ export default {
         }
       });
     },
-    checkedJbxxLayers(index1,index2,index3) {
+    checkedJbxxLayers(index1, index2, index3) {
       this.layers[index1].layers.forEach((item) => {
         if (!item.checked) {
           item.checked = true;
@@ -1660,10 +1735,14 @@ export default {
                   exec_res = JSON.parse(exec_res);
                   var dk = exec_res;
                   console.log("dk: ", dk);
-                  T.xgdk = dk;
-                  T.clearMark();
-                  T.showXgdkCenterPoint();
-                  T.addGdLayer(T.xgdk);
+
+                  T.getDetailByIdList(dk, (data) => {
+                    T.clearMark();
+                    T.addGdLayer(data);
+                    T.xgdk = data;
+                    T.showXgdkCenterPoint();
+                  });
+
                   T.answer = e.data;
                   T.toggleContentVisabledAll();
                   // T.burialPoint();
@@ -2444,7 +2523,7 @@ export default {
           display: flex;
           align-content: center;
           justify-content: space-between;
-          >span {
+          > span {
             &:first-child {
               color: #212121;
             }
@@ -2458,7 +2537,7 @@ export default {
               }
               .text {
                 font-size: 14px;
-                color: #777C88;
+                color: #777c88;
               }
             }
           }
@@ -2690,16 +2769,16 @@ export default {
 .dkitem {
   align-items: center;
   padding: 10px;
-  border-bottom: 1px solid #E4E8ED;
+  border-bottom: 1px solid #e4e8ed;
   cursor: pointer;
-  >.dk_title {
+  > .dk_title {
     display: flex;
     align-items: center;
     justify-content: space-between;
     margin-bottom: 8px;
-    >div {
+    > div {
       &:first-child {
-        color: #2553D5;
+        color: #2553d5;
         font-size: 16px;
         font-weight: bold;
         white-space: nowrap;
@@ -2708,27 +2787,26 @@ export default {
         margin-right: 10px;
       }
       &:last-child {
-        color: #777C88;
+        color: #777c88;
         font-size: 20px;
         cursor: pointer;
       }
     }
-  
   }
-  >.content {
+  > .content {
     flex: 1;
     p {
       color: #212121;
       margin-top: 5px;
     }
-    >p {
+    > p {
       font-size: 16px;
       font-weight: bold;
     }
-    >div {
-      >p {
+    > div {
+      > p {
         font-size: 15px;
-        >span:first-child {
+        > span:first-child {
           font-weight: bold;
         }
       }

+ 77 - 12
web_ui/src/views/industrial-land/ZnxzDetail.vue

@@ -118,7 +118,7 @@
                   v-for="(item, index) in qytsTabs[qytsIndex].result"
                   @click="zbcyClick(item, index)"
                   :key="index"
-                  :class="{ 'zbcy-item': true,  active: qytsActive === index}"
+                  :class="{ 'zbcy-item': true, active: qytsActive === index }"
                 >
                   <div class="icon" v-if="false"></div>
                   <div class="value-panel">
@@ -143,7 +143,7 @@
                   v-for="(item, index) in qytsTabs[qytsIndex].result"
                   @click="zbyqClick(item, index)"
                   :key="index"
-                  :class="{ 'zbyq-item': true, 'active': qytsActive2 === index}"
+                  :class="{ 'zbyq-item': true, active: qytsActive2 === index }"
                 >
                   <div class="icon zbyqdiv"></div>
                   <div class="value-panel">
@@ -869,7 +869,69 @@ export default {
           value: "公安消防设施越完善、邻近距离越小",
         },
       ],
+      dkxxklyzy: [
+        {
+          name: "地块编号",
+          value: "",
+          key: "dkbh",
+        },
+        {
+          name: "行政区名称",
+          value: "",
+          key: "xzqmc",
+        },
+        {
+          name: "行政区代码",
+          value: "",
+          key: "xzqdm",
+        },
+        {
+          name: "地块面积(亩)",
+          value: "",
+          key: "dkmj",
+        },
 
+        {
+          name: "土地用途",
+          value: "",
+          key: "tdyt",
+        },
+        {
+          name: "地块类型",
+          value: "",
+          key: "dklx",
+        },
+        {
+          name: "容积率最小值",
+          value: "",
+          key: "plot_ratio_start",
+        },
+        {
+          name: "容积率最大值",
+          value: "",
+          key: "plot_ratio_end",
+        },
+        {
+          name: "单位能耗增加值",
+          value: "",
+          key: "unit_energy_consumption_added",
+        },
+        {
+          name: "单位排放增加值",
+          value: "",
+          key: "unit_emission_added",
+        },
+        {
+          name: "亩均税收(万元/亩)",
+          value: "",
+          key: "tax",
+        },
+        {
+          name: "地块位置",
+          value: "",
+          key: "address",
+        },
+      ],
       dkxx: [
         {
           name: "单元名称",
@@ -1081,8 +1143,8 @@ export default {
     },
     zbyqClick(item, index) {
       let geojson = JSON.parse(item.geom);
-      this.$emit("locationByGeojson", geojson,item.name);
-      this.qytsActive2 = index
+      this.$emit("locationByGeojson", geojson, item.name);
+      this.qytsActive2 = index;
     },
     //地类图斑定位
     goInfoLocation(wkt) {
@@ -1161,10 +1223,10 @@ export default {
     // 基本信息选项卡切换
     toggltJbxxIndex(index) {
       this.jbxxIndex = index;
-      this.$emit("toggle","jbxx",index);
+      this.$emit("toggle", "jbxx", index);
     },
     toggltQytsIndex(index) {
-      this.$emit("toggle",'qyts',index);
+      this.$emit("toggle", "qyts", index);
       this.qytsIndex = index;
       if (index == 0) {
         this.$nextTick(() => {
@@ -1180,12 +1242,12 @@ export default {
       this.getDataFromTianditu(item.name, this.zbTabs[this.zbIndex]);
     },
     toggltZbhjIndex(index, item) {
-      this.$emit("toggle",'zhjt');
+      this.$emit("toggle", "zhjt");
       this.zbhjIndex = index;
       this.getDataFromTianditu(item.name, this.zbhjTabs[index]);
     },
     toggltGgssIndex(index, item) {
-      this.$emit("toggle",'ggss');
+      this.$emit("toggle", "ggss");
       this.ggssIndex = index;
 
       // if (index == 0) {
@@ -1790,6 +1852,9 @@ export default {
       }
       let plot_ratio_start = this.dkxx["plot_ratio_start"];
       let plot_ratio_end = this.dkxx["plot_ratio_end"];
+      if (this.item.layerName == "ecgap_klyzy") {
+        this.dkxx = this.dkxxklyzy;
+      }
       this.dkxx.forEach((prop) => {
         if (prop.key in this.item) {
           if (prop.key == "pfmarea" && this.item[prop.key]) {
@@ -2378,7 +2443,7 @@ export default {
           justify-content: space-between;
           &.active {
             background: rgba(22, 132, 252, 0.1);
-            border-color: rgba(22, 132, 252, .9);
+            border-color: rgba(22, 132, 252, 0.9);
           }
           .icon {
             width: 72px;
@@ -2410,7 +2475,7 @@ export default {
                 margin-top: 2px;
                 height: 16px;
               }
-              >span {
+              > span {
                 overflow: hidden;
                 text-overflow: ellipsis;
                 white-space: nowrap;
@@ -2449,7 +2514,7 @@ export default {
           border: 1px solid transparent;
           &.active {
             background: rgba(22, 132, 252, 0.1);
-            border-color: rgba(22, 132, 252, .9);
+            border-color: rgba(22, 132, 252, 0.9);
           }
           .icon {
             width: 96px;
@@ -2486,7 +2551,7 @@ export default {
                 margin-top: 2px;
                 height: 16px;
               }
-              >span {
+              > span {
                 color: #333333;
                 overflow: hidden;
                 text-overflow: ellipsis;

+ 50 - 85
web_ui/src/views/znzt-land/AiZtzsDetail.vue

@@ -1,8 +1,5 @@
 <template>
   <div class="industria-land-detail">
-    <div class="left-content">
-      <Tree :data="data4" show-checkbox multiple></Tree>
-    </div>
     <div class="map-content">
       <div class="content">
         <div :id="id" class="map">
@@ -10,9 +7,11 @@
             class="radar-scan-an"
             v-show="radarShow"
             :style="`width: ${radarScanStyle.width}; heigth: ${radarScanStyle.height}; top: ${radarScanStyle.top};left: ${radarScanStyle.left};`"
-          ></div>
+          >
+          </div>
         </div>
         <div class="right-tool">
+   
           <div class="layer-container">
             <div
               class="layer-panel"
@@ -104,7 +103,7 @@
               </div>
             </div>
             <template v-if="showResult">
-              <div class="xg-title">
+          <div class="xg-title">
                 <img src="~@/assets/image/cyyd/fk.png" />
                 <div class="name">回答</div>
               </div>
@@ -129,16 +128,10 @@
                       </h3>
                       <p>
                         <span class="content-item"
-                          >行政区名称:{{
-                            citem.xzqmc ? citem.xzqmc : "-"
-                          }}</span
+                          >行政区名称:{{ citem.xzqmc ? citem.xzqmc : "-" }}</span
                         >
                         <span class="content-item"
-                          >面积:{{
-                            citem.yjjbnttbmj
-                              ? (citem.yjjbnttbmj * 0.0015).toFixed(2)
-                              : 0
-                          }}亩</span
+                          >面积:{{ citem.yjjbnttbmj?(citem.yjjbnttbmj*0.0015).toFixed(2):0 }}亩</span
                         >
                       </p>
                     </div>
@@ -239,7 +232,7 @@ import wkt from "wellknown";
 import VueMarkdownIt from "vue-markdown-it";
 import landMethods from "@/api/land";
 import AIBtn from "@/components/AIBtn.vue";
-import LC from "@/assets/layerConfig.js";
+import LC from  "@/assets/layerConfig.js"
 export default {
   components: {
     industrialTop,
@@ -248,41 +241,6 @@ export default {
   },
   data() {
     return {
-      data4: [
-        {
-          title: "parent 1",
-          expand: true,
-          selected: true,
-          children: [
-            {
-              title: "parent 1-1",
-              expand: true,
-              children: [
-                {
-                  title: "leaf 1-1-1",
-                  disabled: true,
-                },
-                {
-                  title: "leaf 1-1-2",
-                },
-              ],
-            },
-            {
-              title: "parent 1-2",
-              expand: true,
-              children: [
-                {
-                  title: "leaf 1-2-1",
-                  checked: true,
-                },
-                {
-                  title: "leaf 1-2-1",
-                },
-              ],
-            },
-          ],
-        },
-      ],
       geoLayer: null,
       nearMarkerList: [],
       radarScanStyle: {
@@ -467,6 +425,7 @@ export default {
       //   center_wkt: "POINT(120.912063 29.486802)",
       // };
       // this.showDetail = true;
+
     });
   },
   created() {
@@ -478,15 +437,15 @@ export default {
   },
 
   methods: {
-    toggleContentVisabledAll() {
+    toggleContentVisabledAll () {
       this.mContentVisabled = !this.mContentVisabled;
       this.xgdk.forEach((item) => {
-        item["show"] = this.mContentVisabled;
-      });
+        item['show'] = this.mContentVisabled
+      })
     },
-    toggleContentVisabled(item) {
-      item["show"] = item["show"] ? false : true;
-      this.mContentVisabled = item["show"];
+    toggleContentVisabled (item) {
+      item['show'] = item['show'] ? false : true
+      this.mContentVisabled = item['show']
     },
     mapExtend() {
       // 18级的地图
@@ -638,7 +597,7 @@ export default {
       this.toggleInfoTab();
       this.toggleTab(0);
     },
-    zwsend() {
+    zwsend () {
       if (!this.zwinputText) {
         this.zwinputText = "请帮我查一下萧山区永久基本农田面积大于100亩的地块";
       }
@@ -710,7 +669,7 @@ export default {
         if (item.layer === undefined || item.layer == null) {
           if (item.type == "dynamic") {
             item.layer = dynamicMapLayer({
-              layers: [0],
+              layers:[0],
               url: item.url,
               f: "image",
             });
@@ -774,6 +733,7 @@ export default {
         attributionControl: false, //去掉右下角的logo
       });
 
+
       //默认加载所有选中图层
       this.layers.forEach((layerGroup) => {
         layerGroup.layers.forEach((oneLayer) => {
@@ -859,8 +819,8 @@ export default {
     },
     //显示地块详情,先获取地块图斑,定位、路线、和地类分析需要叠加获取相交地块
     showDetailModal(item, index) {
-      console.log("item:" + item);
-      console.log(item);
+      console.log("item:"+item);
+      console.log(item)
       this.clearMark();
       this.activeItem = item;
       //高亮marker
@@ -1076,7 +1036,7 @@ export default {
       }
     },
     //详情页tab切换地图绘制相关清空
-    toggleInfoTab(type, index) {
+    toggleInfoTab(type,index) {
       console.log(type, index);
       if (this.markerLayer) {
         this.map.removeLayer(this.markerLayer);
@@ -1103,22 +1063,22 @@ export default {
       }
       if (type == "jbxx") {
         //现状分析
-        if (index == 1) {
-          this.checkedJbxxLayers(3, 4, 5);
-        } else if (index == 2) {
-          this.checkedJbxxLayers(4, 3, 5);
-        } else if (index == 3) {
-          this.checkedJbxxLayers(5, 3, 4);
+          if(index==1) {
+            this.checkedJbxxLayers(3,4,5)
+          } else if(index==2) {
+            this.checkedJbxxLayers(4,3,5)
+          }else if(index==3) {
+            this.checkedJbxxLayers(5,3,4)
         }
-      } else if (type == "qyts") {
+       } else if(type=='qyts'){
         this.checkedQysLayers(index);
-      } else if (type == "zhjt") {
+       } else if(type == 'zhjt'){
         this.checkedOtherLayers();
-      } else if (type == "ggss") {
+       } else if(type == 'ggss'){
         this.checkedOtherLayers();
-      }
-    },
-    checkedOtherLayers() {
+       }
+      },
+    checkedOtherLayers(){
       this.layers[2].layers.forEach((item) => {
         if (item.checked) {
           item.checked = false;
@@ -1145,8 +1105,8 @@ export default {
       });
     },
     checkedQysLayers(selectIndex) {
-      this.layers[2].layers.forEach((item, index) => {
-        if (index == selectIndex && !item.checked) {
+      this.layers[2].layers.forEach((item,index) => {
+        if(index==selectIndex && !item.checked) {
           item.checked = true;
           this.switchMapLayer(item);
         } else {
@@ -1173,7 +1133,7 @@ export default {
         }
       });
     },
-    checkedJbxxLayers(index1, index2, index3) {
+    checkedJbxxLayers(index1,index2,index3) {
       this.layers[index1].layers.forEach((item) => {
         if (!item.checked) {
           item.checked = true;
@@ -1242,6 +1202,7 @@ export default {
         });
         this.map.flyTo([centerList[1], centerList[0]], 17);
       }
+     
     },
     //所有地块仿百度地图绘制
     showXgdkCenterPoint() {
@@ -1557,18 +1518,13 @@ export default {
   width: 100%;
   position: relative;
   height: 100%;
-  .left-content {
-    width: 20%;
-    top: 0px;
-    left: 0px;
-    height: calc(100% - 0px);
-    float: left;
-  }
+
   .map-content {
-    width: 80%;
+    position: absolute;
+    width: 100%;
     top: 0px;
     height: calc(100% - 0px);
-    float: right;
+
     .content {
       width: 100%;
       height: 100%;
@@ -1578,6 +1534,15 @@ export default {
         width: 100%;
         z-index: 10;
         height: 100%;
+
+        .radar-scan-an {
+          position: absolute;
+          left: 488px;
+          z-index: 1001;
+          height: 904px;
+          width: 904px;
+          //top: 100px;
+        }
       }
 
       .right-tool {
@@ -2509,4 +2474,4 @@ export default {
 </style>
 
 <style>
-</style>
+</style>

+ 8 - 6
web_ui/static/config.js

@@ -2,13 +2,15 @@
   window.ApplicationConfig = {
     serverURL: "/server",
     // subscribeUrl: 'http://ai.zjugis.com:8511/subscribe/',
-    subscribeUrl: 'http://10.249.6.132:8528/agentai/subscribe/',
-    // subscribeUrl: 'http://localhost:8511/subscribe/',
-    queryGeometryUrl: 'http://10.249.6.132:8528/agentai/queryGeometry',
-    queryGeometryListUrl: 'http://10.249.6.132:8528/agentai/queryGeometryList',
+    // subscribeUrl: 'http://10.249.6.132:8528/agentai/subscribe/',
+    subscribeUrl: 'http://localhost:8511/subscribe/',
+    queryGeometryUrl: 'http://localhost:8511/queryGeometry',
+    kgQueryUrl: 'http://localhost:8511/kgQuery',
+    klyzyQueryUrl: 'http://localhost:8511/klyzyQuery',
+    queryGeometryListUrl: 'http://localhost:8511/queryGeometryList',
     queryYjjbntGeometryUrl: 'http://localhost:8511/queryYjjbntGeometry',
-    kfqintersectUrl: 'http://10.249.6.132:8528/agentai/kfqintersect',
-    gyydintersectUrl: 'http://10.249.6.132:8528/agentai/intersect_gyyd',
+    kfqintersectUrl: 'http://localhost:8511/kfqintersect',
+    gyydintersectUrl: 'http://localhost:8511/gyydintersect',
     //  subscribeUrl: 'http://10.10.9.143:8511/subscribe/',
     //  subscribeUrl: '/agentai/subscribe/',
     // subscribeUrl: 'http://192.168.0.145:8511/subscribe/',