licp
2024-06-28 771699a2a85aecde95a4393ef6016b28f73a551e
src/components/do/b1-inspect-order-plan/Inspection.vue
@@ -253,7 +253,7 @@
      </el-form>
    </div>
    <div class="center">
      <div class="search">
      <div class="search" style="text-align: left;">
        <el-radio-group v-model="currentTable" size="small">
          <el-radio-button :label="item.templateId" v-for="(item,index) in tableLists" :key="index"
            size="small">{{ item.templateName }}</el-radio-button>
@@ -266,13 +266,13 @@
              <td :id='item.templateId+"-"+n.i+"-"+n.r+"-"+n.c' v-for="(n,j) in m" :key="j"
                v-if="n.v.mc==undefined || Object.keys(n.v.mc).length === 4" :colspan="n.v.mc&&n.v.mc.cs?n.v.mc.cs:1"
                :rowspan="n.v.mc&&n.v.mc.rs?n.v.mc.rs:1"
                :style="`background:${n.v.bg};color:${n.v.fc};font-size:${n.v.fs}px;width:${handleWidth(n)}px !important;height:${item.style.rowlen[n.r]}px;font-wight:${n.v.bl?'bold':''};`">
                :style="`background:${n.v.bg?n.v.bg:''};color:${n.v.fc};font-size:${n.v.fs}px;width:${handleWidth(n)}px !important;height:${item.style.rowlen[n.r]}px;font-wight:${n.v.bl?'bold':''};`">
                <div class="content" :class="`content-h-${n.v.ht} content-v-${n.v.vt}`"
                  :style="`width:${handleWidth(n)}px !important;min-height:${item.style.rowlen[n.r]}px;background:${n.v.bg};`">
                  :style="`width:${handleWidth(n)}px !important;min-height:${item.style.rowlen[n.r]}px;`">
                  <template v-if="n.v.ps!=undefined && n.v.ps.value==='检验值' && state==1">
                    <el-input v-if="getInspectionValueType(n.i) == 1" class="table_input" v-model="n.v.v"
                      :disabled="getInspectionItemType(n.i) == 1 || (n.u != userId && n.u != undefined && n.u != '')"
                      @change="m=>changeInput(m,`${item.templateId}-${n.r}-${n.c}-${n.i}`)" type="number">
                      @change="m=>changeInput(m,`${item.templateId}-${n.r}-${n.c}-${n.i}`)" type="number" @mousewheel.native.prevent :key="'abc-'+'000'+index+'000'+i+'000'+j">
                      <el-button slot="append" type="primary" icon="el-icon-edit" size="mini"
                        v-if="getInspectionItemType(n.i) == 1" @click="getSystemValue(n)"></el-button>
                    </el-input>
