月球大数据地理空间分析展示平台-【中台】
Surpriseplus
2023-09-14 392df7806471cae1ae5f21b6a106e8f931ad3f2d
src/views/datamanage/dataUpdata.vue
@@ -29,43 +29,12 @@
            :model="formInline"
            class="demo-form-inline"
          >
            <!-- 入库类型 -->
            <el-form-item
              :label="$t('dataManage.dataUpObj.UploadType')"
              style="margin-right: 2%"
              size="small"
            >
              <el-select
                :disabled="tableData.length == 0 ? false : true"
                v-model="formInline.uploadType"
                @change="uploadTypeChange"
                :popper-append-to-body="false"
                placeholder="请选择"
              >
                <!--                <el-option
                                  v-for="item in uploadOption"
                                  :key="item.value"
                                  :label="item.label"
                                  :value="item.value"
                                ></el-option>-->
                <el-option
                  :label="$t('shuJuGuanLi.pselect.dFile')"
                  value="v1"
                />
                <el-option
                  :label="$t('shuJuGuanLi.pselect.dFiles')"
                  value="v2"
                />
              </el-select>
            </el-form-item>
            <!-- 存储目录 -->
            <el-form-item
              style="margin-right: 2%"
              v-show="uploadFlag"
              :label="$t('dataManage.dataUpObj.storageDirectory')"
              :label="$t('dataManage.dataUpObj.resourceDirectory')"
              size="small"
            >
              <el-select
@@ -88,37 +57,8 @@
                  />
                </el-option>
              </el-select>
              <!-- <el-cascader
                :disabled="tableData.length == 0 ? false : true"
                v-model="formInline.dirid"
                :options="catalogOption"
                @change="catalogChange"
                ref="selectcascader"
                :props="cascader"
              ></el-cascader>  -->
            </el-form-item>
            <!-- 项目名称 -->
            <el-form-item
              style="margin-right: 2%"
              v-show="!uploadFlag"
              :label="$t('dataManage.dataUpObj.entryName')"
              size="small"
            >
              <el-select
                :popper-append-to-body="false"
                :disabled="tableData.length == 0 ? false : true"
                v-model="formInline.entryId"
                @change="entryNameChange"
                placeholder="请选择"
              >
                <el-option
                  v-for="item in entryOption"
                  :key="item.id"
                  :label="item.name"
                  :value="item.name"
                ></el-option>
              </el-select>
            </el-form-item>
            <!-- 数据版本 -->
            <el-form-item
              :label="$t('dataManage.dataUpObj.dataVersion')"
@@ -141,65 +81,64 @@
                </el-option>
              </el-select>
            </el-form-item>
            <!-- 数据专业 -->
            <!-- <el-form-item
              :label="$t('dataManage.dataUpObj.dataSpecialty')"
            <!-- 传感器类型 -->
            <el-form-item
              :label="$t('dataManage.dataUpObj.sensorType')"
              style="margin-right: 2%"
              size="small"
            >
              <el-select
                :popper-append-to-body="false"
                :disabled="tableData.length == 0 ? false : true"
                v-model="formInline.specialtyId"
                v-model="formInline.sensorType"
                :placeholder="$t('common.choose')"
                size="small"
              >
                <el-option
                  :label="$t('shuJuGuanLi.pselect.SurveyingAndMapping')"
                  value="测量专业"
                />
                <el-option
                  :label="$t('shuJuGuanLi.pselect.SurveysDiscipline')"
                  value="勘察专业"
                />
                <el-option
                  :label="$t('shuJuGuanLi.pselect.GeologicalDisasterSpecialty')"
                  value="地灾专业"
                />
                <el-option
                  :label="$t('shuJuGuanLi.pselect.CavernSpecialty')"
                  value="洞库专业"
                />
                <el-option
                  :label="$t('shuJuGuanLi.pselect.LineDiscipline')"
                  value='线路专业'
                />
                  v-for="item in sensorOption"
                  :key="item.value"
                  :label="item.name"
                  :value="item.value"
                >
                </el-option>
              </el-select>
            </el-form-item> -->
            <!-- 坐标系 -->
            </el-form-item>
            <!-- 元数据类型 -->
            <el-form-item
              v-show="false"
              :label="$t('dataManage.dataUpObj.coordinateSystem')"
              style="margin-right: 3%"
              :label="$t('dataManage.dataUpObj.metadataType')"
              style="margin-right: 2%"
              size="small"
            >
              <el-select
                :popper-append-to-body="false"
                :disabled="tableData.length == 0 ? false : true"
                v-model="formInline.coordinateId"
                v-model="formInline.mataType"
                :placeholder="$t('common.choose')"
                size="small"
              >
                <el-option
                  v-for="item in coordinateOption"
                  :key="item.epsgcode"
                  :label="item.coordinate"
                  :value="item.epsgcode"
                  v-for="item in metaOption"
                  :key="item.value"
                  :label="item.name"
                  :value="item.value"
                >
                </el-option>
              </el-select>
            </el-form-item>
            <div class="flex_box">
              <div style="margin-right: auto">
                <!-- 采集时间 -->
                <el-form-item
                  :label="$t('dataManage.dataUpObj.collectionTime')"
                  size="small"
                >
                  <el-date-picker
                    v-model="formInline.acqTime"
                    type="datetime"
                    placeholder="请选择采集时间"
                  >
                  </el-date-picker>
                </el-form-item>
                <!-- 选择数据 -->
                <el-form-item size="small">
                  <el-link
