licp
2024-08-20 6f30bbf4f118d3357d1e6e503aa986227e2cc6ea
src/components/do/b1-ins-order/fiberoptic-config.vue
@@ -110,7 +110,7 @@
        </el-col>
      </el-row>
      <el-row :gutter="10">
        <el-col :span="12" v-if="packageInfo.ismiers">
        <el-col :span="12" v-if="packageInfo.ismiers && inspectionItemST != 1">
          <div class="grid-content">
            <h5>光纤带
              <el-button size="mini" type="primary" class="btns" @click="addFibers"
@@ -192,7 +192,7 @@
            </el-table>
          </div>
        </el-col>
        <el-col :span="!packageInfo.ismiers?24:12">
        <el-col :span="!packageInfo.ismiers?24:12" v-if=" inspectionItemST != 1">
          <div class="grid-content">
            <h5>光纤
              <el-button size="mini" type="primary" class="btns" @click="addFiber"
@@ -365,6 +365,10 @@
        type: Number,
        default: () => 0
      },
      inspectionItemST: {
        type: Number,
        default: () => 0
      }
    },
    data() {
      return {
@@ -449,6 +453,7 @@
      // }
    },
    mounted() {
      console.log('inspectionItemST',this.inspectionItemST);
      this.$parent.sampleIds.forEach(a => {
        for (var i = 0; i < this.$parent.sampleList.length; i++) {
          if (this.$parent.sampleList[i].id == a) {
@@ -618,18 +623,35 @@
            }
           }
          }
          // 如果检测要求含有≤ < ≥ > 符号
          // 如果要求描述含有≤ < ≥ > 符号
          const regex = /[≤<≥>]/
          const match = row.tell.match(regex)
          if(match) {
            // 符号不一致
            if( row.ask.indexOf(match[0]) != 0) {
                this.$message.error('检测要求不符合要求描述')
                row.ask = match[0]
                return
              }else {
                // 符号一致
                const regex = new RegExp(`${match[0]}(\\d+(\\.\\d+)?)`, 'g')
              // 如果检测要求含有正负号 并且含有&号 ≥0.69&≤0.76 要求描述
              if(row.tell.indexOf('&') != -1) {
                if(row.ask.indexOf('&') == -1) {
                  this.$message.error('检测要求不符合要求描述')
                row.ask = row.tell
                return
                }else{
                  let left = row.tell.substring(0,row.tell.indexOf('&'))
                  let right = row.tell.substring(row.tell.indexOf('&')+1)
                  let leftAsk = row.ask.substring(0,row.ask.indexOf('&'))
                  let rightAsk = row.ask.substring(row.ask.indexOf('&')+1)
                  if(leftAsk != left || rightAsk != right) {
                    this.$message.error('检测要求不符合要求描述')
                  }
                }
              }else {
                // 没有&号
              const regex = new RegExp(`${match[0]}(\\d+(\\.\\d+)?)`, 'g')
                const matchTow = row.tell.match(regex);
              let right =  Number(matchTow[0].split(match[0])[1])
              let left = row.ask.substring(row.ask.indexOf(match[0])+1)
@@ -638,7 +660,19 @@
                row.ask = match[0] + right
              }
              }
              }
            }
            // 如果要求描述含有范围
            const regexTwo = /[~-]/
            const matchTwo = row.tell.match(regexTwo)
@@ -1723,8 +1757,15 @@
        // })
        // this.$message.success('已保存')
        // this.$emit('saveFiberopticConfig')
        if(this.inspectionItemST == 1) {
          console.log('this.bushing',this.bushing);
          this.$message.success('已保存')
          this.sample.forEach(a=>{
          a.bushing = this.bushing
        })
        this.$emit('saveFiberopticConfig')
        return
        }
        let flag = true
        let flags = true
@@ -1796,13 +1837,35 @@
                return
              }else {
                // 符号一致
                // 如果检测要求含有正负号 并且含有&号 ≥0.69&≤0.76 要求描述
              if(row.tell.indexOf('&') != -1) {
                console.log(11111);
                if(row.ask.indexOf('&') == -1) {
                  this.$message.error('检测要求不符合要求描述')
                row.ask = row.tell
                return
                }else{
                  let left = row.tell.substring(0,row.tell.indexOf('&'))
                  let right = row.tell.substring(row.tell.indexOf('&')+1)
                  let leftAsk = row.ask.substring(0,row.ask.indexOf('&'))
                  let rightAsk = row.ask.substring(row.ask.indexOf('&')+1)
                  console.log('&',left,right,leftAsk,rightAsk);
                  if(leftAsk != left || rightAsk != right) {
                    flag = false
                  }
                }
              }else{
                const regex = new RegExp(`${match[0]}(\\d+(\\.\\d+)?)`, 'g')
                const matchTow = row.tell.match(regex);
                console.log('matchTow',matchTow);
              let right =  Number(matchTow[0].split(match[0])[1])
              let left = row.ask.substring(row.ask.indexOf(match[0])+1)
              if(Number(left) != Number(right)) {
                // this.$message.error('666666')
                flag = false
              }
              }
              }
            }
@@ -1893,6 +1956,24 @@
                return
              }else {
                // 符号一致
                if(row.tell.indexOf('&') != -1) {
                console.log(11111);
                if(row.ask.indexOf('&') == -1) {
                  this.$message.error('检测要求不符合要求描述')
                row.ask = row.tell
                return
                }else{
                  let left = row.tell.substring(0,row.tell.indexOf('&'))
                  let right = row.tell.substring(row.tell.indexOf('&')+1)
                  let leftAsk = row.ask.substring(0,row.ask.indexOf('&'))
                  let rightAsk = row.ask.substring(row.ask.indexOf('&')+1)
                  console.log('&',left,right,leftAsk,rightAsk);
                  if(leftAsk != left || rightAsk != right) {
                    flags = false
                  }
                }
              }else {
                const regex = new RegExp(`${match[0]}(\\d+(\\.\\d+)?)`, 'g')
                const matchTow = row.tell.match(regex);
              let right =  Number(matchTow[0].split(match[0])[1])
@@ -1901,6 +1982,8 @@
                // this.$message.error('666666')
                flags = false
              }
              }
              }
            }
            // 如果要求描述含有范围
@@ -1922,10 +2005,6 @@
            })
          }
        })
        if(this.bushing.length === 0){
          this.$message.error('缺少套管无法保存')
          return
@@ -1944,11 +2023,12 @@
            item.fiber = this.fiberList // 光纤
          }
        })
        this.sample.forEach(a=>{
          a.bushing = this.bushing
        })
        if(flag && flags) {
          this.$message.success('已保存')
          this.sample.forEach(a=>{
          a.bushing = this.bushing
        })
        this.$emit('saveFiberopticConfig')
        }else if(!flag) {
          this.$message.error('光纤保存的检测项中含有不符合要求的数据')