@@ -627,7 +627,6 @@
      this.componentData.entity.sonLaboratory = this.sonLaboratory;
      this.id = this.orderId;
      this.getUserInfo()
      // excelFunction.compute('SUM(MAX(SUM(A1,B1,C1),2,3)*2-MIN(A1:D3),1,2)')
    },
    mounted() {
      this.getTypeDicts()
@@ -808,6 +807,7 @@
        let bushing = this.currentSample.bushing
        if(bushing&&bushing.length>0){
          this.bushing = bushing
          this.bushing.forEach(a => {})
        }
        // this.handleTableData()
        this.getTableLists();
@@ -1165,6 +1165,7 @@
        let id = str[0]
        let pId = str[3]
        var list = []
        // console.log(id, 'r', r , 'c',c,this.tableList)
        for (let a in this.tableList) {
          if (this.tableList[a].templateId == id) {
            list = this.tableList[a].arr
@@ -1203,44 +1204,80 @@
                let ask = this.currentSample.insProduct.find(m => m.id == item.i).ask?this.currentSample.insProduct.find(m => m.id == item.i).ask.split('&'):null;
                let res = Object.values(comValue)[0]
                let comp = []
                if(ask){
                  comp = ask.map((m, i) => {
                  if (m.includes('=')) {
                    let str = m.split('=')[1]
                    if(typeof res == 'string'&&typeof str == 'string'){
                      return res.trim() == str.trim()
                    }else{
                      return res == str
                    }
                  } else if (m.includes('≥')) {
                    return res >= m.split('≥')[1]
                  }else if (m.includes('≤')) {
                    return res <= m.split('≤')[1]
                  }else if (m.includes('<')) {
                    return res < m.split('<')[1]
                  }else if (m.includes('>')) {
                    return res > m.split('>')[1]
                  }else if (m.includes('~')) {
                    let k = m.split('~')
                    return res >= k[0] && res <= k[1]
                  }else if(m.includes('-')){
                    let k = m.split('-')
                    return res >= k[0] && res <= k[1]
                  }else if(m.includes('±')){
                    let k = m.split('±')
                    return res >= (k[0] - k[1]) && res <= (k[0] + k[1])
                if(res==''||res==null||res==undefined||res=='Infinity'){
                  item.v.v = ''
                }else{
                  if(ask){
                    comp = ask.map((m, i) => {
                      if (m.includes('=')) {
                        let str = m.split('=')[1]
                        if(typeof res == 'string'&&typeof str == 'string'){
                          return res.trim() == str.trim()
                        }else{
                          return res == str
                        }
                      } else if (m.includes('≥')) {
                        return res >= m.split('≥')[1]
                      }else if (m.includes('≤')) {
                        return res <= m.split('≤')[1]
                      }else if (m.includes('<')) {
                        return res < m.split('<')[1]
                      }else if (m.includes('>')) {
                        return res > m.split('>')[1]
                      }else if (m.includes('~')) {
                        let k = m.split('~')
                        return res >= k[0] && res <= k[1]
                      }else if(m.includes('-')){
                        let k = m.split('-')
                        return res >= k[0] && res <= k[1]
                      }else if(m.includes('±')){
                        let k = m.split('±')
                        return res >= (k[0] - k[1]) && res <= (k[0] + k[1])
                      }else if(m.includes('>')){
                        return res > m.split('>')[1]
                      }else if(m.includes('<')){
                        return res < m.split('<')[1]
                      }
                    })
                  }
                })
                }
                if (comp.every(m => m)) {
                  item.v.v = 1
                } else {
                  item.v.v = 0
                  if (comp.every(m => m)) {
                    item.v.v = 1
                  } else {
                    item.v.v = 0
                  }
                }
                this.saveInsContext()
              }
            } else {
              let comResult = excelFunction.compute(item.v.f.replace(/=/g, ' '),comValue);
              let comResult = ''
              try {
                if(this.getInspectionValueType(item.i)==1){
                  comResult = excelFunction.compute(item.v.f.replace(/=/g, ' '),comValue)
                }else{
                  let valueList = [];
                  item.valueList.forEach(a => {
                    valueList.push({
                      name: `${this.comparisonList.find(e=>e.value==a.c).label}${a.r+1}`,
                      value: 0,
                    })
                  })
                  for (var a in comValue) {
                    valueList.forEach(b => {
                      if (b.name == a) {
                        b.value = comValue[a]
                      }
                    })
                  }
                  let str = item.v.f.replace(/=/g, ' ')
                  valueList.forEach(b => {
                    str = str.replace(b.name, b.value)
                  })
                  comResult = str
                }
              } catch (error) {
              }
              // comResult = excelFunction.compute(item.v.f.replace(/=/g, ' '),comValue);
              // switch (item.methodName) {
              //   case 'AVERAGE':
              //     let num = 0
@@ -1318,7 +1355,7 @@
              //     break;
              // }
              list.forEach(a => {
                if (a[0].r == item.r && comResult != '') {
                if (a[0].r == item.r && comResult !== '') {
                  for (var b in a) {
                    if (a[b].c == item.c) {
                      try{