管道基础大数据平台系统开发-【前端】-新系統界面
Surpriseplus
2023-07-25 f088e6887fe88f0be698892c9883521e9e57d5c3
src/views/datamanage/metadataManage.vue
@@ -158,49 +158,6 @@
            </el-form-item>
          </div>
        </div>
        <!-- <el-form-item style="float:right">
          <el-button
            @click="queryInfo()"
            icon="el-icon-search"
            class="primary"
            size="small"
          >{{ $t('common.iquery') }}</el-button>
        </el-form-item>
        <el-form-item style="float:right">
          <el-button
            @click="resetInfo('queryForm')"
            icon="el-icon-refresh"
            type="info"
            size="small"
          >{{ $t('common.reset') }}</el-button>
        </el-form-item> -->
        <!-- <el-form-item v-if="btnStatus.insert">
          <el-button
            type="success"
            size="small"
            @click="showAddDialog"
            icon="el-icon-plus"
            >{{ $t('common.append') }}</el-button
          >
        </el-form-item> -->
        <!-- <el-form-item v-if="btnStatus.delete" style="float:right">
          <el-button
            type="danger"
            size="small"
            @click="deleteMetaInfo"
            icon="el-icon-delete"
          >{{ $t('common.delete') }}</el-button>
        </el-form-item>
        <el-form-item v-if="btnStatus.download" style="float:right">
          <el-button
            @click="downFormData"
            icon="el-icon-download"
            type="success"
            size="small"
          >{{ $t('common.download') }}</el-button>
        </el-form-item> -->
      </el-form>
    </div>
    <div class="dividing-line"></div>
@@ -249,7 +206,24 @@
        <el-table-column
          prop="type"
          :label="$t('dataManage.vmobj.format')"
        />
        >
          <template slot-scope="scope">
            <span v-if="scope.row.type == 'gdb'">
              <el-link
                @click="setSelectGdbByGuid(scope.row)"
                style="color: #409eff"
              >
                {{  scope.row.type }}
              </el-link>
            </span>
            <span v-else>
              {{  scope.row.type }}
            </span>
          </template>
        </el-table-column>
        <el-table-column
          prop="sizes"
          :label="$t('dataManage.vmobj.size')"
@@ -357,6 +331,7 @@
    <div
      class="infoBox_box"
      v-show="showinfoBox"
      style="z-index:99999"
    >
      <div class="infoBox box_div">
        <div
@@ -945,6 +920,143 @@
        </el-form-item>
      </el-form>
    </el-dialog>
    <el-dialog
      title=""
      :visible.sync="gdbDialog"
      width="80%"
      top="8vh"
      :modal="false"
      :close-on-click-modal="false"
    >
      <div class="gdbTableBox">
        <el-table
          :data="gdbData"
          style="width: 100%"
        >
          <el-table-column
            type="selection"
            width="55"
          />
          <el-table-column
            :label="$t('dataManage.dictionaryManageObj.number')"
            type="index"
            width="50"
          >
          </el-table-column>
          <el-table-column :label="$t('dataManage.vmobj.name')">
            <template slot-scope="scope">
              <span v-if="scope.row.ismeta > 0">
                <el-link
                  style="color: #409eff"
                  title="源数据查询"
                  @click="setQueryMetaData(scope.row)"
                  target="_blank"
                >{{ scope.row.name }}</el-link>
              </span>
              <span v-else-if="scope.row.metaid > 0">
                <el-link
                  style="color: #409eff"
                  title="元数据查询"
                  @click="setMetaDataQuery(scope.row)"
                  target="_blank"
                >{{ scope.row.name }}</el-link></span>
              <span v-else>{{ scope.row.name }}</span>
            </template>
          </el-table-column>
          <el-table-column
            prop="type"
            :label="$t('dataManage.vmobj.format')"
          >
          </el-table-column>
          <el-table-column
            prop="sizes"
            :label="$t('dataManage.vmobj.size')"
            :formatter="stateFormatSizes"
          />
          <el-table-column
            prop="depName"
            :label="$t('dataManage.vmobj.depName')"
          />
          <el-table-column
            prop="dirName"
            :label="$t('dataManage.vmobj.dirName')"
            width="200"
          />
          <el-table-column
            prop="verName"
            :label="$t('dataManage.vmobj.versionNumber')"
          />
          <el-table-column :label="$t('dataManage.dataUpObj.tableName')">
            <template slot-scope="scope">
              <el-link></el-link>
              <el-link
                :underline="false"
                @click="detail(scope.row)"
              >{{
              scope.row.tab
            }}</el-link>
            </template>
          </el-table-column>
          <el-table-column
            prop="rows"
            :label="$t('dataManage.vmobj.row')"
          />
          <el-table-column
            :label="$t('common.dataStatus')"
            :formatter="stateFormat"
          >
          </el-table-column>
          <el-table-column
            prop="uname"
            :label="$t('dataManage.vmobj.createonuser')"
          />
          <el-table-column
            prop="createTime"
            :label="$t('dataManage.vmobj.createontime')"
            :formatter="formatData"
          />
          <el-table-column
            min-width="210"
            :label="$t('common.operate')"
          >
            <template slot-scope="scope">
              <el-button
                @click="showDetail(scope.row)"
                type="primary"
                plain
                size="small"
              >{{ $t("common.details") }}
              </el-button>
              <el-button
                type="warning"
                plain
                size="small"
                v-if="btnStatus.update"
                @click="editInfo(scope.row)"
                style="margin-left: 10px"
              >{{ $t("common.edit") }}
              </el-button>
              <el-button
                plain
                size="small"
                v-if="showPreview(scope.row)"
                @click="handlePreview(scope.row)"
                style="margin-left: 10px"
              >{{ $t("common.preview") }}
              </el-button>
            </template>
          </el-table-column>
        </el-table>
      </div>
    </el-dialog>
    <iframe
      id="downFrame"
      src=""
