管道基础大数据平台系统开发-【前端】-新系統界面
src/components/mapsdk.vue
@@ -353,7 +353,12 @@
          <div slot="header">
            <span>{{$store.state.propertiesName.tabDesc || '属性信息'}}</span>
            <div style="float: right; cursor: pointer">
              <el-link type="primary" :underline="false" @click="getAttatchList" style="margin-right: 10px">查看附件</el-link>
              <el-link
                type="primary"
                :underline="false"
                @click="getAttatchList"
                style="margin-right: 10px"
              >查看附件</el-link>
              <i
                class="el-icon-close"
                @click="closeBufferBox(6)"
@@ -369,48 +374,81 @@
              v-for="(value, key) in $store.state.propertiesInfo"
              :key="key"
            >
              <span v-if="key != 'eventid'" style="font-size: 14px;font-weight: bold;margin-right: 5px">{{key}}:</span>
              <span
                v-if="key != 'eventid'"
                style="font-size: 14px;font-weight: bold;margin-right: 5px"
              >{{key}}:</span>
              <span v-if="key != 'eventid'">{{value}}</span>
            </div>
          </div>
        </el-card>
      </div>
      <div
        class="propertiesPop"
        v-if="$store.state.propertiesFlag == '2'"
      >
        <el-card class="box-card">
          <div slot="header">
            <span>{{ $store.state.propertiesInfo.title }}</span>
          </div>
          <div
            class="pointInfoBoxContext"
            style="height:250px;overflow-y: auto"
          >
            <div style="line-height: 20px">岩土名称: {{ $store.state.propertiesInfo.name }}</div>
            <div style="line-height: 20px">岩土类型: {{ $store.state.propertiesInfo.type }}</div>
            <div style="line-height: 20px">层底深度: {{ $store.state.propertiesInfo.botdepth }} 米</div>
            <div style="line-height: 20px">描述: {{ $store.state.propertiesInfo.describe }}</div>
          </div>
        </el-card>
      </div>
      <!--附件列表弹窗-->
      <el-dialog
          title="附件列表"
          :append-to-body="false"
          :visible.sync="showAttach"
          width="30%"
          :close-on-click-modal="false"
        title="附件列表"
        :append-to-body="false"
        :visible.sync="showAttach"
        width="35%"
        :close-on-click-modal="false"
      >
        <div>
          <el-table
              :data="attachList"
              height="100%"
              style="width: 100%"
              border
            :data="attachList"
            height="100%"
            style="width: 100%"
            border
          >
            <el-table-column
                align="center"
                type="index"
                label="序号"
                width="50"
              align="center"
              type="index"
              label="序号"
              width="50"
            />
            <el-table-column
                prop="name"
                label="名称"
                width="150">
              prop="name"
              label="名称"
            >
            </el-table-column>
            <el-table-column
                prop="createTime"
                label="时间"
                width="150">
            </el-table-column>
            <el-table-column
                label="操作"
                width="100">
              label="时间"
              width="180"
            >
              <template slot-scope="scope">
                <el-button v-if="showAttachDetailBtn(scope.row)" @click="showAttachDetail(scope.row)" type="text" size="small">查看</el-button>
                <span>{{format(scope.row.createTime)}}</span>
              </template>
            </el-table-column>
            <el-table-column
              label="操作"
              width="100"
            >
              <template slot-scope="scope">
                <el-button
                  v-if="showAttachDetailBtn(scope.row)"
                  @click="showAttachDetail(scope.row)"
                  type="text"
                  size="small"
                >查看</el-button>
              </template>
            </el-table-column>
          </el-table>
