北京经济技术开发区经开区虚拟城市项目-【前端】-Web
lixuliang
2024-05-08 10ecfd0b60442d209d1ab4b749580ffb638d1992
src/components/map/viewer1.vue
@@ -3,12 +3,19 @@
    <div id="sdkContainer1" style="height: 100%"></div>
    <div class="listBox" v-show="!isLand">
      <ul id="viewer1_lsyx">
        <li v-for="(item, index) in arr" :key="index" @click="changeLeftMap($event, item, index)">
        <li
          v-for="(item, index) in arr"
          :key="index"
          @click="changeLeftMap($event, item, index)"
        >
          {{ item }}
        </li>
      </ul>
    </div>
    <layerTreeTwoScreenRight v-if="layerTreeTwoScreen" id="layerTreeTwoScreen111" />
    <layerTreeTwoScreenRight
      v-if="layerTreeTwoScreen"
      id="layerTreeTwoScreen111"
    />
    <div class="tdInfo" v-if="showTDinfo">
      <div class="tdInfo_close" @click="tdInfoClose">×</div>
      <p v-if="dikuanxinxi" class="noInfo">暂无该地块信息</p>
@@ -45,7 +52,12 @@
        <div v-else class="title">
          <li>
            企业
            <el-tooltip class="item" effect="dark" content="点击查看企业信息" placement="bottom">
            <el-tooltip
              class="item"
              effect="dark"
              content="点击查看企业信息"
              placement="bottom"
            >
              <a @click="showYZCQY"> {{ qysl }}</a>
            </el-tooltip>
            家
@@ -53,58 +65,108 @@
        </div>
      </ul>
    </div>
    <div :style="{
      width: `${size}`,
      height: `${size}`,
      transform: `scale(${scale}) translate(${offset},${offset})`,
      '-webkit-transform': `scale(${scale}) translate(${offset},${offset})`,
      '-moz-transform': `scale(${scale}) translate(${offset},${offset})`,
      '-o-transform': `scale(${scale}) translate(${offset},${offset})`,
      '-ms-transform': `scale(${scale}) translate(${offset},${offset})`,
    }">
      <el-dialog class="aboutDialog" title="企业信息" append-to-body width="50%" height="55%" style="overflow: auto"
        :visible.sync="QYbox" :before-close="dialogClose">
    <div
      :style="{
        width: `${size}`,
        height: `${size}`,
        transform: `scale(${scale}) translate(${offset},${offset})`,
        '-webkit-transform': `scale(${scale}) translate(${offset},${offset})`,
        '-moz-transform': `scale(${scale}) translate(${offset},${offset})`,
        '-o-transform': `scale(${scale}) translate(${offset},${offset})`,
        '-ms-transform': `scale(${scale}) translate(${offset},${offset})`,
      }"
    >
      <el-dialog
        class="aboutDialog"
        title="企业信息"
        append-to-body
        width="50%"
        height="60%"
        style="overflow: auto"
        :visible.sync="QYbox"
        :before-close="dialogClose"
      >
        <div class="el-dialog-div">
          <div class="inquire">
            <el-form size="medium" ref="queryForm" :model="queryForm" :inline="true">
              <el-form-item label="查询内容" prop="name">
                <el-input v-model="queryForm.content" placeholder="请输入查询内容" />
            <el-form
              size="mini"
              ref="queryForm"
              :model="queryForm"
              :inline="true"
            >
              <el-form-item label="查询条件" prop="name">
                <el-input
                  v-model="queryForm.content"
                  placeholder="请输入要查询的企业名称"
                />
              </el-form-item>
              <el-form-item>
                <el-button @click="queryInfo('queryForm')" icon="el-icon-search" class="primary">查询</el-button>
                <el-button
                  @click="queryInfo('queryForm')"
                  icon="el-icon-search"
                  class="primary"
                  >查询</el-button
                >
              </el-form-item>
            </el-form>
          </div>
          <el-table fit style="width: 100%" :data="tableData" highlight-current-row height="50">
            <el-table-column type="index" width="50"></el-table-column>
            <el-table-column property="企业名称" label="企业名称"></el-table-column>
            <!-- <el-table-column
          <el-table
            fit
            style="width: 100%"
            :data="tableData"
            highlight-current-row
            height="50"
          >
            <el-table-column type="index" width="40"></el-table-column>
            <el-table-column
              property="企业名称"
              label="企业名称"
              min-width="220"
            ></el-table-column>
            <el-table-column
              property="企业类型"
              label="企业类型"
              min-width="220"
            ></el-table-column>
            <el-table-column
              property="成立时间"
              label="成立时间"
              min-width="90"
            ></el-table-column>
            <el-table-column
            <!-- <el-table-column
              property="所属行业"
              label="所属行业"
            ></el-table-column>
            <el-table-column
              property="法人"
              label="法人"
              width="100"
            ></el-table-column> -->
            <el-table-column property="注册地址" label="注册地址"></el-table-column>
            <el-table-column label="操作" width="100">
            <el-table-column property="法人" label="法人"></el-table-column>
            <!-- <el-table-column
              property="注册地址"
              label="注册地址"
            ></el-table-column> -->
            <el-table-column label="操作" width="60">
              <template slot-scope="scope">
                <el-button @click="handleClick(scope.row)" type="text" size="small">详情</el-button>
                <el-button
                  @click="handleClick(scope.row)"
                  type="text"
                  size="small"
                  >详情</el-button
                >
              </template>
            </el-table-column>
          </el-table>
          <div slot="footer" class="dialog-footer" style="text-align: center; margin-top: 5px">
            <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange"
              :current-page.sync="currentPage" :page-size="10" :pager-count="11" layout="total, pager" :total="searchNum">
          <div
            slot="footer"
            class="dialog-footer"
            style="text-align: center; margin-top: 2px"
          >
            <el-pagination
              @size-change="handleSizeChange"
              @current-change="handleCurrentChange"
              :current-page.sync="currentPage"
              :page-size="10"
              :pager-count="11"
              layout="total, pager"
              :total="searchNum"
            >
            </el-pagination>
          </div>
        </div>
