Browse Source

耕地和永久基本农田

maxiaoxiao 7 tháng trước cách đây
mục cha
commit
492b2ca164

+ 16 - 21
src/views/LandConsolidation/components/contrast.vue

@@ -23,7 +23,7 @@
       </li>
       <div class="ml sm-panel" v-show="layers[i]">
         <!-- @change="checkedChange" -->
-        <el-checkbox-group v-model="checkdata[i]" v-if="dbdata.fp.length > 1">
+        <el-checkbox-group v-model="checkdata[0]" v-if="dbdata.fp.length > 1">
           <el-checkbox
             v-for="mli in dbdata.fp"
             :key="mli.dlbmmc"
@@ -45,7 +45,6 @@ import { district } from "@/api/Idleland.js";
 import { setImageryRoller, hideImageryRoller } from "@/utils/MapHelper/map.js";
 import { loadGeoJSON } from "@/utils/MapHelper/help.js";
 import AsideBottom from "./AsideBottom.vue";
-import { Infos } from "./a.js";
 let geoSources = {};
 export default {
   props: {},
@@ -90,7 +89,9 @@ export default {
           viewer.flyTo(geodata, {
             offset: new Cesium.HeadingPitchRange(0, -45),
           });
-        geodata.setVisibleInViewport(i, checked);
+        // geodata.setVisibleInViewport(i, checked);
+        geodata.setVisibleInViewport(0, checked);
+        geodata.setVisibleInViewport(1, checked);
         // geodata.show = checked;
       }
 
@@ -114,10 +115,12 @@ export default {
       //     break;
       // }
     },
+    roller(){
+      rollerShutterConfig.splitDirection = new Cesium.Cartesian2(Cesium.ImagerySplitDirection.LEFT, Cesium.ImagerySplitDirection.NONE);
+    },
     multiView() {
       let mul = this.active == 1 ? "HORIZONTAL" : "NONE";
       scene.multiViewportMode = Cesium.MultiViewportMode[mul];
-      this.dbdata = { fp: [Infos[0]] };
       console.log(this.dbdata, "---");
       // let qgeom =
       // "SRID=4326;POLYGON((109.15412537651648 18.33292898400856,109.15414451156408 18.33293727703712,109.15415954142809 18.331308849767996,109.15415695380635 18.331067639473183,109.15413798111571 18.331089811465688,109.15414034671478 18.3313088685252,109.15412537651648 18.33292898400856))";
@@ -126,28 +129,20 @@ export default {
     active_tableData(newVal) {
       this.checkdata = [[], []];
       newVal.forEach((res, index) => {
-        // console.log(res);
         this.checkdata[0].push(res.dlbmmc);
-        this.checkdata[1].push(res.dlbmmc);
+        // this.checkdata[1].push(res.dlbmmc);
         if (res.qgeom)
-          loadGeoJSON(res.qgeom, "#55A1E3", { isfly: true }, (data) => {
+          loadGeoJSON(res.qgeom, res.dict_color, { isfly: true }, (data) => {
             geoSources[res.dlbmmc + "q"] = data;
             data.name = "fpdb";
-            // data.entities.values.forEach((entity) => {
-            //   entity.properties = { type: "图斑上图", id: res.id };
-            // });
-            geoSources[res.dlbmmc + "q"].setVisibleInViewport(1, false);
-            // geoSources[res.dlbmmc + "q"].setVisibleInViewport(0, false);
+            data.setVisibleInViewport(1, false);
+          });
+        if (res.hgeom)
+          loadGeoJSON(res.hgeom, res.dict_color, { isfly: true }, (data) => {
+            geoSources[res.dlbmmc + "h"] = data;
+            data.name = "fpdb";
+            data.setVisibleInViewport(0, false);
           });
-        // if (res.hgeom)
-        //   loadGeoJSON(res.hgeom, "#55A1E3", { isfly: true }, (data) => {
-        //     geoSources[res.dlbmmc + "h"] = data;
-        //     data.name = "fpdb";
-        //     // data.entities.values.forEach((entity) => {
-        //     //   entity.properties = { type: "图斑上图", id: res.id };
-        //     // });
-        //     data.setVisibleInViewport(0, false);
-        //   });
       });
     },
     removeGeoJSON() {

+ 129 - 101
src/views/farmlandProtection/gdzl/index.vue

@@ -1,114 +1,138 @@
 <template>
-  <div class="gdzl">
-    <div class="el-col headerSelect">
-      <el-select v-model="year" placeholder="请选择" size="mini">
-        <el-option
-          v-for="item in yearList"
-          :key="item.value"
-          :label="item.label"
-          :value="item.value"
-        >
-        </el-option>
-      </el-select>
-      <!-- clearable -->
-      <el-cascader
-        v-model="region"
-        :show-all-levels="false"
-        :options="store.state.region_tree"
-        @change="regionChange"
-        placeholder="行政区"
-        size="mini"
-        :props="{
-          checkStrictly: true,
-          expandTrigger: 'hover',
-          emitPath: false,
-        }"
-      ></el-cascader>
+  <div class="innerContainer leftPane" v-drag>
+    <h2 class="Pangetitle darg-div el-col">
+      <span class="pange_text"
+        >{{ type == "gdzl" ? "耕地总览" : "永久基本农田" }}
+      </span>
+      <div class="region">
+        <el-select v-model="year" placeholder="请选择" size="mini">
+          <el-option
+            v-for="item in yearList"
+            :key="item.value"
+            :label="item.label"
+            :value="item.value"
+          >
+          </el-option>
+        </el-select>
+      </div>
+    </h2>
+    <div class="xz_box">
+      <div class="gdzl">
+        <div class="el-col headerSelect">
+          <el-select v-model="year" placeholder="请选择" size="mini">
+            <el-option
+              v-for="item in yearList"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            >
+            </el-option>
+          </el-select>
+          <!-- clearable -->
+          <el-cascader
+            v-model="region"
+            :show-all-levels="false"
+            :options="store.state.region_tree"
+            @change="regionChange"
+            placeholder="行政区"
+            size="mini"
+            :props="{
+              checkStrictly: true,
+              expandTrigger: 'hover',
+              emitPath: false,
+            }"
+          ></el-cascader>
 
-      <el-select v-model="gtype" placeholder="请选择" size="mini">
-        <el-option
-          v-for="item in typeList"
-          :key="item.label"
-          :label="item.label"
-          :value="item.label"
-        >
-        </el-option>
-      </el-select>
-      <!-- <div class="region">
+          <el-select v-model="gtype" placeholder="请选择" size="mini">
+            <el-option
+              v-for="item in typeList"
+              :key="item.label"
+              :label="item.label"
+              :value="item.label"
+            >
+            </el-option>
+          </el-select>
+          <!-- <div class="region">
       </div> -->
-    </div>
-    <div class="echars">
-      <div class="echartTitle">
-        <div class="block-title">{{ gtype }}总量</div>
-      </div>
-      <div class="content gdzlc">
-        <div class="item" v-for="zl in zllist[gtype]" :key="zl.name">
-          <div class="icon">
-            <div class="iicon"></div>
+        </div>
+        <div class="echars">
+          <div class="echartTitle">
+            <div class="block-title">{{ gtype }}总量</div>
           </div>
-          <div class="text">
-            <p>{{ zl.name }}</p>
-            <span class="cvalue"
-              >{{ (sdata.a || 0).toFixed(2) }} {{ zl.unit }}</span
-            >
+          <div class="content gdzlc">
+            <div class="item" v-for="zl in zllist[gtype]" :key="zl.name">
+              <div class="icon">
+                <div class="iicon"></div>
+              </div>
+              <div class="text">
+                <p>{{ zl.name }}</p>
+                <span class="cvalue"
+                  >{{ (sdata.a || 0).toFixed(2) }} {{ zl.unit }}</span
+                >
+              </div>
+            </div>
           </div>
-        </div>
-      </div>
-      <div class="content scontent" v-show="gtype == '耕地'">
-        <div class="item" v-for="(sd, index) in sdlist" :key="index">
-          <div class="text">
-            <p>{{ sd.name }}</p>
-            <span class="cvalue">{{ (sdata[sd.prop] || 0).toFixed(2) }} </span>
-            <span class="unit">{{ sd.unit }}</span>
+          <div class="content scontent" v-show="gtype == '耕地'">
+            <div class="item" v-for="(sd, index) in sdlist" :key="index">
+              <div class="text">
+                <p>{{ sd.name }}</p>
+                <span class="cvalue">
+                  {{ (sdata[sd.prop] || 0).toFixed(2) }}
+                </span>
+                <span class="unit">{{ sd.unit }}</span>
+              </div>
+            </div>
           </div>
         </div>
-      </div>
-    </div>
-    <div class="echars">
-      <div class="echartTitle">
-        <div class="block-title">{{ `${gtype}增减` }}变化情况</div>
-        <div class="titlesel" v-show="gtype == '耕地'">
-          对比年份
-          <div class="selectTab">
-            <el-select
-              v-model="tab"
-              placeholder="请选择"
-              :popper-append-to-body="false"
-              @change="Getxzxx()"
-            >
-              <el-option
-                v-for="item in yearList"
-                :key="item.value"
-                :label="item.label"
-                :value="item.value"
-              >
-              </el-option>
-            </el-select>
+        <div class="echars">
+          <div class="echartTitle">
+            <div class="block-title">{{ `${gtype}增减` }}变化情况</div>
+            <div class="titlesel" v-show="gtype == '耕地'">
+              对比年份
+              <div class="selectTab">
+                <el-select
+                  v-model="tab"
+                  placeholder="请选择"
+                  :popper-append-to-body="false"
+                  @change="Getxzxx()"
+                >
+                  <el-option
+                    v-for="item in yearList"
+                    :key="item.value"
+                    :label="item.label"
+                    :value="item.value"
+                  >
+                  </el-option>
+                </el-select>
+              </div>
+              <div class="usable">更多</div>
+            </div>
           </div>
-          <div class="usable">更多</div>
-        </div>
-      </div>
-      <div class="content scontent" v-show="gtype == '耕地'">
-        <div class="item" v-for="(bh, index) in bhlist" :key="index">
-          <div class="text">
-            <p>{{ bh.name }}</p>
-            <span class="cvalue">{{ (sdata[bh.prop] || 0).toFixed(2) }} </span>
-            <span class="unit">{{ bh.unit }}</span>
+          <div class="content scontent" v-show="gtype == '耕地'">
+            <div class="item" v-for="(bh, index) in bhlist" :key="index">
+              <div class="text">
+                <p>{{ bh.name }}</p>
+                <span class="cvalue">
+                  {{ (sdata[bh.prop] || 0).toFixed(2) }}
+                </span>
+                <span class="unit">{{ bh.unit }}</span>
+              </div>
+            </div>
           </div>
+          <div class="pietitle" v-show="gtype == '耕地'">历年变化情况</div>
+          <bar class="pie_echart" ref="echartRef0"></bar>
+        </div>
+        <div class="echars gqgd">
+          <Statistics
+            :title="`各区${gtype}分布`"
+            :cityList="cityList"
+            :height="gtype == '耕地' ? 180 : 260"
+            :text="`占全市${gtype}`"
+            textunit="%"
+          ></Statistics>
+          <!-- <sidebar v-if="!sidebar.hide" class="sidebar-container" /> -->
         </div>
       </div>
-      <div class="pietitle" v-show="gtype == '耕地'">历年变化情况</div>
-      <bar class="pie_echart" ref="echartRef0"></bar>
-    </div>
-    <div class="echars gqgd">
-      <Statistics
-        :title="`各区${gtype}分布`"
-        :cityList="cityList"
-        :height="gtype == '耕地' ? 180 : 260"
-        :text="`占全市${gtype}`"
-        textunit="%"
-      ></Statistics>
-      <!-- <sidebar v-if="!sidebar.hide" class="sidebar-container" /> -->
     </div>
   </div>
 </template>
@@ -121,7 +145,11 @@ import { QueryOne, QueryList } from "@/api/cockpitNew";
 import { legends } from "../config.js";
 import { loadGeoJSON } from "@/utils/MapHelper/help.js";
 export default {
-  props: {},
+  props: {
+    type: {
+      type: String,
+    },
+  },
   data() {
     return {
       year: "",

+ 11 - 27
src/views/farmlandProtection/indexNew.vue

@@ -15,34 +15,18 @@
         </ul>
       </div>
     </div>
-    <div class="innerContainer leftPane" v-drag v-show="activeIndex == 0 || activeIndex == 1">
-      <h2 class="Pangetitle darg-div el-col">
-        <span class="pange_text">{{ checkList[activeIndex].title }} </span>
-        <i class="document el-icon-document" @click="drawer = !drawer"></i>
-        <div class="region">
-          <!-- clearable -->
-          <el-cascader
-            v-model="xzqh"
-            :show-all-levels="false"
-            :options="store.state.region_tree"
-            @change="regionChange"
-            placeholder="行政区"
-            size="mini"
-            :props="{
-              checkStrictly: true,
-              expandTrigger: 'hover',
-              emitPath: false,
-            }"
-          ></el-cascader>
-        </div>
-      </h2>
-      <div class="xz_box">
-        <Gdzl v-loading="loading" @updateParent="changeData" ref="gdzl"></Gdzl>
-      </div>
-    </div>
+    <Gdzl
+      v-show="activeIndex == 0 || activeIndex == 1"
+      :type="activeIndex"
+      ref="gdzl"
+    ></Gdzl>
     <Jctb v-show="activeIndex == 2"></Jctb>
     <Fzyp v-show="activeIndex == 3"></Fzyp>
-    <div class="innerContainer legendPane" v-drag v-show="activeIndex == 0 || activeIndex == 1">
+    <div
+      class="innerContainer legendPane"
+      v-drag
+      v-show="activeIndex == 0 || activeIndex == 1"
+    >
       <div class="xz_box">
         图例
         <div v-for="(litem, li) in legends" :key="litem.label">
@@ -88,7 +72,7 @@ export default {
       drawer: false,
       xzqh: "",
       checkList: [
-        { title: "耕地总览" },
+        { title: "耕地" },
         { title: "永久基本农田" },
         { title: "监测图斑" },
         { title: "辅助研判" },