Browse Source

问题修改

lkk 10 months ago
parent
commit
dc7db856a3

+ 15 - 14
src/components/Query/clickQuery/clickQuery.vue

@@ -441,17 +441,18 @@ export default {
                 parseJson.forEach((p) => {
                   //将数据改为大写
                   p.fieldname = p.fieldname.toUpperCase();
-                  //判断数据是否存在
-                  index = e.features[u].fieldNames.indexOf(p.fieldname);
-                  if (index > -1 && p.fieldaliasname != p.fieldname) {
-                    //如果数据存在数组中并且进行了修改,找到它对应的下标对数据进行替换
-                    e.features[u].fieldNames[index] = p.fieldaliasname;
-                  }
                   let index1 = linSAr.fieldNames.indexOf(p.fieldname);
                   if (index1 > -1 && !condition(p)) {
                     this.$delete(linSAr.fieldNames, index1);
                     this.$delete(linSAr.fieldValues, index1);
                   }
+
+                  //判断数据是否存在
+                  index = linSAr.fieldNames.indexOf(p.fieldname);
+                  if (index > -1 && p.fieldaliasname != p.fieldname) {
+                    //如果数据存在数组中并且进行了修改,找到它对应的下标对数据进行替换
+                    linSAr.fieldNames[index] = p.fieldaliasname;
+                  }
                 });
               }
               function condition(ci) {
@@ -459,14 +460,14 @@ export default {
               }
               if (e.features[u].fieldNames) {
                 linSAr.fieldNames.forEach((fieldName, i) => {
-                    let v = linSAr.fieldValues[i];
-                    if (!isNaN(parseFloat(v))) {
-                      v = Math.round(parseFloat(v) * 100) / 100;
-                    }
-                    cur.push({
-                      name: fieldName,
-                      value: v,
-                    });
+                  let v = linSAr.fieldValues[i];
+                  if (!isNaN(parseFloat(v))) {
+                    v = Math.round(parseFloat(v) * 100) / 100;
+                  }
+                  cur.push({
+                    name: fieldName,
+                    value: v,
+                  });
                 });
                 // e.features[u].fieldNames.forEach((fieldName, i) => {
                 //   if (

+ 14 - 0
src/router/index.js

@@ -62,6 +62,20 @@ export const constantRoutes = [{
             import('@/views/billboardplan'),
         hidden: true
     },
+    // 拆迁补预估
+    {
+        path: '/demolitioncom',
+        component: () =>
+            import('@/views/demolitioncom'),
+        hidden: true
+    },
+    // 基准地价分析
+    {
+        path: '/baselandprice',
+        component: () =>
+            import('@/views/baselandprice'),
+        hidden: true
+    },
     {
         path: '/siteselection',
         component: () =>

+ 22 - 16
src/views/ConstructionApplication3D/NightscapeAnalysis/NightscapeAnalysis.vue

@@ -238,8 +238,9 @@ export default {
 
       // 是否开启夜景
       if (!isNight) {
-        scene.layers.find("白天").visible = true;
-        scene.layers.find("夜晚").visible = false;
+        if (scene.layers.find("白天")) scene.layers.find("白天").visible = true;
+        if (scene.layers.find("夜晚"))
+          scene.layers.find("夜晚").visible = false;
         scene.sun.show = true;
         this.clearLightSource(true, true);
 
@@ -250,10 +251,13 @@ export default {
         viewer.imageryLayers.remove(this.imageLayer);
       } else {
         scene.sun.show = false;
-        scene.layers.find("白天").visible = false;
-        scene.layers.find("夜晚").visible = true;
+        if (scene.layers.find("白天"))
+          scene.layers.find("白天").visible = false;
+        if (scene.layers.find("夜晚")) scene.layers.find("夜晚").visible = true;
         // 泛光线底纹
-        let roadLine1 = Cesium.GeoJsonDataSource.load("static/data/fg.json");
+        let roadLine1 = Cesium.GeoJsonDataSource.load(
+          window.NightLightUrl.csfgx
+        );
 
         roadLine1
           .then(function (dataSource) {
@@ -273,7 +277,9 @@ export default {
           .otherwise(function (error) {
             window.alert(error);
           });
-        let roadLine2 = Cesium.GeoJsonDataSource.load("static/data/fg.json");
+        let roadLine2 = Cesium.GeoJsonDataSource.load(
+          window.NightLightUrl.csfgx
+        );
         //泛光亮线
         roadLine2
           .then(function (dataSource) {
@@ -295,7 +301,7 @@ export default {
           });
 
         //一山湖灯光
-        Cesium.loadJson("static/data/lightPoint3D.json").then((response) => {
+        Cesium.loadJson(window.NightLightUrl.yshdg).then((response) => {
           let features = response.features;
           features.forEach((element) => {
             let p = element.geometry.coordinates;
@@ -310,7 +316,7 @@ export default {
               p[2]
             );
             var SpotLightOptions3 = {
-              cutoffDistance: 50,
+              cutoffDistance: 120,
               color: Cesium.Color.ORANGE,
               decay: 1,
               intensity: 2,
@@ -326,7 +332,7 @@ export default {
         });
 
         // 体育场灯光
-        Cesium.loadJson("static/data/bpLight.json").then((response) => {
+        Cesium.loadJson(window.NightLightUrl.tycdg).then((response) => {
           let features = response.features;
           features.forEach((element) => {
             let p = element.geometry.coordinates;
@@ -352,7 +358,7 @@ export default {
           });
         });
         // // 道路灯光
-        Cesium.loadJson("static/data/New_Point3D.json").then((response) => {
+        Cesium.loadJson(window.NightLightUrl.dldg).then((response) => {
           let features = response.features;
           features.forEach((element) => {
             let p = element.geometry.coordinates;
@@ -362,7 +368,7 @@ export default {
               p[2] + 20
             );
             var SpotLightOptions3 = {
-              cutoffDistance: 130,
+              cutoffDistance: 110,
               color: new Cesium.Color(209 / 255, 209 / 255, 147 / 255, 0.5),
               decay: 1,
               intensity: 1,
@@ -377,7 +383,7 @@ export default {
           });
         });
         // 草坪灯光
-        Cesium.loadJson("static/data/BPGYLight.json").then((response) => {
+        Cesium.loadJson(window.NightLightUrl.cpdg).then((response) => {
           let features = response.features;
           features.forEach((element) => {
             let p = element.geometry.coordinates;
@@ -413,8 +419,7 @@ export default {
             url: "static/images/zt/Nightscape/BlackMarble_2016-1.jpg",
           })
         );
-        this.imageLayer.alpha = 0.8;
-
+        this.imageLayer.alpha = 0.5;
         this.gyTableData.forEach((element) => {
           this.addLightSource(element);
         });
@@ -682,16 +687,17 @@ export default {
         });
       }
     },
+
     /**
      * 流动线
      */
     loadldx() {
       let that = this;
-      Cesium.loadJson("static/data/道路中线_1.json").then((jsonData) => {
+      Cesium.loadJson(window.NightLightUrl.dlzxx).then((jsonData) => {
         debugger;
         jsonData.features.forEach((route) => {
           let list = route.geometry.coordinates.flat(Infinity);
-
+          debugger;
           let dl = viewer.entities.add({
             // 用于打底的线
             polyline: {

+ 73 - 0
src/views/baselandprice.vue

@@ -0,0 +1,73 @@
+<template>
+  <div class="baselandprice"></div>
+</template>
+
+<script>
+import BenchmarkLandPriceAnalysis from "@/views/ConstructionApplication3D/BenchmarkLandPriceAnalysis/BenchmarkLandPrice.vue";
+export default {
+  name: "baselandprice",
+  data() {
+    return {};
+  },
+  created() {},
+  methods: {
+    openDialog(componentName) {
+      // if (this.layerid) this.$layer.close(this.layerid);
+      switch (componentName) {
+        case "BenchmarkLandPriceAnalysis":
+          this.layerid = this.$layer.iframe({
+            content: {
+              content: BenchmarkLandPriceAnalysis, //传递的组件对象
+              parent: this, //当前的vue对象
+              data: {}, //props
+            },
+            offset: [236, 488], //left top  左上角(left=430px/2;top=(800px+header高)/2)
+            area: ["430px", "800px"],
+            title: "基准地价分析",
+            maxmin: false,
+            shade: false, //是否显示遮罩
+            shadeClose: false, //点击遮罩是否关闭
+            cancel: () => {
+              //关闭事件
+              // alert("关闭iframe");
+            },
+          });
+          break;
+
+        default:
+          break;
+      }
+    },
+  },
+  mounted() {
+    this.openDialog("BenchmarkLandPriceAnalysis");
+  },
+};
+</script>
+
+<style lang="scss" scoped>
+.baselandprice {
+  width: 100%;
+  height: 100%;
+  position: absolute;
+}
+
+.innerContainer {
+  width: 350px;
+  height: calc(100% - 20px);
+  position: absolute;
+  background: #041024;
+  z-index: 99;
+  top: 10px;
+  background-image: url("/static/images/homepage/00-底框.png");
+  background-size: 100% 100%;
+}
+
+.leftPane {
+  left: 10px;
+}
+
+.rightPane {
+  right: 10px;
+}
+</style>

+ 71 - 0
src/views/demolitioncom.vue

@@ -0,0 +1,71 @@
+<template>
+  <div class="demolitioncom"></div>
+</template>
+
+<script>
+import DemolitionList from "@/views/ConstructionApplication3D/Demolition/DemolitionList.vue";
+export default {
+  name: "demolitioncom",
+  data() {
+    return {};
+  },
+  created() {},
+  methods: {
+    openDialog(componentName) {
+      // if (this.layerid) this.$layer.close(this.layerid);
+      switch (componentName) {
+        case "DemolitionList":
+          this.layerid = this.$layer.iframe({
+            content: {
+              content: DemolitionList, //传递的组件对象
+              parent: this, //当前的vue对象
+              data: {}, //props
+            },
+            offset: [236, 488], //left top  左上角(left=430px/2;top=(800px+header高)/2)
+            area: ["430px", "800px"],
+            title: "拆迁补偿预估",
+            maxmin: false,
+            shade: false, //是否显示遮罩
+            shadeClose: false, //点击遮罩是否关闭
+            cancel: () => {
+            },
+          });
+          break;
+
+        default:
+          break;
+      }
+    },
+  },
+  mounted() {
+    this.openDialog("DemolitionList");
+  },
+};
+</script>
+
+<style lang="scss" scoped>
+.demolitioncom {
+  width: 100%;
+  height: 100%;
+  position: absolute;
+}
+
+.innerContainer {
+  width: 350px;
+  height: calc(100% - 20px);
+  position: absolute;
+  background: #041024;
+  z-index: 99;
+  top: 10px;
+  background-image: url("/static/images/homepage/00-底框.png");
+  background-size: 100% 100%;
+}
+
+.leftPane {
+  left: 10px;
+}
+
+.rightPane {
+  right: 10px;
+}
+</style>

+ 61 - 46
static/css/index.css

@@ -110,9 +110,29 @@ div::-webkit-scrollbar-track {
   color: white !important;
 }
 
+
+.vl-notify.vl-notify-alert h2.vl-notice-title {
+  line-height: 32px !important;
+  border-bottom: 0px solid #eee !important;
+  background-color: #fff0 !important;
+  background: url(/static/images/popup/modal-title.png) no-repeat !important;
+  background-size: 100% 100% !important;
+}
+
+.vl-notify.vl-notify-iframe {
+  /* background-color: #fff0 !important;
+  background: url(/static/images/popup/background.png) no-repeat !important;
+  background-size: 100% 100% !important; */
+}
+.vl-notify.vl-notify-alert {
+  /* background-color: #fff0 !important;
+  background: url(/static/images/popup/background.png) no-repeat !important;
+  background-size: 100% 100% !important; */
+}
+
 .vl-notify {
   border: none !important;
-  border-radius: .4vw !important;
+  border-radius: 0.4vw !important;
   background: rgba(4, 28, 50, 0.76) !important;
 }
 
@@ -120,29 +140,37 @@ div::-webkit-scrollbar {
   width: 5px;
   height: 5px;
 }
-
 div::-webkit-scrollbar-thumb {
   background: rgba(63, 147, 245, 0.6);
   border-radius: 5px;
 }
-
 div::-webkit-scrollbar-track {
   background: rgba(4, 28, 50, 0.6);
 }
 
 .vl-notice-title {
-  width: auto !important;
-  padding: 0 !important;
-  margin: 0 15px !important;
+  /* margin: 0 15px !important; */
+  /* width: auto !important;
+  padding: 0 40px !important;
+  
   background: unset !important;
   border: none !important;
+  position: relative; */
+
+  /* height: 1.875vw; */
+  color: white;
+  display: flex;
+  flex-flow: row nowrap;
+  align-items: center;
+  padding: 0.3vw 1vw 0.3vw 2.5vw !important;
+  border-bottom-left-radius: 1.4vw;
   position: relative;
 }
 
 .vl-notice-title:after {
   width: 100%;
   height: 4px;
-  content: '';
+  content: "";
   position: absolute;
   left: 0;
   bottom: 0;
@@ -151,8 +179,7 @@ div::-webkit-scrollbar-track {
   z-index: -1;
 }
 
-
-.vl-notice-title>span {
+.vl-notice-title > span {
   font-size: 16px;
   font-weight: 700;
   letter-spacing: 1px;
@@ -166,11 +193,11 @@ div::-webkit-scrollbar-track {
   line-height: 23px;
   padding: 0 5px;
   border-radius: 4px;
-  right: 0 !important;
+  /* right: 0 !important; */
   top: 10px !important;
 }
 
-.lv-icon-maxmini>i {
+.lv-icon-maxmini > i {
   color: #fff !important;
 }
 
@@ -178,35 +205,32 @@ div::-webkit-scrollbar-track {
   display: none;
 }
 
-/* .el-input>input, */
+.el-input > input,
 .el-select-dropdown,
-.el-textarea>textarea {
+.el-textarea > textarea {
   color: #fff !important;
   background-color: rgba(4, 28, 50, 0.5) !important;
   border: 1px solid rgba(15, 122, 200, 0.4) !important;
 }
-
 .el-input .el-input-group__append {
   color: #fff !important;
   background-color: rgba(4, 28, 50, 0.5) !important;
   border: 1px solid rgba(15, 122, 200, 0.4) !important;
 }
-
-.el-input-group__append>button {
+.el-input-group__append > button {
   color: #fff !important;
   background-color: rgba(4, 28, 50, 0.5) !important;
   border: 1px solid rgba(15, 122, 200, 0.4) !important;
   padding: 6px 20px;
 }
-
 .el-select-dropdown__item {
   color: #ebebeb !important;
 }
 
 .el-button--primary,
 .notify-btn-primary {
-  background: #0F7AC8 !important;
-  border-color: #0F7AC8 !important;
+  background: #0f7ac8 !important;
+  border-color: #0f7ac8 !important;
   color: #fff !important;
 }
 
@@ -218,30 +242,28 @@ div::-webkit-scrollbar-track {
 }
 
 .el-icon-search {
-  color: #20A0FC !important;
+  color: #20a0fc !important;
 }
 
-/* .el-button--default,
+.el-button--default,
 .notify-btn-default {
   background: rgba(63, 147, 245, 0.2) !important;
-  border-color: #3F93F5 !important;
+  border-color: #3f93f5 !important;
   color: rgba(182, 224, 255, 1) !important;
-} */
+}
 
 .el-button--default:hover,
 .notify-btn-default:hover {
   background: rgba(63, 148, 245, 0.432) !important;
-  border-color: #3F93F5 !important;
+  border-color: #3f93f5 !important;
   color: rgba(182, 224, 255, 1) !important;
 }
 
-
 .el-select-dropdown__item.hover,
 .el-select-dropdown__item:hover {
   color: #fff !important;
-  background-color: rgba(255, 255, 255, .35) !important;
+  background-color: rgba(255, 255, 255, 0.35) !important;
 }
-
 .el-cascader__dropdown,
 .el-picker-panel,
 .el-picker-panel__footer {
@@ -249,7 +271,6 @@ div::-webkit-scrollbar-track {
   background-color: rgba(4, 28, 50, 0.5) !important;
   border: 1px solid rgba(15, 122, 200, 0.4) !important;
 }
-
 .el-time-panel {
   background-color: rgba(4, 28, 50, 0.85) !important;
 }
@@ -263,14 +284,14 @@ div::-webkit-scrollbar-track {
   background: rgba(63, 148, 245, 0.432) !important;
 }
 
-.el-time-panel__footer>button:nth-child(1),
+.el-time-panel__footer > button:nth-child(1),
 .el-date-table th,
 .el-picker-panel__icon-btn,
 .el-date-picker__header-label {
   color: #fff !important;
 }
 
-.el-pagination>button,
+.el-pagination > button,
 .el-pager li {
   color: #c2c2c2 !important;
   background-color: rgba(4, 28, 50, 0.5) !important;
@@ -285,23 +306,20 @@ div::-webkit-scrollbar-track {
   background-color: rgba(4, 28, 50, 0.5) !important;
 }
 
-
 .el-cascader-node {
   color: #fff !important;
 }
-
 .el-cascader-node:hover {
   color: #fff !important;
-  background-color: rgba(255, 255, 255, .35) !important;
+  background-color: rgba(255, 255, 255, 0.35) !important;
 }
-
 /* .el-cascader-node:not(.is-disabled):hover */
 .el-cascader-node:not(.is-disabled):focus {
   background-color: rgba(4, 28, 50, 0.5) !important;
 }
 
-.el-checkbox__input>.el-checkbox__inner {
-  border: 1px solid #96A9B7;
+.el-checkbox__input > .el-checkbox__inner {
+  border: 1px solid #96a9b7;
   background-color: rgba(4, 28, 50, 0.6);
 }
 
@@ -309,25 +327,22 @@ div::-webkit-scrollbar-track {
 .el-icon-location-outline,
 .el-icon-share,
 .el-icon-delete {
-  color: #20A0FC;
+  color: #20a0fc;
 }
 
-.el-icon-s-operation+a,
-.el-icon-location-outline+a,
-.el-icon-share+a,
-.el-icon-delete+a {
-  color: #CDDEEB;
+.el-icon-s-operation + a,
+.el-icon-location-outline + a,
+.el-icon-share + a,
+.el-icon-delete + a {
+  color: #cddeeb;
 }
 
 .el-pagination__jump {
-  color: #CDDEEB !important;
+  color: #cddeeb !important;
 }
-
 .el-input-number__decrease,
 .el-input-number__increase {
   color: #fff !important;
   background-color: rgba(4, 28, 50, 0.5) !important;
   border: 1px solid rgba(15, 122, 200, 0.4) !important;
 }
-
-/* ---------------------------- */

BIN
static/images/popup/modal-title.png