@@ -418,32 +456,32 @@
      </el-dialog>
      <!--附件弹窗-->
      <el-dialog
          title="预览"
          :append-to-body="false"
          :visible.sync="dialog.dialogVisible"
          width="70%"
          :close-on-click-modal="false"
        title="预览"
        :append-to-body="false"
        :visible.sync="dialog.dialogVisible"
        width="70%"
        :close-on-click-modal="false"
      >
        <div
            v-if="dialog.isPdf"
            class="pdfClass"
          v-if="dialog.isPdf"
          class="pdfClass"
        >
          <iframe
              :src="dialog.src"
              type="application/x-google-chrome-pdf"
              width="100%"
              height="100%"
            :src="dialog.src"
            type="application/x-google-chrome-pdf"
            width="100%"
            height="100%"
          >
          </iframe>
        </div>
        <div
            v-if="dialog.isJpg"
            class="pdfClass"
          v-if="dialog.isJpg"
          class="pdfClass"
        >
          <img
              style="width:100%; height:100%;background: red"
              :src="dialog.src"
              alt=""
            style="width:100%; height:100%;"
            :src="dialog.src"
            alt=""
          />
        </div>
      </el-dialog>
@@ -471,7 +509,7 @@
  comprehensive_selectRoute,
  dataLib_selectFiles
} from "../api/api";
import {getToken} from '@/utils/auth'
import { getToken } from '@/utils/auth'
export default {
  name: "",
@@ -566,8 +604,8 @@
        height: '10'
      },
      showLengendDialog: false,
      showAttach:false,
      attachList:[],
      showAttach: false,
      attachList: [],
      dialog: {
        dialogVisible: false,
        isPdf: false,
@@ -1162,11 +1200,11 @@
    },
    //获取附件列表
    async getAttatchList() {
      let tabName = this.$store.state.propertiesName.ns+'.'+this.$store.state.propertiesName.tab;
      let tabName = this.$store.state.propertiesName.ns + '.' + this.$store.state.propertiesName.tab;
      let eventid = this.$store.state.propertiesInfo.eventid;
      var obj = {
        eventid:eventid,
        tabName:tabName,
        eventid: eventid,
        tabName: tabName,
      };
      const res = await dataLib_selectFiles(obj);
      if (res.code != 200) {
@@ -1181,7 +1219,7 @@
      this.showAttach = true;
    },
    //是否显示查看按钮
    showAttachDetailBtn(row){
    showAttachDetailBtn(row) {
      var name = row.name;
      if (name.indexOf('.pdf') != -1 || name.indexOf('.jpg') != -1 || name.indexOf('.gif') != -1 || name.indexOf('.png') != -1 || name.indexOf('.jpeg') != -1) {
        return true;
@@ -1196,19 +1234,19 @@
      this.dialog.isJpg = false;
    },
    //查看附件
    showAttachDetail(row){
    showAttachDetail(row) {
      this.refreshAttatchDetail();
      var name = row.name;
      if (name.indexOf('.pdf') != -1) {
        this.dialog.dialogVisible = true;
        this.dialog.isPdf = true;
        var url = BASE_URL + "/res/downloadForView?guid=" + row.guid + "&token=" + getToken();
        var url = BASE_URL + "/comprehensive/downloadForView?guid=" + row.guid + "&token=" + getToken();
        this.dialog.src = url
      }
      else if (name.indexOf('.jpg') != -1 || name.indexOf('.gif') != -1 || name.indexOf('.png') != -1 || name.indexOf('.jpeg') != -1) {
        this.dialog.dialogVisible = true;
        this.dialog.isJpg = true;
        var url = BASE_URL + "/res/downloadForView?guid=" + row.guid + "&token=" + getToken();
        var url = BASE_URL + "/comprehensive/downloadForView?guid=" + row.guid + "&token=" + getToken();
        this.dialog.src = url
      }
    },
@@ -1223,19 +1261,23 @@
      var mm = time.getMinutes();
      var s = time.getSeconds();
      return (
          y +
          '-' +
          this.add0(m) +
          '-' +
          this.add0(d) +
          ' ' +
          h +
          ':' +
          mm +
          ':' +
          s
        y +
        '-' +
        this.add0(m) +
        '-' +
        this.add0(d) +
        ' ' +
        h +
        ':' +
        mm +
        ':' +
        s
      );
    },
    //格式化时间
    add0(m) {
      return m < 10 ? '0' + m : m;
    },
  },
};
</script>