Crunchy
2024-07-15 5c1a305e8d0ada752d6cc38e500e5e9de9af43a3
src/components/view/a6-device-management.vue
@@ -51,7 +51,7 @@
<template>
   <div class="role_manage">
      <div>
      <div v-if="!showData">
         <el-row class="title">
            <el-col :span="12" style="padding-left: 20px;text-align: left;">设备工具明细</el-col>
            <el-col :span="12" style="text-align: right;">
@@ -59,7 +59,7 @@
            </el-col>
         </el-row>
      </div>
      <div class="search">
      <div class="search" v-if="!showData">
         <div class="search_thing">
            <div class="search_label">状态:</div>
            <el-select v-model="componentData.entity.deviceStatus" placeholder="全部" size="small">
@@ -82,7 +82,7 @@
            <el-button size="small" type="primary" @click="refreshTable()">查 询</el-button>
         </div>
      </div>
      <div class="table">
      <div class="table" v-if="!showData">
         <!-- 语法 子组件通过 this.$emit +传入方法名 调用父组件方法 例如  this.$emit(selectAllByOne) 就需在父组件声明并传入  @selectAllByOne="selectAllByOne"-->
         <ValueTable @selectAllByOne="selectAllByOne" @isUpdate="isUpdate" ref="ValueTable"
            :url="$api.deviceScope.selectDeviceParameter" :upUrl="$api.deviceScope.upDeviceParameter"
@@ -162,7 +162,7 @@
            </el-col>
            <!-- 右边布局 -->
            <el-col :span="7">
               <el-form :label-position="labelPosition" :model="formData" label-width="120px" ref="ruleForm">
               <el-form :label-position="labelPosition" :model="formData" label-width="140px" ref="ruleForm">
            <!-- 实验室列表 -->
            <el-form-item label="所属部门:">
              <el-select :disabled="isUp" v-model="formData.subordinateDepartmentsId" placeholder="请选择" size="small" style="width:100%">
@@ -225,6 +225,20 @@
                        </el-upload>
                     </div>
                  </el-form-item>
      <el-form-item label="检测的文件类型:" required>
            <el-select :disabled="isUp" v-model="formData.fileType" placeholder="请选择文件类型" clearable>
              <el-option v-for="item in fileTypeOptions"
                         :key="item.value"
                         :label="item.label"
                         :value="item.value"></el-option>
            </el-select>
          </el-form-item>
          <el-form-item label="采集地址:" required clearable>
            <el-input :disabled="isUp" v-model="formData.collectUrl"></el-input>
          </el-form-item>
          <el-form-item label="储存地址:">
            <el-input :disabled="isUp" v-model="formData.storageUrl"></el-input>
          </el-form-item>
               </el-form>
            </el-col>
         </el-row>
@@ -368,6 +382,20 @@
                        </el-upload>
                     </div>
                  </el-form-item>
                  <el-form-item label="检测的文件类型:" required>
            <el-select v-model="formData.fileType" placeholder="请选择文件类型" clearable>
              <el-option v-for="item in fileTypeOptions"
                         :key="item.value"
                         :label="item.label"
                         :value="item.value"></el-option>
            </el-select>
          </el-form-item>
          <el-form-item label="采集地址:" required clearable>
            <el-input v-model="formData.collectUrl"></el-input>
          </el-form-item>
          <el-form-item label="储存地址:">
            <el-input v-model="formData.storageUrl"></el-input>
          </el-form-item>
               </el-form>
            </el-col>
         </el-row>
@@ -421,7 +449,7 @@
            </el-row>
         </span>
    </el-dialog>
    <dataAcquisitionConfig v-if="showData"/>
    <dataAcquisitionConfig v-if="showData" :tableList="tableList"/>
   </div>
</template>
@@ -435,6 +463,15 @@
      },
      data() {
         return {
            fileTypeOptions: [
               {label: 'csv', value: '.csv'},
               {label: 'db', value: '.db'},
               {label: 'mdb', value: '.mdb'},
               {label: 'word', value: '.docx'},
               {label: 'excel', value: '.xlsx'},
               {label: 'txt', value: '.txt'},
               {label: 'png', value: '.png'},
            ],
            //是否是档案修订  true不是 false是
            isUp: true,
            formData: {
@@ -451,6 +488,7 @@
            dialogVisible2: false,
            addPower: false,
        showData: false, // 数采配置页面
        tableList: [],
            componentData: {
               entity: {
                  deviceStatus: null,
@@ -479,7 +517,10 @@
                  id: 'handleConfig',
                  font: '数采配置',
                  type: 'text',
                  method: 'handleConfig'
                  method: 'handleConfig',
            disabFun: (row, index) => {
              return row.insProductItem === ''
            }
               }],
          headNoShow:['enDeviceName'],
               tagField: {
@@ -594,21 +635,21 @@
               if (power[i].menuMethod == 'addDeviceParameter') {
                  add = true
               }
          if (power[i].menuMethod == 'numberCollect') {
                   if (power[i].menuMethod == 'saveDataAcquisitionConfiguration') {
                  config = true
               }
            }
        if (!config) {
               this.componentData.do.splice(2, 1)
            }
            if (!up) {
               this.componentData.do.splice(1, 1)
            }
            if (!del) {
               this.componentData.do.splice(0, 1)
            }
            this.addPower = add
         },
            if (!config) {
                     this.componentData.do.splice(2, 1)
                  }
                  if (!up) {
                     this.componentData.do.splice(1, 1)
                  }
                  if (!del) {
                     this.componentData.do.splice(0, 1)
                  }
                  this.addPower = add
               },
         // 获取字典
         selectEnumByCategory() {
            this.$axios.post(this.$api.enums.selectEnumByCategory, {
@@ -760,6 +801,14 @@
          this.$message.error('未输入校准周期(月)')
          return
        }
      if(!this.formData.fileType){
          this.$message.error('未选择文件后缀!')
          return
        }
      if(!this.formData.collectUrl){
          this.$message.error('请输入采集地址!')
          return
        }
            delete this.formData.createTime
            delete this.formData.updateTime
            delete this.formData.createUser
@@ -814,6 +863,14 @@
          this.$message.error('输入校准周期(月)')
          return
        }
      if(!this.formData2.fileType){
          this.$message.error('未选择文件后缀!')
          return
        }
      if(!this.formData2.collectUrl){
          this.$message.error('请输入采集地址!')
          return
        }
            this.upLoad2 = true;
        this.formData2.insProductIds = this.formData2.insProductIds.join()
            this.$axios.post(this.$api.deviceScope.addDeviceParameter, this.formData2, {
@@ -846,7 +903,19 @@
        //   this.configForm = res.data
        // })
        this.showData = true
        console.log('?????', this.showData)
        const list = row.insProductItem.split(';')
        let list2 = []
        list.map((item) => {
          const obj = Object.assign({
         deviceId: row.id,
            insProductItem: item,
          })
          list2.push(obj)
        })
        this.tableList = list2
      },
      closeDataVue () {
        this.showData = false
      },
      submitForm3(){
        if(!this.configForm.ip){