@@ -237,85 +176,7 @@
                  >
                  </el-input>
                </el-form-item>
                <!-- 选择元数据 -->
                <el-form-item
                  v-show="uploadFlag"
                  style="padding-left: 16px"
                >
                  <el-link
                    :disabled="tableData.length == 0 ? false : true"
                    v-show="formInline.metaData == '请选择元数据'"
                    @click="setMetaFile"
                    :underline="false"
                    type="primary"
                  >{{ $t('dataManage.dataUpObj.selectMetadata') }}
                  </el-link>
                  <el-link
                    v-show="formInline.metaData != '请选择元数据'"
                    @click="restMetaFile"
                    :underline="false"
                    type="primary"
                  >{{ $t('common.reset') }}
                  </el-link>
                  <input
                    id="metaDataFile"
                    type="file"
                    name="file"
                    multiple="multiple"
                    accept=".xls,.xlsx"
                    style="display: none"
                    @change="handleMetaFileChange"
                  ></input>
                </el-form-item>
                <el-form-item
                  v-show="uploadFlag"
                  size="small"
                >
                  <el-input
                    :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valueone')"
                    v-model="formInline.metaData"
                    style="width:200px;"
                    disabled
                  >
                  </el-input>
                </el-form-item>
                <!-- 选择WBS数据 -->
                <el-form-item v-show="!uploadFlag">
                  <el-link
                    :disabled="tableData.length == 0 ? false : true"
                    v-show="formInline.wbsData == '请选择WBS数据'"
                    @click="setWBSFile"
                    :underline="false"
                    type="primary"
                  >{{ $t('dataManage.dataUpObj.selectWBSData') }}
                  </el-link>
                  <el-link
                    :disabled="tableData.length == 0 ? false : true"
                    v-show="formInline.wbsData != '请选择WBS数据'"
                    @click="restWBSFile"
                    :underline="false"
                    type="primary"
                  >{{ $t('common.reset') }}
                  </el-link>
                  <input
                    id="wbsDataFile"
                    type="file"
                    name="file"
                    multiple="multiple"
                    accept=".xls,.xlsx"
                    style="display: none"
                    @change="handleWBSFileChange"
                  ></input>
                </el-form-item>
                <el-form-item v-show="!uploadFlag">
                  <el-input
                    placeholder="请选择WBS数据"
                    v-model="formInline.wbsData"
                    style="width:210px;"
                    disabled
                  >
                  </el-input>
                </el-form-item>
              </div>
              <div>
                <el-form-item>
@@ -352,7 +213,7 @@
                  >{{ $t('common.Warehousin') }}
                  </el-button>
                  <!-- 质检 -->
                  <el-button
                  <!-- <el-button
                    style="margin-right:-9px"
                    v-if="menuStatus.insert"
                    :disabled="multipleSelection.length == 0 ? true : false"
@@ -361,7 +222,7 @@
                    icon="el-icon-folder-checked"
                    @click="handleQuayTestClick()"
                  >{{ $t('common.quayTest') }}
                  </el-button>
                  </el-button> -->
                </el-form-item>
              </div>
@@ -469,7 +330,7 @@
              </div>
              <div>
                <el-form-item>
                  <el-button
                  <!-- <el-button
                    v-if="menuStatus.upload"
                    :disabled="multipleDelete.length == 0 ? true : false"
                    @click="setEnclosure"
@@ -477,7 +338,7 @@
                    type="success"
                    size="small"
                  >{{ $t('common.enclosure') }}
                  </el-button>
                  </el-button> -->
                  <el-button
                    v-if="menuStatus.delete"
                    @click="setWarehouseDel"
