liutao пре 3 месеци
родитељ
комит
006a74a060
100 измењених фајлова са 122 додато и 1277 уклоњено
  1. 4 4
      web_ui/src/components/Ai.vue
  2. 112 112
      web_ui/src/router/index.js
  3. 2 2
      web_ui/src/views/IntelLocation.vue
  4. 0 939
      web_ui/src/views/OneMap.vue
  5. 4 4
      web_ui/src/views/ai/LandUseAi.vue
  6. 0 0
      web_ui/static/json/china.json
  7. 0 79
      web_ui/static/json/gdyc.json
  8. 0 137
      web_ui/static/json/gdyc_qx.json
  9. 0 0
      web_ui/static/json/七台河市.json
  10. 0 0
      web_ui/static/json/三亚市.json
  11. 0 0
      web_ui/static/json/三明市.json
  12. 0 0
      web_ui/static/json/三沙市.json
  13. 0 0
      web_ui/static/json/三门峡市.json
  14. 0 0
      web_ui/static/json/上海城区.json
  15. 0 0
      web_ui/static/json/上海市.json
  16. 0 0
      web_ui/static/json/上饶市.json
  17. 0 0
      web_ui/static/json/东沙群岛.json
  18. 0 0
      web_ui/static/json/东莞市.json
  19. 0 0
      web_ui/static/json/东营市.json
  20. 0 0
      web_ui/static/json/中卫市.json
  21. 0 0
      web_ui/static/json/中山市.json
  22. 0 0
      web_ui/static/json/临夏回族自治州.json
  23. 0 0
      web_ui/static/json/临汾市.json
  24. 0 0
      web_ui/static/json/临沂市.json
  25. 0 0
      web_ui/static/json/临沧市.json
  26. 0 0
      web_ui/static/json/丹东市.json
  27. 0 0
      web_ui/static/json/丽水市.json
  28. 0 0
      web_ui/static/json/丽江市.json
  29. 0 0
      web_ui/static/json/乌兰察布市.json
  30. 0 0
      web_ui/static/json/乌海市.json
  31. 0 0
      web_ui/static/json/乌鲁木齐市.json
  32. 0 0
      web_ui/static/json/乐山市.json
  33. 0 0
      web_ui/static/json/九江市.json
  34. 0 0
      web_ui/static/json/云南省.json
  35. 0 0
      web_ui/static/json/云浮市.json
  36. 0 0
      web_ui/static/json/亳州市.json
  37. 0 0
      web_ui/static/json/伊春市.json
  38. 0 0
      web_ui/static/json/伊犁哈萨克自治州.json
  39. 0 0
      web_ui/static/json/佛山市.json
  40. 0 0
      web_ui/static/json/佳木斯市.json
  41. 0 0
      web_ui/static/json/保定市.json
  42. 0 0
      web_ui/static/json/保山市.json
  43. 0 0
      web_ui/static/json/信阳市.json
  44. 0 0
      web_ui/static/json/儋州市.json
  45. 0 0
      web_ui/static/json/克孜勒苏柯尔克孜自治州.json
  46. 0 0
      web_ui/static/json/克拉玛依市.json
  47. 0 0
      web_ui/static/json/六安市.json
  48. 0 0
      web_ui/static/json/六盘水市.json
  49. 0 0
      web_ui/static/json/兰州市.json
  50. 0 0
      web_ui/static/json/兴安盟.json
  51. 0 0
      web_ui/static/json/内江市.json
  52. 0 0
      web_ui/static/json/内蒙古自治区.json
  53. 0 0
      web_ui/static/json/凉山彝族自治州.json
  54. 0 0
      web_ui/static/json/包头市.json
  55. 0 0
      web_ui/static/json/北京城区.json
  56. 0 0
      web_ui/static/json/北京市.json
  57. 0 0
      web_ui/static/json/北海市.json
  58. 0 0
      web_ui/static/json/十堰市.json
  59. 0 0
      web_ui/static/json/南京市.json
  60. 0 0
      web_ui/static/json/南充市.json
  61. 0 0
      web_ui/static/json/南宁市.json
  62. 0 0
      web_ui/static/json/南平市.json
  63. 0 0
      web_ui/static/json/南昌市.json
  64. 0 0
      web_ui/static/json/南通市.json
  65. 0 0
      web_ui/static/json/南阳市.json
  66. 0 0
      web_ui/static/json/博尔塔拉蒙古自治州.json
  67. 0 0
      web_ui/static/json/厦门市.json
  68. 0 0
      web_ui/static/json/双鸭山市.json
  69. 0 0
      web_ui/static/json/台州市.json
  70. 0 0
      web_ui/static/json/台湾省.json
  71. 0 0
      web_ui/static/json/合肥市.json
  72. 0 0
      web_ui/static/json/吉安市.json
  73. 0 0
      web_ui/static/json/吉林市.json
  74. 0 0
      web_ui/static/json/吉林省.json
  75. 0 0
      web_ui/static/json/吐鲁番市.json
  76. 0 0
      web_ui/static/json/吕梁市.json
  77. 0 0
      web_ui/static/json/吴忠市.json
  78. 0 0
      web_ui/static/json/周口市.json
  79. 0 0
      web_ui/static/json/呼伦贝尔市.json
  80. 0 0
      web_ui/static/json/呼和浩特市.json
  81. 0 0
      web_ui/static/json/和田地区.json
  82. 0 0
      web_ui/static/json/咸宁市.json
  83. 0 0
      web_ui/static/json/咸阳市.json
  84. 0 0
      web_ui/static/json/哈密市.json
  85. 0 0
      web_ui/static/json/哈尔滨市.json
  86. 0 0
      web_ui/static/json/唐山市.json
  87. 0 0
      web_ui/static/json/商丘市.json
  88. 0 0
      web_ui/static/json/商洛市.json
  89. 0 0
      web_ui/static/json/喀什地区.json
  90. 0 0
      web_ui/static/json/嘉兴市.json
  91. 0 0
      web_ui/static/json/嘉峪关市.json
  92. 0 0
      web_ui/static/json/四川省.json
  93. 0 0
      web_ui/static/json/四平市.json
  94. 0 0
      web_ui/static/json/固原市.json
  95. 0 0
      web_ui/static/json/塔城地区.json
  96. 0 0
      web_ui/static/json/大兴安岭地区.json
  97. 0 0
      web_ui/static/json/大同市.json
  98. 0 0
      web_ui/static/json/大庆市.json
  99. 0 0
      web_ui/static/json/大理白族自治州.json
  100. 0 0
      web_ui/static/json/大连市.json

+ 4 - 4
web_ui/src/components/Ai.vue