@@ -975,6 +1087,7 @@
  meta_selectMetaOverflowDep,
  meta_selectDepsByCodes,
  apply_insertApply,
  meta_selectGdbByGuid,
} from "../../api/api";
import MyBread from "../../components/MyBread.vue";
@@ -1115,6 +1228,9 @@
        pwd: null,
        depcodes: null,
      },
      gdbData: [],
      gdbDialog: false,
      gdbGuid: null,
    };
  },
  created() {
@@ -1144,6 +1260,26 @@
    },
  },
  methods: {
    //gdb 点击事件
    setSelectGdbByGuid(row) {
      this.gdbGuid = row.guid
      this.getSelectGdbByGuid();
    },
    async getSelectGdbByGuid() {
      if (!this.gdbGuid) return
      const data = await meta_selectGdbByGuid({ guid: this.gdbGuid })
      if (data.code != 200) {
        return this.$message.error("根据GUID查询GDB数据失败");
      }
      if (data.count <= 0) {
        return this.$message("查无更多数据");
      }
      this.gdbData = data.result;
      this.gdbDialog = true;
    },
    stateFormat(row, column) {
      var val = ['shp', 'gdb', 'xls', 'xlsx']
      if (val.indexOf(row.type) > -1 && row.rows > 0) {
@@ -1193,10 +1329,7 @@
      this.fromQueryMeta.title = row.name;
      this.listMetaData = {
        id: row.metaid,
        // name: "",
        // pageIndex: 1,
        // pageSize: 10,
        // count: 0,
      };
      const data = await meta_selectById(this.listMetaData);
      if (data.code != 200) {
@@ -1207,6 +1340,8 @@
      this.metaDataTable1 = [data.result];
      // this.listMetaData.count = data.count;
    },
    //源数据查询
    setQueryMetaData(row) {
      this.fromQueryMeta.title = row.name;
@@ -1655,7 +1790,14 @@
              if (res.code == 200) {
                this.listData.pageSize = 10;
                this.listData.pageIndex = 1;
                this.getMetaData();
                if (this.gdbDialog) {
                  this.getSelectGdbByGuid();
                } else {
                  this.getMetaData();
                }
                this.$message({
                  message: "修改成功",
                  type: "success",
@@ -1670,6 +1812,7 @@
          alert("修改失败,请重试!");
          this.fullscreenLoading = false;
        });
    },
    cancelEdit() {
      this.$nextTick(() => {
@@ -1905,5 +2048,10 @@
  .el-divider--horizontal {
    margin: 15px 0;
  }
  .gdbTableBox {
    width: 100%;
    height: 740px;
    overflow-y: auto;
  }
}
</style>