licp
2024-08-09 a6c14c75e5a5f677c2a3571cad426d50cb106e3d
修改检验任务、下单bug
已修改7个文件
已删除1个文件
992 ■■■■ 文件已修改
.nvmdrc 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/do/b1-ins-order/add.vue 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/do/b1-ins-order/fiberoptic-config.vue 812 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/do/b1-inspect-order-plan/Inspection.vue 115 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/tool/value-table.vue 25 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/view/b1-inspect-order-plan.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/view/b1-inspection-order.vue 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
static/js/worker.js 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.nvmdrc
ÎļþÒÑɾ³ý
src/components/do/b1-ins-order/add.vue
@@ -1592,7 +1592,7 @@
            return
          }
          console.log('isHaveBushing===', this.totalArr)
          // console.log('isHaveBushing===', this.totalArr)
          let spcialItem = this.totalArr.find(a => a.state == 1 && a.inspectionItem.includes('松套管'))
          if (productListSelected && select[2] === '光缆' && isHaveBushing === false) {
            this.$message.error('光缆温度循环项目必须进行光纤配置')
@@ -2958,9 +2958,8 @@
      getTotal() {
        this.totalArr = []
        this.total = 0;
        // console.log(this.sampleList)
        this.sampleList.forEach(item => {
          if (item.insProduct && item.insProduct.length > 0) {
          if (item.insProduct  && item.insProduct.length > 0) {
            item.insProduct.forEach(a => {
              this.totalArr.push(a)
            })
src/components/do/b1-ins-order/fiberoptic-config.vue
@@ -22,7 +22,7 @@
                <label style="width: 70px;">样品型号</label>
                <span style="font-size: 14px;">{{models}}</span>
              </div>
              <el-radio-group v-model="packageInfo.radio" size="small" @change="upNum()" :disabled="active!=1">
              <el-radio-group v-model="packageInfo.radio" size="small" @change="isInspection()" :disabled="active!=1">
                <el-radio :label="0">全检</el-radio>
                <el-radio :label="1">抽检</el-radio>
              </el-radio-group>
@@ -31,15 +31,15 @@
              style="display: flex;align-items: center;justify-content: space-between;margin-bottom: 8px;padding: 0 12px;box-sizing: border-box;">
              <div class="search-item" style="margin-right: 10px;">
                <label>套管数目</label>
                <el-input v-model="packageInfo.num1" placeholder="请输入" size="small" @change="upNum" :disabled="active!=1"></el-input>
                <el-input v-model="packageInfo.num1" placeholder="请输入" size="small" @blur="addBushing" :disabled="active!=1"></el-input>
              </div>
              <div class="search-item" style="margin-right: 10px;">
                <label style="width: 70px;">标准量</label>
                <el-input v-model="packageInfo.standNum" placeholder="请输入" size="small" @change="upNum" :disabled="active!=1"></el-input>
                <el-input v-model="packageInfo.standNum" placeholder="请输入" size="small" @blur="addStandNum" :disabled="active!=1"></el-input>
              </div>
              <div class="search-item">
                <label style="width: 70px;">检测量</label>
                <el-input v-model="packageInfo.testNum" placeholder="请输入" size="small" @change="upNum"
                <el-input v-model="packageInfo.testNum" placeholder="请输入" size="small" @blur="addTestNum"
                  :disabled="packageInfo.radio===0||active!=1"></el-input>
              </div>
            </div>
@@ -107,21 +107,22 @@
        <el-col :span="12" v-if="packageInfo.ismiers">
          <div class="grid-content">
            <h5>光纤带
              <!-- <el-button size="mini" type="primary" class="btns" @click="addFibers"
                :disabled="miresModel===null||miresStandard===null" v-if="active==1">生成光纤带</el-button> -->
              <el-button size="mini" class="btns" @click="clearFibers" :disabled="selectBushing.length === 0" v-if="active==1">清除</el-button>
              <el-button size="mini" type="primary" class="btns" @click="addFibers"
                 v-if="active==1">生成光纤带</el-button>
              <!-- <el-button size="mini" class="btns" @click="clearFibers" :disabled="selectBushing.length === 0" v-if="active==1">清除</el-button> -->
            </h5>
            <div
              style="display: flex;align-items: center;justify-content: space-between;margin:4px 0 6px 0;padding: 0 12px;box-sizing: border-box;">
              <div class="search-item" style="width: 50%;margin-right: 16px;">
              <!-- <div class="search-item" style="width: 50%;margin-right: 16px;">
                <label style="width: 80px;">纤带类型</label>
                <el-select v-model="miresModel" placeholder="请选择" size="small" style="width: 100%;"
                  :disabled="selectBushing.length===0||active!=1">
                  :disabled="selectBushing.length===0||active!=1"
                  >
                  <el-option v-for="(item,a) in miresModels" :key="a" :label="item.label" :value="item.value">
                  </el-option>
                </el-select>
              </div>
              <div class="search-item" style="width: 50%;">
              </div> -->
              <!-- <div class="search-item" style="width: 50%;">
                <label style="width: 80px;">参考标准</label>
                <el-select v-model="miresStandard" placeholder="请选择" size="small" style="width: 100%;"
                  :disabled="miresModel===null||active!=1" @focus="selectsStandardMethodByFLSSM2()"
@@ -129,10 +130,30 @@
                  <el-option v-for="item in miresStandards" :key="item.id" :label="item.code" :value="item.id">
                  </el-option>
                </el-select>
              </div> -->
              <div class="search-item" style="width: 50%;margin-right: 16px;">
                <label style="width: 80px;">纤带类型</label>
                <el-select v-model="miresModel" placeholder="请选择" size="small" style="width: 100%;"
                  :disabled="selectBushing.length===0||active!=1"
                  >
                  <el-option v-for="(item,a) in miresModels" :key="a" :label="item.label" :value="item.value">
                  </el-option>
                </el-select>
              </div>
              <div class="search-item" style="width: 50%;">
                <label style="width: 80px;">参考标准</label>
                <el-select v-model="miresStandard" placeholder="请选择" size="small" style="width: 100%;"
                :disabled="miresModel===null||active!=1"
                 @focus="selectsStandardMethodByFLSSM2()"
                  @change="(value)=>methodChange2(value)">
                  <el-option v-for="item in miresStandards" :key="item.id" :label="item.code" :value="item.id">
                  </el-option>
                </el-select>
              </div>
            </div>
            <el-table ref="table2" :data="fibersList" tooltip-effect="dark" style="width: 100%" height="270px"
              size="small" @selection-change="handleSelectionChange" highlight-current-row @row-click="(row, column, event)=>rowClickFiber(row, column, event,0)"
              size="small" @selection-change="handleSelectionChange" highlight-current-row @row-click="(row, column, event)=>rowClickFiber(row, column, event,1)"
              :header-cell-class-name="setClassName0">
              <el-table-column
              type="selection"
@@ -140,12 +161,24 @@
              :selectable="()=>(active==1)">
              </el-table-column>
              <el-table-column prop="code" label="光纤带编号" show-overflow-tooltip align="center">
                <template slot-scope="scope">
                  <el-input v-model="scope.row.code" placeholder="请输入" size="mini" ></el-input>
                </template>
              </el-table-column>
              <el-table-column prop="model" label="光纤带规格" show-overflow-tooltip align="center">
                <template slot-scope="scope">
                  <el-input v-model="scope.row.model" placeholder="请输入" size="mini" ></el-input>
                </template>
              </el-table-column>
              <el-table-column prop="standard" label="参考标准" show-overflow-tooltip align="center">
                <template slot-scope="scope">
                  <el-input v-model="scope.row.standard" placeholder="请输入" size="mini" ></el-input>
                </template>
              </el-table-column>
              <el-table-column prop="num" label="光纤检测量" show-overflow-tooltip align="center">
                <template slot-scope="scope">
                  <el-input v-model="scope.row.num" placeholder="请输入" size="mini" ></el-input>
                </template>
              </el-table-column>
            </el-table>
          </div>
@@ -153,12 +186,12 @@
        <el-col :span="!packageInfo.ismiers?24:12">
          <div class="grid-content">
            <h5>光纤
              <!-- <el-button size="mini" type="primary" class="btns" @click="addFiber"
                :disabled="mireModel===null||mireStandard===null" v-if="active==1">光纤配色</el-button> -->
              <el-button size="mini" type="primary" class="btns" @click="addFiber"
                 v-if="active==1">光纤配色</el-button>
              </h5>
            <div
              style="display: flex;align-items: center;justify-content: space-between;margin: 4px 0 6px 0;padding: 0 12px;box-sizing: border-box;">
              <div class="search-item" style="width: 50%;margin-right: 16px;">
              <!-- <div class="search-item" style="width: 50%;margin-right: 16px;">
                <label style="width: 80px;">光纤类型</label>
                <el-select v-model="mireModel" placeholder="请选择" size="small" style="width: 100%;"
                  :disabled="selectBushing.length===0||active!=1">
@@ -174,11 +207,29 @@
                  <el-option v-for="item in mireStandards" :key="item.id" :label="item.code" :value="item.id">
                  </el-option>
                </el-select>
              </div> -->
              <div class="search-item" style="width: 50%;margin-right: 16px;">
                <label style="width: 80px;">光纤类型</label>
                <el-select v-model="mireModel" placeholder="请选择" size="small" style="width: 100%;"
               >
                  <el-option v-for="(item,a) in mireModels" :key="a" :label="item.label" :value="item.value">
                  </el-option>
                </el-select>
              </div>
              <div class="search-item" style="width: 50%;">
                <label style="width: 80px;">参考标准</label>
                <el-select v-model="mireStandard" placeholder="请选择" size="small" style="width: 100%;"
                :disabled="mireModel===null||active!=1"
                 @focus="selectsStandardMethodByFLSSM()"
                  @change="(value)=>methodChange(value)" :loading="mireStandardLoading">
                  <el-option v-for="item in mireStandards" :key="item.id" :label="item.code" :value="item.id">
                  </el-option>
                </el-select>
              </div>
            </div>
            <el-table ref="table3" :data="fiberList" tooltip-effect="dark" style="width: 100%" height="270px"
              size="small" highlight-current-row @selection-change="handleSelectionChange4"
              @row-click="(row, column, event)=>rowClickFiber(row, column, event,1)"
              @row-click="(row, column, event)=>rowClickFiber(row, column, event,0)"
              :header-cell-class-name="setClassName0">
              <el-table-column
              type="selection"
@@ -295,6 +346,7 @@
</template>
<script>
import { set } from 'vue'
  export default {
    props: {
      active: {
@@ -304,6 +356,8 @@
    },
    data() {
      return {
        detectionType: null,
        detectionSelect: [],
        type:1,
        saveLoad: false,
        packageInfo: {
@@ -337,7 +391,7 @@
        fiberList: [],
        fibersList: [],
        selectFibers: [],
        detectionItems:[],
        detectionItems: [],
        currentDetectionItems:null,
        mireStandardLoading:false,
        multiFiberList:[],
@@ -363,23 +417,23 @@
      },
    },
    watch: {
      mireModel(val1,val0) {
        if(val1!=val0){
          this.mireStandards = []
          this.fiberList = []
          this.multiFiberList = []
          this.detectionItems = []
          this.currentDetectionItems = null;
        }
      },
      mireStandard(val1,val0) {
        if(val1!=val0){
          this.fiberList = []
          this.multiFiberList = []
          this.detectionItems = []
          this.currentDetectionItems = null;
        }
      }
      // mireModel(val1,val0) {
      //   if(val1!=val0){
      //     this.mireStandards = []
      //     this.fiberList = []
      //     this.multiFiberList = []
      //     this.detectionItems = []
      //     this.currentDetectionItems = null;
      //   }
      // },
      // mireStandard(val1,val0) {
      //   if(val1!=val0){
      //     this.fiberList = []
      //     this.multiFiberList = []
      //     this.detectionItems = []
      //     this.currentDetectionItems = null;
      //   }
      // }
    },
    mounted() {
      this.$parent.sampleIds.forEach(a => {
@@ -391,6 +445,7 @@
          }
        }
      })
      console.log(111, this.sample);
      this.models = this.models.replace(',', '')
      this.packageInfo.ismiers = this.models.split(',').every(e=>(e.indexOf('d')>-1||e.indexOf('D')>-1))
      if(this.sample[0].bushing === undefined || this.sample[0].bushing === null){
@@ -401,15 +456,27 @@
        this.packageInfo.standNum = this.sample[0].bushing[0].standNum
        this.packageInfo.testNum = this.sample[0].bushing[0].testNum
        this.bushing.forEach(a=>{
          if(a.fibers===null)a.fibers=[]
          if(a.fiber===null)a.fiber=[]
          if(a.fibers==null || a.fibers.length ==0)a.fibers=[]
          if(a.fiber==null || a.fiber.length == 0)a.fiber=[]
          // åˆ¤æ–­æ˜¯å¦å«æœ‰å…‰çº¤å¸¦
          if(this.packageInfo.ismiers){
            a.fibers.forEach(b=>{
            this.fibersList = [] // æ–°å¢ž
            this.fiberList = []  // æ–°å¢ž
            if(a.fibers.length>0){
              a.fibers.forEach(b=>{
              // å…‰çº¤å¸¦
              this.fibersList.push(b)
              // å…‰çº¤
              b.fiber.forEach(c=>{
                this.fiberList.push(c)
              })
            })
            } else {
              a.fiber.forEach(b=>{
              this.fiberList.push(b)
            })
            }
          }else{
            a.fiber.forEach(b=>{
              this.fiberList.push(b)
@@ -417,9 +484,11 @@
          }
        })
      }
      this.getTypeDicts1()
      this.getStandTreeBySampleType()
      this.getStandTreeBySampleType2()
      this.selectsStandardMethodByFLSSM2()
    },
    methods: {
      handleSelectionChange(val) {
@@ -429,7 +498,29 @@
      handleSelectionChange1(val) {
        this.selectBushing = val
      },
      handleSelectionChange2(val){},
      handleSelectionChange2(val){
        this.detectionSelect = val
        // èµ‹å€¼æ£€æµ‹é¡¹ä¿¡æ¯ å…‰çº¤å¸¦
        if(this.detectionItems.type == 1) {
          for(let i= 0; i < this.fibersList.length; i++){
            this.multiFiberList.forEach(item => {
              if(this.fibersList[i].ident == item.ident){
                this.fibersList.find(a => a.ident == item.ident).productList = this.detectionSelect
              }
            })
        }
      }
      if(this.detectionItems.type == 0) {
        // èµ‹å€¼æ£€æµ‹é¡¹ä¿¡æ¯ å…‰çº¤
        this.multiFiberList.forEach(item => {
            this.fiberList.forEach(a => {
              if(a.ident == item.ident){
                this.fiberList.find(a => a.ident == item.ident).productList = this.detectionSelect
              }
            })
          })
        }
      },
      handleSelectionChange4(val){
        this.multiFiberList = val
      },
@@ -442,6 +533,96 @@
        }).then(res => {
          this.colors = res.data
        })
      },
      // å¥—管数目生成表格数据
      addBushing() {
        this.bushing = []
        for(let i = 0; i < this.packageInfo.num1; i++){
          let bushing = {
            ident: this.bushing.length + 1,
            color: this.colors[i].label,
            standNum: null,
            testNum: null,
            fibers: [],
            fiber: []
          }
          this.bushing.push(bushing)
        }
      },
      // å¥—管标准量赋值
      addStandNum() {
        if(this.selectBushing.length > 0) {
          this.bushing.forEach(item => {
          this.selectBushing.forEach(a => {
            if(item.ident == a.ident) {
              item.standNum = this.packageInfo.standNum
            }
          })
        })
        }
      },
      // å¥—管检测量赋值
      addTestNum() {
        if(this.selectBushing.length > 0) {
          this.bushing.forEach(item => {
          this.selectBushing.forEach(a => {
            if(item.ident == a.ident) {
              item.testNum = this.packageInfo.testNum
            }
          })
        })
        }
      },
      isInspection() {
        this.fiberList = []
        this.fibersList = []
        this.detectionItems = []
        // é¡µé¢æ˜¯å¦å«æœ‰å…‰çº¤å¸¦
        if(this.packageInfo.ismiers) {
          // å…¨æ£€
          if (this.packageInfo.radio == 0) {
          // æ ¹æ®æ ‡å‡†é‡èµ‹å€¼æ£€æµ‹é‡
          if(parseInt(this.packageInfo.standNum) > 0 ) {
            // ç»™å…‰çº¤å¸¦èµ‹å€¼
            this.packageInfo.testNum = this.packageInfo.standNum
            this.selectBushing = this.bushing
            this.addFibers()
            this.selectFibers = this.fibersList
            // é»˜è®¤å‹¾é€‰
            setTimeout(() => {
              this.selectBushing.forEach(item =>{
              let rowToSelect =  this.bushing.find(a => a.ident == item.ident)
              this.$refs.table0.toggleRowSelection(rowToSelect, true)
              })
              this.selectFibers.forEach(item =>{
              let rowToSelect =  this.fibersList.find(a => a.ident == item.ident)
              this.$refs.table2.toggleRowSelection(rowToSelect, true)
              })
            }, 200)
        }
      }
        }else {
          if(this.packageInfo.radio == 0) {
            if(parseInt(this.packageInfo.standNum) > 0 ) {
              this.packageInfo.testNum = this.packageInfo.standNum
              this.selectBushing = this.bushing
              this.addFiber()
              // é»˜è®¤å‹¾é€‰
            setTimeout(() => {
              this.selectBushing.forEach(item =>{
              let rowToSelect =  this.bushing.find(a => a.ident == item.ident)
              this.$refs.table0.toggleRowSelection(rowToSelect, true)
              })
            }, 200)
            }
          }
        }
      },
      upNum() {
        this.fiberList = []
@@ -477,7 +658,34 @@
            }
            this.bushing.push(bushing)
          }
        } else {
          // ç»™å…‰çº¤å¸¦èµ‹å€¼
          if(this.selectBushing.length===0){
            this.selectBushing = this.bushing
        }
        // this.miresModels çº¤å¸¦ç±»åž‹
        // this.miresStandards å‚考标准
        this.fibersList = []
        this.packageInfo.ismiers = true
        this.fiberList = []
        this.selectBushing.forEach(a => {
          a.fiber = []
          a.fibers = []
              for(let j = 0; j < parseInt(a.testNum); j++){
                let fibers = {
                  id: this.fibersList.length + 1,
                  code: null,
                  color: a.color,
                  model: null,
                  standard: null,
                  num: a.testNum,
                  productList: this.HaveJson(this.productList2),
                  fiber: []
                }
                a.fibers.push(fibers)
                this.fibersList.push(fibers)
              }
        })
      } else {
          this.bushing = []
        }
      },
@@ -528,7 +736,46 @@
        })
      },
      methodChange(val) {
        if (val === null || val === '') return
        // if (val === null || val === '') return
        // this.$axios.post(this.$api.standardTree.selectStandardProductList, {
        //   model: this.mireModel.split(' - ')[1],
        //   standardMethodListId: val,
        //   factory: ''
        // }, {
        //   headers: {
        //     'Content-Type': 'application/json'
        //   }
        // }).then(res => {
        //   res.data.forEach(a => {
        //     a.state = 0
        //   })
        //   this.productList = res.data
        //   setTimeout(() => {
        //     this.productList.forEach(a => {
        //       if (a.state == 1) this.toggleSelection(a)
        //     })
        //     this.addFiber()
        //   }, 200)
        // })
          // å°†ä¸‹æ‹‰æ¡†å€¼èµ‹å€¼ç»™å…‰çº¤  ç›‘听去除
          if(this.multiFiberList.length == 0) {
            this.$message.error('请选择数据')
            return
          }
          this.multiFiberList.forEach(item => {
            this.fiberList.forEach(a => {
              if(a.ident == item.ident){
                a.model = this.mireModel.split(' - ')[1] // å…‰çº¤è§„æ ¼
                a.noSplitModel = this.mireModel // å…‰çº¤è§„æ ¼
                if(this.mireStandards != null) {
                  a.standard = this.mireStandards.find(a => a.id == this.mireStandard).code  // å‚考标准
                }
              }
            })
          })
         if (val === null || val === '') return
         if(this.mireStandards == null ) return
        this.$axios.post(this.$api.standardTree.selectStandardProductList, {
          model: this.mireModel.split(' - ')[1],
          standardMethodListId: val,
@@ -538,19 +785,45 @@
            'Content-Type': 'application/json'
          }
        }).then(res => {
          res.data.forEach(a => {
          this.detectionItems = []
          if(res.data != null && res.data.length != 0){
           res.data.forEach(a => {
            a.state = 0
          })
          this.productList = res.data
          setTimeout(() => {
            this.productList.forEach(a => {
              if (a.state == 1) this.toggleSelection(a)
            })
            this.addFiber()
          }, 200)
          this.detectionItems = res.data
          this.detectionType = 0
           this.$set(this.detectionItems,'type',0)
          }
        })
      },
      methodChange2(val) {
        // if (val === null || val === '') return
        // this.$axios.post(this.$api.standardTree.selectStandardProductList, {
        //   model: '',
        //   standardMethodListId: val,
        //   factory: '中天科技检测中心 - é€šä¿¡äº§å“å®žéªŒå®¤ - å…‰çº¤å¸¦ - ' + this.miresModel + ' - ',
        // }, {
        //   headers: {
        //     'Content-Type': 'application/json'
        //   }
        // }).then(res => {
        //   res.data.forEach(a => {
        //     a.state = 0
        //   })
        //   this.productList2 = res.data
        //   setTimeout(() => {
        //     this.productList2.forEach(a => {
        //       if (a.state == 1) this.toggleSelection(a)
        //     })
        //     this.addFibers()
        //   }, 200)
        // })
        if(this.multiFiberList.length == 0) {
          this.$message.error('请选择需要更改的数据')
          return
        }
        if (val === null || val === '') return
        this.$axios.post(this.$api.standardTree.selectStandardProductList, {
          model: '',
@@ -561,19 +834,37 @@
            'Content-Type': 'application/json'
          }
        }).then(res => {
          res.data.forEach(a => {
            a.state = 0
          })
          this.productList2 = res.data
          setTimeout(() => {
            this.productList2.forEach(a => {
              if (a.state == 1) this.toggleSelection(a)
          // å°†èŽ·å–çš„æ£€æµ‹é¡¹ä¿¡æ¯èµ‹å€¼
          this.detectionItems = []
          if(res.data != null && res.data.length != 0){
            res.data.forEach(a => {
              a.state = 0
            })
            this.addFibers()
          }, 200)
        })
            this.detectionItems = res.data
            this.detectionType = 1
            this.$set(this.detectionItems,'type',1)
          }
          // ç»™é€‰ä¸­çš„光纤带赋值
        for(let i= 0; i < this.fibersList.length; i++){
            this.multiFiberList.forEach(item => {
              if(this.fibersList[i].ident == item.ident){
                this.fibersList[i].model = this.miresModel // çº¤å¸¦è§„æ ¼
                this.fibersList[i].num = this.miresModel.replace('芯','') // å…‰çº¤æ£€æµ‹é‡
                this.fibersList[i].productList = this.detectionItems // æ£€æµ‹é¡¹
                this.miresStandards.forEach(a => {
                  if(a.id == this.miresStandard) {
                    this.fibersList[i].standard = a.code // å‚考标准
                  }
                })
              }
            })
        }
      })
      },
      addFiber() {
        // æœ€æ–°
        let colors2 = []
        if (this.packageInfo.num1 / this.colors.length > 1) {
          let num = this.packageInfo.num1 / this.colors.length
@@ -585,24 +876,22 @@
          colors2 = colors2.concat(this.colors)
        }
        this.fiberList = []
        let model = this.mireModel.split(' - ')[1]
        let standard = this.mireStandards.find(a => a.id == this.mireStandard).code
        // é€‰æ‹©äº†å…‰çº¤å¸¦
        if (this.packageInfo.ismiers) {
          if(this.selectFibers.length === 0){
            this.$message.error('未选择光纤带')
            return
          }
          if(this.selectFibers.length != 0){
          this.selectFibers.forEach((a,index) => {
            a.fiber = []
            for (var i = 0; i < parseInt(a.num); i++) {
              let fiber = {
                ident: this.fiberList.length + 1,
                bushColor: a.color,
                color: colors2[(i+(parseInt(a.num)*index))>colors2.length?0:i+(parseInt(a.num)*index)*index].label,
                model: model,
                standard: standard,
                productList: this.HaveJson(this.productList)
                model: null,
                noSplitModel: null,
                standard: null,
                fibersIdent: a.ident,
                productList: []
              }
              a.fiber.push(fiber)
              this.fiberList.push(fiber)
            }
          })
@@ -611,85 +900,321 @@
            a.fiber = []
            for (var i = 0; i < parseInt(a.testNum); i++) {
              let fiber = {
                ident: this.fiberList.length + 1,
                bushColor: a.color,
                color: colors2[(i+(parseInt(a.testNum))*index)>colors2.length?0:i+(parseInt(a.testNum))*index].label,
                model: model,
                standard: standard,
                productList: this.HaveJson(this.productList)
                model: null,
                standard: null,
                productList: []
              }
              a.fiber.push(fiber)
              this.fiberList.push(fiber)
            }
          })
        }
      }else {
        this.fiberList = []
        let flag = true
        // æŒ‰ç…§é¡ºåºç”Ÿæˆå…‰çº¤è‰²æ ‡
        let colors2 = []
        if (this.packageInfo.num1 / this.colors.length > 1) {
          let num = this.packageInfo.num1 / this.colors.length
          if (this.packageInfo.num1 % this.colors.length > 0) num += 1
          for (var i = 0; i < num; i++) {
            colors2 = colors2.concat(this.colors)
          }
        } else {
          colors2 = colors2.concat(this.colors)
        }
        // æ ¹æ®å¥—管的测试量生成对应的数量的光纤数据
        this.selectBushing.forEach((item,index) =>{
          if(item.testNum != null && item.testNum != ''){
            for(let i =0; i < parseInt(item.testNum); i++){
              let fiber = {
                ident: this.fiberList.length + 1,
                bushColor: item.color,
                color: colors2[(i+(parseInt(item.testNum)*index))>colors2.length?0:i+(parseInt(item.testNum)*index)*index].label,
                model:  null,
                standard: null,
                productList: []
              }
              this.fiberList.push(fiber)
            }
          }else {
            flag = false
          }
        })
        if(!flag){
          this.$message.error('请填写光纤检测量')
          return
        }
      }
        // äºŒä»£
        // // æ˜¯å¦é€‰æ‹©å¥—管
        // if(this.selectBushing.length == 0) {
        //   this.$message.error('未选择套管')
        //   return
        // }
        // this.fiberList = []
        // let flag = true
        // // æŒ‰ç…§é¡ºåºç”Ÿæˆå…‰çº¤è‰²æ ‡
        // let colors2 = []
        // if (this.packageInfo.num1 / this.colors.length > 1) {
        //   let num = this.packageInfo.num1 / this.colors.length
        //   if (this.packageInfo.num1 % this.colors.length > 0) num += 1
        //   for (var i = 0; i < num; i++) {
        //     colors2 = colors2.concat(this.colors)
        //   }
        // } else {
        //   colors2 = colors2.concat(this.colors)
        // }
        // // æ ¹æ®å¥—管的测试量生成对应的数量的光纤数据
        // this.selectBushing.forEach((item,index) =>{
        //   if(item.testNum != null && item.testNum != ''){
        //     for(let i =0; i < parseInt(item.testNum); i++){
        //       let fiber = {
        //         ident: this.fiberList.length + 1,
        //         bushColor: item.color,
        //         color: colors2[(i+(parseInt(item.testNum)*index))>colors2.length?0:i+(parseInt(item.testNum)*index)*index].label,
        //         model:  null,
        //         standard: null,
        //         productList: []
        //       }
        //       this.fiberList.push(fiber)
        //     }
        //   }else {
        //     flag = false
        //   }
        // })
        // if(!flag){
        //   this.$message.error('请填写光纤检测量')
        //   return
        // }
        // æœ€åˆ
        // let colors2 = []
        // if (this.packageInfo.num1 / this.colors.length > 1) {
        //   let num = this.packageInfo.num1 / this.colors.length
        //   if (this.packageInfo.num1 % this.colors.length > 0) num += 1
        //   for (var i = 0; i < num; i++) {
        //     colors2 = colors2.concat(this.colors)
        //   }
        // } else {
        //   colors2 = colors2.concat(this.colors)
        // }
        // this.fiberList = []
        // let model = this.mireModel.split(' - ')[1]
        // let standard = this.mireStandards.find(a => a.id == this.mireStandard).code
        // if (this.packageInfo.ismiers) {
        //   if(this.selectFibers.length === 0){
        //     this.$message.error('未选择光纤带')
        //     return
        //   }
        //   this.selectFibers.forEach((a,index) => {
        //     a.fiber = []
        //     for (var i = 0; i < parseInt(a.num); i++) {
        //       let fiber = {
        //         bushColor: a.color,
        //         color: colors2[(i+(parseInt(a.num)*index))>colors2.length?0:i+(parseInt(a.num)*index)*index].label,
        //         model: model,
        //         standard: standard,
        //         productList: this.HaveJson(this.productList)
        //       }
        //       a.fiber.push(fiber)
        //       this.fiberList.push(fiber)
        //     }
        //   })
        // } else {
        //   this.selectBushing.forEach((a,index) => {
        //     a.fiber = []
        //     for (var i = 0; i < parseInt(a.testNum); i++) {
        //       let fiber = {
        //         bushColor: a.color,
        //         color: colors2[(i+(parseInt(a.testNum))*index)>colors2.length?0:i+(parseInt(a.testNum))*index].label,
        //         model: model,
        //         standard: standard,
        //         productList: this.HaveJson(this.productList)
        //       }
        //       a.fiber.push(fiber)
        //       this.fiberList.push(fiber)
        //     }
        //   })
        // }
      },
      addFibers() {
        if(this.selectBushing.length===0){
        // if(this.selectBushing.length===0){
        //   this.$message.error('未选择套管')
        //   return
        // }
        // this.fibersList = []
        // let standard = this.miresStandards.find(a => a.id == this.miresStandard).code
        // this.packageInfo.ismiers = true
        // this.fiberList = []
        // this.selectBushing.forEach(a => {
        //   a.fiber = []
        //   a.fibers = []
        //   for (var i = 0; i < parseInt(a.testNum); i++) {
        //     let fibers = {
        //       code: null,
        //       color: a.color,
        //       model: this.miresModel,
        //       standard: standard,
        //       num: a.testNum,
        //       productList: this.HaveJson(this.productList2),
        //       fiber: []
        //     }
        //     a.fibers.push(fibers)
        //     this.fibersList.push(fibers)
        //   }
        // })
        if(this.selectBushing.length == 0) {
          this.$message.error('未选择套管')
          return
        }
        // å¥—管的测试量  *  é€‰æ‹©çš„光纤带数量
        this.fibersList = []
        let standard = this.miresStandards.find(a => a.id == this.miresStandard).code
        this.packageInfo.ismiers = true
        this.fiberList = []
        this.selectBushing.forEach(a => {
          a.fiber = []
          a.fibers = []
          for (var i = 0; i < parseInt(a.testNum); i++) {
            let fibers = {
              code: null,
              color: a.color,
              model: this.miresModel,
              standard: standard,
              num: a.testNum,
              productList: this.HaveJson(this.productList2),
              fiber: []
            }
            a.fibers.push(fibers)
            this.fibersList.push(fibers)
        this.selectBushing.forEach(item => {
          for(let i = 0; i < parseInt(this.packageInfo.testNum); i++){
          let fibers = {
            ident: this.fibersList.length + 1,
            color: item.color,
            code: null,
            model: null,
            standard: null,
            num: null,
            fiber: [],
            productList: []
          }
          this.fibersList.push(fibers)
        }
        })
      },
      rowClickFiber(row, column, event,type){
        this.type = type
        if(this.active===1){
          if(type==0){
            let standard = null;
            try{
              standard = this.miresStandards.find(a => a.id == this.miresStandards)
            }catch(e){}
            if(standard&&standard.code=='委托要求'){
              this.isAskOnlyRead = false;
            }else{
              this.isAskOnlyRead = true;
            }
          }else{
            let standard = null;
            try{
              standard = this.mireStandards.find(a => a.id == this.mireStandard)
            }catch(e){}
            if(standard&&standard.code=='委托要求'){
              this.isAskOnlyRead = false;
            }else{
              this.isAskOnlyRead = true;
            }
          }
        console.log('row',row);
        // this.type = type
        // if(this.active===1){
        //   if(type==0){
        //     let standard = null;
        //     try{
        //       standard = this.miresStandards.find(a => a.id == this.miresStandards)
        //     }catch(e){}
        //     if(standard&&standard.code=='委托要求'){
        //       this.isAskOnlyRead = false;
        //     }else{
        //       this.isAskOnlyRead = true;
        //     }
        //   }else{
        //     let standard = null;
        //     try{
        //       standard = this.mireStandards.find(a => a.id == this.mireStandard)
        //     }catch(e){}
        //     if(standard&&standard.code=='委托要求'){
        //       this.isAskOnlyRead = false;
        //     }else{
        //       this.isAskOnlyRead = true;
        //     }
        //   }
        // }
        // if(this.type==1){
        //   if (this.active !== 1) {
        //     this.sampleIds = []
        //     this.sampleIds.push(row.id)
        //   }
        // }
        // this.currentDetectionItems = row
        // this.detectionItems = row.productList
        // if(this.detectionItems === null) return
        // setTimeout(() => {
        //   this.detectionItems.forEach(a => {
        //     if (a.state == 1) this.toggleSelection(a)
        //   })
        // }, 200)
        if(type == 1) {
          if(row.model != null && row.model != ''){
          this.miresModel = row.model
          this.selectsStandardMethodByFLSSM2()
        }
        if(this.type==1){
          if (this.active !== 1) {
            this.sampleIds = []
            this.sampleIds.push(row.id)
          }
        }
        this.currentDetectionItems = row
        this.detectionItems = row.productList
        if(this.detectionItems === null) return
        setTimeout(() => {
          this.detectionItems.forEach(a => {
            if (a.state == 1) this.toggleSelection(a)
          if(row.standard !=null && row.standard != ''){
          this.miresStandard = this.miresStandards.find(a => a.code == row.standard).id
        }
          this.$axios.post(this.$api.standardTree.selectStandardProductList, {
          model: '',
          standardMethodListId: this.miresStandard,
          factory: '中天科技检测中心 - é€šä¿¡äº§å“å®žéªŒå®¤ - å…‰çº¤å¸¦ - ' + this.miresModel + ' - ',
        }, {
          headers: {
            'Content-Type': 'application/json'
          }
        }).then(res => {
          // å°†èŽ·å–çš„æ£€æµ‹é¡¹ä¿¡æ¯èµ‹å€¼
          this.detectionItems = []
          if(res.data != null && res.data.length != 0){
            res.data.forEach(a => {
              a.state = 0
            })
            this.detectionItems = res.data
            this.detectionType = 1
            this.$set(this.detectionItems,'type',1)
            if (row.productList != null && row.productList.length > 0) {
              setTimeout(() => {
                row.productList.forEach(product => {
                let rowToSelect = this.detectionItems.find(item => item.id === product.id);
                if (rowToSelect) {
                  this.toggleSelection(rowToSelect);
                }
              });
              },200)
            }
          }
        })
        },1000)
      }else if(type == 0) {
        if(row.model != null && row.model != ''){
          this.mireModel = row.noSplitModel
          this.selectsStandardMethodByFLSSM()
        }
        setTimeout(() => {
          if(row.standard !=null && row.standard != ''){
          this.mireStandard = this.mireStandards.find(a => a.code == row.standard).id
        }
        this.$axios.post(this.$api.standardTree.selectStandardProductList, {
          model: this.mireModel.split(' - ')[1],
          standardMethodListId: this.mireStandard,
          factory: ''
        }, {
          headers: {
            'Content-Type': 'application/json'
          }
        }).then(res => {
          this.detectionItems = []
          if(res.data != null && res.data.length != 0){
           res.data.forEach(a => {
            a.state = 0
          })
        }, 200)
      },
          this.detectionItems = res.data
          this.detectionType = 0
          this.$set(this.detectionItems,'type',0)
          if (row.productList != null && row.productList.length > 0) {
            setTimeout(() => {
              row.productList.forEach(product => {
                let rowToSelect = this.detectionItems.find(item => item.id === product.id);
                if (rowToSelect) {
                  this.toggleSelection(rowToSelect);
                }
              });
            },200)
            }
          }
        })
        },1000);
      }
    },
      toggleSelection(row) {
        this.$refs.productTable.toggleRowSelection(row, true);
      },
@@ -704,6 +1229,7 @@
      },
      handleAll(e) {
        if (e.length > 0) {
          console.log(this.detectionItems);
          this.detectionItems.map(m => {
            m.state = 1
            return m
@@ -881,16 +1407,40 @@
        })
      },
      save(){
        if(this.bushing.length === 0){
          this.$message.error('缺少配置无法保存')
          return
        }
        // if(this.bushing.length === 0){
        //   this.$message.error('缺少配置无法保存')
        //   return
        // }
        // for(let a in this.bushing){
        //   if(this.bushing[a].fibers.length===0&&this.bushing[a].fiber.length===0){
        //     this.$message.error(this.bushing[a].color+'管色标套管缺少配置无法保存')
        //     return
        //   }
        // }
        // this.sample.forEach(a=>{
        //   a.bushing = this.bushing
        // })
        // this.$message.success('已保存')
        // this.$emit('saveFiberopticConfig')
        if(this.bushing.length === 0){
          this.$message.error('缺少套管无法保存')
          return
        }
        this.bushing.forEach(item=>{
          // å¦‚果光纤带有值
          if(this.fibersList.length != 0) {
              this.fibersList.forEach(a=>{
                a.fiber = this.fiberList.filter(b=>b.fibersIdent == a.ident)
              })
              item.fibers = this.fibersList // å…‰çº¤å¸¦
              item.fiber = [] // å…‰çº¤
          }else {
            // å¦‚果光纤带没有值
            item.fibers = [] // å…‰çº¤å¸¦
            item.fiber = this.fiberList // å…‰çº¤
          }
        })
        this.sample.forEach(a=>{
          a.bushing = this.bushing
        })
src/components/do/b1-inspect-order-plan/Inspection.vue
@@ -384,6 +384,7 @@
                    <template v-if="PROJECT=='检测中心'||PROJECT=='装备电缆'&&getInspectionValueType(n.i) != 2 ">
                      <span v-if="n.v.v===1" :style="`font-family:${n.v.ff} !important;color: green;`">合格</span>
                      <span v-else-if="n.v.v===0" :style="`font-family:${n.v.ff} !important;color: red;`">不合格</span>
                      <span v-else-if="n.v.v===3" :style="`font-family:${n.v.ff} !important;color: #3A7BFA;`">不判定</span>
                      <span v-else :style="`font-family:${n.v.ff} !important;`">待定</span>
                    </template>
                  </template>
@@ -612,6 +613,7 @@
              <template slot-scope="scope">
                <span v-if="scope.row.arr[index].insResult===1" style="color: green;">合格</span>
                <span v-else-if="scope.row.arr[index].insResult===0" style="color: red;">不合格</span>
                <span v-else-if="scope.row.arr[index].insResult===3" style="color: #3A7BFA;">不判定</span>
                <span v-else>待定</span>
              </template>
            </el-table-column>
@@ -691,6 +693,7 @@
                <template v-else>
                  <span v-if="item.insResult===1" style="color: green;">合格</span>
                  <span v-else-if="item.insResult===0" style="color: red;">不合格</span>
                  <span v-else-if="item.insResult===3" style="color: #3A7BFA;">不判定</span>
                  <span v-else>待定</span>
                </template>
              </td>
@@ -943,6 +946,7 @@
          requiredUp: []
        },
        upIndex: 0,
        changeType:null,
        getReportModelLoading:false,
        insOrder: {},
        sampleProduct: [],
@@ -1110,15 +1114,18 @@
          }
          let list = await this.getCurrentProduct(this.currentSample.id,0)
          this.currentSample.insProduct = this.HaveJson(list)
          // console.log(this.currentSample)
          this.param = {}
          this.changeType = 0;
          this.currentSample.insProduct.forEach(a => {
            this.param[a.id] = {
              insValue: [],
              comValue: [],
              resValue: null,
              equipValue: [],
              equipName: [],
              insResult: null
            if(this.handleCasing(a.inspectionItem)){
              this.param[a.id] = {
                insValue: [],
                comValue: [],
                resValue: null,
                equipValue: [],
                equipName: [],
                insResult: null
              }
            }
          })
          this.determineWhetherToCollectData()
@@ -1150,22 +1157,24 @@
            }
            return
          }
          if(this.changeType&&changeType>0){
          if(this.changeType&&this.changeType>0){
            return
          }
          this.tableLists.forEach(async (m, i) => {
            if (m.templateId == val1) {
              let list = await this.getCurrentProduct(this.currentSample.id,0)
              this.currentSample.insProduct = this.HaveJson(list)
              // console.log(this.currentSample)
              this.param = {}
              this.currentSample.insProduct.forEach(a => {
                this.param[a.id] = {
                  insValue: [],
                  comValue: [],
                  resValue: null,
                  equipValue: [],
                  equipName: [],
                  insResult: null
                if(this.handleCasing(a.inspectionItem)){
                  this.param[a.id] = {
                    insValue: [],
                    comValue: [],
                    resValue: null,
                    equipValue: [],
                    equipName: [],
                    insResult: null
                  }
                }
              })
              this.getReportModel(this.currentSample.id)
@@ -1194,7 +1203,6 @@
              }
            }
          })
          this.handleCasing()
        }
      },
      equipForm:{
@@ -1356,7 +1364,6 @@
                      maxNum = num
                    }
                  }
                  console.log('data[i][j].equipName',data[i][j].equipName,'data[i][j].equipValue',data[i][j].equipValue,'m.v',m.v,'m.v.ps',m.v.ps,'m.v.ps.value',m.v.ps.value,'str0',str0,'str',str,'m.v.v',m.v.v)
                  if(data[i][j].equipName&&data[i][j].equipValue&&m.v&&m.v.ps&&m.v.ps.value=='设备编码'&&str0==str){
                    if(!m.v.v){
                      this.changeEquip(data[i][j].equipValue,m,data[i][j].equipName)
@@ -2054,15 +2061,18 @@
        this.currentSample = this.HaveJson(row)
        let list = await this.getCurrentProduct(row.id,0)
        this.currentSample.insProduct = this.HaveJson(list)
        this.handleCasing()
        this.param = {}
        this.changeType = 0;
        this.currentSample.insProduct.forEach(a => {
          this.param[a.id] = {
            insValue: [],
            comValue: [],
            resValue: null,
            equipValue: [],
            equipName: [],
            insResult: null
          if(this.handleCasing(a.inspectionItem)){
            this.param[a.id] = {
              insValue: [],
              comValue: [],
              resValue: null,
              equipValue: [],
              equipName: [],
              insResult: null
            }
          }
        })
        this.getReportModel(row.id)
@@ -2081,9 +2091,15 @@
          currentTable:this.currentTable
        }));
      },
      handleCasing(){
        if(this.tableLists.find(m=>m.templateId==this.currentTable)&&(this.tableLists.find(m=>m.templateId==this.currentTable).templateName!='成品缆检验原始记录')){
          this.currentSample.insProduct = this.currentSample.insProduct.filter(m=>!m.inspectionItem.includes('松套管'))
      handleCasing(inspectionItem){
        if(this.changeType!=3){
          if(inspectionItem.includes('松套管')){
            return false
          }else{
            return true
          }
        }else{
          return true
        }
      },
      getReportModel(id){
@@ -2103,6 +2119,7 @@
        if(m){
          let list = await this.getCurrentProduct(m,type)
          if(list.length>0){
            this.param = {}
            list.forEach(a => {
              this.param[a.id] = {
                insValue: [],
@@ -2652,6 +2669,26 @@
        //     return
        //   }
        // }
        let str = code.split('-')
        let pId = str[3]
        for(let i =0;i<this.currentSample.insProduct.length;i++){
          if(this.currentSample.insProduct[i].id==pId&&(this.currentSample.insProduct[i].ask=='-'||this.currentSample.insProduct[i].ask=='/')){
            this.tableList[0].arr.forEach(item=>{
              item.forEach(m=>{
                if(m.i==pId&&m.v.ps&&m.v.ps.value=='结论'){
                  this.$set(m.v,'v',3)
                }
              })
            })
            if(this.param[pId].insResult&&this.param[pId].insResult.v){
              this.param[pId].insResult.v.v = 3
            }
            this.saveInsContext()
            return
          }
        }
        // this.currentTable.
        // if(!this.param[pId].equipValue||this.param[pId].equipValue.length==0||!this.param[pId].equipValue[0].v.v){}
        if (n) {
          // if (this.PROJECT === '装备电缆') {
          //   let num2 = new this.$Big(n.v.v)
@@ -3222,16 +3259,18 @@
        this.currentSample = this.HaveJson(this.sampleProduct[index - 1])
        let list = await this.getCurrentProduct(this.currentSample.id,0)
        this.currentSample.insProduct = this.HaveJson(list)
        this.handleCasing()
        this.param = {}
        this.changeType = 0;
        this.currentSample.insProduct.forEach(a => {
          this.param[a.id] = {
            insValue: [],
            comValue: [],
            resValue: null,
            equipValue: [],
            equipName: [],
            insResult: null
          if(this.handleCasing(a.inspectionItem)){
            this.param[a.id] = {
              insValue: [],
              comValue: [],
              resValue: null,
              equipValue: [],
              equipName: [],
              insResult: null
            }
          }
        })
        this.getTableLists()
src/components/tool/value-table.vue
@@ -124,17 +124,17 @@
        <el-table-column type="index" align="center" label="序号" :width="selectionWidth" v-if="data.isIndex" :key="Math.random()">
        </el-table-column>
        <el-table-column :prop="a.label" :label="a.value" :sortable="a.sort === 'custom' ? 'custom' : false" :isColumnWidth="isColumnWidth" :isShowZero="isShowZero"
          v-for="(a, ai) in tableHead" :key="ai" show-overflow-tooltip :min-width="columnMinWidth" v-if="!data.headNoShow||(data.headNoShow&&data.headNoShow.length==0)||(data.headNoShow&&data.headNoShow.length>0&&!data.headNoShow.find(d=>d==a.label))">
          v-for="(a, ai) in tableHead" :key="ai+'bbbbb'" show-overflow-tooltip :min-width="columnMinWidth" v-if="!data.headNoShow||(data.headNoShow&&data.headNoShow.length==0)||(data.headNoShow&&data.headNoShow.length>0&&!data.headNoShow.find(d=>d==a.label))">
          <template slot-scope="scope">
            <div v-if="showType(a.label, data.tagField) != null">
              <template v-if="typeof(scope.row[a.label]) == 'object'">
                <template v-for="(param, i) in scope.row[a.label]">
                  <el-tag v-for="(b, bi) in data.tagField[a.label].select" :key="bi" v-if="b.value == param"
                  <el-tag v-for="(b, bi) in data.tagField[a.label].select" :key="bi+'cccc'" v-if="b.value == param"
                    :type="b.type" size="medium" style="margin-right: 5px;">{{b.label}}</el-tag>
                </template>
              </template>
              <template v-else>
                <el-tag v-for="(b, bi) in data.tagField[a.label].select" :key="bi" v-if="b.value == scope.row[a.label]"
                <el-tag v-for="(b, bi) in data.tagField[a.label].select" :key="bi+'ddddd'" v-show="b.value == scope.row[a.label]"
                  :type="b.type" size="medium">{{b.label}}</el-tag>
              </template>
            </div>
@@ -148,7 +148,8 @@
        </el-table-column>
        <el-table-column fixed="right" align="center" label="操作" :width="getWidth()" v-if="data.do.length > 0">
          <template slot-scope="scope">
            <el-button v-for="(a, ai) in data.do" :key="ai" :type="a.type"
            <el-button v-for="(a, ai) in data.do" :key="ai
            +'qqqq'" :type="a.type"
              :disabled="a.disabFun ? a.disabFun(scope.row,scope.$index) : false" @click="main(scope.row, a)"
              class="handleBtn">
              <span v-if="a.type!='upload'">{{a.font}}</span>
@@ -172,7 +173,7 @@
    <el-dialog title="编辑" :visible.sync="upDia" :width="data.row==1?'500px':540+data.row * 200 + 'px'" append-to-body>
      <div class="body" style="max-height: 550px;overflow-y: auto;padding: 5px 10px 5px 0;">
        <div v-if="data.row > 1">
          <div v-for="(a, ai) in upHead" :key="ai" style="line-height: 50px;">
          <div v-for="(a, ai) in upHead" :key="ai+'ffff'" style="line-height: 50px;">
            <el-col :span="6/data.row" style="text-align: right;" :offset="1">
              <span class="required-span" v-if="showUpReq(a.label)">* </span>{{a.value}}:
            </el-col>
@@ -183,7 +184,7 @@
              <el-select v-model="upData[a.label]" :multiple="data.selectField[a.label].choose" size="small"
                v-if="showType(a.label, data.selectField) != null" style="width: 100%;" :disabled="isDisabled(a.label)"
                clearable filterable>
                <el-option v-for="(b, bi) in data.selectField[a.label].select" :key="bi" :value="b.value"
                <el-option v-for="(b, bi) in data.selectField[a.label].select" :key="bi+'eeeee'" :value="b.value"
                  :label="b.label">
                </el-option>
              </el-select>
@@ -204,7 +205,7 @@
          </div>
        </div>
        <div v-else>
          <el-row v-for="(a, ai) in upHead" :key="ai" style="line-height: 50px;">
          <el-row v-for="(a, ai) in upHead" :key="ai+'ggggg'" style="line-height: 50px;">
            <el-col :span="6" style="text-align: right;">
              <span class="required-span" v-if="showUpReq(a.label)">* </span>{{a.value}}:
            </el-col>
@@ -215,7 +216,7 @@
              <el-select v-model="upData[a.label]" :multiple="data.selectField[a.label].choose" size="small"
                v-if="showType(a.label, data.selectField) != null" style="width: 100%;" :disabled="isDisabled(a.label)"
                clearable filterable>
                <el-option v-for="(b, bi) in data.selectField[a.label].select" :key="bi" :value="b.value"
                <el-option v-for="(b, bi) in data.selectField[a.label].select" :key="bi+'fffff'" :value="b.value"
                  :label="b.label"></el-option>
              </el-select>
              <el-upload :action="javaApi+data.addUploadConfig.url" v-if="showUpload(a.label)" :multiple="false"
@@ -241,7 +242,7 @@
    <el-dialog title="新增" :visible.sync="addDia" :width="data.row==1?'500px':540+data.row * 200 + 'px'" append-to-body>
      <div class="body" v-if="addDia" style="max-height: 550px;overflow-y: auto;padding: 5px 10px 5px 0;">
        <div v-if="data.row > 1">
          <div v-for="(a, ai) in upHead" :key="ai" style="line-height: 50px;">
          <div v-for="(a, ai) in upHead" :key="ai+'yyyyy'" style="line-height: 50px;">
            <el-col :span="6/data.row" style="text-align: right;" :offset="1"><span class="required-span"
                v-if="showAddReq(a.label)">*
              </span>{{a.value}}:</el-col>
@@ -251,7 +252,7 @@
              <el-select v-model="upData[a.label]" size="small" v-if="showType(a.label, data.selectField) != null"
              :multiple="data.selectField[a.label].choose"
                style="width: 100%;" :placeholder="`请选择${a.value}`" clearable filterable>
                <el-option v-for="(b, bi) in data.selectField[a.label].select" :key="bi" :value="b.value"
                <el-option v-for="(b, bi) in data.selectField[a.label].select" :key="bi+'hhhh'" :value="b.value"
                  :label="b.label"></el-option>
              </el-select>
              <el-upload :action="javaApi+data.addUploadConfig.url" v-if="showUpload(a.label)"
@@ -270,7 +271,7 @@
          </div>
        </div>
        <div v-else>
          <el-row v-for="(a, ai) in upHead" :key="ai" style="line-height: 50px;">
          <el-row v-for="(a, ai) in upHead" :key="ai+'jjjjj'" style="line-height: 50px;">
            <el-col :span="6" style="text-align: right;"><span class="required-span" v-if="showAddReq(a.label)">*
              </span>{{a.value}}:</el-col>
            <el-col :span="16" :offset="1">
@@ -279,7 +280,7 @@
              <el-select v-model="upData[a.label]" size="small" v-if="showType(a.label, data.selectField) != null"
              :multiple="data.selectField[a.label].choose"
                style="width: 100%;" :placeholder="`请选择${a.value}`" clearable>
                <el-option v-for="(b, bi) in data.selectField[a.label].select" :key="bi" :value="b.value"
                <el-option v-for="(b, bi) in data.selectField[a.label].select" :key="bi+'mmmmmm'" :value="b.value"
                  :label="b.label"></el-option>
              </el-select>
              <el-upload :action="javaApi+data.addUploadConfig.url" v-if="showUpload(a.label)"
src/components/view/b1-inspect-order-plan.vue
@@ -345,7 +345,7 @@
                            type: 'text',
                            method: 'claimFun',
                            disabFun: (row, index) => {
                                return row.userName != null||(row.userName&&!row.userName.includes(JSON.parse(localStorage.getItem("user")).name))
                                return row.userName != null || row.checkName!=null
                            }
                        }
                    ],
src/components/view/b1-inspection-order.vue
@@ -234,12 +234,11 @@
            </div>
            <div class="table">
                <ul class="tab">
                    <li v-for="(m,i) in tabList" :key="i" :class="{active:i==tabIndex}" @click="handleTab(m,i)">{{m.label}}</li>
                    <li v-for="(m,i) in tabList" :key="i+'afgh'" :class="{active:i==tabIndex}" @click="handleTab(m,i)">{{m.label}}</li>
                </ul>
                <ValueTable :style="getStyle()" ref="ValueTable"
                    :isColumnWidth="true"
                    :url="$api.insOrder.selectInsOrderParameter" :componentData="componentData"
                    :key="'b'+upIndex"  />
                    :upIndex="upIndex"  />
            </div>
            <!-- å®¡æ ¸ -->
            <el-dialog title="下单审核" :visible.sync="verifyDialogVisible" width="30%" :before-close="handleClose">
@@ -297,7 +296,7 @@
                            <div class="search_label"><span class="required-span" v-show="distributeData.type==2">* </span>指派人员:</div>
                            <div class="search_input">
                                <el-select v-model="distributeData.userId" placeholder="请选择" size="small" style="width: 100%;" clearable filterable @change="changeUser">
                                    <el-option v-for="(item,i) in personList" :key="i" :label="item.label" :value="item.value">
                                    <el-option v-for="(item,i) in personList" :key="i+'gbnm.'" :label="item.label" :value="item.value">
                                    </el-option>
                                </el-select>
                            </div>
@@ -306,7 +305,7 @@
                            <div class="search_label"><span class="required-span" >* </span>试验室:</div>
                            <div class="search_input">
                                <el-select v-model="distributeData.sonLaboratory" placeholder="请选择" size="small" style="width: 100%;" clearable filterable>
                                    <el-option v-for="(item,i) in sonLaboratoryList" :key="i" :label="item.label" :value="item.value">
                                    <el-option v-for="(item,i) in sonLaboratoryList" :key="i+'oooo'" :label="item.label" :value="item.value">
                                    </el-option>
                                </el-select>
                            </div>
@@ -351,7 +350,7 @@
          v-model="checkAll"
          @change="handleCheckAllChange">全选</el-checkbox>
          <el-checkbox-group @change="changePrintCode()" v-model="checkIndexList">
            <el-card class="box-card" v-for="(item, i) in qrData" :key="i" style="margin-bottom: 15px; font-size: 16px !important;">
            <el-card class="box-card" v-for="(item, i) in qrData" :key="i+'wwwww'" style="margin-bottom: 15px; font-size: 16px !important;">
                  <el-checkbox :label="i" :key="i" style="position: relative;top:-20px;left:5px"><br></el-checkbox>
                   <div>
                    <el-row style="font-size: 14px;padding-left: 20px;">
@@ -402,7 +401,7 @@
    </el-dialog>
    <div class="el-dialog__body" style="overflow-y: auto;margin-top: 0;position: fixed;top: 999px;z-index: 99999;display: none;">
        <div id="printMOrder" class="printMOrder" ref="printMOrder">
          <el-card class="box-card" v-for="(item, i) in checkDataList" :key="i" style="font-size: 0.20cm !important;page-break-after: always;color: #000;box-shadow: none;margin: 0 !important;padding: 0 !important;">
          <el-card class="box-card" v-for="(item, i) in checkDataList" :key="i+'uuuuu'" style="font-size: 0.20cm !important;page-break-after: always;color: #000;box-shadow: none;margin: 0 !important;padding: 0 !important;">
            <div style="display: flex;">
              <div>
                <el-col :span="10" :offset="2">
@@ -1117,7 +1116,8 @@
            handleTab(m, i) {
                this.tabIndex = i;
                this.componentData.entity.state = m.value
                this.refreshTable()
                this.refreshTable('page')
        this.upIndex++
            },
            getUserMenu() {
                this.$axios.get(this.$api.user.getUserMenu).then(res => {
static/js/worker.js
@@ -361,7 +361,7 @@
                      a[b].v.v = isNaN(val) ? comResult : val
                    }
                    // console.log('a[b].v.ct', comResult)
                    // console.log('a[b].v.v', a[b].v.v)
                    // console.log('a[b].v.v', a[b])
                  }catch(error){
                    a[b].v.v = comResult
                    console.log('error---', error)
@@ -486,7 +486,7 @@
        b.i &&b.v.v&& param[b.i].insValue.push(b)
      }
      if (b.v.ps != undefined && b.v.ps.value === '计算值') {
        b.i &&b.v.v&& param[b.i].comValue.push(b)
        b.i &&b.v.v&&b.valueList&&b.valueList.length>0&& param[b.i].comValue.push(b)
      }
      if (b.v.ps != undefined && b.v.ps.value === '设备编码') {
        b.i &&b.v&& param[b.i].equipValue.push(b)
@@ -495,7 +495,7 @@
        b.i &&b.v&& param[b.i].equipName.push(b)
      }
      if (b.v.ps != undefined && b.v.ps.value === '最终值') {
        b.i &&b.v&& (param[b.i].resValue = b)
        b.i &&b.v&&b.valueList&&b.valueList.length>0&& (param[b.i].resValue = b)
      }
      if (b.v.ps != undefined && b.v.ps.value === '结论') {
        if(b.i &&(b.v.v||b.v.v===0||b.v.v==='0')){
@@ -519,7 +519,7 @@
function SUM(...val){
  try {
    let num = null;
    if(val!=null&&val!=undefined&&val!='undefined'&&val.length>0){
    if(val!=null&&val!=undefined&&val!='undefined'&&val!='NaN'&&val.length>0){
      val.forEach(item=>{
        num+=item;
      })
@@ -538,7 +538,7 @@
function MAX(...val){
  try {
    let max = null;
    if(val!=null&&val!=undefined&&val!='undefined'&&val.length>0){
    if(val!=null&&val!=undefined&&val!='undefined'&&val!='NaN'&&val.length>0){
      val = val.filter(item=>item!=null&&item!=='')
      if(val.length>0){
        max = Math.max(...val)
@@ -560,7 +560,7 @@
function MIN(...val){
  try {
    let min = null;
    if(val!=null&&val!=undefined&&val!='undefined'&&val.length>0){
    if(val!=null&&val!=undefined&&val!='undefined'&&val!='NaN'&&val.length>0){
      val = val.filter(item=>item!=null&&item!=='')
      if(val.length>0){
        min = Math.min(...val)
@@ -581,7 +581,7 @@
  try {
    let num = null;
    let arr = [];
    if(val!=null&&val!=undefined&&val!='undefined'&&val.length>0){
    if(val!=null&&val!=undefined&&val!='undefined'&&val!='NaN'&&val.length>0){
      arr = val.filter(item=>item!==null&&item!==''&&item!=undefined)
      arr.forEach(item=>{
        num+=item;
@@ -884,7 +884,7 @@
    } else if (isPoint) {
      return str.replace('ABS', '').replace(/\(|\)/g, '')
    }else {
      console.log('str', str,eval(str))
      console.log('str', str)
      return eval(str)
    }
  } catch (error) {