@@ -870,10 +870,10 @@ export default {
             T.$set(message, "type", "jht");
           } else if (user_request.indexOf("热力图") > -1) {
             T.$set(message, "type", "hot");
-            var uploadedDataURL = require(`../../static/json/china.json`);
-            if (keyword != "全国") {
-              uploadedDataURL = require(`../../static/json/${keyword}.json`);
-            }
+            // var uploadedDataURL = require(`../../static/json/china.json`);
+            // if (keyword != "全国") {
+            //   uploadedDataURL = require(`../../static/json/${keyword}.json`);
+            // }
             T.$echarts.registerMap("中国", uploadedDataURL);
             var option = {
               dataRange: {

+ 112 - 112
web_ui/src/router/index.js

@@ -9,7 +9,7 @@ import Gdzbjc from '@/views/Gdzbjc'
 import Ydspjc from '@/views/Ydspjc'
 
 import Assistant from '@/views/ai/LandUseAi'
-import Ai from '@/views/ai/AIAssistant'
+// import Ai from '@/views/ai/AIAssistant'
 
 import test from '@/views/test'
 import gwzs from '@/views/gwzs'
@@ -35,7 +35,7 @@ import AiIndustriaLandDetail from '@/views/industrial-land/AiIndustriaLandDetail
 
 import IndustriaLandSurvey from '@/views/industrial-land/IndustrialLandSurvey'
 
-import Map from '@/views/OneMap'
+// import Map from '@/views/OneMap'
 Vue.use(Router)
 
 export default new Router({
@@ -50,121 +50,121 @@ export default new Router({
       name: 'main',
       component: ZnxzLogin
     },
-    {
-      path: '/intel-location',
-      name: 'intel-location',
-      component: IntelLocation
-    },
-    {
-      path: '/home',
-      name: 'home',
-      component: Home
-    },
-    {
-      path: '/tdscjc',
-      name: 'tdscjc',
-      component: Tdscjc
-    },
-    {
-      path: '/zcbd1',
-      name: 'zcbd1',
-      component: Zcbd
-    },
-    {
-      path: '/gdycfx',
-      name: 'gdycfx',
-      component: Gdfxyc
-    },
-    {
-      path: '/gdycfx/v2',
-      name: 'gdycfx-v2',
-      component: GdfxycV2
-    },
-    {
-      path: '/gdzbjc',
-      name: 'gdzbjc',
-      component: Gdzbjc
-    },
-    {
-      path: '/ydspjc',
-      name: 'ydspjc',
-      component: Ydspjc
-    },
-    {
-      path: '/assistant',
-      name: 'assistant',
-      component: Assistant
-    },
-    {
-      path: '/test',
-      name: 'test',
-      component: test
-    },
-    {
-      path: '/ai-assistant',
-      name: 'ai-assistant',
-      component: gwzs
-    },
-    {
-      path: '/ai',
-      name: 'ai',
-      component: Ai
-    },
-    {
-      path: '/editor',
-      name: 'editor',
-      component: Editor
-    },
-    {
-      path: '/work-report',
-      name: 'work-report',
-      component: WorkReport
-    },
-    {
-      path: '/sjznfx',
-      name: 'sjznfx',
-      component: DataIntelligentAnalysis
-    },
-    {
-      path: '/map',
-      name: 'map',
-      component: Map
-    },
-    {
-      path: '/write-assistant',
-      name: 'write-assistant',
-      component: WriteAssistant
-    },
-    {
-      path: '/approval-assistant',
-      name: 'approval-assistant',
-      component: ApprovalAssistant
-    },
-    {
-      path: '/voice',
-      name: 'voice',
-      component: Voice
-    },
-    {
-      path: '/industria-land',
-      name: 'industria-land',
-      component: IndustriaLand
-    },
-    {
-      path: '/industria-land-detail',
-      name: 'industria-land-detail',
-      component: IndustriaLandDetail
-    },
+    // {
+    //   path: '/intel-location',
+    //   name: 'intel-location',
+    //   component: IntelLocation
+    // },
+    // {
+    //   path: '/home',
+    //   name: 'home',
+    //   component: Home
+    // },
+    // {
+    //   path: '/tdscjc',
+    //   name: 'tdscjc',
+    //   component: Tdscjc
+    // },
+    // {
+    //   path: '/zcbd1',
+    //   name: 'zcbd1',
+    //   component: Zcbd
+    // },
+    // {
+    //   path: '/gdycfx',
+    //   name: 'gdycfx',
+    //   component: Gdfxyc
+    // },
+    // {
+    //   path: '/gdycfx/v2',
+    //   name: 'gdycfx-v2',
+    //   component: GdfxycV2
+    // },
+    // {
+    //   path: '/gdzbjc',
+    //   name: 'gdzbjc',
+    //   component: Gdzbjc
+    // },
+    // {
+    //   path: '/ydspjc',
+    //   name: 'ydspjc',
+    //   component: Ydspjc
+    // },
+    // {
+    //   path: '/assistant',
+    //   name: 'assistant',
+    //   component: Assistant
+    // },
+    // {
+    //   path: '/test',
+    //   name: 'test',
+    //   component: test
+    // },
+    // {
+    //   path: '/ai-assistant',
+    //   name: 'ai-assistant',
+    //   component: gwzs
+    // },
+    // {
+    //   path: '/ai',
+    //   name: 'ai',
+    //   component: Ai
+    // },
+    // {
+    //   path: '/editor',
+    //   name: 'editor',
+    //   component: Editor
+    // },
+    // {
+    //   path: '/work-report',
+    //   name: 'work-report',
+    //   component: WorkReport
+    // },
+    // {
+    //   path: '/sjznfx',
+    //   name: 'sjznfx',
+    //   component: DataIntelligentAnalysis
+    // },
+    // {
+    //   path: '/map',
+    //   name: 'map',
+    //   component: Map
+    // },
+    // {
+    //   path: '/write-assistant',
+    //   name: 'write-assistant',
+    //   component: WriteAssistant
+    // },
+    // {
+    //   path: '/approval-assistant',
+    //   name: 'approval-assistant',
+    //   component: ApprovalAssistant
+    // },
+    // {
+    //   path: '/voice',
+    //   name: 'voice',
+    //   component: Voice
+    // },
+    // {
+    //   path: '/industria-land',
+    //   name: 'industria-land',
+    //   component: IndustriaLand
+    // },
+    // {
+    //   path: '/industria-land-detail',
+    //   name: 'industria-land-detail',
+    //   component: IndustriaLandDetail
+    // },
     {
       path: '/znxz',
       name: 'znxz',
       component: AiIndustriaLandDetail
     },
-    {
-      path: '/industry-survey',
-      name: 'industry-survey',
-      component: IndustriaLandSurvey
-    },
+    // {
+    //   path: '/industry-survey',
+    //   name: 'industry-survey',
+    //   component: IndustriaLandSurvey
+    // },
 
   ]
 })

+ 2 - 2
web_ui/src/views/IntelLocation.vue

@@ -331,7 +331,7 @@
   </div>
 </template>
 <script>
-import polygons from "../../static/json/浙江省.json";
+// import polygons from "../../static/json/浙江省.json";
 import Top from "@/components/Top.vue";
 import ZnxzDetail from "./land/ZnxzDetail.vue";
 import ZnxzCompare from "./land/ZnxzCompare.vue";
@@ -588,7 +588,7 @@ export default {
         }
       );
       this.map.addLayer(cia);
-      this.location(polygons);
+      // this.location(polygons);
     },
     location(geo) {
       let t = L.geoJSON(geo, {

+ 0 - 939
web_ui/src/views/OneMap.vue

@@ -1,939 +0,0 @@
-<template>
-  <div class="zrkj-container">
-    <div class="header"></div>
-    <div class="map-panel">
-      <div
-        class="left"
-        :style="{
-          width: fullScreenFlag ? '50px' : '300px',
-        }"
-      >
-        <div class="right-tool">
-          <div
-            class="layer-container"
-            @click="showLayerControl = !showLayerControl"
-          >
-            <div class="layer-panel">
-              <img src="~@/assets/image/map/icon_layer.png" class="img" />
-            </div>
-            <div class="layer-content-border" v-if="showLayerControl">
-              <div class="layer-content">
-                <div
-                  class="item"
-                  v-for="(item, index) in layers"
-                  :key="index + '-13'"
-                >
-                  <div style="color: #ffffff; font-size: 16px">
-                    {{ item.name }}
-                  </div>
-                  <div
-                    class="item"
-                    v-for="(_item, _index) in item.layers"
-                    :key="_index + '-14'"
-                    style="margin: 5px 0"
-                  >
-                    <Checkbox
-                      v-model="_item.checked"
-                      class="checkbox"
-                      @click.native.stop=""
-                      @on-change="switchMapLayer(_item)"
-                      >{{ _item.name }}
-                    </Checkbox>
-                  </div>
-                </div>
-              </div>
-            </div>
-          </div>
-          <div class="icon" @click="fullScreen">
-            <img
-              v-if="!fullScreenFlag"
-              src="~@/assets/image/map/fullscreen.png"
-              class="img"
-            />
-            <img
-              v-if="fullScreenFlag"
-              src="~@/assets/image/map/nofullscreen.png"
-              class="img"
-            />
-          </div>
-          <Tooltip content="全图" placement="left">
-            <div class="icon" @click="fullQuTu()">
-              <img src="~@/assets/image/map/diqiu.png" class="img" />
-            </div>
-          </Tooltip>
-          <Tooltip content="对比" placement="left">
-            <div class="icon">
-              <i
-                class="iconfont icon-shuangpingduibi"
-                style="font-size: 24px"
-              ></i>
-            </div>
-          </Tooltip>
-          <Tooltip content="卷帘" placement="left">
-            <div class="icon">
-              <i class="iconfont icon-juanlian" style="font-size: 24px"></i>
-            </div>
-          </Tooltip>
-          <Tooltip content="筛选" placement="left">
-            <div class="icon">
-              <i class="iconfont icon-shaixuan" style="font-size: 24px"></i>
-            </div>
-          </Tooltip>
-          <Tooltip content="分析" placement="left">
-            <div class="icon">
-              <i class="iconfont icon-weibiaoti1" style="font-size: 24px"></i>
-            </div>
-          </Tooltip>
-          <Tooltip content="查询" placement="left">
-            <div
-              class="icon"
-              @click="showTipView()"
-              :class="{ checked: showTip }"
-            >
-              <i class="iconfont icon-chakan" style="font-size: 24px"></i>
-            </div>
-          </Tooltip>
-          <Tooltip content="模拟" placement="left">
-            <div class="icon">
-              <i class="iconfont icon-shijian" style="font-size: 24px"></i>
-            </div>
-          </Tooltip>
-        </div>
-      </div>
-      <div
-        class="right"
-        :style="{
-          width: fullScreenFlag ? 'calc(100% - 50px)' : 'calc(100% - 300px)',
-        }"
-      >
-        <div :id="id" class="a-map"></div>
-        <div class="legend-panel" v-show="hot">
-          <div class="name">{{ field }}</div>
-          <div class="legend"></div>
-        </div>
-        <div v-show="detailModal" class="detail-panel">
-          <LandDetail :item="land"> </LandDetail>
-        </div>
-      </div>
-    </div>
-    <ai-assistant
-      @init_sp="showSpatialAnalysisMap"
-      @init_jht="showJhtMap"
-      @init_hot="showHotMap"
-      @location="location"
-      @reset="reset"
-      ref="assis"
-    ></ai-assistant>
-  </div>
-</template>
-<script>
-import L from "leaflet";
-import axios from "axios";
-import HeatmapOverlay from "heatmap.js/plugins/leaflet-heatmap";
-import "leaflet.markercluster";
-import { parse } from "wellknown";
-import * as turf from "@turf/turf";
-import AiAssistant from "@/views/ai/MapAiAssistant.vue";
-import dynamicMapLayer from "esri-leaflet/src/Layers/DynamicMapLayer";
-import polygons from "../../static/json/浙江省.json";
-import LandDetail from "./land/LandDetail.vue";
-import { arcgisToGeoJSON } from "@terraformer/arcgis";
-import loginMethods from "@/api/login";
-export default {
-  props: {
-    contentHeight: Number,
-    contentWidth: Number,
-  },
-  components: {
-    AiAssistant,
-    LandDetail,
-  },
-  name: "onemap",
-  created() {
-    this.$nextTick(() => {});
-  },
-  data() {
-    return {
-      permission: false,
-      latitude: 30.287459,
-      longitude: 120.153576,
-      zoomLevel: 10,
-      map: null,
-      field: "",
-      hot: false,
-      geojsonLayer: null,
-      fullScreenFlag: false,
-      showLayerControl: true,
-      layers: [],
-      id: "aiMap" + new Date().getTime(),
-      intersectGeo: [],
-      points: [{ latitude: 29.952107, longitude: 121.713162, value: 9000 }],
-      name: null,
-      unit: "公顷",
-      keyword: "",
-      separatedColors: [],
-      minVal: 0,
-      maxVal: 0,
-      heatmapLayer: null,
-      markersLayer: null,
-      land: null,
-      detailModal: false,
-      showTip: false,
-      geometries: {
-        origin: null,
-        inLayer: [],
-      },
-    };
-  },
-  mounted() {
-    this.$nextTick(() => {
-      this.initMap();
-      this.checkPermision();
-    });
-  },
-  methods: {
-    checkPermision() {
-      loginMethods
-        .permission()
-        .then((res) => {
-          if (res && res.code == 200) {
-            this.permission = res.data;
-          }
-        })
-        .finally(() => {
-          if (!this.permission) {
-            this.$Message.error("用户信息验证失败,请重新登录!");
-            setTimeout(() => {
-              this.logout();
-            }, 1000);
-          }
-        });
-    },
-    logout() {
-      this.$store.dispatch("LogOut").then(() => {
-        this.$router.push({ name: "login" });
-      });
-    },
-    close() {
-      this.detailModal = false;
-      if (this.geojsonLayer) {
-        this.map.removeLayer(this.geojsonLayer);
-      }
-    },
-    fullQuTu() {
-      this.reset();
-      this.location(polygons);
-    },
-
-    initMap() {
-      this.layers = window.ApplicationConfig.layerTreeConfig;
-      this.layers.forEach((item, index) => {
-        if (index == 0) {
-          item.checked = true;
-        } else {
-          item.checked = false;
-        }
-      });
-      let myCenter = new L.LatLng(this.latitude, this.longitude); // 设置地图中心
-      this.map = L.map(this.id, {
-        center: myCenter,
-        zoom: this.zoomLevel,
-      });
-      var tk = window.ApplicationConfig.tk;
-      // var tk = "6dfd31e3b55a8466f34997aee5551a9c";
-      // 添加天地图底图
-      //底图
-      const image = L.tileLayer(
-        "http://t{s}.tianditu.gov.cn/img_w/wmts?tk=" +
-          tk +
-          "&SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=img&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TileMatrix={z}&TileCol={x}&TileRow={y}",
-        {
-          subdomains: [0, 1, 2, 3, 4, 5, 6, 7],
-          zIndex: 1,
-        }
-      );
-      this.map.addLayer(image);
-      //注记
-      const cia = L.tileLayer(
-        "http://t{s}.tianditu.gov.cn/cia_w/wmts?tk=" +
-          tk +
-          "&SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=cia&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TileMatrix={z}&TileCol={x}&TileRow={y}",
-        {
-          subdomains: [0, 1, 2, 3, 4, 5, 6, 7],
-          transparent: true,
-          zIndex: 3,
-        }
-      );
-      this.map.addLayer(cia);
-      //默认加载供地图层
-      var gd = this.layers[0].layers[0];
-      this.switchMapLayer(gd);
-      //定位浙江省
-      this.location(polygons);
-    },
-
-    /*
-     * 点单击内容函数
-     */
-    getProjectPopupContent(item) {
-      return `<b>名称:${item.name}</b><br>${this.name}:${item.value}${this.unit}`;
-    },
-    showHotMap(keyword, values, option, field) {
-      this.reset();
-      this.hot = true;
-      this.field = field;
-      this.separatedColors = option.dataRange.color.reverse();
-      this.minVal = option.dataRange.min;
-      this.maxVal = option.dataRange.max;
-      this.initLegend();
-      var key = "";
-      let that = this;
-      if (keyword == "全国") {
-        key = "china";
-      } else {
-        key = keyword;
-      }
-      var url = "/static/json/" + keyword + ".json";
-      axios.get(url).then((result) => {
-        if (values) {
-          var hotLayer = L.geoJSON(result.data, {
-            onEachFeature: function (feature, layer) {
-              values.forEach((item) => {
-                if (feature.properties.name == item.name) {
-                  feature.properties.value = item.value;
-                  feature.properties.color = that.getSeparatedColorByVal(
-                    feature.properties.value
-                  );
-                  layer.setStyle({
-                    stroke: false, //取消边框
-                    color: feature.properties.color,
-                    fillOpacity: 0.6, //默认0.2
-                  });
-                  var center = new L.LatLng(
-                    feature.properties.center[1],
-                    feature.properties.center[0]
-                  );
-                  that.map.createPane("marker");
-                  that.map.getPane("marker").style.zIndex = 999;
-
-                  const titleIcon = L.marker(center, {
-                    icon: L.divIcon({
-                      html: item.value + "公顷 <br>" + item.name,
-                      // html: item.name + ":" + item.value + "公顷",
-                      className: "my-div-icon",
-                      // iconSize: [50, 20],
-                      iconSize: [150, 50],
-                    }),
-                  })
-                    .bindPopup(function (layer) {
-                      return `${item.name}${field}:${item.value}公顷`;
-                    })
-                    .addTo(that.map);
-                }
-              });
-            },
-          });
-
-          that.HeatmapOverlay = hotLayer.addTo(that.map);
-          that.map.fitBounds(hotLayer.getBounds());
-        }
-      });
-    },
-    showHotMap1(keyword, values, option) {
-      if (this.markersLayer) {
-        this.map.removeLayer(this.markersLayer);
-      }
-      var key = "";
-      let that = this;
-      if (keyword == "全国") {
-        key = "china";
-      } else {
-        key = keyword;
-      }
-      var url = "/static/json/" + keyword + ".json";
-
-      axios.get(url).then((result) => {
-        if (values) {
-          values.forEach((value) => {
-            result.data.features.forEach((item) => {
-              if (item.properties.name == value.name) {
-                value.latitude = item.properties.center[1];
-                value.longitude = item.properties.center[0];
-              }
-            });
-          });
-          /* 热力图 */
-          // 配置
-          let cfg = {
-            radius: 0.05,
-            maxOpacity: 0.8,
-            scaleRadius: true,
-            useLocalExtrema: true,
-            latField: "latitude",
-            lngField: "longitude",
-            valueField: "value",
-          };
-          that.heatmapLayer = new HeatmapOverlay(cfg);
-          that.heatmapLayer.addTo(that.map);
-          let hotData = {
-            max: 8,
-            data: values,
-          };
-          that.heatmapLayer.setData(hotData);
-          that.location(result.data);
-        }
-      });
-    },
-    showJhtMap(keyword, points, name, unit) {
-      this.reset();
-      this.keyword = keyword;
-      this.points = points;
-      this.name = name;
-      this.unit = unit;
-      var key = "";
-      if (this.keyword == "全国") {
-        key = "china";
-      } else {
-        key = this.keyword;
-      }
-      axios.get("/static/json/china.json").then((result) => {
-        if (key == "china") {
-          this.location(result.data);
-          if (this.points) {
-            this.points.forEach((value) => {
-              result.data.features.forEach((item) => {
-                if (item.properties.name == value.name) {
-                  value.latitude = item.properties.center[1];
-                  value.longitude = item.properties.center[0];
-                }
-              });
-            });
-          }
-          this.showCluster();
-        } else {
-          var flag = false;
-          result.data.features.forEach((item) => {
-            if (item.properties.name == this.keyword) {
-              this.latitude = item.properties.center[1];
-              this.longitude = item.properties.center[0];
-              flag = true;
-            }
-          });
-          this.zoomLevel = 7;
-          var url = "/static/json/" + this.keyword + ".json";
-          axios.get(url).then((result) => {
-            this.location(result.data);
-            if (this.points) {
-              this.points.forEach((value) => {
-                result.data.features.forEach((item) => {
-                  if (item.properties.name == value.name) {
-                    value.latitude = item.properties.center[1];
-                    value.longitude = item.properties.center[0];
-                    if (!flag) {
-                      this.latitude = item.properties.center[1];
-                      this.longitude = item.properties.center[0];
-                    }
-                  }
-                });
-              });
-            }
-            this.showCluster();
-          });
-        }
-      });
-    },
-    showCluster() {
-      // 创建聚合图层
-      this.markersLayer = L.markerClusterGroup();
-      // 添加点标记
-      for (const point of this.points) {
-        if (point.latitude) {
-          const marker = L.marker([point.latitude, point.longitude], {
-            icon: L.icon({
-              iconUrl: "~@/assets/image/staticImage/location.png", // 标点图标地址
-              iconSize: [30, 30], // 图标大小
-            }),
-            properties: { name: point.name, value: point.value },
-          });
-          this.markersLayer.addLayer(marker);
-        }
-      }
-      // 将聚合图层添加到地图上
-      this.map.addLayer(this.markersLayer);
-      let that = this;
-      this.markersLayer.on("click", function (e) {
-        e.layer.unbindPopup();
-        const elements = that.getProjectPopupContent(
-          e.layer.options.properties
-        );
-        e.layer.bindPopup(elements).openPopup(e.latlng);
-      });
-    },
-
-    showSpatialAnalysisMap(geo) {
-      this.geometries = geo;
-      this.addSpMap();
-    },
-    addSpMap() {
-      const originGeom = parse(this.geometries.origin);
-      const geos = L.geoJSON(originGeom, {
-        style: function (feature) {
-          return { color: "blue" };
-        },
-      }).bindPopup(function (layer) {
-        return `上传图形面积为:${turf
-          .area(turf.getGeom(layer.feature.geometry))
-          .toFixed(2)}平方米`;
-      });
-      const bounds = L.latLngBounds();
-      bounds.extend(geos.getBounds());
-      const { result = {} } = this.geometries;
-      let intersects = result.features || [];
-      intersects = intersects.map((v) => {
-        const geom = turf.polygon(v.geometry.rings);
-        geom.properties.name = v.attributes.dkmc;
-        return geom;
-      });
-
-      intersects.forEach((v) => {
-        let t = L.geoJSON(v, {
-          style: function (feature) {
-            return { color: "yellow" };
-          },
-        }).bindPopup(function (layer) {
-          const { feature } = layer;
-          return `地块名称:${
-            feature.properties.name
-          }\n总面积:${turf.area(turf.getGeom(feature.geometry)).toFixed(2)}平方米`;
-        });
-        bounds.extend(t.getBounds());
-        t.addTo(this.map);
-      });
-      geos.addTo(this.map);
-      this.map.fitBounds(bounds);
-
-      // 计算所有的相交部分
-      this.intersectGeo = [];
-      let that = this;
-      var count = 0;
-      intersects.forEach((v) => {
-        count++;
-        let t = turf.intersect(originGeom, v);
-        const geom = L.geoJSON(t, {
-          style: function (feature) {
-            return { color: "red" };
-          },
-        })
-          .bindPopup(function (layer) {
-            return `相交部分的面积为:${turf
-              .area(turf.getGeom(layer.feature.geometry))
-              .toFixed(2)}平方米`;
-          })
-          .addTo(this.map);
-        L.geoJSON(v, {
-          style: function (feature) {
-            var xjmj =
-              turf.area(turf.getGeom(t.geometry)).toFixed(2) + "平方米";
-            that.intersectGeo.push({
-              dkmc: feature.properties.name,
-              area: xjmj,
-              geo: t,
-            });
-            if (count == intersects.length) {
-              that.$refs.assis.showTable(that.intersectGeo);
-            }
-            return { color: "yellow" };
-          },
-        });
-        this.flushPolygon(geom);
-      });
-    },
-    location(geo) {
-      let t = L.geoJSON(geo, {
-        style: function (feature) {
-          return { color: "yellow" };
-        },
-      });
-      this.map.fitBounds(t.getBounds());
-    },
-    reset() {
-      let layers = Object.values(this.map._layers);
-      layers.forEach((layer) => {
-        var flag = false;
-        if (layer instanceof L.TileLayer || layer.service) {
-          flag = true;
-        }
-        if (!flag) {
-          this.map.removeLayer(layer);
-        }
-      });
-      this.hot = false;
-    },
-    showTipView() {
-      this.showTip = !this.showTip;
-      if (this.showTip) {
-        this.map.on("click", this.mapClick);
-      } else {
-        this.map.off("click", this.mapClick);
-        this.close();
-      }
-    },
-    mapClick(e) {
-      if (this.geojsonLayer) {
-        this.map.removeLayer(this.geojsonLayer);
-      }
-      // debugger
-      let query =
-        window.ApplicationConfig.gdUrl +
-        "/0/query?where=&text=&objectIds=&time=&geometry=" +
-        e.latlng.lng +
-        "," +
-        e.latlng.lat +
-        "&" +
-        "geometryType=esriGeometryPoint&inSR=4490&spatialRel=esriSpatialRelIntersects&relationParam=&outFields=*&returnGeometry=true&" +
-        "maxAllowableOffset=&geometryPrecision=&outSR=&returnIdsOnly=false&returnCountOnly=false&orderByFields=&groupByFieldsForStatistics=&" +
-        "outStatistics=&returnZ=false&returnM=false&gdbVersion=&returnDistinctValues=false&f=json";
-      axios.get(query).then((data) => {
-        console.log(data);
-        if (data.data.features.length < 1) {
-          this.$Message.info("未查询到数据");
-          return;
-        }
-        this.land = data.data.features[0].attributes;
-        var geojson = arcgisToGeoJSON(data.data.features[0].geometry);
-        console.log(turf.getGeom(geojson));
-
-        this.land.area = turf.area(turf.getGeom(geojson)).toFixed(2) + "平方米";
-        var geos = L.geoJSON(geojson, {
-          style: function (feature) {
-            return { color: "red" };
-          },
-        });
-        this.geojsonLayer = geos.addTo(this.map);
-        this.map.fitBounds(geos.getBounds());
-        this.detailModal = true;
-      });
-    },
-    flushPolygon(e) {
-      let timer = null;
-      let i = 1;
-      let j = 0.2; //注意要和线的透明度同步修改,保持开始和结束时间一致
-      function updateAnimation() {
-        if (i < -1) {
-          i = 1;
-        }
-        i = i - 0.01;
-        if (j < -0.2) {
-          j = 0.2;
-        }
-        j = j - 0.002; //注意要和线的透明度同步修改,保持开始和结束时间一致
-        if (i < 0) e.setStyle({ opacity: i * -1, fillOpacity: j * -1 });
-        else e.setStyle({ opacity: i, fillOpacity: j });
-        if (!e._map) return cancelAnimationFrame(timer);
-        window.requestAnimationFrame(updateAnimation);
-      }
-
-      window.requestAnimationFrame(updateAnimation);
-    },
-    switchMapLayer(item) {
-      if (item.checked) {
-        if (item.layer === undefined || item.layer == null) {
-          if (item.type == "dynamic") {
-            item.layer = dynamicMapLayer({
-              url: item.url,
-              opacity: 0.8,
-              f: "json",
-            });
-          }
-          if (item.type == "geoserver") {
-            item.layer = L.tileLayer.wms(item.url, {
-              // 链接要改对应的
-              layers: item.layername,
-              format: "image/png",
-              layerID: Math.random(),
-              transparent: true,
-            });
-            item.layer.setZIndex(100);
-          }
-          this.map.addLayer(item.layer);
-        } else {
-          this.map.addLayer(item.layer);
-        }
-      } else {
-        if (item.layer != undefined || item.layer != null) {
-          this.map.removeLayer(item.layer);
-        }
-      }
-    },
-    fullScreen() {},
-    //初始化图例
-    initLegend() {
-      let legend = this.getLegend();
-      let legendDom = document.getElementsByClassName("legend")[0];
-      if (legendDom.childNodes.length > 0) {
-        legendDom.removeChild(legendDom.childNodes[0]);
-      }
-      let insertDom = document.createElement("ul");
-      let str = ``;
-      for (let i = 0; i < legend.length; i++) {
-        str += `<li><i  style="background: ${legend[i].color}"></i>${legend[
-          i
-        ].region.join("-")}</li>`;
-      }
-      insertDom.innerHTML = str;
-      legendDom.appendChild(insertDom);
-    },
-    //根据离散颜色及数据范围生成对应值的颜色
-    getSeparatedColorByVal(val) {
-      var minVal = this.minVal;
-      var maxVal = this.maxVal;
-      var colors = this.separatedColors;
-      let length = colors.length;
-      let avg = ((maxVal - minVal) / length).toFixed(4);
-      //生成等分区间
-      let regions = [];
-      for (let i = 0; i < length; i++) {
-        if (i === length - 1) {
-          regions.push([minVal + avg * i, maxVal]);
-        } else {
-          regions.push([minVal + avg * i, minVal + avg * (i + 1)]);
-        }
-      }
-      //返回对应值颜色
-      for (let i = 0; i < regions.length; i++) {
-        if (val >= regions[i][0] && val <= regions[i][1]) {
-          return colors[i];
-        }
-      }
-    },
-
-    //生成图例
-    getLegend() {
-      var minVal = this.minVal;
-      var maxVal = this.maxVal;
-      var colors = this.separatedColors;
-      let length = colors.length;
-      let avg = ((maxVal - minVal) / length).toFixed(4);
-      //生成等分区间
-      let regions = [];
-      for (let i = 0; i < length; i++) {
-        if (i === length - 1) {
-          regions.push([(minVal + avg * i).toFixed(0), maxVal.toFixed(0)]);
-        } else {
-          regions.push([
-            (minVal + avg * i).toFixed(0),
-            (minVal + avg * (i + 1)).toFixed(0),
-          ]);
-        }
-      }
-      let legend = [];
-      for (let i = 0; i < length; i++) {
-        legend.push({
-          color: colors[i],
-          region: regions[i],
-        });
-      }
-      return legend;
-    },
-  },
-};
-</script>
-<style lang="scss" scoped>
-.zrkj-container {
-  width: 100%;
-  height: 100%;
-  position: relative;
-  background: url("~@/assets/image/map/bg.png") no-repeat center;
-  background-size: 100% 100%;
-  .header {
-    width: 100%;
-    height: 100px;
-    background: url("~@/assets/image/map/icon_top_bg.png") no-repeat 0px 0px;
-    background-size: 100% 100%;
-  }
-  .map-panel {
-    position: relative;
-    display: flex;
-    width: 100%;
-    height: calc(100% - 100px);
-    .left {
-      width: 350px;
-      height: 100%;
-      position: relative;
-      .right-tool {
-        display: flex;
-        flex-direction: column;
-        position: absolute;
-        top: 20px;
-        left: 20px;
-        z-index: 1;
-      }
-    }
-    .right {
-      width: calc(100% - 350px);
-      height: 100%;
-      position: relative;
-      display: flex;
-      .a-map {
-        width: 100%;
-        height: 100%;
-        z-index: 0;
-      }
-      .legend-panel {
-        position: absolute;
-        left: 20px;
-        padding: 20px;
-        border-radius: 10px;
-        background: white;
-        bottom: 20px;
-        z-index: 999;
-        .name {
-          font-family: Alibaba PuHuiTi 2;
-          font-weight: 500;
-          font-size: 16px;
-          color: #333333;
-        }
-        .legend {
-          margin-top: 10px;
-        }
-      }
-
-      .detail-panel {
-        z-index: 99;
-        // left: 490px;
-        left: 20%;
-        padding-bottom: 10px;
-        background: linear-gradient(0deg, #003065 0%, #003f86 100%);
-        width: 50%;
-        // top: 20%;
-        // bottom: 20px;
-        bottom: 5%;
-        position: absolute;
-      }
-    }
-
-    .layer-container {
-      .layer-panel {
-        cursor: pointer;
-        width: 35px;
-        height: 35px;
-        border-radius: 5px;
-        border: 1px solid #0c3579;
-        background: rgba(2, 42, 77, 0.85);
-        display: flex;
-        justify-content: center;
-        align-items: center;
-
-        .img {
-          width: 25px;
-          height: 25px;
-        }
-      }
-
-      .layer-content-border {
-        position: absolute;
-        left: 35px;
-        top: 0px;
-        padding: 0px 10px;
-        z-index: 99;
-
-        .layer-content {
-          z-index: 99;
-          border: 1px solid #0c3579;
-          background: rgba(2, 42, 77, 0.9);
-          padding: 10px;
-          cursor: pointer;
-          width: 235px;
-          border-radius: 5px;
-          z-index: 1;
-
-          .item {
-            width: 100%;
-
-            .checkbox {
-              // color:#6dcff6;
-              color: #fff;
-              font-size: 16px;
-              cursor: pointer;
-            }
-
-            .ivu-checkbox-inner {
-              margin-right: 8px;
-              cursor: pointer;
-              background-color: transparent;
-              border: 1px solid #6dcff6;
-            }
-          }
-        }
-      }
-    }
-
-    .icon {
-      margin-top: 10px;
-      z-index: 100;
-      cursor: pointer;
-      color: white;
-      width: 35px;
-      height: 35px;
-      text-align: center;
-      line-height: 35px;
-      border-radius: 5px;
-      border: 1px solid #0c3579;
-      background: rgba(2, 42, 77, 0.85);
-
-      .img {
-        width: 24px;
-        height: 24px;
-        margin-top: 5px;
-      }
-    }
-    .checked {
-      border: 2px solid;
-      color: #ffbe60;
-      border-image: linear-gradient(-9deg, #794f0c, #ffbe60, #794c0c) 1 1;
-      box-shadow: 0px 0px 5px 0px rgba(255, 186, 0, 0.54);
-    }
-  }
-}
-</style>
-
-<style>
-@import "~leaflet/dist/leaflet.css";
-@import "~leaflet.markercluster/dist/MarkerCluster.css";
-@import "~leaflet.markercluster/dist/MarkerCluster.Default.css";
-.legend ul li {
-  padding: 0;
-  margin: 0;
-  list-style: none;
-  display: flex;
-  align-items: center;
-  color: #333;
-  margin-bottom: 5px;
-}
-.my-div-icon {
-  font-size: 15px;
-  text-align: center;
-  font-weight: 500;
-  color: white;
-}
-
-.legend ul li i {
-  display: inline-block;
-  width: 20px;
-  height: 20px;
-  border-radius: 50%;
-  margin-right: 8px;
-}
-.leaflet-control-attribution {
-  margin: 10px !important;
-  border-radius: 8px;
-  height: 30%;
-  padding: 5px;
-}
-
-.spatial-analysis-info {
-  color: blue;
-}
-</style>
-
-

+ 4 - 4
web_ui/src/views/ai/LandUseAi.vue

@@ -585,10 +585,10 @@ export default {
                           T.$set(message, "type", "jht");
                         } else if (user_request.indexOf("热力图") > -1) {
                           T.$set(message, "type", "hot");
-                          var uploadedDataURL = require(`../../../static/json/china.json`);
-                          if (keyword != "全国") {
-                            uploadedDataURL = require(`../../../static/json/${keyword}.json`);
-                          }
+                          // var uploadedDataURL = require(`../../../static/json/china.json`);
+                          // if (keyword != "全国") {
+                          //   uploadedDataURL = require(`../../../static/json/${keyword}.json`);
+                          // }
                           T.$echarts.registerMap("中国", uploadedDataURL);
                           var option = {
                             dataRange: {

Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/china.json


+ 0 - 79
web_ui/static/json/gdyc.json

@@ -1,79 +0,0 @@
-[
-    {"年度":2018,"城市":"丽水市","住宅用地":1,"工业用地":0.04,"商服用地":0,"其他用地":0.96},
-    {"年度":2019,"城市":"丽水市","住宅用地":4.56,"工业用地":0.2,"商服用地":2.84,"其他用地":0.31},
-    {"年度":2020,"城市":"丽水市","住宅用地":4.3,"工业用地":0.25,"商服用地":1.98,"其他用地":0.62},
-    {"年度":2021,"城市":"丽水市","住宅用地":6.41,"工业用地":0.29,"商服用地":3.09,"其他用地":0.59},
-    {"年度":2022,"城市":"丽水市","住宅用地":7.15,"工业用地":0.3,"商服用地":2.44,"其他用地":0.79},
-    {"年度":2023,"城市":"丽水市","住宅用地":6.79,"工业用地":0.41,"商服用地":2.29,"其他用地":0.6},
-    {"年度":2024,"城市":"丽水市","住宅用地":4.98,"工业用地":0.37,"商服用地":2.43,"其他用地":2.75},
-    {"年度":2018,"城市":"台州市","住宅用地":0.86,"工业用地":0.17,"商服用地":0.08,"其他用地":0},
-    {"年度":2019,"城市":"台州市","住宅用地":4.22,"工业用地":0.4,"商服用地":2.28,"其他用地":1.28},
-    {"年度":2020,"城市":"台州市","住宅用地":4.85,"工业用地":0.47,"商服用地":4.84,"其他用地":0.5},
-    {"年度":2021,"城市":"台州市","住宅用地":5.78,"工业用地":0.45,"商服用地":2.09,"其他用地":0.86},
-    {"年度":2022,"城市":"台州市","住宅用地":7.1,"工业用地":0.58,"商服用地":2.43,"其他用地":0.78},
-    {"年度":2023,"城市":"台州市","住宅用地":4.86,"工业用地":0.46,"商服用地":2.85,"其他用地":0.67},
-    {"年度":2024,"城市":"台州市","住宅用地":2.48,"工业用地":0.57,"商服用地":1.42,"其他用地":0.96},
-    {"年度":2018,"城市":"嘉兴市","住宅用地":2.21,"工业用地":0.2,"商服用地":1.45,"其他用地":0},
-    {"年度":2019,"城市":"嘉兴市","住宅用地":5.28,"工业用地":0.31,"商服用地":2.01,"其他用地":0.66},
-    {"年度":2020,"城市":"嘉兴市","住宅用地":6.11,"工业用地":0.31,"商服用地":2.12,"其他用地":0.78},
-    {"年度":2021,"城市":"嘉兴市","住宅用地":6.52,"工业用地":0.33,"商服用地":2.21,"其他用地":0.77},
-    {"年度":2022,"城市":"嘉兴市","住宅用地":6.84,"工业用地":0.34,"商服用地":2.16,"其他用地":1},
-    {"年度":2023,"城市":"嘉兴市","住宅用地":5.29,"工业用地":0.37,"商服用地":2.09,"其他用地":0.78},
-    {"年度":2024,"城市":"嘉兴市","住宅用地":5.21,"工业用地":0.39,"商服用地":1.87,"其他用地":0.86},
-    {"年度":2018,"城市":"宁波市","住宅用地":0.29,"工业用地":0.26,"商服用地":0.93,"其他用地":0.25},
-    {"年度":2019,"城市":"宁波市","住宅用地":6.54,"工业用地":0.7,"商服用地":2.68,"其他用地":0.98},
-    {"年度":2020,"城市":"宁波市","住宅用地":4.14,"工业用地":0.7,"商服用地":1.65,"其他用地":1.04},
-    {"年度":2021,"城市":"宁波市","住宅用地":4.43,"工业用地":0.83,"商服用地":1.92,"其他用地":1.23},
-    {"年度":2022,"城市":"宁波市","住宅用地":5.2,"工业用地":0.94,"商服用地":1.3,"其他用地":1.76},
-    {"年度":2023,"城市":"宁波市","住宅用地":6.5,"工业用地":0.91,"商服用地":1.7,"其他用地":1.26},
-    {"年度":2024,"城市":"宁波市","住宅用地":5.6,"工业用地":0.98,"商服用地":0.86,"其他用地":1.45},
-    {"年度":2018,"城市":"杭州市","住宅用地":6.24,"工业用地":0.49,"商服用地":5.89,"其他用地":0.17},
-    {"年度":2019,"城市":"杭州市","住宅用地":15.12,"工业用地":0.63,"商服用地":6.63,"其他用地":1.29},
-    {"年度":2020,"城市":"杭州市","住宅用地":14.16,"工业用地":0.69,"商服用地":6.82,"其他用地":1.35},
-    {"年度":2021,"城市":"杭州市","住宅用地":14.6,"工业用地":0.52,"商服用地":5.94,"其他用地":1.96},
-    {"年度":2022,"城市":"杭州市","住宅用地":14.73,"工业用地":0.73,"商服用地":7.22,"其他用地":2.12},
-    {"年度":2023,"城市":"杭州市","住宅用地":16.27,"工业用地":1.3,"商服用地":7.65,"其他用地":2.69},
-    {"年度":2024,"城市":"杭州市","住宅用地":18.64,"工业用地":1.1,"商服用地":7.79,"其他用地":0.43},
-    {"年度":2018,"城市":"温州市","住宅用地":2.78,"工业用地":0.29,"商服用地":1.53,"其他用地":0.08},
-    {"年度":2019,"城市":"温州市","住宅用地":10.24,"工业用地":0.49,"商服用地":5.54,"其他用地":0.8},
-    {"年度":2020,"城市":"温州市","住宅用地":11.19,"工业用地":0.65,"商服用地":4.75,"其他用地":1.18},
-    {"年度":2021,"城市":"温州市","住宅用地":11.71,"工业用地":0.52,"商服用地":3.02,"其他用地":1.11},
-    {"年度":2022,"城市":"温州市","住宅用地":11.08,"工业用地":0.7,"商服用地":4.56,"其他用地":0.72},
-    {"年度":2023,"城市":"温州市","住宅用地":7.75,"工业用地":0.64,"商服用地":2.8,"其他用地":0.97},
-    {"年度":2024,"城市":"温州市","住宅用地":6.38,"工业用地":0.66,"商服用地":2.67,"其他用地":0.7},
-    {"年度":2018,"城市":"湖州市","住宅用地":1.37,"工业用地":0.19,"商服用地":0.88,"其他用地":0.1},
-    {"年度":2019,"城市":"湖州市","住宅用地":2.18,"工业用地":0.29,"商服用地":2.34,"其他用地":0.5},
-    {"年度":2020,"城市":"湖州市","住宅用地":2.38,"工业用地":0.33,"商服用地":1.69,"其他用地":0.63},
-    {"年度":2021,"城市":"湖州市","住宅用地":3.64,"工业用地":0.32,"商服用地":1.4,"其他用地":0.65},
-    {"年度":2022,"城市":"湖州市","住宅用地":3.32,"工业用地":0.39,"商服用地":1.59,"其他用地":0.66},
-    {"年度":2023,"城市":"湖州市","住宅用地":3.8,"工业用地":0.4,"商服用地":1.58,"其他用地":0.66},
-    {"年度":2024,"城市":"湖州市","住宅用地":2.44,"工业用地":0.42,"商服用地":1.47,"其他用地":0.55},
-    {"年度":2018,"城市":"绍兴市","住宅用地":1.58,"工业用地":0.29,"商服用地":0.6,"其他用地":0.11},
-    {"年度":2019,"城市":"绍兴市","住宅用地":4.65,"工业用地":0.27,"商服用地":2.14,"其他用地":1.17},
-    {"年度":2020,"城市":"绍兴市","住宅用地":6.03,"工业用地":0.33,"商服用地":2.28,"其他用地":1.43},
-    {"年度":2021,"城市":"绍兴市","住宅用地":9.06,"工业用地":0.32,"商服用地":2.81,"其他用地":1.49},
-    {"年度":2022,"城市":"绍兴市","住宅用地":7.09,"工业用地":0.32,"商服用地":2.39,"其他用地":1.57},
-    {"年度":2023,"城市":"绍兴市","住宅用地":6.3,"工业用地":0.38,"商服用地":1.84,"其他用地":0.71},
-    {"年度":2024,"城市":"绍兴市","住宅用地":5.37,"工业用地":0.36,"商服用地":1.96,"其他用地":0.84},
-    {"年度":2018,"城市":"舟山市","住宅用地":0,"工业用地":0.11,"商服用地":0,"其他用地":0.1},
-    {"年度":2019,"城市":"舟山市","住宅用地":2.86,"工业用地":0.18,"商服用地":0.71,"其他用地":0.27},
-    {"年度":2020,"城市":"舟山市","住宅用地":2.37,"工业用地":0.24,"商服用地":1.54,"其他用地":0.26},
-    {"年度":2021,"城市":"舟山市","住宅用地":3.4,"工业用地":0.29,"商服用地":0.93,"其他用地":0.45},
-    {"年度":2022,"城市":"舟山市","住宅用地":1.77,"工业用地":0.28,"商服用地":1.6,"其他用地":0.5},
-    {"年度":2023,"城市":"舟山市","住宅用地":0.76,"工业用地":0.29,"商服用地":0.86,"其他用地":0.6},
-    {"年度":2024,"城市":"舟山市","住宅用地":0.43,"工业用地":0.56,"商服用地":1.24,"其他用地":0.46},
-    {"年度":2018,"城市":"衢州市","住宅用地":0.54,"工业用地":0.11,"商服用地":0,"其他用地":0.16},
-    {"年度":2019,"城市":"衢州市","住宅用地":3.57,"工业用地":0.18,"商服用地":1.56,"其他用地":0.54},
-    {"年度":2020,"城市":"衢州市","住宅用地":4.77,"工业用地":0.2,"商服用地":1.72,"其他用地":0.83},
-    {"年度":2021,"城市":"衢州市","住宅用地":4.56,"工业用地":0.23,"商服用地":1.62,"其他用地":0.34},
-    {"年度":2022,"城市":"衢州市","住宅用地":4.19,"工业用地":0.22,"商服用地":1.55,"其他用地":0.44},
-    {"年度":2023,"城市":"衢州市","住宅用地":3.94,"工业用地":0.22,"商服用地":1.06,"其他用地":0.31},
-    {"年度":2024,"城市":"衢州市","住宅用地":2.11,"工业用地":0.2,"商服用地":1.29,"其他用地":0.35},
-    {"年度":2018,"城市":"金华市","住宅用地":3.51,"工业用地":0.51,"商服用地":1.19,"其他用地":0.17},
-    {"年度":2019,"城市":"金华市","住宅用地":6.9,"工业用地":0.51,"商服用地":3.99,"其他用地":2.22},
-    {"年度":2020,"城市":"金华市","住宅用地":9.42,"工业用地":0.48,"商服用地":3.86,"其他用地":0.8},
-    {"年度":2021,"城市":"金华市","住宅用地":10.8,"工业用地":0.56,"商服用地":5.56,"其他用地":1.12},
-    {"年度":2022,"城市":"金华市","住宅用地":9.47,"工业用地":0.58,"商服用地":3.66,"其他用地":1.14},
-    {"年度":2023,"城市":"金华市","住宅用地":11.44,"工业用地":0.63,"商服用地":5.86,"其他用地":0.71},
-    {"年度":2024,"城市":"金华市","住宅用地":10.27,"工业用地":0.67,"商服用地":3.6,"其他用地":0.72}
-    ]

+ 0 - 137
web_ui/static/json/gdyc_qx.json

@@ -1,137 +0,0 @@
-[
-    {
-         "年度": "2023",
-         "城市": "杭州市",
-         "区县": "西湖区",
-         "住宅用地": "1.53",
-         "工业用地": "0.14",
-         "商服用地": "0.7",
-         "其他用地": "0"
-     },
-    {
-         "年度": "2024",
-         "城市": "杭州市",
-         "区县": "西湖区",
-         "住宅用地": "1.93",
-         "工业用地": "0.14",
-         "商服用地": "1.38",
-         "其他用地": "0.02"
-     },
- {
-         "年度": "2022",
-         "城市": "杭州市",
-         "区县": "西湖区",
-         "住宅用地": "3.15",
-         "工业用地": "0.13",
-         "商服用地": "1.69",
-         "其他用地": "0.01"
-     },
- {
-         "年度": "2021",
-         "城市": "杭州市",
-         "区县": "西湖区",
-         "住宅用地": "2.98",
-         "工业用地": "0.12",
-         "商服用地": "1.44",
-         "其他用地": "0.02"
-     },
- {
-         "年度": "2020",
-         "城市": "杭州市",
-         "区县": "西湖区",
-         "住宅用地": "2.54",
-         "工业用地": "0.11",
-         "商服用地": "1.52",
-         "其他用地": "0.02"
-     },
- {
-         "年度": "2019",
-         "城市": "杭州市",
-         "区县": "西湖区",
-         "住宅用地": "0.71",
-         "工业用地": "0.3",
-         "商服用地": "1.84",
-         "其他用地": "0.01"
-     },
- {
-         "年度": "2018",
-         "城市": "杭州市",
-         "区县": "西湖区",
-         "住宅用地": "0",
-         "工业用地": "0",
-         "商服用地": "0",
-         "其他用地": "0.02"
-     },
-  {
-         "年度": "2017",
-         "城市": "杭州市",
-         "区县": "西湖区",
-         "住宅用地": "0",
-         "工业用地": "0",
-         "商服用地": "0.35",
-         "其他用地": "0"
-     },
- {
-         "年度": "2016",
-         "城市": "杭州市",
-         "区县": "西湖区",
-         "住宅用地": "0",
-         "工业用地": "0",
-         "商服用地": "0.2",
-         "其他用地": "0"
-     },
- {
-         "年度": "2015",
-         "城市": "杭州市",
-         "区县": "西湖区",
-         "住宅用地": "0",
-         "工业用地": "0",
-         "商服用地": "0",
-         "其他用地": "0"
-     },
- {
-         "年度": "2014",
-         "城市": "杭州市",
-         "区县": "西湖区",
-         "住宅用地": "0",
-         "工业用地": "0",
-         "商服用地": "0",
-         "其他用地": "0"
-     },
- {
-         "年度": "2013",
-         "城市": "杭州市",
-         "区县": "西湖区",
-         "住宅用地": "0",
-         "工业用地": "0",
-         "商服用地": "0",
-         "其他用地": "0"
-     },
- {
-         "年度": "2010",
-         "城市": "杭州市",
-         "区县": "西湖区",
-         "住宅用地": "0.07",
-         "工业用地": "0.06",
-         "商服用地": "0.13",
-         "其他用地": "0"
-     },
- {
-         "年度": "2009",
-         "城市": "杭州市",
-         "区县": "西湖区",
-         "住宅用地": "1.05",
-         "工业用地": "0.04",
-         "商服用地": "0.2",
-         "其他用地": "0.01"
-     },
- {
-         "年度": "2007",
-         "城市": "杭州市",
-         "区县": "西湖区",
-         "住宅用地": "0",
-         "工业用地": "0",
-         "商服用地": "0.1",
-         "其他用地": "0"
-     }
- ]

Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/七台河市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/三亚市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/三明市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/三沙市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/三门峡市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/上海城区.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/上海市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/上饶市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/东沙群岛.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/东莞市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/东营市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/中卫市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/中山市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/临夏回族自治州.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/临汾市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/临沂市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/临沧市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/丹东市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/丽水市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/丽江市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/乌兰察布市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/乌海市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/乌鲁木齐市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/乐山市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/九江市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/云南省.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/云浮市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/亳州市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/伊春市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/伊犁哈萨克自治州.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/佛山市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/佳木斯市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/保定市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/保山市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/信阳市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/儋州市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/克孜勒苏柯尔克孜自治州.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/克拉玛依市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/六安市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/六盘水市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/兰州市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/兴安盟.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/内江市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/内蒙古自治区.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/凉山彝族自治州.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/包头市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/北京城区.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/北京市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/北海市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/十堰市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/南京市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/南充市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/南宁市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/南平市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/南昌市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/南通市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/南阳市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/博尔塔拉蒙古自治州.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/厦门市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/双鸭山市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/台州市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/台湾省.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/合肥市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/吉安市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/吉林市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/吉林省.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/吐鲁番市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/吕梁市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/吴忠市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/周口市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/呼伦贝尔市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/呼和浩特市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/和田地区.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/咸宁市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/咸阳市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/哈密市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/哈尔滨市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/唐山市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/商丘市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/商洛市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/喀什地区.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/嘉兴市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/嘉峪关市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/四川省.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/四平市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/固原市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/塔城地区.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/大兴安岭地区.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/大同市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/大庆市.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/大理白族自治州.json


Разлика између датотеке није приказан због своје велике величине
+ 0 - 0
web_ui/static/json/大连市.json


Неке датотеке нису приказане због велике количине промена