@@ -178,7 +240,7 @@
      offset: "0%",
    };
  },
  created() { },
  created() {},
  computed: {
    ...mapState(["viewer1Show", "isLand", "layerTreeTwoScreen"]),
  },
@@ -199,8 +261,6 @@
            );
          }
        }, 2000);
      },
    },
    isLand(newvalue, oldvalue) {
@@ -225,6 +285,13 @@
    },
  },
  mounted() {
    let pathName = window.location.pathname.split("/");
    let StaticFileBaseUrl;
    if (pathName.length != 2) {
      StaticFileBaseUrl = `../../../${pathName[1]}/static/CimSDK/`;
    } else {
      StaticFileBaseUrl = `../../../static/CimSDK/`;
    }
    let size = this.detectZoom();
    this.scale = (100 / size).toFixed(2);
    this.offset = "-" + ((size - 100) / 2).toFixed(2) + "%";
@@ -248,8 +315,7 @@
      window.sgworld1 = new SmartEarth.EarthCtrl(
        "sdkContainer1",
        {
          StaticFileBaseUrl: "../../static/CimSDK/",
          // StaticFileBaseUrl: "../../../SW/static/CimSDK/",
          StaticFileBaseUrl: StaticFileBaseUrl,
        },
        {},
        null,
@@ -267,8 +333,7 @@
          );
          if (this.isLand) {
            this.loadTDGLLayer();
          }
          else {
          } else {
            this.initLSYX();
          }
          var p = {
@@ -312,7 +377,7 @@
  methods: {
    initLSYX() {
      let ul = document.getElementById("viewer1_lsyx");
      let lis = ul.getElementsByTagName('li');
      let lis = ul.getElementsByTagName("li");
      lis[9].click();
    },
    setImageComparison(isStart) {
@@ -353,8 +418,7 @@
      nLayer = this.loadBJ54ImageLayer(year);
      if (!LWLayer1 || Viewer1.imageryLayers.indexOf(LWLayer1) < 0) {
        if(LWLayer1)
        {
        if (LWLayer1) {
          LWLayer1.destroy();
        }
        LWLayer1 = this.loadBJ54LWLayer1();
@@ -470,8 +534,6 @@
          } else {
            p = sgworld1.Navigate.getMousePosition(event);
          }
          // alert(JSON.stringify(p))
          // console.log(p);
          if (p) {
            if (line) {
              sgworld.Creator.DeleteObject(line);
@@ -491,11 +553,12 @@
            }
            axios
              .get(
                "http://10.10.4.115:8022/geowinmap_xncs/ds?r=0.9158559377752831&serviceproviderid=map.vectorserviceprovider&serviceid=queryfeature&featcls=225%25E8%258C%2583%25E5%259B%25B4%25E5%2588%2586%25E5%258C%25BA%25E8%25A7%2584%25E5%2588%2592.geojson&lng=" +
                p.lon +
                "&lat=" +
                p.lat +
                "&geom=true&requesttype=json"
                `http://10.10.4.116:8089/cs/geowinmap_xncs/ds?lng=${p.lon}&lat=${p.lat}`
                // "http://10.10.4.115:8022/geowinmap_xncs/ds?r=0.9158559377752831&serviceproviderid=map.vectorserviceprovider&serviceid=queryfeature&featcls=225%25E8%258C%2583%25E5%259B%25B4%25E5%2588%2586%25E5%258C%25BA%25E8%25A7%2584%25E5%2588%2592.geojson&lng=" +
                // p.lon +
                // "&lat=" +
                // p.lat +
                // "&geom=true&requesttype=json"
              )
              .then((response) => {
                let center = { lon: 0, lat: 0 };
@@ -539,8 +602,9 @@
                if (center.lon != 0 && center.lat != 0) {
                  axios
                    .get(
                      "http://10.10.4.115:8022//poisearch/guihuacon/getInfo?ydbm=" +
                      response.data.NO
                      "http://10.10.4.116:8089/cs/poisearch/guihuacon/getInfo?ydbm=" +
                        // "http://10.10.4.115:8022//poisearch/guihuacon/getInfo?ydbm=" +
                        response.data.NO
                    )
                    .then(
                      (info) => {
@@ -576,10 +640,10 @@
                          }
                          try {
                            this.ydlx = data.yongdishuju["ydlxmc"];
                          } catch (e) { }
                          } catch (e) {}
                          try {
                            this.cyfx = data.yongdishuju["cyfx"];
                          } catch (e) { }
                          } catch (e) {}
                          try {
                            // this.crzt = response.data["ZT"];
                            switch (response.data["ZT"]) {
@@ -590,28 +654,28 @@
                                this.crzt = "未出让";
                                break;
                            }
                          } catch (e) { }
                          } catch (e) {}
                          try {
                            this.ydmj = parseFloat(
                              "" + data.yongdishuju["ydmj"]
                            ).toFixed(0);
                          } catch (e) { }
                          } catch (e) {}
                          try {
                            this.crnx = data.churangxinxi["crnx"];
                          } catch (e) { }
                          } catch (e) {}
                          try {
                            this.crnf = data.churangxinxi["crnf"];
                          } catch (e) { }
                          } catch (e) {}
                          try {
                            this.rjl = data.yongdishuju["rjl"];
                          } catch (e) { }
                          } catch (e) {}
                          try {
                            this.jzxg = data.yongdishuju["jzxg"];
                          } catch (e) { }
                          } catch (e) {}
                          try {
                            this.jzmd = data.yongdishuju["jzmd"];
                          } catch (e) { }
                        } catch (e) { }
                          } catch (e) {}
                        } catch (e) {}
                      },
                      (info) => {
                        this.$notify.error({
@@ -695,8 +759,8 @@
    handleClick(row) {
      window.open(
        "https://qylweb.bda.gov.cn/alldetails/#/newEnterprisedetails?uscc=" +
        row["统一社会信用代码"] +
        "&systemName=中小微"
          row["统一社会信用代码"] +
          "&systemName=中小微"
      );
    },
    detectZoom() {
@@ -1214,14 +1278,14 @@
  box-shadow: 0px 1px 10px 0px rgba(3, 10, 26, 0.38);
}
.aboutDialog>>>.el-dialog__body {
.aboutDialog >>> .el-dialog__body {
  height: 77%;
  padding: 0px !important;
  padding: 15px !important;
  padding: 10px 10px 8px !important;
}
.aboutDialog>>>.el-dialog__header {
  padding: 10px 20px;
.aboutDialog >>> .el-dialog__header {
  padding: 10px 20px 0;
  height: 25px;
  line-height: 25px;
  font-weight: bold;
@@ -1229,29 +1293,32 @@
  background: transparent;
}
.aboutDialog>>>.el-dialog__title {
.aboutDialog >>> .el-dialog__title {
  color: #fff;
  font-size: 1.1rem;
  font-size: 18px;
}
.aboutDialog>>>.el-dialog__headerbtn .el-dialog__close {
.aboutDialog >>> .el-dialog__headerbtn .el-dialog__close {
  color: #fff;
}
.aboutDialog>>>.el-dialog__headerbtn:hover .el-dialog__close {
.aboutDialog >>> .el-dialog__headerbtn:hover .el-dialog__close {
  color: #fff;
}
.aboutDialog>>>.el-dialog__headerbtn {
.aboutDialog >>> .el-dialog__headerbtn {
  top: 13px;
}
.aboutDialog>>>.el-form-item {
.aboutDialog >>> .el-form-item {
  margin-top: 5px;
  margin-bottom: 10px;
}
.el-form>>>.el-form-item__label {
.el-form >>> .el-form-item__label {
  color: #fff;
  margin-left: 10px;
  font-size: 16px;
}
.aboutDialog .el-dialog-div {
@@ -1281,8 +1348,11 @@
  width: 383px;
}
.el-table /deep/ th {
.el-table /deep/ th,
.el-table /deep/ td {
  background-color: transparent;
  padding-top: 4px;
  padding-bottom: 4px;
}
.el-table /deep/ tr {
@@ -1304,41 +1374,42 @@
  background-color: transparent;
}
.el-table /deep/ .el-table__body tr.current-row>td {
.el-table /deep/ .el-table__body tr.current-row > td {
  background-color: transparent;
}
.el-table--enable-row-hover /deep/ .el-table__body tr:hover>td {
.el-table--enable-row-hover /deep/ .el-table__body tr:hover > td {
  background-color: rgba(0, 32, 70, 0.7) !important;
}
.el-table__body /deep/ tr.current-row>td {
.el-table__body /deep/ tr.current-row > td {
  background-color: rgba(0, 32, 70, 0.7) !important;
}
.aboutDialog .el-dialog-div .dialog-footer {}
.aboutDialog .el-dialog-div .dialog-footer {
}
.el-pagination {
  color: #fff;
}
.el-pagination>>>.el-pagination__total,
.el-pagination>>>.btn-next,
.el-pagination>>>.btn-prev {
.el-pagination >>> .el-pagination__total,
.el-pagination >>> .btn-next,
.el-pagination >>> .btn-prev {
  background: transparent;
  color: #fff;
  font-size: 1rem;
  font-size: 14px;
}
.el-pagination>>>.el-pager li {
.el-pagination >>> .el-pager li {
  line-height: 27px;
  background-color: transparent;
  font-size: 1rem;
  font-size: 14px;
}
.el-pagination>>>.el-pager li.btn-quicknext,
.el-pagination>>>.el-pager li.btn-quickprev {
  font-size: 1rem;
.el-pagination >>> .el-pager li.btn-quicknext,
.el-pagination >>> .el-pager li.btn-quickprev {
  font-size: 14px;
  line-height: 28px;
  color: #fff;
}
@@ -1365,13 +1436,95 @@
/* 屏幕分辨率放大为 125 */
@media (-webkit-min-device-pixel-ratio: 1.25) {
  .tdInfo_close {
    position: absolute;
    right: 10px;
    top: 8px;
    border-radius: 3px;
    width: 20px;
    height: 20px;
    background-color: rgba(0, 0, 0, 0.2);
    cursor: pointer;
    text-align: center;
    line-height: 19px;
    font-size: 20px;
  }
  .tdInfo .title li {
    margin-left: 25px;
    line-height: 25px;
    font-size: 15px;
    font-weight: bold;
    background: linear-gradient(0deg, #9cd2ff 0%, #ffffff 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
  }
  .content1,
  .content2,
  .content3 {
    /* width: 100%; */
    box-sizing: border-box;
    /* margin-left: 42px; */
    min-width: 220px;
    max-width: 280px;
    margin: 0 25px;
    display: flex;
    padding: 10px 0;
  }
  .content1 li,
  .content2 li,
  .content3 li {
    font-size: 13px;
  }
  .tdInfo a {
    font-size: 16px;
  }
  .listBox li {
    font-size: 12px;
  }
  .aboutDialog >>> .el-dialog__title {
    color: #fff;
    font-size: 14px;
  }
  .el-table {
    font-size: 12px;
  }
  .el-table /deep/ .el-button--text {
    font-size: 12px;
  }
  .el-form >>> .el-form-item__label {
    font-size: 13px;
  }
  .el-pagination >>> .el-pager li {
    font-size: 13px;
  }
  .el-pagination >>> .el-pagination__total,
  .el-pagination >>> .btn-next,
  .el-pagination >>> .btn-prev {
    font-size: 12px;
  }
  .el-pagination >>> .el-pager li.btn-quicknext,
  .el-pagination >>> .el-pager li.btn-quickprev {
    font-size: 12px;
  }
  .inquire >>> .el-form-item--mini .el-form-item__content,
  .inquire >>> .el-form-item--mini .el-form-item__label {
    line-height: 24px;
  }
  .inquire >>> .el-input__inner {
    height: 26px;
    line-height: 26px;
  }
  .inquire >>> .el-button--mini {
    padding: 6px 11px;
  }
  .inquire >>> .el-form-item {
    margin-right: 5px;
  }
}
.listBox li:hover {