@@ -1459,6 +1320,7 @@
  dataUpload_selectMetaById,
  selectdirTab,
} from "../../api/api";
import { meta_type, sensor_type } from "./js/layerManage";
export default {
  name: "dataUpdata",
@@ -1469,34 +1331,7 @@
    return {
      coordinateOption: [],
      disOptions: [
        {
          name: "崩塌治理",
          value: "崩塌治理",
        },
        {
          name: "不稳定斜坡治理",
          value: "不稳定斜坡治理",
        },
        {
          name: "地面塌陷治理",
          value: "地面塌陷治理",
        },
        {
          name: "高陡边坡治理",
          value: "高陡边坡治理",
        },
        {
          name: "泥石流治理",
          value: "泥石流治理",
        },
        {
          name: "水毁治理",
          value: "水毁治理",
        },
        {
          name: "滑坡治理",
          value: "滑坡治理",
        },
      ],
      testQuayVisible: false,
      formCheckAll: {
@@ -1574,6 +1409,9 @@
        coordinateId: null,
        path: null,
        verid: null,
        sensorType: 0,
        mataType: 0,
        acqTime: null
      },
      cascader: {
        label: "name",
@@ -1582,22 +1420,7 @@
        emitPath: false,
      },
      specialtyOption: [
        {
          value: "测量专业",
          label: "测量专业",
        },
        {
          value: "勘察专业",
          label: "勘察专业",
        },
        {
          value: "地灾专业",
          label: "地灾专业",
        },
        {
          value: "洞库专业",
          label: "洞库专业",
        },
      ],
      fileType: [],
      pathBak: null,
@@ -1670,15 +1493,18 @@
      },
      warehouseDialog: false,
      wareData: [],
      metaOption: [],
      sensorOption: []
    };
  },
  mounted() {
    //获取传感器元数据类型
    this.getSensorMeta()
    //获取坐标系
    this.setCoordinateSystem();
    //  this.setCoordinateSystem();
    //获取项目名称
    this.setProjectName();
    // this.setProjectName();
    //获取文件上传路径
    this.getFilePath();
    //权限获取
@@ -1694,6 +1520,10 @@
  },
  watch: {},
  methods: {
    getSensorMeta() {
      this.metaOption = meta_type;
      this.sensorOption = sensor_type;
    },
    stateFormat(row, column) {
      var val = ['shp', 'gdb', 'xls', 'xlsx']
      if (val.indexOf(row.type) > -1 && row.rows > 0) {
@@ -2010,11 +1840,11 @@
        '-' +
        this.add0(d) +
        ' ' +
        h +
        this.add0(h) +
        ':' +
        mm +
        this.add0(mm) +
        ':' +
        s
        this.add0(s)
      );
    },
    //自动匹配取消
@@ -2050,6 +1880,15 @@
            res.isMeta = true;
          }
        });
      }
      var time = null;
      if (this.formInline.acqTime) {
        time = this.changetimeLayer(this.formInline.acqTime)
      }
      for (var i in this.insertWareList) {
        this.insertWareList[i].mataType = this.formInline.mataType;
        this.insertWareList[i].sensortype = this.formInline.sensorType;
        this.insertWareList[i].acqTime = time.toString();
      }
@@ -2218,7 +2057,7 @@
      this.loading = true;
      var obj = {
        dirid: this.formInline.dirid,
        epsgCode: this.formInline.coordinateId,
        epsgCode: 'EPSG:4490',
        path: this.formInline.path,
        verid: this.formInline.verid,
      };
@@ -2542,9 +2381,9 @@
      this.formInline.specialtyData = "请选择数据";
      document.getElementById("selectDataFile").value = "";
      this.formInline.metaData = "请选择元数据";
      document.getElementById("metaDataFile").value = "";
      // document.getElementById("metaDataFile").value = "";
      this.formInline.wbsData = "请选择WBS数据";
      document.getElementById("wbsDataFile").value = "";
      // document.getElementById("wbsDataFile").value = "";
    },
    //获取上传文件数量
    async getFileLength() {
@@ -2728,8 +2567,8 @@
    },
    //重置WPS选择
    restWBSFile() {
      this.formInline.wbsData = "请选择WBS数据";
      document.getElementById("wbsDataFile").value = "";
      // this.formInline.wbsData = "请选择WBS数据";
      // document.getElementById("wbsDataFile").value = "";
    },
    //WBS数据Change事件
    handleWBSFileChange(event) {
@@ -2859,6 +2698,7 @@
    },
    //格式化时间
    changetimeFile(res) {
      if (!res.createTime) return;
      var time = new Date(res.createTime);
      var y = time.getFullYear();
      var m = time.getMonth() + 1;
@@ -2882,6 +2722,7 @@
    },
    //格式化时间
    add0(m) {
      return m < 10 ? "0" + m : m;
    },
    //大小值改变
@@ -2950,8 +2791,8 @@
    },
    //重置元数据
    restMetaFile() {
      this.formInline.metaData = "请选择元数据";
      document.getElementById("metaDataFile").value = "";
      // this.formInline.metaData = "请选择元数据";
      // document.getElementById("metaDataFile").value = "";
    },
    //选择元数据文件切换
    handleMetaFileChange(event) {