管道基础大数据平台系统开发-【前端】-新系統界面
surprise
2024-04-22 fa7ba545bb58983c8dab5f96cd1f010a48d7420c
src/views/Tools/ModelProperty.vue
@@ -1,26 +1,18 @@
<template>
  <Popup
    ref="pop"
  <Popup ref="pop"
    :title="title"
    @close="close(true)"
    width="400px"
    @cancel="close(false)"
    top="0vh"
    left="30vh"
  >
    <el-tabs
      v-model="activeName"
      @tab-click="handleClick"
    >
      <el-tab-pane
        label="属性"
        name="first"
      >
        <el-form
          ref="form"
         left="30vh">
    <el-tabs v-model="activeName"
             @tab-click="handleClick">
      <el-tab-pane label="属性"
                   name="first">
        <el-form ref="form"
          :model="formInline"
          label-width="80px"
        >
                 label-width="80px">
          <el-form-item :label="$t('common.name')">
            {{formInline.name}}
          </el-form-item>
@@ -37,49 +29,33 @@
        </el-form>
      </el-tab-pane>
      <el-tab-pane
        label="附件"
        name="second"
      >
      <el-tab-pane label="附件"
                   name="second">
        <el-table
          :data="tableData"
        <el-table :data="tableData"
          ref="filterTable"
          height="calc(100% - 130px)"
          border
          style="width: 100%"
          @selection-change="handleAttatchChange"
        >
          <el-table-column
            type="selection"
            width="70"
          />
          <el-table-column
            width="60"
                  @selection-change="handleAttatchChange">
          <el-table-column type="selection"
                           width="70" />
          <el-table-column width="60"
            type="index"
            :label="$t('common.index')"
          />
          <el-table-column
            prop="name"
            :label="$t('common.name')"
          />
                           :label="$t('common.index')" />
          <el-table-column prop="name"
                           :label="$t('common.name')" />
          <el-table-column
            prop="sizes"
          <el-table-column prop="sizes"
            :label="$t('common.size')"
            :formatter="statSizeChange"
          />
          <el-table-column
            align="center"
                           :formatter="statSizeChange" />
          <el-table-column align="center"
            :label="$t('common.operate')"
            min-width="100"
          >
                           min-width="100">
            <template slot-scope="scope">
              <el-link
                v-if="matchState(scope, /[]/)"
              <el-link v-if="matchState(scope, /[]/)"
                @click="setAttatchDetail(scope.$index, scope.row)"
                class="elLink"
              >{{ $t('common.see') }}</el-link>
                       class="elLink">{{ $t('common.see') }}</el-link>
            </template>
          </el-table-column>
@@ -88,36 +64,26 @@
      </el-tab-pane>
    </el-tabs>
    <el-dialog
      title="预览"
    <el-dialog title="预览"
      :append-to-body="false"
      :visible.sync="dialog.dialogVisible"
      width="70%"
      :modal="false"
      :close-on-click-modal="false"
    >
      <div
        v-if="dialog.isPdf"
        class="pdfClass"
      >
        <iframe
          :src="dialog.src"
               :close-on-click-modal="false">
      <div v-if="dialog.isPdf"
           class="pdfClass">
        <iframe :src="dialog.src"
          type="application/x-google-chrome-pdf"
          width="100%"
          height="100%"
        >
                height="100%">
        </iframe>
      </div>
      <div
        v-if="dialog.isJpg"
        class="pdfClass"
      >
      <div v-if="dialog.isJpg"
           class="pdfClass">
        <el-image
          style="width:100%; height:100%"
        <el-image style="width:100%; height:100%"
          :src="dialog.src"
          :preview-src-list="[dialog.src]"
        >
                  :preview-src-list="[dialog.src]">
        </el-image>
      </div>
@@ -128,7 +94,7 @@
<script>
import Popup from "./Popup";
import { comprehensive_selectFiles, comprehensive_selectModelByGuid } from '../../api/api.js'
import { comprehensive_selectFiles,comprehensive_selectModelByGuid,meta_selectConvertToDwg } from '../../api/api.js'
import { getToken } from "@/utils/auth";
export default {
@@ -225,6 +191,7 @@
        || name.indexOf('.JPEG') != -1
        || name.indexOf('.BMP') != -1
        || name.indexOf('.bmp') != -1
        ||name.indexOf('.dwg')!=-1
      ) {
        return true;
      }
@@ -269,13 +236,26 @@
        || name.indexOf('.PNG') != -1
        || name.indexOf('.JPEG') != -1
        || name.indexOf('.BMP') != -1
        || name.indexOf('.bmp') != -1) {
        ||name.indexOf('.bmp')!=-1
        ||name.indexOf('.BMP')!=-1) {
        this.dialog.dialogVisible = true;
        this.dialog.isJpg = true;
        var url = BASE_URL + "/comprehensive/downloadForView?guid=" + row.guid + "&token=" + getToken();
        this.dialog.src = url
      } else if(name.indexOf('.dwg')!=-1) {
        this.handleCAD(row)
      }
    },
    async handleCAD (row) {
      const data=await meta_selectConvertToDwg({ id: row.id,type: true });
      if(data.result) {
        var url=iisHost+"/dwg/cad/browse/?file=data/"+data.result;
        window.open(url)
      } else {
        return this.$message("数据转换失败,无法预览");
      }
    },
    refreshAttatchDetail() {
      this.dialog.src = "";
      this.dialog.dialogVisible = false;