gaoluyang
2024-07-18 856d40165af92868ebf15ab68e73f57f27f81bd8
src/components/do/b6-device-management/b6-data-acquisition-config.vue
@@ -30,10 +30,10 @@
      </el-pagination>
    </div>
    <el-dialog title="数采配置" :visible.sync="dialogVisible3" width="920px" :before-close="closeForm">
      <el-form :model="configForm" :rules="rules" label-position="top" size="small"
      <el-form :model="configForm" label-position="top" size="small"
               ref="configForm" label-width="100px" class="demo-ruleForm">
        <div class="fomItem1">
          <el-form-item class="fomItemInput" label="检测的文件类型:" prop="fileType">
        <!-- <div class="fomItem1"> -->
          <!-- <el-form-item class="fomItemInput" label="检测的文件类型:" prop="fileType">
            <el-select v-model="configForm.fileType" placeholder="请选择文件类型">
              <el-option v-for="item in fileTypeOptions"
                         :key="item.value"
@@ -46,22 +46,22 @@
          </el-form-item>
          <el-form-item class="fomItemInput" label="储存地址:" prop="storageUrl">
            <el-input v-model="configForm.storageUrl"></el-input>
          </el-form-item>
        </div>
          </el-form-item> -->
        <!-- </div> -->
        <div class="fomItem1"
             v-for="(domain, index) in domains"
             :key="index">
          <el-form-item class="fomItemInput" label="参照X:">
            <el-input v-model="domain.referx"></el-input>
          </el-form-item>
          <el-form-item class="fomItemInput" label="X:">
            <el-input v-model="domain.x" onkeyup="value=value.replace(/[^-0-9]/g,'')"></el-input>
          </el-form-item>
          <el-form-item class="fomItemInput" label="参照Y:">
            <el-input v-model="domain.refery"></el-input>
          </el-form-item>
          <el-form-item class="fomItemInput" label="X:">
            <el-input v-model="domain.x"></el-input>
          </el-form-item>
          <el-form-item class="fomItemInput" label="Y:">
            <el-input v-model="domain.y"></el-input>
            <el-input v-model="domain.y" onkeyup="value=value.replace(/[^-0-9]/g,'')"></el-input>
          </el-form-item>
          <el-form-item>
            <el-button style="position: absolute; bottom: -65px" @click.prevent="removeDomain(domain)" size="small">删除</el-button>
@@ -71,7 +71,7 @@
          </el-form-item>
        </div>
        <div class="fomItem1">
          <el-form-item class="fomItemInput" label="公式:" prop="formula">
          <el-form-item class="fomItemInput" label="公式:">
            <el-input v-model="configForm.formula" @change="evalResult"></el-input>
          </el-form-item>
        </div>
@@ -110,17 +110,8 @@
        current: 1,
        size: 20,
      },
      rules: {
        fileType: [{ required: true, message: '请选择活动区域', trigger: 'change' }],
        collectUrl: [{ required: true, message: '请填写采集地址', trigger: 'blur' }],
        storageUrl: [{ required: true, message: '请填写储存地址', trigger: 'blur' }],
        formula: [{ required: true, message: '请填写公式', trigger: 'blur' }],
      },
      dialogVisible3:false,
      configForm:{
        fileType: '',
        collectUrl: '',
        storageUrl: '',
        formula: '',
      },
      domains: [
@@ -155,9 +146,6 @@
        const data = res.data
        if(data[0]) {
          this.domains.splice(0, 1)
          this.$set(this.configForm, 'fileType', data[0].fileType)
          this.$set(this.configForm, 'collectUrl', data[0].collectUrl)
          this.$set(this.configForm, 'storageUrl', data[0].storageUrl)
          this.$set(this.configForm, 'formula', data[0].formula)
          data.forEach(i => {
            this.domains.push({
@@ -181,14 +169,17 @@
            }
          })
          this.domains.forEach(i => {
            i.fileType = this.configForm.fileType
            i.collectUrl = this.configForm.collectUrl
            i.storageUrl = this.configForm.storageUrl
            if(i.x == '') {
              i.x = null
            }
            if(i.y == '') {
              i.y = null
            }
            i.formula = this.configForm.formula
            i.deviceId = this.configForm.deviceId
            i.insProductItem = this.configForm.insProductItem
          })
          this.$axios.post(this.$api.deviceScope.saveDataAcquisitionConfiguration, {dataConfigList: JSON.parse(JSON.stringify(this.domains))},{headers: {
          this.$axios.post(this.$api.deviceScope.saveDataAcquisitionConfiguration, {dataConfigList: this.domains},{headers: {
            'Content-Type': 'application/json'
          }}).then(res => {
            this.dialogVisible3 = false
@@ -212,11 +203,15 @@
      // 删除公式formItem
      const index = this.domains.indexOf(item)
      if (index !== -1 && this.domains.length > 1) {
        this.$axios.get(this.$api.deviceScope.deleteDataAcquisitionConfiguration + "?id=" + item.id).then(res => {
          if(res.code == 200) {
            this.domains.splice(index, 1)
          }
        })
        if(item.id){
            this.$axios.get(this.$api.deviceScope.deleteDataAcquisitionConfiguration + "?id=" + item.id).then(res => {
            if(res.code == 200) {
              this.domains.splice(index, 1)
            }
          })
        } else {
          this.domains.splice(index, 1)
        }
      } else {
        this.$message.error('不允许删除最后一条数据!');
      }